现代软件工程 第一章 【概论】练习与讨论

1、像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的“软件”,和同学们比较一下各自程序的功能、实现方法的异同等等。(苏志华)

7、有人认为,"中文编程", 是解决中国程序员编程效率一个秘密武器,请问它是一个 "银弹" 么? (苏志华)

  中文编程并不单指程序是由汉字组成,更要在于其编译技术得自身掌握,因而编程和编译互为统一发展、缺一不可。但汉语的博大精深,经常会出现歧义和地域性差异,导致汉语编程的统一风格很难实现。例如从http://weibo.com/2210132365/BiYTws20这一链接的内容来看,虽然简单实现了中文编程,可仍然是中英混杂在一起,代码的可读性不强,并且在编写的过程不停切换中英文则大大降低了效率和用户体验。http://www.chinesepython.org/ 该链接里提出"中蟒"这一基于Python的中文编程语言,利用了Python编程格式的优点,但并没有实现其他语言的汉化,因而表示不出C、Java、C#等编程语言的优势,另外其平台的扩展性也不是很好,只在部分linux和windows上测试过,同时繁体字也未达到简洁明了的初衷。正如http://baike.baidu.com/subview/545069/545069.htm所言,汉语编程需要具有易用性、安全性、本地化、国际化、跨平台、融合性、先进性、自然醒、无代码编程等特点,但就目前的编程环境来说,单单文件的中文名就可能会导致整个程序的崩溃,更别提庞大的汉语编程,而完全利用中文编程来开发软件、国际化和跨平台的实现尤为困难。综上所述,个人认为"中文编程"还算不上是"银弹",其应用场景的不广泛性和较差的用户体验、开发的难度等缺点,仍不足以在IT界刮起革命的风潮。

9. 快速看完整部教材,列出你不懂的 5 - 10 个问题,发布在你的个人博客上。(苏志华)

详见http://www.cnblogs.com/xlwm/p/5850260.html

12. 我们不是在真空里谈软件工程, 软件要运行在硬件芯片上面, 浅谈计算机芯片的发展历史。(苏志华)

正如软件要运行在硬件芯片上面,一个好的软件的必备性便是硬件的可兼容性。电脑芯片的诞生于发展则被誉为20世纪最伟大的发明之一。而芯片技术决定了计算机升级换代的发展速度,每一代的芯片技术,都导致一代新型计算机的诞生。半导体技术本身就代表了科学的重大突破,世界上第一台现代电子计算机ENIAC的"大脑"便是第一款电脑芯片。随着时间的推移,微处理芯片推进着时代发展,Intel公司推出的4004、8080等芯片彻底引发了电脑界的革命,电脑再也不是当时人们所认知的"庞然大物",它们为其走进千家万户创造了必要条件。而在1981年,IBM的个人电脑使用英特尔的8088微处理器,更是将两家公司拔高到如日中天的地位。1993年,Intel Pentium处理器的问世,宣告个人电脑开始进入多媒体时代,进而推动了世界的互联网发展和全球化趋势。针对中国来说,我国虽然是世界第一制造业大国,世界第一贸易大国等,全球手机和电脑大多为中国制造,可是每年却要进口超过2000亿美元的芯片,整个集成电路产业受制于欧美,中国芯片发展仍然有着不小的挑战。但我国以自力更生,艰苦奋斗的精神大力研发自主技术一直从事于芯片研究,2016年6月20日,新一期全球超级计算机500强榜单公布,使用中国自主芯片制造的“神威·太湖之光”取代“天河二号”登上榜首,这无疑说明我国的芯片技术逐渐发展了起来。可身为当代大学生,尤其是软件工程专业的学生,还是要客观全面认清我国与世界强国的硬件、软件差距,不断探究,才能为未来做更好的规划。

时间: 2024-12-16 22:23:23

现代软件工程 第一章 【概论】练习与讨论的相关文章

现代软件工程 第一章 概论 第11-15题(白文俊)

11.Software,  Software Engineering 等名词的来源,请问 “软件” 和 “软件工程” 这些词汇是如何出现的 - 何时.何地.何人 在看过给的链接原文之后我得出这样的结论: ”software”即“软件”这一名词的使用最早是在1953年8月由Richard R. Carhart发表的一篇工程性的文章中,收录在Rand公司的研究备忘录中. “software engineering”即“软件工程”这一名词的使用最早是在阿波罗11登月计划由著名的女程序员Margaret

现代软件工程 第一章 概论 第9题——邓琨

我采访了一只开发了天津8890便民服务网站系统的团队. - 当时的项目有多少用户,给用户多少价值? 现在还有人用吗? 答:当时项目有近万用户,为天津市民提供便民服务平台,例如联系修理家电.水电气.咨询服务.中介.邮政服务等各种便民服务,集老百姓生活所需服务为一身,通过各种服务接口,统一为人们提供生生活服务.现在还有很多用户正在使用该系统,每天的访问量一直保持增长趋势. - 这个项目能否给我们团队继续开发,源代码/文档还有么? 答:这个项目可以进行二次开发,当时项目团队进行了缜密的版本控制管理与文

