编程语言学习方法探讨:语言学习三步曲
第一:掌握语言的"环境,规则,元素"三要素:
与我们人类语言的的组成本质相同,软件编程语言也是由"环境,规则,元素"组成。
但与之相比,掌握运用软件编程语言就简单得多了!我们以Java为例,其环境极端的单纯――只要有JVM,规则也就是几个流程控制(如whil,if)、访问控制(public,private)、元素就更简单,常用的关键字和API加起来也就几百来个!相比我们中文来说,虽说常用的就二千多个汉字,但呈几何级组合的词汇原素量、“十里乡俗九不同”的环境多样化,与编程语言相比,那是不可同日而语了!
所以说,学习“软件编程语言”应是一件很简单的事:拿Java来说,你只搭建Java编译、运行的必要环境,也就是安装JDK,配置classpath变量;使用它的关键字按照语法规则来控制流程即可――而这些规则、元素的定义,都是无歧义的,是铁板钉钉子的;根本就不像人类的语言那样,一个字,一个词,都是因人,因地,因时而具有不同的意义!
对于Java初学者来说,用二三个周的时间,放在学习这三要素中就足够了;对于Java中的API,没必要像个书呆子全记住,需要用时查文档就是----这时候,可以说你会用Java了,万里长征,你走动了第一步!
第二:编写清晰简洁,能让其它程序员理解其意图的代码:
简单的道理就是:只认识两千个汉字,会说汉语,并不意味着你就是作家,诗人;但目前对程序员的一般要求却是这么简单:会用程序语言描述问题即可―――但这不是好程序员的目标!初级程序员的目标是:写出代码来,程序能跑起来实现功能,就像小孩学语一样,能讲出话,能让别的人听懂你的意思;如果你是程序员,你的代码需要机器来理解吗?不需要吗?机器会理解吗?
好的诗句应是“言情必沁人心脾,写景也豁人耳目”――这是好的自然语句的功能:易理解,简洁,但表达能力巨大!好的代码的第一就要求就是:保持KISS原则---编写你自己理解来由的代码、编写让其它程序员一眼能看得懂的代码!只有KISS了,方可让其它程序员理解---机器有什么理解可淡呢?---其它程序员能快速理解,这段代码才可能重用,扩展,人有永垂不朽,代码的价值在于可复用从而长久流传。
其它程序员可理解的理码才有可能被复用---如果代码设计精良的话,人性本懒!由此才发展出了API,接口,模块化,低藕和的软件技术,才有现在各种功能强大的软件产品;否则,一代一代的程序员都得刀耕火种般的从敲机器码开始来编程序!
第三:从优秀的代码中学习领悟,使用优秀的代码:
“以人为镜“是指学做人做事的方法;要做好程序员,当然要从优秀的代码中学习,比如研读liunx源码、研读JDK源码、Java世界中那么多的开源项目、、、这些都是程序员智慧的宝库:“久入麝兰之室,不闻其香”,更重要的是潜移默化掉自身的粗卑之气,让自己的代码清晰流畅,功能的实现朴实无华但直达要害。
理解了优秀,知道了优秀之所以,便心存敬畏而不轻易自己编写代码了:当前Java开源框架的流行,应是基于此点;一个优秀的程序员,知道适时的使用优秀的作品,才可能构建出一个更优秀的系统!”不发明新的轮子“是因为有自知之明而己!
希与大家一起探讨。
分享到:
相关推荐
可编程语言标准IEC61131-3中文版
总结来说,文档重点讨论了如何根据学习目的和专业发展方向来选择适合的编程语言。它不仅为初学者提供了学习路径,而且也强调了深入学习的重要性,并提及了一些与编程语言学习相关的资源和竞赛活动。对于希望进入编程...
可编程语言国际标准IEC61131-3是针对可编程控制器(PLC)编程语言的一套全球通用标准,旨在统一不同制造商生产的PLC之间的编程方法。国家标准GBT15969.3-2005则是中国对应IEC61131-3的标准版本。此标准详细规定了PLC...
《CODESYS-V3-基础编程指南》是一本详细介绍了CODESYS V3编程环境的使用和编程指南。CODESYS是一个遵循IEC61131-3标准的集成开发环境(IDE),广泛应用于工业自动化领域,特别是用于编程和配置PLC(可编程逻辑控制器...
IEC61131-3编程语言及应用基础.pdf
文档的标签为“python学习 系列课程 青少年趣味编程”,表明这份课程计划是以趣味学习为核心,旨在引导青少年学习Python编程语言。 从提供的部分内容来看,课程计划被分为多个模块,每个模块都针对特定的编程技能和...
- **教程目的**:本书旨在为参加NCT全国青少年编程能力等级测试的学生提供一套全面的学习资料,覆盖Python语言编程的一级至三级所有必考知识点。 - **适用人群**:主要针对青少年学生,特别是准备参加NCT考试的考生...
标题和描述中提到的主要知识点是关于编程语言的选择,特别是针对不同年龄段和目标群体的编程学习路径。主要讨论了Scratch、C++、Python这三种语言,并提到了CSP-J、CSP-S这两个计算机科学竞赛。 1. **Scratch**: ...
ST语言,全称为Structured Text,是IEC 61131-3标准下的编程语言之一,常用于工业控制领域的PLC(可编程逻辑控制器)编程。ST语言以其丰富的表达能力和接近高级编程语言的语法特性,深受工程师们的青睐。本手册全面...
使用R语言进行机器学习编程实践_R-ml
本书属于No Starch的经典系列之一,英文版在美国受到读者欢迎。本书寓教于乐,易于学习;读者可以轻松与快递地掌握解决问题方法和程序设计思维的。编程从孩子抓起”得到越来越多的人的认同和重视。本书是父母教孩子...
小霸王学习机在80年代是中国许多孩子接触计算机编程的启蒙工具,其中G-BASIC语言是其核心教学内容之一。G-BASIC是一种基于BASIC语言的简易编程环境,旨在让初学者能快速上手,理解编程的基本概念。下面将详细阐述...
ST-结构文本-PLC编程语言-教程.doc
- **编程**:SWOPC-FXGP-WIN-C支持Ladder Logic(梯形图)、Structured Text(结构化文本)、Instruction List(指令表)等多种编程语言,满足不同用户的需求。通过直观的图形界面,用户可以方便地绘制和编辑控制...
语言的面向对象方法编程。经过研究生的学习和探索,偶然间发现高焕堂老师写 OOPC(面向对象 C 编程),感觉不错。遗憾的是上面没有提供继承的方法。根据本人的研究,在高老师的基础上,提出一 种可行而且结构明了的...
综上所述,《编程语言快速记忆手册 通用版》不仅强调了站长学习编程语言的重要性和必要性,还介绍了英语单词快速记忆技巧与编程学习之间的联系。该手册为读者提供了一系列实用的方法和工具,帮助他们在编程领域取得...
《Qt高级编程》,作者: (英)Mark Summerfield ,《qt高级编程》以工程实践为主旨,是对qt现有的700多个类和上百万字参考文档中部分关键技术深入、全面的讲解和探讨,如丰富的网络/桌面应用程序、多线程、富文本处理...
在AS400RPG编程语言入门学习资料汇总中,你可能会接触到以下关键知识点: 1. **基本语法与结构**:RPGLE使用固定格式的源代码,每行代码都有特定的字段位置。理解这些字段及其含义是学习的基础,例如,定义数据区、...