编程语言的学习是一个漫长的过程,欲速则不达,不能一步登天。在这个过程中需要慢慢积累经验,把基础打扎实。下面小编给大家说说java编程系统学习,希望能对你有些帮助。
[图片0]
我们必须明确一个大方向,也就是说现在面向对象的编程范畴。尽管人工智能曾经有所浪潮,但未来5-10年工业界广泛承认并接受的将是面向对象式的编程。工业界目前最流行的面向对象编程语言就是C++和Java。所以基本上锁定这两个方向就可以了。而且完全可以同时掌握。
掌握Java的精华特性而且一定要知道为什么。比如,Interface和multi-thread。用interface是更好的多继承的模型,而多线程则是设计到语言一级的重要特性。要完全理解interface是为什么,用多线程又有几种常用的编程模型。
理解了Java语言的特性是为什么了之后,就可以试着上升到设计这个层次,毕竟学习语言是要用的。目前比较好的开发模式是采用自定向下的面向对象的设计,加上MVC的模式(你可以看一下我介绍的关于MVC的内容)。首先要找出最顶层的对象(这往往是最难的),然后一层一层往下递归,记住每次应符合7+/-2的原则,因为我们人的短记忆就是这样。一般有图形用户界面的 应从界面开始设计。
最好的方法其实是实践。一般教科书上的例子并不能算是实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能是你自己越来越迷糊。比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的,比如在我的实践当中,我曾经学习过一个很经 典的例子就是用Java实现的HotDraw(源自SmallTalk),你可以用rolemodel或hotdraw在搜索引擎上找一下,我记不大清楚了。从HotDraw上我学到了什么是 framework,以及如何用rolemodel的方式来构造,这样我就可以应用到其他的地方。顺便 说一句,这个例子你绝对不会觉得小,只会觉得大,并且他还是真正的商用的framework 。
2怎么学习java
1、扎实的基础
数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握它们,很难写出高水平的程序。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论。不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。因此多读一些计算机基础理论方面的书籍是非常有必要的。
2、丰富的想像力
不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案,试试别人从没想过的方法。丰富的想像力是建立在丰富的知识的基础上,除计算机以外,多涉猎其他的学科,比如天文、物理、数学等等。开阔的思维对程序员来说很重要。
3、最简单的是最好的
这也许是所有科学都遵循的一条准则,复杂的质能转换原理在爱因斯坦眼里不过是一个简单得不能再简单的公式:E=mc2。简单的方法更容易被人理解,更容易实现,也更容易维护。遇到问题时要优先考虑最简单的方案,只有简单方案不能满足要求时再考虑复杂的方案。
4、不钻牛角尖
当你遇到障碍的时候,不妨暂时远离电脑,看看窗外的风景,听听轻音乐,和朋友聊聊天。当我遇到难题的时候会去玩游戏,当负责游戏的那部分大脑细胞极度亢奋的时候,负责编程的那部分大脑细胞就得到了充分的休息。当重新开始工作的时候,我会发现那些难题现在竟然可以迎刃而解。
3学习java的方法
有一点不可否认的,学习程序语言是非常难的,要出去开发要做研发工程师不是谁都能做的,所以天赋也是占一定比例,至少学习上可以轻松很多;
天才不多,一般人还是占大多数,所以勤奋好学是基本, 要有一颗好学的心,学习程序是要有刻苦精神,才能学习好;
努力未必有用,好的学习方法也是非常重要的,程序员要多看书多练习,首先对于理论要懂,然后学习逻辑思维能力,有基础深入;
程序员不能只是看书学习,更多的还是要上机操作,除了基础还要学习深入的项目,最好能写几个案例作品,也方便以后找工作,以前我们的老师是公司的管理人员,所以给学生做是给他们最好的锻炼;
java要配套学习比如mvc模式,js脚本,数据结构,ssh等框架,才能真正学好java语言;
能做到独立项目的开发,程序的优化,就是一个资深的程序员了。
4学习java的技巧
对于初学者,学习编程语言最重要的就是练习。所以一定要搭建开发环境。具体的,下载Java新的SDK,下载集成开发环境(IDE)如Eclipse,配置环境。网络上有很多相关的环境配置教程。对于开发环境,重点要学习如何单步调试,对于Eclipse IDE来说,是F5-F7。学会单步调试,那么基本就可以很好的编写程序了。
学习JavaSE基础
接下来,可以找一本书(任何大学教材)学习Java的基础部分,不要看特别厚的书,比如Java编程思想,对于初学者看这类书太累。并不推荐只是看视频学习,而是要边看书边照着书上的代码打一遍。即使记不住,也要打一遍。此时的学习,主要是学习好Java的语法,知道每个常用的类 或者功能怎么用。并不推荐使用命令行来学习代码,直接用IDE就好了,因为大部分国内的公司也是用IDE开发的。学的时候并不一定要背下来,但是要在用的时候知道去哪里找相关的内容,然后通过反复的使用达到记住的目的。
学习高级特性
同样是阅读和练习。这部分更不可能完全的背下来,所以主要是下载一些现成的代码例子,然后读懂,接下来尝试去修改。比如“网络编程”,如果代码的例子讲解的是利用网络编程发送文字,那么可以尝试修改,学习如何发送图片等。在这一阶段的学习,还要掌握大量的Java包,对于数据结构有appache的common包,有google的Guava等,大部分的编程实际上都是利用其他人编写好的java包的。
深入理解JavaAPI
就是弄懂原理。比如List有几种实现,每个实现的区别是什么,Java在序列化的时候存储的格式是什么,java的垃圾回收原理是什么。对于这方面的学习,其实可以找一些“面试题”通常会问到,比如研究者July收集的各种题库;也可以看书,比如Effective java 中文版(第2版)。
学习设计模式
其实这时为了更合理利用Java资源,进行正确的面向对象程序开发。这个时候要弄懂如何用java实现每一种设计模型(这时会综合利用继承、多态、抽象等机制)。可以看Head First 设计模式(中文版)等书,结合网上的资料。