前言:
●众多的语言,到底哪一门才是适合我的?
●我们为什么要学习Java语言呢?
●Java学习路线
我们可以通过今年最新的TIOBE编程语言排行榜看到,JAVA在“昨天”、和“今天”都强势霸据榜单第一名,哇哦,看起来好像很厉害,那么为我们又为什么要学习Java呢?又应该怎么学呢?
众多的语言,到底哪一门才是适合我呢?
小白:大佬,大佬,编程语言也太多了,到底我应该选择哪一种呢?
大佬:首先呢,我们先对常见的编程语言,生动形象的总结一下。
编程界的法老C大叔,因年长、稳重被众人所熟知,“上古时期”好像就存在了,是诸多后兴语言的前辈
高级语言中,偏底层(厉害)的存在,常用于系统和硬件编程中。
跟随C大叔学习武艺的C++,练就了无数禁咒级别的魔法,他拥有强大的力量,对大家却丝毫不友善。
兼有C底层操作便捷的特点,广泛的应用于游戏开发、工业、和追求性能、速度的应用,可以认为:C++是C的超集
Java小J是一名异时空行者,可以*的穿梭在windows和linux的诸多位面,摒弃了C++诸多复杂的符咒,练就了一身,称为C++--的纯净魔法体系
Java ≈ 简单+强大
再加以可移植性等(一次编译、到处运行)的特点、称为了较长一段时间需求最高的编程语言之一
比小J年还长4岁的Py小哥,魔法招式,简单易用,但是威力却不容小窥,大数据、人工智能时代来临,被部落委以重任,被广大弟子看好。
入门比较简单的一种开发语言,可以进行Web开发,网络爬虫,计算与数据分析,以及人工智能等多个领域,如今比较火爆。
他叫JS但是他和java没任何关系,总被人莫名其妙的低估,但他不仅能操纵DOM让,让元素闪现,还可以用jQuery让网页动起来,还可以用Ajax和后端的大哥们交互数据,在前端中也是能数得上名的高手
很流行的web客户端脚本语言
Web前端开发者必须学习(还有html + CSS)
当今热门技术之一
小井是一个超级漂亮的精灵小姐姐,但是只能呆在微软这片森林中,在这片领域中,小井可以优雅的发挥她最大的实力
企业使用.net框架创建网站和windows应用
从语法和库来说非常优雅舒服,缺点就是平台的封闭性
阿p是一个长相丑陋,而又不守规矩的小伙子,没少让他的管理者头疼,但是他仍然拥有者自己的一片领地
PHP是一种创建动态交互性站点的强有力服务器端脚本语言
更适用于较短时间建立一个中小型网站
免费,并且使用也较为广泛
小白:听了这么多,额,我只能说故事很有趣...... 什么底层、框架、库,我还是一脸懵。
大佬:哈哈,今天就和你侃一侃我比较熟悉的JAVA
我们为什么要学习Java语言呢
1. Java的市场需求
Java占据了极大多数的企业级应用平台,例如银行、电信等(诸多银行的网上银行均使用J2EE开发——jsp后缀是体现之一)
诸多大型商务品牌,如阿里、淘宝、京东、Amazon等均使用Java来做后台处理
2. Java的应用领域
通信、网络方向企业:电信、移动、联动、网通、的信息化
金融系列企业:银行、证券公司;
管理系统:客户管理系统、图书管理系统
游戏:安卓手机游戏
嵌入式开发:例如给一些小型的家电设备写程序。
3. Java的前景
没有什么东西是永久不变的,任何事物都在不断地迭代中,但是在同比情况下,Java在中国拥有着极为广大的用户群体,生态环境也是很好的。
一门语言的好坏,除了语言自身的特性,我认为普遍程度也是一个极为重要的指标,Java火爆依旧,在互联网领域根深蒂固,每一个企业从利益的角度,不会轻易更替已用技术。Java作为企业级应用的霸主,将比较稳定的生存。
至于人们所传市场饱和问题,我认为则不必过于担心,所谓饱和,不过就是很可能在以后出现替换语言,但是如果你对Java已经拥有足够的了解已经熟练程度,完全可以快速上手,
语言只是我们为了实现项目需求的一种工具,其实没有必要过于纠结在语言上,每一种语言都有其特定的优势,根据不同的需求,使用不同的工具,始终不要忘记,合理的解决问题才是我们的最终目的。
而当今的环境,科班+培训班 每年大量人员的疯狂输出,导致行业门槛被提高,出现了一种毕业找不到工作,工作后又被裁退的现象,而Java学习之路何其漫长 ,如果仅仅掌握简单的搬运,而不懂创造,无法乘浪前行,也终究会被时代的浪潮所淹没,所以如何提高自身竞争力成为了每一个程序员应该首先思考的问题.
小白:大佬,带我飞,带我飞 !
大佬:好哒~
Java学习路线
前言:
对于入门者来说,我们要面向视频,面向书籍,面向搜索引擎。对于基础比较薄弱,甚至没什么概念的初学者来说,一头扎到书堆中无疑是不够理智的,难以理解,很快就被劝退了,而对照视频的学习方法,有一个老师带着你走,给你一个整体思路,给你直接总结好一系列知识点,再加一些小案例,无疑能初学者,提升很大兴趣。但是想要真的学好,看书也是必不可少的一点,书籍中蕴藏着更加丰富,更加优质的一些知识。而面向搜索引擎,就是我们要及时的使用百度谷歌、遇到问题无法解决,先别急着放弃,可以去网络寻找答案,你的坑大部分别人都已经走过了,大部分都可以找到合适的解决方案。
写笔记、写笔记、写笔记,重要的事情说三遍 一门语言,几个月不用,你也就忘的差不多了(大佬忽略)笔记对于我们后期的复习以及增进了解来说都是非常重要的。
还有最重要的一点,一定要 敲代码!!! 纸上得来终觉浅
看不懂 → 看懂了 → 模仿敲代码 → 自己敲代码(灵活应用)
如果你已经学完一门语言,你会发现,笔记 + 敲代码是多么重要,不然就只能继续 Hello World
正文:
如果时间充足可以去找一点关于C语言甚至C++语言的知识看一看,了解其中的,循环语句、条件语句、数组等各种语言比较共性的编程知识点
不过直接入手Java也是可以选择的,也不会存在什么制约.
(一)JavaSE部分
教程推荐:
刘意老师,深入浅出系列之Java基础视频,简直神作,知识点涉及非常全面,非常推荐(Ps:看过的人才懂,等你什么时候爱上了林青霞,你也就学到了这个教程的精髓)。
毕向东老师的Java教程也是很不错不错的,不过全篇并没有使用Ecplise ,所以建议主看刘意老师辅看毕姥爷的教程
学习方式:
1、跟着视频学习,视频一般都有配套笔记,我推荐还是自己做笔记(我选择做word笔记),用配套笔记查漏补缺,后期满满的成就感。笔记对于长远的发展无疑是很好的。笔记的内容都是经过自己的理解,加以解释,重点部分高亮而整理好的,后期遇到什么问题,再去看看视频无疑太麻烦了,看笔记的话效率++
2、如果对于某一块的知识不太理解,可以考虑多看看别人的技术博客,每个人的理解不同,或许你能找到更好的理解方式。网络上的各种大佬独特的理解解释,在我学习的时候就给了我很大的帮助。如果对于某一块的用法不清楚,可以多看一些在线的教程网站,例如菜鸟教程 、How2J、等
3、任何教程不是看一次就没问题的,但是也是说完全重复去看,大概第一遍对于一些简单的知识通过一些联系已经可以熟悉的使用,但是一些较为复杂的就需要多次练习,查看,从模仿着敲到自己灵活的敲。还有很多知识点由于枯燥无味,或者并没有感觉到他的用处,学习过程中会比较敷衍一些,可以去百度查一下其使用用途,事后一定要重新过一遍这些学的比较潦草的知识点,本来视频教程已经是整理好的内容,涉及到的内容绝对是有用的,有一些看似没用,只不过是可能你没有接触到它的使用场景,在后期javaweb的学习中,项目的建立中,或许会频繁使用。
侧重点:
学习、工作时间很紧张,不能抽出大量的时间来学习,而Java知识点繁多,我能不能只学会一些必须学会的,这知识点也太多了,蓝瘦。但是对于JavaSe这种基础,我的意见是一个也不能跳过,基础部分,反而是重中之重。没有打好基础,后期的学习绝对会难受的一匹。
但是虽然不能跳知识点,但是重点程度还是有区分的
1、常见的Java基本语法
例如:常量、变量、运算符、循环跳转语句、函数(方法)、数组
是基础中的基础,应该成为信手拈来的东西,这一部分的内容其实对于任何一门语言来说都是大同小异,不是难点,但是却很重要。
2、※面向对象
第一个重点来啦! 面向对象,是你整个Java学习铺垫 从基础语法到接触面向对象会有一些不舒服,可能会不太理解面向对象的意义,所以在这一块一定要多敲多,思考,抛开书籍等的专业的长篇大论,我们可以多看一下别人的理解,并好好自我消化,只有在自己有一定感悟理解的前提下才会对书籍、网站上的一些专业总结有所理解。
3、常见对象的学习
这一部分中 String、StringBuffer、StringBuilder、Arrays工具类等一定要好好学哦,后面也是反复会用。
4、集合框架 + IO
JavaSE中除了理解面向对象后最需要认真学习部分,在后期javaweb中也是会频繁的应用。集合框架中的内容又涉及到数据结构的一些知识,可以同步对应着学习。这两个部分一定要好好做笔记,一定要把每一种都敲一次代码。
5、多线程
多线程也是很重要的,但是对于初学者来说可以暂时先入门,但日后深入了解也是很有必要的
6、网络编程
对于初学者 这一部分内容可以暂时过一遍即可,但是做一个简单的聊天室案例好像也是很’
有意思呢。
7、反射
反射内容是javaweb的基石,是javaweb中的一项重点知识,此内容可在JavaSe部分学习也可在以在JavaWeb中重点学习,根据自身情况决定,由于其本身是非常抽象的个人推荐,在SE中简单过一遍,留下一定印象在Web中重点学习。
8、GUI(图形界面)
现在Java大部分应用在web方向,GUI并不热门,并且用Java来做GUI界面真的不容易,好的项目也不多。对于新人来说更没有必要趟这趟浑水了。
所以我的建议是,完全放弃对GUI的学习
基础语法 ★★★★★
面向对象 ★★★★★
集合框架 ★★★★★
IO ★★★★★
常见对象 ★★★★★
多线程 ★★★★
网络编程 ★★
GUI编程 ★
反射 ★★★★★(可稍后学习)
THE END ~
由于需要准备详细的梳理JavaSE的知识点,制作本系列教程,JavaWeb内容暂时不更新
为了保证文章的质量,我会讲知识点经过详细的准备和解释梳理。虽然每天的课程也很忙,但我也会尽最大的速度为大家更新。
如果内容中有什么不足,或者错误的地方,欢迎大家给我留言提出意见, 蟹蟹大家 !^_^
如果能帮到你的话,那就来关注我吧!
在这里的我们素不相识,却都在为了自己的梦而努力 ❤
一个坚持推送原创 Java技术的公众号:理想二旬不止