Java是一门编程语言,如果是一个新手,该如何快速学习Java呢?如何做,才能既有效率,又能掌握其精髓,还能打下牢固的基础呢?
个人认为,要做到这一点,需要有一个基本的框架。个人认为,从以下几个方面考量和入手,可以较好地把握这一点:
- 【1】首先要有一本,或拿到或一套比较好的Java教程,这个非常关键,这样你就可以循序渐进地学习Java的基础知识了
- 【2】了解Java的历史和基本特点、特性;
- 【3】学习Java编程的基本步骤或套路,也就是编写代码(源码)、编译、运行之类的;
- 【4】HelloWorld,你的第一个Java程序,非常重要和关键
- 【5】初步掌握相关编程工具,比如像Notepad一两款文本编程器的使用,像Eclipse或者IDEA这样的集成开发环境的使用
- 【6】笔记工具,比如Typro之类的Markdown软件或工具的使用,或者传统的Word,又或者其它云笔记之类的使用,总之顺手就行
- 【7】学习Java的基础语法,然后进入Java面向对象——也就是OOP相关知识的学习,循序渐进,一定要稳扎稳打
- 【8】OOP是Java语言的一大特点,也是Java学习基础阶段的重点。Java面向对象编程(OOP)的三大特征:封装、继承、多态及其具体内容,一定要掌握好,要深入理解它们的实质和灵魂;也就是OOP编程思想是如何体现在具体的编程过程中的。
- 【9】学习相关系列API,学会一步步站到巨人的肩膀上去
- 【10】一定要多做练习,多敲代码:编程是工科,不是理科;程序员首先是码农,然后才是工程师
- 【11】初步了解Java程序的一些实际运行机制,比如Java虚拟机(JVM)的基本构成,Java代码在内存中是如何展开的等内容
- 【12】掌握一些编程技巧,比如IDE的快捷键之类的,初步学习使用一些常见基础插件,学会积累一些常用的代码片断之类的
- 【13】学习、思考和参悟编程思想之类的命题,Java相关的编程思想会是什么呢?会有哪些编程思想呢?程序是不是真的可以拥有灵魂?和现实的生活有些联系?
- 【14】学习一些周边的知识,Java编程可能要用到的周边知识,比如少量必要的DOS命令,Linux相关的知识,又或者别的
- 【15】注意 生命周期 这样一个概念,以及它和程序、类和对象、进程与线程、垃圾回收、测试等之间的一些关系
- 【16】注意细节
- 【17】养成总结和回顾的习惯
- 【18】最后说一点,学习Java或编程语言,要有工程化思想,程序的程,就是工程的程,OOP还和OOD、OOA这样一些概念和内容联系在一起,从OOA的分析到OOD的设计,再到OOP的编程,本身就是工程化思想的一种体现,这个工程化和一些特定思想、概念是相关的,比如工业产品、市场需求、系统或复杂系统,比如设计模式和编程最佳实践,又比如对建筑行业的一些东西的借鉴,比如工具箱、脚手架之类的,比如SpringBoot就是一套脚手架
下面,我们以第一个Java程序——HelloWorld——为例,来聊聊Java之妙,什么是学习Java编程最好的开始。
无论是在学校还是在校外的培训班中,你的Java老师,教给你的第一个Java程序,通常都是HelloWorld,不过,有一个细节,可能是很多人所不知道的,那就是Oracle,也就是Java官方教程中给到了第一个Java示例程序的名称,其实是HelloWorldApp,也就是说Java官方的名称,比国内一般给到的示例的名称,多了App这么个东西。
App是什么,App就是英文单词application的常见缩略或简写形式,即App,就是应用程序的意思,也就是说HelloWorld这个示例代码程序虽然很小,实际上Java官方的教程,仍然是将它看成是一个相对完整和独立的应用程序来看待的,是具有特定的实现和功能的,是和实际运用,甚或市场需求,是联系在一起的。也就是说App,其实是有思想的,它不是简单的几行代码,简单的代码片断,简单到干瘪的一个示例,它也是有躯体、有灵魂,有冲动、有思想,有内在和外在联系的。
又比如application这个单词,我们可以简单将它翻译成应用或应用程序:
- application n.应用,应用程序
作为名词,应用是什么?应用其实就是指它是有实际用处的,和现实需求,确切地讲是和市场需求相联系的。application这个单词,可以说是apply这个动词的名词形式,application/apply它们的前缀是ap-,这是前缀ad-的变体形式,它的词根是pl-,意为“编织”和“连结”:
- apply v.应用;申请 //= ap-(=ad-=to) 朝,向,到;强调 + ply 编织、连结
- application n.应用,应用程序;申请,申请书,申请表 //= ap-(=ad-=to) 朝,向,到;强调 + pl- 编织、连结 + -ic形缀 + -ation复合名缀
也就是说,apply、application的基本含义主要来自于其词根pl-,而词根pl-意为“编织、连结”一类的意思,正好反应了编程的某些关键特征,也就是说编程,就像织毛织、编草席、纺线织纱,甚至是女孩子编辫子一样,一行行代码就像一根根线,一根根头发,它们相互之前连结在一起、交织在一起,就可以变出各种花样,各种功能来,就像绣花一样,穿针引线,不断交织,花鸟、山水的图景慢慢就出来了,是交织、是编连最终赋予或形成了功能和图景。
这个编织、连结,或者编连的过程,就是从朴素走向伟大的过程,它的核心就是编线一样,不断编写不同的语句和延长我们的代码,交织,就相当于交互,以Java的OOP为例,Java程序之间的交互,本质上是通过对象方法进行的,因为OOP强调封装,它的成员变量或字段通常是要求在对象之外是不直接使用的,如果要使用,需要通过相应的方法进行调用或使用。所以,一个简单的HelloWorldApp,其实也并不简单,也是可以有思想,有灵魂的,是反映Java作为OOP语言的相应的特征或特性的,也是和现实生活或现实需求相联系的。比如,HelloWorld程序,通常我们使用System.out.println();语句输出一句话,比如:
System.out.println(“Hello, 这是我的第一个程序”);
我们可以不是将它简单地理解为一个输出语句,而是可以理解为一种功能的实现,也可以理解为,是一种响应,对请求或者现实世界某种需求的响应。比如,你也可以将它理解为生孩子,这是你生的孩子,它虽然很小、功能很弱,但它是你的孩子,你亲生的(亲手敲代码敲出来的),这个输出语句,你可以理解为是孩子的第一声啼哭,或者对世界的第一次响应,它没有哭,你的孩子是个神童,你可以将你的这个小程序,看成是一个机器人,一个只有灵魂尚无肉身的机器人,一个尚且功能非常简单的机器人。
如果你能这样去思考和看待你的代码,你的程序,那么HelloWorld,就不再只是HelloWorld了,它是HelloWorld
Application,对不对?这样,编程,就有了灵魂,有了思想,也有了趣味,横看成岭侧成峰,远近高低各不同,当我们学会以不同的视野或方式等待它和走向它的时候,它也就有了不一样的风景,它终将像一个人一样,像一个孩子一样,不断长大,变得越来越血肉丰满,灵魂充沛,甚至无所不能。学习编程及编程的实际过程,和编程的人之间,是可以相互成就的,你成熟伟大的作品,伟大的作品反过来成熟伟大的你,或者不说伟大,至少是相互成就、共同成长和进步的吧,这种成长和进步,会不断变成新的希望,变成万道光芒。

世界上,有数不清的伟大的程序员,他们也许在使用C/C++,也许在使用Java,也许在使用Python,也许在使用Rust,又或者别的语言,不过似乎有个基本相同的开始,就是都是从学写HelloWorld程序,开始一门语言的学习的,所以,小小的HelloWorld并简单,因为它是伟大的开始,神童坠地有声,大体都会来一句:Hello World!,这是在和全世界打招呼呢?如果你觉得你也可以,那就努力学习和进步吧,你也可以拿着你的App,最终走向全世界,或者你希望面向的世界吧——你瞄准的市场!
831

被折叠的 条评论
为什么被折叠?



