- C语言帝国
- 贴近硬件,运行极快,效率极高。
- 指针和内存管理
- 虽然指针强大无比,能直接操作内存,但是没有提供工具去做越界的检查,导致新手程序员很容易出错。
- 放任内存管理,自己分配的空间自己去释放。
- 关键这些问题编译期不能发现,运行后才出问题,调试麻烦。
- 代码的可移植性事实上并不好,需要使用标准库才行。
- C++
- 特点
- 添加了面向对象的功能
- 兼容C
- 有静态类型检查
- 性能很好
- 但是太复杂了
- 特点
- Java
- 特点
- 语法像C
- 没有指针
- 不考虑内存管理
- 真正的可移植性,编写一次,到处运行
- 为了实现跨平台,在操作系统和应用程序之间增加了一个抽象出:Java虚拟机。除非个别情况,都不用看到操作系统。
- 面向对象
- 类型安全
- 发展
- Applet起家
- 三条腿走路
- J2SE
- Swing界面难看,和原生桌面差距很大,运行需要虚拟机,失败了
- J2ME
- 智能手机(尤其)还没兴起,失败了
- J2EE
- 依靠Web,只有J2EE成功了
- WebLogic等中间件(还有IBM的WebSphere、Eclipse)
- Hadoop
- Android
- J2SE
- 特点