对于这个话题,已经不止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开发的更多相关文章

  1. 如何自学 Java 开发

    如何自学 Java 开发? 568赞同反对,不会显示你的姓名 李艾米IT路上学习 568 人赞同 Java Web前端技术 HTML 入门视频课程 1 HTML 简介 2 HTML基本结构[ 3 HT ...

  2. 零基础如何自学java开发?

    开篇直奔主题,java 学习个人感觉分为两种途径,第一种是在学校,在培训机构等地方学习. 有人指导:第二种是自学,通过视频,书籍,朋友等完成学习. 本文适合 自学,且基础薄弱或者无基础的人.先介绍下我 ...

  3. 推荐自学JAVA开发的三本书

    ---------------------------------------------------------------------------------------------------- ...

  4. 自学 Java开发(Java后台开发|Java后端开发)的书籍推荐

    java编程思想java并发编程实战深入理解java虚拟机函数式编程思维tcp/ip详解鸟哥的linux私房菜spring mvc +mybatis开发从入门到精通spring技术内幕elastics ...

  5. 作为一个零基础的新手,如何系统的自学Java和JavaEE开发技术?

    其实这个问题很简单,我用最简单的语言给大家描述一下,学习一样东西就要了解这样东西学完了要干什么事情,有什么作用.然后就是应该学习哪些必要的内容,该如何运用得当的方法进行有效率的学习不至于自己摸不着头脑 ...

  6. 自学Java,需要掌握什么内容才能找到满意的工作?

    首先,这个问题主要问:自学Java编程技术,如果才能找到一份Java编程的工作.按照现在的招聘标准来看,无论你去哪个公司面试,你只需要满足他们公司的需求就可以. 找到一份Java编程工作需要掌握的内容 ...

  7. 十年Java开发程序员回答,自学Java,培训Java的利和弊

    最近有一个朋友在群里面问我:是应该去培训Java还是应该自学Java,我想的说的是我并不是想给他一个去培训或者不去培训,我用自己多年对于行业的了解去分析这个问题,然后让他自己去思考,哪种更加适合他.他 ...

  8. 记一名软件实施自学转Java开发,附学习计划

    2015年毕业到现在已经3年了,而我转型开发已经有一年的时间了.写这篇文章除了记录,主要还是想分享一些经历给想要转型开发的同学们,不要走那些我走过的弯路. 2015年入职了第一家公司,当时是做的分销系 ...

  9. 【.net开发者自学java系列】使用Eclipse开发SpringMVC(3)

    [.net开发者自学java系列]使用Eclipse开发SpringMVC(3) 标签(空格分隔): Spring RESTful 很久没继续学习java的spring了.接下来继续 回忆一下上个随笔 ...

随机推荐

  1. JAVA工具类-StrUtils

    public class StrUtils { public static final String UTF_8 = "UTF-8"; /** * 去掉小数字符串后面无用的零 */ ...

  2. Windows文本文件上传至linux显示乱码解决方法

    iconv -f gbk -t UTF-8 显示异常文本名 -o 另存为文件名 iconv -f gbk -t UTF-8 rkgxdt_new.log -o new

  3. Foundations of Game Engine Development Volume 1 Mathematics (Eric Lengyel 著)

    http://www.foundationsofgameenginedev.com/ Chapter1 Vectors and Matrices (已看) Chapter2 Transforms (已 ...

  4. HQL详解

    HQL查询:Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Lanaguage)查询提供了更加丰富的和灵活的查询特性,因此 Hib ...

  5. C# 控制CH341进行SPI,I2C读写

    之前看了别人是C++ MFC开发的CH341 I2C,SPI读写flash的软件代码,看上去有点头晕,感觉还是使用C# winform开发更人性化些 C#控制需要调用CH341提供的DLL库,网上多数 ...

  6. Office365维护命令

    # 会议室日历相关# 日语:予定表# 汉语:日历Set-MailboxFolderPermission -Identity "XXXXX@qq.com:\Calendar" -ac ...

  7. ES6系列之解构

    本系列是在平时阅读.学习.实际项目中有关于es6中的新特性.用发的简单总结,目的是记录以备日后温习:本系列预计包含let/const.箭头函数.解构.常用新增方法.Symbol.Set&Map ...

  8. js 合并多行表格

    最近在整理之前的工作记录,有很多信息是借鉴他人,亲测有效的,遗憾的是当初记录时没有留下来源,如侵权请联系fourOfour@163.com. 1.autoRowSpan函数的第一个参数是table的i ...

  9. Difference between hash() and id()

    https://stackoverflow.com/questions/34402522/difference-between-hash-and-id There are three concepts ...

  10. List<Map<String, Object>>集合中获取某个key并转换为List<Integer>集合

    package com.codyy.sso.controller.yuanqu; import java.util.ArrayList; import java.util.HashMap; impor ...