现代软件工程 第一章 概论 第1题——邓琨

题目要求: 第一步: 像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 “软件”, 分别满足下面的各种需求.下面这些需求都可以用命令行参数的形式来指定: a) 除了整数以外,还要支持真分数的四则运算. (例如:  1/6 + 1/8 = 7/24) b) 让程序能接受用户输入答案,并判定对错. 最后给出总共 对/错 的数量. c) 逐步扩展功能和可以支持的表达式类型,最后希望能支持下面类型的题目 (最多 10 个运算符,括号的数量不限制):         25 - 3 * 4 -

现代软件工程 第一章 概论 第4题——邓琨

我赞同dijkstra的看法.会一两种编程语言,会写贪吃蛇游戏,会写网站网页,这并不叫会写程序,只能说是管中窥豹,略见一斑.而软件工程是从宏观和微观两个角度教一个人怎么写程序.一是教怎么使用程序语言,怎么设计算法,怎么通过使用语句的组合构成一个可运行的程序:另一方面是怎么进行软件架构,怎么使用设计模式,怎么进行测试,怎么进行运行维护,怎么开发出一个健壮.安全.完善.可靠的软件或系统,它包含多个方面的软件开发技术. 在学校里有的同学算法和数据结构很擅长,例如参加ACM竞赛的同学,他们的编程能力比一

现代软件工程 第一章 概论 第7题——张星星

综合多方面考虑,我认为,”中文编程”并不是一个”银弹”,并不能提高中国程序员的编程效率. 首先,中文编程指的是使用中文书写关键字,如类名.函数名.变量名.常量名等.对编程语言来说,语法关键字其实就是一个符号,和日常语言关系不大.不同的编程语言对应的关键字也不相同,所以中文编程对应的母语优势意义不大,记住几个外语关键字并不会降低开发效率. 另外,中文编程在输入上也没有优势,例如a = 1 和甲 等于 一:而且中文还存在编码问题,运行环境苛刻,使用中文编程要有一系列的支持,如windows中文api

现代软件工程 第一章概论习题第1题 李艳薇

实现自动出题功能: 程序并没有实现全部要求,后续将会继续改进. 实现结果: 程序代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <time.h> using namespace std; #define N 100 bool createProblem(){ int i,op,x; char st[100]; int dt[1

软件工程第一章精读——刘天乐 20194597

第一章 概论 1.1软件=程序+软件工程 “程序=数据结构+算法”——c语言实现二叉树遍历算法 程序对用户的需求 程序对数据进行操作——静态.动态 软件的构建的过程——合理的软件架构(Software Architecture).软件设计与实现(Software Design,Implementation and Debug) 软件企业=软件+商业模式 1.2软件工程是什么 1.2.1软件的特殊性:复杂性.不可见性.易变性.服从性.非连续性 1.2.2软件工程与计算机科学的关系 (1)计算机科学

邹欣老师的《构建之法》第一章“概论”学习笔记与自我随笔

刚读完了邹欣老师的<构建之法>第一章“概论”,四个字形容:酣畅淋漓. 概论将自己的一些模糊的认识清晰化,用准确的文字描述了出来,填补了脑海里的一些灰色地带. 总结一下:概论通俗地阐述了编程.软件.计算机科学.软件工程的联系与区别,简单说,编程是一项具体动作,软件是供人使用的产品,具体有很多种类型,而计算机科学是偏向理论研究,软件工程就像其他工程学一样,是在一定条件下合理配置资源达到生产软件的目的. 本人作为一名从小对编程.软件.计算机感兴趣的Nerd,虽然大学专业与此无关,但刚毕业时签了一份软

软件工程—第一章

软件工程—第一章概述 软件的定义是计算机程序.规程以及运行计算机系统可能需要的相关文档和数据,软件开发存在的问题是由特性决定的,软件危机从爆发到至今依然没有消除. 软件工程以关注软件质量为目标,由过程.方法和工具三要素组成,软件质量与客户.用户.维护人员等提出的要求密切相关,当前面临的主要挑战有:遗留系统的问题.高可信软件开发的要求.软件开发方式的变化. SWEBOK的组成:软件需求.软件设计.软件构造.软件测试.软件维护.软件配置管理.软件工程管理.软件工程过程.软件工程工具与方法.软件质量.

计算机组成原理和结构图式(第一章 概论)

计算机组成原理和结构图式(第一章 概论) 1.计算机硬件概念 CPU(中央处理器) 构成:运算器.控制器.寄存器组 运算器:算术运算(定点数.浮点数)和逻辑运算 控制器:微命令(组合逻辑和微程序控制方式) 寄存器组:存放数据信息和控制信息 存储器 缓存>主存>外存 主存:固定地址CPU按地址访问,与CPU合称主机 外存:先调入主存 高速缓存:CPU和主存之间,集成在CPU内部 输入/输出设备(Input/Output,I/O)外设 总线 分时共享:一发多收 系统总线分为 (1)数据总线(运算器