`

Java、Swing以及面向对象思想(转载)

阅读更多
转载自http://blog.sina.com.cn/swingjava

Java是面向对象语言的典范,学习Java的意思不仅仅是指学习Java语言,还要包括无比广阔的Java技术和思想。其他计算机语言如C,你完全可以在学会了C语言之后,说我会C,但在Java这儿却只是个开始。Java的语言很简单,很容易入门,但是真正的Java牛人是拿着Java这把雨伞走遍了 Java技术世界的角角落落的人,他必须有着无比广阔的Java技术和思想。面向对象的语言尤其像Java都有一个极其深厚的平台,语言只是你利用这个平台的工具,而这个平台为基础的技术和思想才是你要不断学习和掌握的。

Swing是Java完美展现了面向对象思想的精华,可以说各种著名的设计模式都可以从其中清晰的找到,所以学习Swing的过程也是提高你面向对象编程技术的过程。甚至你能从中领悟更高层次的编程哲学。当然对于那些不习惯面向对象思想,或者虽然使用面向对象语言却并没有深刻理解的人来说,Swing的确是很复杂,很困难,这是因为这些人还没有从面向过程、回调函数等为主要特征的传统界面工具的思想和习惯中摆脱开来。可以说传统界面开发工具编程思想和习惯严重束缚了他们,使得他们在学习Swing这种极具面向对象精神的工具时觉得很困难。

我记得以前上学时老师说,学习面向对象语言比较慢的人往往是那些C/PASCAL等传统过程语言非常精通的牛人。如果你以前没有传统计算机语言的基础,也许你学习面向对象语言的速度更快。这是因为面向对象语言的模型更能贴切地描述现实世界事物的模型,而传统过程性语言的编程思想往往束缚了你往真实世界转换。

这使我想起金庸小说里面武林高手往往很难练成某项绝顶内功,而身无任何武功基础的主人公却往往能在极短的时间内练成这项武功,就是这个道理:复杂无用的武术招式往往是没有用的,真正的绝顶武功恰恰是最平凡不过的道理,武林高手被虚幻的假相迷惑在以往的招式中,却习惯不了武功的最真实、最简单的道理。

Swing和传统语言的界面工具之间的关系恰恰像面向对象思想与传统面向过程思想之间的关系,如果一个人有太深厚的MFC经历,他往往觉得Swing难以掌握,往往觉得SWT比较容易学习,这是因为SWT更接近以前他们的学习模型。所以我认为学习Java和Swing的能力,一些没有太多编程背景的初学者往往要比那些C/C++程序员学得要快,就是这个道理。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics