天天加油 - 助您成才
Java替代C语言的可能性
您正在看的Java是:Java替代C语言的可能性。
Java社群编程转变成能够担负起下一代基础软件开发工作的尖兵,不但难度很大,而且必须花费足够的时间。

    2. Java的内存消耗太大。对于系统级程序来说,内存消耗大,就意味着cache命中率降低,与磁盘交换数据的可能性增大,对性能的影响还是比较严重的。现在很多人还是觉得Java慢,主要的原因已经不是Java跑得慢,而是由于内存消耗过大导致的综合性能下降。这个问题不解决,Java就只能用来做一些比较上层的基础软件。也许随着计算机硬件的发展,这个问题会逐步得到解决?

    3. 风格的问题。这个问题我认为是最严重的。基础软件开发崇尚的是自由、直接、透明、简单、高效,要像匕首一样锋利,像战士一样勇猛,像农夫一样朴实,反对繁琐华丽的设计,反对架床迭屋的层层抽象,反对复杂的结构和不必要的灵活性。而Java社群多年来形成的设计风格与此格格不入,甚至可以说是对立的。 Java在意识形态上是要面向企业应用软件的开发,所以特别强调架构,强调设计模式,强调标准,强调规规矩矩,强调高姿态,强调一种华贵的宫廷气质。在C 中,你吃饭就是吃饭,捧起碗来喝酒,放下筷子骂娘,甩开膀子抓肉,撸起袖子抹油。而在Java中,你经常为了要干某件事,先new一个对象,然后以这个对象为参数new另一个对象,如此这般重复n遍,得到真正需要的对象,最后就是为了调用那个对象的一个方法,就好比吃饭时焚香洗面,漱口净手,战战兢兢,毕恭毕敬。在C中,遇到问题要像亡命徒,像流氓版程咬金,管你三七二十一,冲上去就是三板斧,还怕劈不死你丫的。在Java里,遇到问题要像宋襄公,要张榜檄文,要名正言顺,要礼仪之邦,要把架子拉开了,把谱儿摆足了。Java的口号是,不管劈不劈的死,先把你小子感动了再说。这套繁琐的东西,对于基础软件开发来说,既不必要,也很难习惯。需要说明的是,这不是Java语言的问题,其实Java本身不必如此复杂、如此巴洛克。从语言本身来看,Java也可以是轻快直接的,也可是酣畅淋漓的。只不过十多年来几乎没有人这样用过,所以大家已经不知道:如果不来个一步三叩首,那么该怎么用Java写程序?

    正是因为上面的这种种原因(可能还不全面),直到最近,第一流的基础软件几乎都还是C语言编写的,或者至少其核心部分还是以C为主。而且我认为,在短期内,这种局面不会有大的改变。当然,如果Java社群能够克服上面的这些问题,充分发挥出Java本身的优势,在基础领域开发出一大批一流的支撑软件,那么局面是可以改变的,而且这种改变也是进步的,值得欢迎的。

上一页  1 2 

排行

  1. Mysql linux安装日志
  2. 透视MySQL数据库之更新语句
  3. Silverlight、JavaFX、Flex技术比
  4. Visual Basic Print方法基础学习
  5. VB+Access设计图书管理系统
  6. 红旗Linux桌面6安装图解
  7. 巧妙调用系统功能 一键清除上网痕
  8. 快速浏览局域网络的共享
  9. 重设目录恢复模式下的管理员密码
  10. WinXP恢复管理员密码的五大秘诀
  11. 找回Windows XP密码又一招
  12. Windows XP操作系统登录密码复原
  13. 用C#读取sina天气预报到wap页面
  14. 在C#里实现DATAGRID的打印预览和
  15. Visual C# 常用快捷键
  16. C# WinForm中DataGrid列设置
  1. Mysql linux安装日志
  2. 透视MySQL数据库之更新语句
  3. XP中轻松获取未使用的IP地址
  4. Silverlight、JavaFX、Flex技术比
  5. Visual Basic Print方法基础学习
  6. VB+Access设计图书管理系统
  7. 让Windows XP急速关机
  8. 红旗Linux桌面6安装图解
  9. 巧妙调用系统功能 一键清除上网痕
  10. 快速浏览局域网络的共享
  11. 重设目录恢复模式下的管理员密码
  12. WinXP恢复管理员密码的五大秘诀
  13. 找回Windows XP密码又一招
  14. Windows XP操作系统登录密码复原
  15. 用C#读取sina天气预报到wap页面
  16. 在C#里实现DATAGRID的打印预览和
  1. Mysql linux安装日志
  2. 透视MySQL数据库之更新语句
  3. SQL Server 查询分析器快捷键集合
  4. 专家谈SQL Server 2005 CLR
  5. SQL Server 2005 的安全性
  6. SQL Server 安全加固手册共享
  7. 实现自动安装SQL Server数据库
  8. SQL Server数据仓库的构建与分析
  9. java实现10个数的全排列的应用
  10. Java语言深入 文件和流
  11. 用于挖掘Web日志的数据仓库系统实
  12. 如何使用Java编写多线程程序
  13. Silverlight、JavaFX、Flex技术比
  14. Visual Basic Print方法基础学习
  15. VB+Access设计图书管理系统
  16. 红旗Linux桌面6安装图解

最近更新

  • 推荐阅读
  • Java《Java替代C语言的可能性》Java替代C语言的可能性
    关于我们 | 版权申明 | 广告服务 | 友情链接 | 网站地图 | 使用帮助 | ©2006-2008 TTADD.COM