冒号和他的学生们
——程序员提高班纪事
<!---->
3. 语言选择
尺有所短,寸有所长
——《楚辞》
问号觉得自己的问题并未解决,追问:“这么多种语言,仅凭流行度就能分出主次优劣吗?”
“流行度当然不是唯一的指标。”冒号答道,“语言的主次优劣因人而异,答案在你们自己身上。还是刚才那句话,唯一的老师是你自己。”
看到大家期待的目光开始黯淡,冒号接着说:“评书里名师授艺时,常常要徒弟自己挑选称手的兵器。威武的刀,灵活的枪,飘逸的剑,浑厚的棍,粗犷的斧,霸道的锤,诡异的鞭,无不谙合武者的个性。评判语言优劣,如同争论兵器高下,倘若撇开使用的主体和对象,皆为空泛之谈。”
句号若有所悟:“所以好的语言就是适合编程者和解决对象的语言
。”
“非常正确!”冒号赞许道:“这就是问号同学要的答案。”
引号并不满足:“可我记得评书里经常描述高手的一句话
:十八般兵器样样精通。”
冒号一笑:“兵器虽多,其理相通,高手精通多种兵器何足为奇?但如果让赵云使锤,李元霸使枪,武力恐怕还是要大打折扣吧?”
逗号依然困惑:“我们如何判断一种语言是否适合自己,是否适合解决对象呢?”
冒号看出大家共同的疑惑,不紧不慢地说:“要想从中选择,自然先得了解,不然怎知兵器称不称手,合不合用?现在进入正题,我们先对计算机语言作个简要的回顾。”
大伙均想,总算要挠着痒处了。
“计算机语言是人用来指挥计算机的语言,按其发展历程通常分为五代。”冒号说完在黑板上写下——
第一代语言(
1GL
):机器语言
第二代语言(
2GL
):汇编语言——
IA-32 Assembly
,
SPARC Assembly
等
第三代语言(
3GL
):高级语言——
Fortran
,
Pascal
,
C
,
Java
,
VB
等
第四代语言(
4GL
):面向问题语言
——
SQL
,
SAS
,
SPSS
等
第五代语言(
5GL
):人工智能语言——
Prolog
,
Mercury
,
OPS5
等
<!----> <!---->
冒号补充道:“也可简单地将前两代统称为低级语言,其他的统称为高级语言。语言从低级到高级,离机器语言更远,离人类语言更近,因而更易读写、调试和维护,安全性、通用性和可移植性更强,开发效率更高,更加抽象和宏观;但同时运行速度和效率下降,用法和功能上局限性更大。如果拿兵器作比,高级语言好比长兵器,威力强大却难免滞重,长于大型应用,可谓‘一寸长,一寸强’;低级语言好比短兵器,轻便灵活却难免风险,长于底层应用,可谓‘一寸短,一寸险’。”
大伙心里话,敢情来这儿不像是学编程的,倒像是学武术的。
叹号说道:“我看还是高级语言好,现在谁还学低级语言啊?”
冒号纠正道:“低级语言既不低级也不过时,只是随着高级语言的出现,计算机硬件性能的提高,渐渐有些边缘化了。虽然几乎没有人用机器语言编程了,汇编语言仍有其用武之地。常见的有:包括嵌入式系统在内的系统开发,如操作系统、编译器、驱动程序、无线通讯、
DSP、
PDA、
GPS等;其他对资源、性能、速度和效率极为敏感的软件开发;以信息安全、软件维护与破解等为目的的逆向工程等等。即使你不打算从事系统开发,也不想作红客、黑客或骇客,掌握汇编语言对你深入了解计算机内部运行机制、调试软件和改进程序中某些关键代码的算法也是有帮助的。”
引号提出:“好像有些书上把
C语言称为中级语言。”
冒号答道:“这是因为
C兼具高级语言和低级语言的特征。一方面它提供了高层抽象和可移植性,使程序员更多地专注问题逻辑而不是机器逻辑;另一方面它也提供诸如指针、位字段(
bitfield)等工具进行底层操作,甚至可直接内嵌汇编代码。
C语言既简洁灵活又高效强大,是迄今为止最具影响力的语言。几乎所有的操作系统和大多数高级语言都用它来实现,
C家族的语言
C、
C++、
Java、
C#、
D、
Objective C等占据主流语言的半壁江山。如果再拿兵器作比,
C语言就是一把剑,轻灵飘逸、锐利快捷。一名武将无论擅用什么兵器,往往都会腰悬宝剑。不会
C的程序员正如不会使剑的武将,无论如何都是一种缺憾。相比之下,汇编语言就像小刀匕首,而机器语言则近乎赤手空拳了。”
句号灵光一闪:“我明白了——西门吹雪的西来一剑,那是
C语言;李寻欢的小李飞刀,那是汇编语言;陆小凤的灵犀一指,那是机器语言。”
大家会心地笑了。
冒号也笑言:“这位是古龙的粉丝吧?武侠小说里的侠客多轻功高绝且喜单打独斗,故使用轻、短兵器居多;而历史小说里的战将多骑马进行大规模作战,故除了佩剑外,使用重、长兵器居多。这就是前面提到的,中低级语言更适合中小型或底层应用,高级语言更适合大型应用。”
众人活跃起来,开始议论纷纷。冒号放耳听去,净是些古龙金庸、三国水浒里的人物,暗想:通俗小说到底比编程吸引人啊。
<!----> <!---->
分享到:
相关推荐
### 冒号和他的学生们——程序员提高班纪事 #### 知识点概览与解析 在《冒号和他的学生们——程序员提高班纪事》这本书中,作者深入浅出地介绍了编程学习过程中的重要概念和技术要点,并结合实际案例帮助读者更好...
如果你从这下载了第一部分了。这一部分是对第一部分的一个概括和总结。指明了文章中讲了哪些问题,又是如何解决的。
这篇资料主要讨论的是高考语文复习中的一个重要专题——语段组合型选择题,涉及词语的选用、病句的辨析和修改、标点符号的正确使用以及语言表达的连贯性。以下是对这些知识点的详细说明: 1. **词语的正确使用**: ...
第二个选择题则综合考查了引号、逗号和句号在表达情感和强调事件时的正确位置,使学生能够在写作时注意标点的修饰作用。第三个选择题通过句子结构的变化,让学生把握标点符号在表达态度上的重要性,进一步理解标点...
2019-2020学年高中语文课时作业3——《老人与海》新人教版必修3,作为经典文学作品的教学范本,不仅仅是对学生文学鉴赏能力的培养,也是对学生语文基础知识的全面考查与实践。 在汉字拼音方面,课时作业通过对...
小学阶段的阅读教学是儿童语言能力和思维能力发展的重要阶段,主要涵盖了汉语拼音、识字、写字、词语理解、句子构造和标点符号的使用等多个方面。以下是对这些知识点的详细阐述: 1. 汉语拼音:一年级的学生需要...
通过本课的学习,学生们不仅能够掌握书信写作的基本知识和格式要求,还能了解到书信作为一种特殊的人际交往方式所具有的独特魅力。书信不仅仅是文字的组合,更是情感和思想的传递。希望学生们能在日常生活中尝试写信...
本课重点在于帮助学生理解和运用各种常见的标点符号,包括逗号、句号、感叹号、问号、冒号、引号、书名号、顿号、分号、省略号以及破折号。 1. **逗号 (,)**:用于分隔句子中的成分,表示停顿,通常用于列举或连接...
在中考语文考试中,标点符号的运用是考察学生语言基础能力的重要方面,考生需要掌握各种标点符号的规则,包括逗号、句号、问号、感叹号、引号、冒号、分号、顿号、省略号、书名号、括号等的用法。 【文档描述】未...
- 题目中出现了多项选择题,这些题目考察了学生对各种标点符号的运用,如问号、句号、逗号、冒号、引号、分号、破折号等的使用规则。 - 第一题考察的是问号的正确使用,以及疑问句与陈述句的区分。 - 第二题涉及...
通过这个练习,学生可以深入理解并掌握标点符号的用法,提高语言表达的准确性和清晰度,这对于日常写作和阅读理解都至关重要。正确使用标点符号能帮助传达准确的信息,避免误解,增强文本的可读性。
在这个案例中,教学设计针对一年级语文课文《古井》,目的是帮助学生理解和欣赏课文内容,同时发展他们的语言技能。 2. 课文分析:《古井》描述了乡村的古井如何为村民提供水源,并通过古井的故事,传递了无私奉献...
本实验旨在通过实际操作加深学生对单片机原理及应用的理解,重点掌握单片机控制系统的基本设计方法,特别是通过汇编语言实现对单片机的编程。实验的具体内容包括绘制电路原理图、编写汇编语言程序以及进行程序的调试...
同时,学生需要理解和运用两种重要的标点符号——冒号和引号,这是汉语表达中不可或缺的工具,能够帮助学生更准确地表达自己的思想。此外,深入理解课文内容,并体会关键词句的内涵,是提高学生阅读理解能力和语言...
3. **情感态度价值观**:通过课文的学习,激发学生的想象力和创造力,认识到思考、观察、创新的重要性。 #### 重点难点解析 **教学重点**在于: - 生字的认识与运用。 - 对课文内容的理解,特别是通过角色朗读加深...
《时语言表达课学写留言条》的学习教案,正是为了帮助学生掌握一种日常生活中极为实用的书面交流方式——留言条的写作技能。留言条以其便捷性和高效性,在无法直接进行面对面交流时发挥着不可替代的作用,特别是在...
3. 标点符号的应用是语文学习的重要部分,试题中指出了一些常见错误,如引号、冒号、逗号的使用,帮助学生巩固标点规则。 4. 语病判断题让学生识别并修正句子的错误,如选项A缺少宾语中心词,选项C滥用介词导致主语...
- 第一人称“我”变为第三人称“他”。 ### 古诗词赏析 - **《大林寺桃花》赏析**: - 作者:白居易 - 主题:表达了作者在意外发现山寺桃花盛开时的惊喜之情。 - 诗句解析:“人间四月芳菲尽,山寺桃花始盛开...
教师在复习指导中,应该注重引导学生理解标点符号在语句中的功能,通过针对性的练习加深印象,帮助学生在实际写作中能够熟练且恰当地使用标点符号,从而提高语言表达的规范性和准确性,最终达到提升语文综合素质的...
2018年九年级语文上册的专项复习三聚焦于标点符号的运用,旨在提升学生的语言组织能力和文本解读能力。新人教版教材在这一部分特别注重培养学生的细节把握和规范使用标点的习惯,这不仅对于初中阶段的语文考试,乃至...