(转)2019年给Java编程初学者的建议(附学习大纲)
本文链接:https://blog.csdn.net/javajlb/article/details/85920904
1. 引言
这是一篇初学者干货,请耐心看完,希望对你有帮助
作为初学者的你,命中了以下问题吗?文末附答疑
张三丰:编程是什么,怎么编程?
张无忌:what,比土木工程好?
成昆:有相关的编程视频和书籍推荐吗?
杨逍:听说人工智能和大数据很火,学人工智能还是大数据好?
其实,以上很多问题,都是新手没接触编程时的疑问,我也不例外,在7年前,步步高音乐手机很流行,宋慧乔也还没结婚,我也刚刚接触Java编程,压根就不知道什么是编程,什么是软件…
但这都不重要,重要的是我们应该怎么样去学习,去培养自己的兴趣。有的同学说,老师,不是先有兴趣才适合学习吗,怎么还得先培养兴趣,我只能说,你连编程都不知道,何来的兴趣。但如果你知道软件,懂编程,并且喜欢打游戏,经常找游戏bug的同学,那已经有养兴趣了
2. 思考
作为初学者,最难的是入门吗?
对于入了门的同学都知道,肯定不是,最难的是在整个学习中你能够坚持接受枯燥的基础知识,记住里面的关键点并持续的不停学习,这里面有坚持,有自律,有自我鼓励,更有枯燥无味,甚至想打游戏,甚至想放弃…
持续学习,持续接收新事物并消化是作为技术人员必须要去做的,但这也是最困难的。对于尚未入门的同学也不要很心急,先短暂的接触,不要一股脑的全部投入上来,觉得自己合适再进入学习。
对于英语不好的同学不要着急,也不要害怕,英语这个可以慢慢来,对于基础入门,英语其实不需要太多知识,因为你只要将视频中所教的记住即可,更多的是需要逻辑思维,所以相信自己可以的。
3. 学习过程
假设你现在进门了,而且在看视频跟着老师学,但你发现在学习过程中,跟着视频,一个个字母的敲,好像都能跟上,好像都能学会,但实际是关上电脑,自己好像个二愣子,照着敲明明会的啊,现在怎么连main方法都写不出来。。。。
下面我来给大家分析一下,萌新应该要注意的问题
A. 注意点
也就是老师的教学大纲,应该有哪些大致的内容,以及方向,学这个阶段你的课程,最后能够做什么,知道能够做什么了之后,我们再来学习,你会发现,这些基础知识都是为最后需要做的那件事情准备的
最后做的是什么,做项目,你学这么多,无非是找到工作,找工作了之后就是做项目,不是让你进去讲if的用法,也不是让你去跟别人唠嗑
做为自学者,网上铺天盖地的视频资料,各种300集100集,足够让我们好好学好一阵子了,对的,这个确实没毛病,但是自学者有一个通病,没有养成学完之后对这个知识点进行3~5个练习题的习惯,你要知道,培训班中,他们上两节课,可能全天都在练习,自学者肯定做不到这种,而匆忙的进入下一个知识点,这也就是知识不扎实的原因。
当然,我并非说培训班很扎实,但毕竟交了钱的和没交钱的收货是不一样的,但还是取决于自己,大多是有氛围督促,而自学者,全靠自己,靠生活和对未来的期盼
如果本篇文章对你有帮助请百度关注下恒骊学堂,全套零基础体系化干货奉上
B. 学习路线图
下面我们来看大纲图,Java学习阶段分为5个阶段,任何速成都是忽略了很多知识点
青铜段位
这里,我先列出第一阶段,第一阶段建议不直接上手JavaSE课程,先做一些网页方面的知识,如下,大家可以先学习HTML+CSS,做一些静态小网页即可,暂时不需要学习JavaScript + JQuery

白银段位
下面我们来看第二阶段的内容,第二个阶段为JavaSE方向,java平台有3个分支,分别为
JavaSE 标准版,05年之前叫J2SE,是Java学习者必学阶段,也是最难的一个阶段
JavaME 微型版,05年之前叫J2ME,主要用于嵌入式设备开发,不用学习
JavaEE 企业版,05年之前叫J2EE,企业平台开发,对应了我下面所说的最后一个阶段

白银段位,我这里例举几个小游戏,皆为对战模式,非单机,可以在互联网上使用,而且远程对战
可以做:中国象棋,仿QQ聊天室,五子棋,打字游戏,仿QQ音乐
有些老手可能会有些疑问,Swing界面这个东西不是不用了吗,怎么还需要学,其实我觉得作为新手真的需要练习这些逻辑方向的,夯实基础,象棋中的逻辑很高深,能够让你学得更扎实,还能培养你的兴趣,那些说不用学Swing的同学,你可以试着做做小游戏


黄金段位
学完这阶段,至少3个月过去了,然后开始进入数据库阶段的内容,建议大家将MySQL作为基础进行学习。
我在一线互联网企业待了这么多年,我可以肯定的告诉你,企业中大多数用的是MySQL,目前MySQL的版本是8,如果不知道怎么学的同学,请看我的相关视频,学到的是本事,不扯淡,先给搭建看下技术大纲图

- 铂金段位
铂金段位主要学习JavaWeb知识,能够利用Servlet+JSP做出动态网页即可

