(转)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 ...
随机推荐
- 跨站脚本攻击(反射型xss)笔记(一)
环境:一个微信端(所以用浏览器演示UI有点变形) 下图是未插任何脚本时的原页面. 按惯例,上一波["><script>alert(1)</script>] 无弹 ...
- 整型,布尔值,字符串详解,for语句
整型 -- 数字 用于比较和计算 + - * / // python 2 int --- long (长整型) /获取的是整数 Python3 int---整型 / 获取的浮点数 二进制 --- 就是 ...
- .netcore微服务-Mycat
1.前言 1.1 分布式数据库 随着IT行业的迅猛发展,行业应用系统的数据规模呈现爆炸式增长,对数据库的数据处理能力要求越来越高,分布式数据库正是因此应运而生. 分布式数据库特点包括: 透明性: ...
- GeoPackage - 一个简便轻量的本地地理数据库
GeoPackage(以下简称gpkg),内部使用SQLite实现的一种单文件.与操作系统无关的地理数据库. 当前标准是1.2.1,该版本的html版说明书:https://www.geopackag ...
- Vue匿名组件使用keep-alive后动态清除缓存
在使用Vue开发管理系统项目的时候,为了保存页面的浏览状态,我们可以使用内置组件keep-alive来缓存组件内部状态,避免重新渲染. <keep-alive> <router-vi ...
- 「PowerBI」Tabular Editor 一个对中文世界很严重的bug即将修复完成
之前介绍过Tabular Editor这款开源工具,对PowerBI建模来说,非常好用,可以极大的增强自动化水平. 详细可查看此文章: 「PowerBI相关」一款极其优秀的DAX建模工具Tabular ...
- 个人永久性免费-Excel催化剂功能第96波-地图数据挖宝之全国天气查询(区域最细可到区县,最长预报4天)
天气预报的信息,是很普通的大家习以为常的信息,但如果不进行采集,在日常数据分析过程中,就少了非常重要的一个分析维度,如果人手采集整理,工作量巨大.此篇给广大数据分析工作者再次减负,只需简单一键,即可批 ...
- HelloDjango 启动!免费带你学Django全栈!
欢迎 追梦 入伙 HelloGitHub-Team,同时为我们带来了完全免费的 HelloDjango 系列教程,全网首发于 HelloGitHub 公众号.让想你的系列文章被跟多人看到,那就来加入我 ...
- Polya定理与Burnside引理
也许更好的阅读体验 \(Burnside引理\) 公式 \(\begin{aligned}L=\frac{1}{|G|}\sum_{i=1}^{|G|}D_{G_i}\end{aligned}\) 一 ...
- C#多线程学习之如何操纵一个线程
下面我们就动手来创建一个线程,使用Thread类创建线程时,只需提供线程入口即可.(线程入口使程序知道该让这个线程干什么事) 在C#中,线程入口是通过ThreadStart代理(delegate)来提 ...