昨天看到一篇以“ C语言已经死了,5个需要忘却它的理由(点击查看原文)”为标题的文章。作者列举了五大理由具体说明了C 语言已经“死掉”的现状。
C 语言到底有没有“死掉”呢?语言之争何时可以真正的“寿终正寝”呢?
一种计算机语言的诞生必有其单纯的目的。作为一个程序员应该明白最好的不一定是最适合自己的,最适合自己的才是最好的。如果你做桌面应用开发,Basic 语言可以帮你很大的忙,除此之外你有很多的选择。如果你在开发嵌入式软件,那么就没有这么幸运了,除了 C 和汇编语言,你几乎没有什么选择的余地。
C 语言和汇编语言一起构筑了许多 PC 操作系统、嵌入式系统、应用平台的“地基”。由于它们的底层性,大多数用户包括部分程序员都不可能经常接触到它们。在 Windows 平台上书写程序就会与 Windows API 打交道,其对外的所有接口都是 C 、C++ 形式;在所有你能够知道的操作系统上,也许没有一款 Java 虚拟机,但一定有一款 C、C++ 编译器;在国际上,C、C++ 语言是描述 ISO 众多协议的标准语言。那么如果 C 语言真的“死亡”,会有什么影响呢?
如果没有C语言:
我们将等待下一种可以用来与汇编语言匹配书写操作系统底层的语言,而在此之前,我们是不可能使用 PC 了;
我们的电冰箱和洗衣机不能使用了,没想到吧!但这是事实,因为 C 语言在嵌入式开发中担当着非常重要的角色;
微软、Sun、IBM 的多数软件系统可能不会再升级了,因为构筑它们的底层协议和标准消失了;
C 语言诞生在一个特定的环境和年代,有着强大的功能,在可以预见的未来,它的角色是无可替代的。C++ 语言曾一直以替代 C 语言为自己的重要历史使命之一,但历经多年之后,C++ 之父公开承认这一点已不能完成了。仅在嵌入式设备领域内,由于使用 C++ 语言的某些功能需要较大的运行时开销,所以迄今为止 C++ 语言依然不能占据到嵌入式程序开发中 50% 以上的份额。
过分的追捧亦或贬低某种语言都是不对的,它们各自有着存在着的理由,有着各自适应的领域。只有 C 、C++ 语言的开发世界是不完美的,在它们不适合的领域,其它语言已经成功的介入。而且,一种语言是否适合存在、何时“死亡”是由很多因素决定的,并不可能因一个人、一个公司来决定“废立”的。也有某些语言虽然有着自己的国际标准,但实际的标准确掌握在某个公司的手里,亦同样为大众所接受。
不要过分去追求语言的不到之处,或动辄就将其“消亡”,努力改正我们自己的错误视角,不断进步,提高自己才是硬道理。
来源链接:http://tb.blog.csdn.net/TrackBack.aspx?PostId=1477125
相关文章链接:
51CTO.COM独家特稿:为什么每个程序员都应该学习C语言?
51CTO.COM独家特稿:每个程序员都应该学习C语言?我可不这么认为
51CTO.COM独家特稿:C语言已经死了,5个需要忘却它的理由
更多网友讨论内容,请进入专题:“C语言是否该扔进垃圾桶”专题
(责任编辑 火凤凰 sunsj@51cto.com TEL:(010)68476636-8007)
|
· 未来游戏设计将要面临.. · 矩阵!Google Earth挑战.. · 能够改变IT格局的五大.. · WindowsMobile应该如何.. · 如何用正则删除不包含.. · Spring2 Hibernate3 Ju.. |
· 多核处理器趋势对软件.. · 用PHP V5开发多任务应.. · 一种2D游戏引擎的设计.. · C语言达人进 · 请教一道简单的C语言问.. · c语言初级入门 |
|
|||
| · 51CTO主编推荐经典专题 · RAID——磁盘阵列基础 · 充电计划之热门IT认证.. · 51CTO技术自测 挑战自.. · CISSP认证成长之路 · AMD Phenom三核处理器.. · 国际文档格式标准开战 · 2007年互联网大会 |
· 我是黑客我怕谁——讲.. · ARP攻击防范与解决方案 · Solaris 10 配置管理 · Solaris基础知识入门 · RIP路由协议专栏 · MPLS路由协议专栏 · OSPF路由协议专栏 · 思科路由器产品 |
||
|
|||
| · Java基础教程 · VPN技术 · ARP攻击防范与解决方案 · SQL Server 2005全解 · SOA 面向服务架构 · SQL Server 2005全解 · Java编程开发手册 · RAID——磁盘阵列基础 |
· 三层交换技术专题 · SQL Server入门到精通 · Windows Server 2003企.. · Windows远程桌面应用 · C#技术开发指南 · VPN技术 · Solaris 10 配置管理 · C#技术开发指南 |
||
|
|||
| · ARP攻击防范与解决方案 · VPN技术 · SQL Server 2005全解 · Java基础教程 · SQL Server入门到精通 · SQL Server 2005全解 · SOA 面向服务架构 · Java编程开发手册 |
· C#技术开发指南 · 三层交换技术专题 · C#技术开发指南 · Windows远程桌面应用 · RAID——磁盘阵列基础 · Windows Server 2003企.. · 邮件服务器专题 · wimax技术与趋势 |
||
| ·DB2 Viper快速入门 ·DB2 9数据库的镜像分割与.. |
·将XML应用程序从DB2 8.x.. ·DB2 9中的pureXML:如何.. |
| ·服务器中的“傻瓜机”在.. ·盖茨也喜欢登录Youtube看.. |
· · |
| ·拯救系统管理员 ·美国选民:我为什么选布什 |
·VMware公司中文命名挑战赛 ·我们真缺乏创新吗? |
| ·J0ker的CISSP之路:复习-.. ·J0ker的CISSP之路:复习-I.. |
·9月第3周安全回顾 内网安.. ·教你几招识别和防御Web网.. |
| · NGN:下一代网络 · 网络访问中断大排查 · FTTx光纤接入 |
· 教你使用Anti ARP Sniff.. · 网络嗅探教程:使用Snif.. · 常见病毒手工清除方法大.. |
| · C++是垃圾语言?! · 2007年IT界七大抄袭事件 · Java实用开发全集 |
· 解析Ajax开发框架 走进A.. · 基于Google Maps与Ajax.. · 基于Google Maps与Ajax.. |
| · 热门 IT 培训认证官方资.. · Ubuntu 中文开源频道 · Solaris基础知识入门 |
· 费力不讨好 数据中心主.. · AMD Phenom三核处理器解.. · 51CTO主编推荐经典专题 |
| · 甲骨文Oracle 11g正式发.. · Oracle数据库开发之PL/S.. · Oracle数据库开发基础教.. |
· 存储2006,一个并购的大.. · IDC宣布浪潮蝉联存储市.. · 双机热备技术 |