- 王者段位
这个阶段主要学习JavaEE企业级框架,这些框架就是真正企业中使用的框架,所以一定的下功夫学好

总结
初学者做项目是很有难度的,因为其中不知道什么效果用什么知识,而网络上的视频大多是教些基础,没有很经典公开的实战项目,我认为在Java学习过程中到出来工作至少要做4个项目,如下
1、网页基础,静态网页项目,可以是官网,博客,论坛
2、Swing项目,例如中国象棋,网络聊天室,五子棋,打字游戏之类的,重点不是Swing而是里面的逻辑与对象代码
3、JavaWeb项目,主要使用Servlet+JSP,结合HTML、JavaSE、数据库实现动态网页
4、企业级JavaEE项目,可以是电商,P2P,社交等项目
做完这几个项目应该对Java有更清楚的认知,因为本身我们学习Java就是做项目,所以这才是我们真正需要的,也是企业的开发人员真正掌握的。
(转)2019年给Java编程初学者的建议(附学习大纲)的更多相关文章
- java编程IO简单回顾和学习
java编程IO操作必不可少的,很久不玩IO,回顾一下,写了几个小程序,记录一下,方便查阅和学习. 1.给出一个整数数组,将其写入一个文件,再从文件中读出,并按整数大小逆序打印. package co ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十三)之Strings
Immutable Strings Objects of the String class are immutable. If you examine the JDK documentation fo ...
- 1.java小作业-计算1到100的整合-指定输入多少行输出就打印多少行-打印24小时60分钟每一分钟-重载基础练习-面向java编程初学者
可能有和我一样刚开始学习java的小伙伴们, 可以或多或少了解一点别的语言知识,我就是中途转过来的, 明白一点,关键不在语言本身····· 所以面对初学者来说,基础要学好, 下面列举几个没什么难度的小 ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(二)之Introduction to Objects
The genesis of the computer revolution was a machine. The genesis of out programming languages thus ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十四)之Type Information
Runtime type information (RTTI) allow you to discover and use type information while a program is ru ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十二)之Error Handling with Exceptions
The ideal time to catch an error is at compile time, before you even try to run the program. However ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十一)之Holding Your Objects
To solve the general programming problem, you need to create any number of objects, anytime, anywher ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十)之Inner Classes
The inner class is a valuable feature because it allows you to group classes that logically belong t ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(九)之Interfaces
Interfaces and abstract classes provide more structured way to separate interface from implementatio ...
随机推荐
- 分布式Streaming Data Processing - Samza
现在的主流的互联网应用越来越依赖streaming data来提供用户一些interesting statistics insights.以linkedin为例,最近90天有多少人看过你的link ...
- SpringBoot学习笔记2
九:创建父工程 注意:打包方式选择为pom 将创建SpringBoot常用的依赖和插件放在父工程的pom.xml,如下: <project xmlns="http://maven.ap ...
- STL map 详细用法
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个称为该关键字的值)的数据 处理能力. 需要的库 #include <map> ...
- Netty 客户端使用指数退避机制实现重连
指数退避 可以理解为每次重连失败时,就把重连时间设置为之前的指数级别.例如 2 秒,4 秒,8 秒...... 亚马逊AWS关于指数退避的两篇文章介绍 AWS 中的错误重试和指数退避 Exponent ...
- JS原生隐士标签扩展
最近项目开发中,开发了不少的接口,有一个接口是这样子的.先从A公司拿到数据后,存放到我们公司数据库里,然后需要将数据展示给客户,下面这个界面,后台要实时刷新,后台写了个定时器,2S刷一次从后台拼接好H ...
- C# 委托(delegate)、泛型委托和Lambda表达式
目录 # 什么是委托 # 委托声明.实例化和调用 1.声明 2.委托的实例化 3.委托实例的调用 4.委托完整的简单示例 #泛型委托 1.Func委托 2.Action委托 3.Predicate委托 ...
- Android CountDownTimer 类实现倒计时
本文用 Android 中的 CountDownTimer 类实现倒计时功能,类似输入手机号获得验证码.界面如下所示: 1. 点击 “开始计时” 按钮后开始进行倒计时, 2. 倒计时过程: 3. 时间 ...
- 真千兆路由的极限之OPENWRT MAKE, 某品牌白菜价QCA9558/QCA9880/QCA8337N纯种组合OS搭建时记
自从上次仙人梦里放了一张无字天书,解惑了WPR003N的秘诀后,渐渐的,就忘了这件这事情,连想好的评测都拖延了好多月了,毕竟路由是拿来用的,不是用来写什么陈词滥调的评测的,无意间,热爱白菜的我发现了一 ...
- Spring MVC浅入浅出——不吹牛逼不装逼
Spring MVC浅入浅出——不吹牛逼不装逼 前言 上文书说了Spring相关的知识,对Spring来了个浅入浅出,大家应该了解到,Spring在三层架构中主做Service层,那还有Web层,也就 ...
- 解决跨域session 同步问题
跨域来源:(前端站点和后端API布署到不同的站点) 解决方案 一.服务端设置 1.配置允许跨域请求 public class BaseAction { /** * 支持跨域请求 * @author f ...