如何自学Java开发
对于这个话题,已经不止N次在线上或线下听到了。从这个话题被太多的人提问及回答,我们可以肯定地说,Java这个已经有近15年头的计算机编程语言是有着及其广阔的应用领域和独特而短期无法替代的优势。我们姑且不讨论这些,针对如何“自学Java语言”在此衷肯谈一下个人建议,希望对有此疑惑的伙伴们有些帮助。
首先,从技术角度作为计算机编程语言个人认为自学还是比较难的,通常需要学习者必需明确你学习Java的目的是什么。对于这个问题我个人认为不外乎两大类,其一就是出自对计算机编程的喜好(对Java的喜好);其二是能够掌握Java语言技术从而利用其能够解决自身生存问题。这两类人通常可以肯定的说后者居多,那么我们就以第二类人自学Java来聊一下。
从我们想以Java计算机编程技术来就业我们就一定要清楚了解企业用人的基本标准是什么。对于现在大多数企业级软件开发来讲,无论是大公司还是小公司通常要求必需掌握如下三方面技术应用点。
其一,Java 语言核心设计和编程思想,这个在Java核心基础中都可以接触到;
其二,数据库技术,必需强调这个和哪种计算机编程语言没有直接关系,不过我们必需清楚,对于java企业级软件开发来讲,一百个项目就有一百个数据处理业务,所以数据库技术是必需掌握的;
其三,Java 常用辅助框架,也就是说工具库,通常可以分为前端和后端。当然也就是网页技术和java后台服务器常用框架。
基于以上三点来说说这个三方面如何学习。对于学习Java 重中之重首当其冲必然是比较扎实掌握它的最核心的基础,因为无论你以后接触什么项目或应用相关Java哪种免费或收费的工具都是基于Java语言的,如果基础掌握不扎实一切都是乌云。因此强烈建议大家必需花足够的精力和时间牢牢掌握Java核心基础知识。
如果大家没有以上Java的系统学习教程,可以加入我ava交流学习群前面是四九四,中间是八零一,后面是九三一 下载。
在掌握Java核心基础情况下,我们就可以深入学习一下数据库的开发技术了,这里我要说明一下,对于一个初中级的程序员来讲,我们只要能够熟练编写SQL语句及编写存储过程并能够使用Java在程序中操作数据库基本就可以达到一般企业开发的数据库处理技术要求,对于有些人说必需熟练掌握多种数据库的特性、优劣、高度优化及专业的设计这种说法我是及不赞成的,这个标准不是一个自学者短期内能完成的,必需经过多年开发经验的积累才能涉及这些深度的东西。
现在企业级软件开发几乎百分百都是web项目,那么我们在掌握以上两方面技术以后我们就可以着手学习web前端技术和Java后代常用工具框架,对于这Java后台框架技术实际就是一种基于某方面业务的工具,都是Java语言编写的,诸如Spring、Struts、Hibernate、mybatis 等等,这里必需强调一句:“如果Java基础核心掌握不好,Java后台框架技术是无法掌握的”。对于web前端开发,当前也就是以JS为主,当然JS现在以jQuery框架为主。
以上简单谈了关于企业对于Java 技术基本要求以及它们之间的关系,现在我们来说一下Java学习态度和方式。
俗话说”态度决定一切”,那么对于自学Java来讲,这句话就太重要了。可以自己问自己一下:“我是想要”还是“我是一定要”。如果只是“我想要”,那么我可以可定的说你遇见困难基本就会放弃,如果是“我是一定要”,那么你就有必需坚持下去的动力,知道到达自己的目的。
无论我们做什么内因固然重要,但是外因永远都不能被忽略,内因是动力,外因是走捷径的工具。那么外因是什么呢?个人认为外因就是能够在你疑惑和遇到困难时帮助你解脱的人。一个疑惑和困难可能会让你徒劳搭上很长时间而无法摆脱,甚至让你有放弃的念头,这个人是谁呢,可以是一个朋友,是一起学习的人,是一个你偶遇的人,归根到底他是一个能帮助你快速解决困难的老师,到哪里去找我们自己知道。
如果谁对于学习Java的学习路线,学习方法,系统学习规划有任何问题,可以加入我的java交流学习群前面是四九四,中间是八零一,后面是九三一,里面有学习教程下载地址和学习路线以及详细的规划,我做Java开发十年的时间,希望帮助新手少走弯路。
下面和大家谈谈实际学习Java语言的行动细节。对于计算机编程语言来讲,它就是一个熟练工种,要想掌握这门技术就必需动手,动手,多动手。在我们基本理解理论知识点的情况下,我们要花费近乎70%以上的时间用来敲代码,一遍又一遍,每遍我们都有不同的感受,程序是用代码实现的不是只理解掌握知识点实现,这点想必我们大家都知道,所以多敲代码是及其必需的。可以这样说一个成熟的计算机编程高手,极限时一天能够完成近万行代码量,那么对于一个初学Java的人来讲,要想增强动手能力并理解代码含义每天通常不能少于500行代码,在不断学习更多知识点后这个量还会不断增加。
最后和大家分享一下关于项目实际开发经验的积累,这个话题实际对于自学Java来讲,几乎是及其困难的,通常初学者不可能自己设计一个项目来实践,即使我们拿来一个接近完整的企业项目我们自学者也几乎无从下手,这也是自学Java最头疼的而且是无法解决的问题,那么怎么办呢,唯一的办法只能是找到一个做过实际开发的人及几个人组成团队,来完成若干个企业级软件项目开发从而积累开发经验,在其中这个做过实际开发的人会带我们如何实现项目开发,从而积累项目经验,而且个人认为通常你应该经历至少两个项目才接近初级项目经验的水平。
好了,暂时谈这些,实际自学中我们还会遇到很多问题,只要我们坚持,方法得当,耐得住寂寞,端正态度,坚持下去通常我们会有些收获,还是要强调一下,自学绝对不是一个人的事情,一个指导者是绝对必要的。最后祝伙伴们学有所成。
如何自学Java开发的更多相关文章
- 如何自学 Java 开发
如何自学 Java 开发? 568赞同反对,不会显示你的姓名 李艾米IT路上学习 568 人赞同 Java Web前端技术 HTML 入门视频课程 1 HTML 简介 2 HTML基本结构[ 3 HT ...
- 零基础如何自学java开发?
开篇直奔主题,java 学习个人感觉分为两种途径,第一种是在学校,在培训机构等地方学习. 有人指导:第二种是自学,通过视频,书籍,朋友等完成学习. 本文适合 自学,且基础薄弱或者无基础的人.先介绍下我 ...
- 推荐自学JAVA开发的三本书
---------------------------------------------------------------------------------------------------- ...
- 自学 Java开发(Java后台开发|Java后端开发)的书籍推荐
java编程思想java并发编程实战深入理解java虚拟机函数式编程思维tcp/ip详解鸟哥的linux私房菜spring mvc +mybatis开发从入门到精通spring技术内幕elastics ...
- 作为一个零基础的新手,如何系统的自学Java和JavaEE开发技术?
其实这个问题很简单,我用最简单的语言给大家描述一下,学习一样东西就要了解这样东西学完了要干什么事情,有什么作用.然后就是应该学习哪些必要的内容,该如何运用得当的方法进行有效率的学习不至于自己摸不着头脑 ...
- 自学Java,需要掌握什么内容才能找到满意的工作?
首先,这个问题主要问:自学Java编程技术,如果才能找到一份Java编程的工作.按照现在的招聘标准来看,无论你去哪个公司面试,你只需要满足他们公司的需求就可以. 找到一份Java编程工作需要掌握的内容 ...
- 十年Java开发程序员回答,自学Java,培训Java的利和弊
最近有一个朋友在群里面问我:是应该去培训Java还是应该自学Java,我想的说的是我并不是想给他一个去培训或者不去培训,我用自己多年对于行业的了解去分析这个问题,然后让他自己去思考,哪种更加适合他.他 ...
- 记一名软件实施自学转Java开发,附学习计划
2015年毕业到现在已经3年了,而我转型开发已经有一年的时间了.写这篇文章除了记录,主要还是想分享一些经历给想要转型开发的同学们,不要走那些我走过的弯路. 2015年入职了第一家公司,当时是做的分销系 ...
- 【.net开发者自学java系列】使用Eclipse开发SpringMVC(3)
[.net开发者自学java系列]使用Eclipse开发SpringMVC(3) 标签(空格分隔): Spring RESTful 很久没继续学习java的spring了.接下来继续 回忆一下上个随笔 ...
随机推荐
- Int和String互转的方法
Java 中int.String的类型转换 int -> String int i=12345;String s="";第一种方法:s=i+"";第二 ...
- MySQL Hardware--Linux 文件句柄限制
Linux会限制文件句柄数量,默认为1024,当超过该阈值后,会报"to many open files" ## 使用ulimit -a查看当前打开文件句柄限制 ulimit -a ...
- leetcode中的python学习
list.extend() list1.extend(list2(or string)) 将list2(or string)的所有元素添加到list1中: list1.append(list2(or ...
- 1.2.8 Excel做个滚动抽奖
1.首先要准备好数据库: 2.用RAND函数来生成随机数字,做一个辅助列: 3.制作抽奖界面: 4.输入公式: 在F3中输入下列公式并填充至F5: =INDEX(A:A,MATCH(SMALL(B:B ...
- py-day4-2 python 内置函数
zip() #zip 拉链方法 一一对应 只要是序列类型的都可以 print(list(zip(('a','b','c'),(1,2,3)))) 结果: [('a', 1), ('b', 2), (' ...
- 常用git的命令
常用git的命令 详解git fetch与git pull的区别 Git放弃本地所有修改,强制更新: git fetch --all git reset --hard origin/master 说明 ...
- 专访笨叔叔:2019年可能是Linux年?(转)
链接:https://zhuanlan.zhihu.com/p/57815479 2017年9月<奔跑吧 Linux内核>一书出版后得到了广大Linux从业人员和爱好者(特别是从事Linu ...
- Vue项目中GraphQL入门学习与应用
1.GraphQL是什么,能干什么? 正如官网所说,GraphQL是一种用于API查询的语言.Facebook 的移动应用从 2012 年就开始使用 GraphQL.GraphQL 规范于 2015 ...
- 理解OpenShift(6):集中式日志处理
理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4) ...
- oracle修改sequence,查询sequence信息
-- 1.查询sequence当前值. select serviceproviderid.nextval from dual; -- 2.查询sequence最大值SELECT SEQUENCE_NA ...