学习一种新的编程语言ABC

时间:2023-02-11 21:30:01

最近空了下来,难得的手里一个项目也没有,作为技术积累,打算了解下COBOL语言。看了几篇介绍COBOL语法的文章,感觉很多文章无从看起。也许是我岁数大了,理解能力退化了,看到的文章大多是给了一堆例子,或者干脆就是简单的语法罗列,看得我头绪纷繁,三、四篇文章看下来,手里攒了十几个问题等待继续调查。这才发现,前段时间连我自己整理出来的关于bsh和vi的资料其实也只是为了自己工作的方便而弄出来的速查手册而已。拿去给新手看固然是云里雾里,给老手看多办也是半通不通。

回头想想当初谭浩强的c语言教科书,再想想现在遇到的困难,感觉学习一门新语言毕竟还是很难的。不如先搞清楚要学习一门新语言,从哪些方面入手最容易呢?

也许先整理下我的学习思路,然后再根据整理出来的思路去有目的的查询资料。可能这样效果会好一些的吧。下面的问题列表,对于编程新手,帮助不大;主要是针对有几年编程经验、正准备为了新项目或者技术积累做些准备工作的业内人士写的。希望对大家有所帮助。

学习语言的基本观点:

 1、语言的使用环境是什么样的?它为什么会这样?简单的说明语言的发展历史;它有哪些不同的版本?最常用的版本是什么名字?由谁提供标准?由谁提供服务?如何联络服务提供者?他们能提供怎样的服务?我是在何种硬件/软件环境下工作?该语言需要何种硬件/软件环境?  

2、为什么要学习这种语言,这种语言存在和发展的理由是什么?在何种情况下会使用它?它有哪些优点,又有哪些缺点?他肯定不是凭空产生的,是从哪种语言发展而来 的?当时会发展出这种语言的需求是什么(基于什么理念设计出这种语言,这点很重要,这点往往决定了这种语言的某些显著特性以区别于其他种类的编程语言,而不是简单的改写另一种语言符号而改头换面)?

3、可移植性如何?考虑到历史上,计算机硬件系统和操作系统和语言版本的复杂性,可移植性是必须考虑的一件事。这方面应该可以在编译器提供者的官方资料中得到相关信息。但是,不能确定越是早期的语言是否越容易遇到这种问题。因为事实上,到目前为止,操作系统版本家族仍然在不断添加新的成员,这种现象并没有停止或者反转的迹象,而且,逻辑上也是不成立的。毕竟将目前在旧版本操作系统上运行的应用实例进行版本升级的成本是相当高的。

4、如何使用这种语言?怎样编写一个hello world源程序?该源程序需要编译才能运行么?如果需要编译才能运行的话,使用什么命令进行编译,需要什么编译参数?如果不需要编译就能运行并得到结果,怎么样运行?

5、语言的常见特征有哪些?可以关注些什么?如何建立索引以便于查询使用?可能的答案如下:文件格式、字符格式、有效字符集,语法单元、逻辑运算符、保留字、关键字,数据类型、常量、变量,语法单元组合形式,逻辑判断语法、逻辑循环语法、分支判断语法、流控制语法,自定义函数、参数,系统函数、标准库函数……

6、该语言是否仍在修订中?最近的修订计划是什么?由谁负责维护和执行?如果发现BUG或者要提出自己的要求如何联络他们?(某些情况下,也需要考虑)该计划的投资人或者负责人是谁?

7、建议进行的步骤。在标准输出中显示指定字符和数字。进行字符运算和数字运算、逻辑运算、逻辑判断。从标准输入中读取信息。将字符和数字输出到指定文件中。从指定文件中读取信息。参数传递。

尤其重要的是,在精心准备的例子中,务必说明你想要说明的是什么,以及相关还有哪些内容未作说明。这将是你以后使用这些例子与否的重要参考依据。另外,给出参考资料的连接也是个好习惯(最好是能够明确指出参考了哪一部分)。