博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习编程语言时需要注意的内容
阅读量:5875 次
发布时间:2019-06-19

本文共 1803 字,大约阅读时间需要 6 分钟。

学习编程语言时需要注意的内容

一.  方向

1. 了解语言背后的“哲学”

我在初次学习Java时,觉得它即冗长又存在不必要的复杂。那时,我还不是个经验的程序员,并且习惯使用C来编码。Java是一门伟大的语言,但我并不能体会其中的精华——甚至是它的用途,因为我无法理解Java的面向对象原理。

后来,我理解了面向对象方法,并采用它进行编程。这对我更好地理解Java的核心思想以及编程方法起了非常大作用。

如今已有成千上万个编程语言,不同的编程语言解决和优化不同类型的编程问题,并且在计算机系统中处于不同的级别。而你需要做的是了解你所学语言是什么、目标。理解是至关重要的,然后运用它来解决实际问题。

2. 亲自输入所有的代码实例

话说,实践是检验真理的唯一标准。学习一门语言,除了知道其中的原理外,最快的学习方法莫过于实践,编写代码,远远大于读书或看视频所产生的效果。输入代码并且让它们运行起来是学习一门语言至关重要的一步。即使你对该们语言是完全陌生的,在编写的时候你也会发现它们的语法结构,渐渐明白其中的含义。

在编写的过程中,你肯定会犯错,发现错误并纠正它,这个过程也是不可忽视的,错误越多,你就会花更多的心思研究,这样理解就会越加深刻。

3. 更进一步

无论是做实验还是练习,都尝试着更进一步地了解与学习。经常这样做将会给你带来无穷的收获,驱使你不断查阅所学语言相关资料。这样做有两大优势:第一,学习该语言的文档结构并熟悉它;第二,加深概念,帮你解决一些细小问题。

例如,你正在听一堂学习如何使用HTML5和JavaScript制作音频的课,那么你应该进一步问问自己:“该如何控制音量呢?”解决这个问题后,你就可以更加深入的掌握代码。

4. 通过许多小例子学习——而不是大项目

开发很多实用的小例子,最后把这些例子组合成一个项目。在早期常会犯这样的错误,没有进行相互隔离。

其实,采用隔离的方式学习各种语言技能是很重要的。比起学习个人技能,集成是个更复杂的过程。在你对一门语言有了坚实的基础后,集成确实是最好的学习方式,否则很有可能会混淆概念。

5. 让程序运行

一定要让程序跑起来。即使出现多个bug,也要认真调试,直到能够正确运行。想要打开一扇门,则必须要关闭一扇门。当你学习一门新的语言技能时,肯定希望以后能有较高的技能水平。有时,你很容易放弃或者跳过某个小缺陷,使该问题一直处于悬而未决的状态——这样做很危险。

除此之外,没有比这个更兴奋的事情了——第一次看到自己编写的应用程序跑起来。

二. 注意点与方法

1. 基本数据类型,如整型、字符串、静态数组、动态数组

2. 集合(如队列、列表、Map、Set)

3. 文件操作

4. 网络(尤其是socket)

5. 多进程

6. 多协程(例如Go语言的goroutine,Java语言的Akka),可能你会奇怪我为什么没有提及多线程,那是为了强调协程的重要性,^_^

7. 反射(如果该编程语言支持反射的话)

8. 序列化,反序列化

9. 数据库

10. 主流的日志库

11. 配置文件解析(普通键值对配置文件和 XML 格式的配置文件)

12. 版本控制工具,如 GIT

13. 编程规范,例如该编程语言约定俗成的注释风格

14. 详细设计的层次最好不要超过 7 层,接口参数最好不要超过 7 个,单个模块的内部层次最好不要超过 3 层

15. 学习一门函数式编程语言,例如 Lisp

16. 学习一些脚本语言,例如 shell, javascript

17. 学习主流的数据保存格式,如 JSON, XML

18. 使用主流的工程组织结构来进行开发,如 Java 的 Maven 工程模板

19. 一般,我们都会有一些工程开发必备的单例,Config:定义、保存工程编译后可变属性;Define:定义、保存工程编译后不可变属性;ErrorCode:定义开发所需的错误编码;GuiElemText图形用户界面上控件的文本定义(例如 Button 上的文本)GuiPromptMessage:保存图形用户界面上的提示信息Status:定义系统状态

20. 使用该编程语言的主流框架,并探究其设计思想和源码

转载于:https://www.cnblogs.com/leonxyzh/archive/2012/10/09/7289173.html

你可能感兴趣的文章
顺序容器 (2)string类型操作
查看>>
转载:我最近的研究成果(IGeometry.Project and IGeometry.SpatialReference)
查看>>
提示框
查看>>
HDOJ1233 畅通工程之一(最小生成树-Kruscal)
查看>>
14Spring_AOP编程(AspectJ)_环绕通知
查看>>
PHP之打开文件
查看>>
iOS - OC SQLite 数据库存储
查看>>
PHP-mysqllib和mysqlnd
查看>>
Redis常用命令
查看>>
NeHe OpenGL教程 第三十五课:播放AVI
查看>>
Linux下ping命令、traceroute命令、tracert命令的使用
查看>>
js replace,正则截取字符串内容
查看>>
socket
查看>>
Highcharts使用表格数据绘制图表
查看>>
Thinkphp5笔记三:创建基类
查看>>
LNMP之编译安装PHP出现的问题
查看>>
hdu5373
查看>>
4.单链表的创建和建立
查看>>
testng生成报告 testng-xslt 美化测试报告
查看>>
Android 好看的搜索界面,大赞Animation
查看>>