正在加载图片...
在作为一种编程工具的意义上,我们认为C++ Builder和你也许常听的vC( Visual o+ 没有什么本质的区别。就像Word2000和WPS2000在本质都是字处理软件。但现在我们要从 另外一个角度讨论C++ Builder这个编程工具。 这个角度,就是“封装”一一面向对象编程思想中的最重要也是最基础的概念, 一个要学习编程的人,可能从C开始学起。学C时,我们没有接触那些挺玄的概念,到 了C++,一切就来了,什么面向对象,什么封装、继承、多态……于是我们兴奋起来,努力 去理解,掌握,运用这些概念所代表的技术,在掌握这些别人暂时未理能的概念之后而颇 有成就感…。现在我要问的是,为什么要有这些概念?这些技术?正确回答这个问题 不仅有助于我们今后对编程语言各种概念的学习,而且它能让我们避免成为新技术的奴隶 这一切也许听起来有些形而上,不过我想通过以下讨论,至少可以回答一个很现实的 问题:为什么要选C++ Builder?而不是我们更常听的vC?这是我碰到的编程初学者较疑 惑的问题之 如果人类长有翅膀,那么飞机大抵永远不会被发明。飞机的发明,是为了弥补人类自已 不能飞翔的缺陷。不能说所有的技术都是这样,但C++对于C的发展,完全是为弥补程序员 脑力的不足。一个在校生在学会C后,往往并没有机会用C去实践一个大中型的项目,体 会不到在一个庞大软件工程中,非面向对象语言的短处,所以在之后学习C++的过程中,也 就很难真正体会到面向对象语言的长处。简短一点说:不知道C的短处,就不懂C++的长处。 相反,倒是很快就发现C++的缺点:它的代码效率多数情况下都要比C低不少 前面我们说过低级语言与高级语言的对比。C++语言也正是从语法结构,语言功能上来 限定或实现一门编程语言更加接近人在现实生活中的思维习惯,从而达到减轻人的记忆和 判断上的负担。这其中最佳的方法之一就是所谓的“封装” 关于封装,初学阶段最直观的比喻就是抽屉。抽屉将各种对象分门别类地进行存储。譬 如中药房,上千种的中药被上千个贴有标签的抽屉“封装”起来,这一充满艺术性的“封 装”,使一个一点不懂中药的人也可以去当抓药师,相反,如果没有这些“封装”呢?在作为一种编程工具的意义上,我们认为 C++ Builder 和你也许常听的 VC (Visual C++) 没有什么本质的区别。就像 Word2000 和 WPS2000 在本质都是字处理软件。但现在我们要从 另外一个角度讨论 C++ Builder 这个编程工具。 这个角度,就是“封装”——面向对象编程思想中的最重要也是最基础的概念。 一个要学习编程的人,可能从 C 开始学起。学 C 时,我们没有接触那些挺玄的概念,到 了 C++,一切就来了,什么面向对象,什么封装、继承、多态……于是我们兴奋起来,努力 去理解,掌握,运用这些概念所代表的技术,在掌握这些别人暂时未理能的概念之后而颇 有成就感……。现在我要问的是,为什么要有这些概念?这些技术?正确回答这个问题, 不仅有助于我们今后对编程语言各种概念的学习,而且它能让我们避免成为新技术的奴隶 ——这一切也许听起来有些形而上,不过我想通过以下讨论,至少可以回答一个很现实的 问题:为什么要选 C++ Builder?而不是我们更常听的 VC?这是我碰到的编程初学者较疑 惑的问题之一。 如果人类长有翅膀,那么飞机大抵永远不会被发明。飞机的发明,是为了弥补人类自已 不能飞翔的缺陷。不能说所有的技术都是这样,但 C++对于 C 的发展,完全是为弥补程序员 脑力的不足。一个在校生在学会 C 后,往往并没有机会用 C 去实践一个大中型的项目,体 会不到在一个庞大软件工程中,非面向对象语言的短处,所以在之后学习 C++的过程中,也 就很难真正体会到面向对象语言的长处。简短一点说:不知道 C 的短处,就不懂 C++的长处。 相反,倒是很快就发现 C++的缺点:它的代码效率多数情况下都要比 C 低不少。 前面我们说过低级语言与高级语言的对比。C++语言也正是从语法结构,语言功能上来 限定或实现一门编程语言更加接近人在现实生活中的思维习惯,从而达到减轻人的记忆和 判断上的负担。这其中最佳的方法之一就是所谓的“封装”。 关于封装,初学阶段最直观的比喻就是抽屉。抽屉将各种对象分门别类地进行存储。譬 如中药房,上千种的中药被上千个贴有标签的抽屉“封装”起来,这一充满艺术性的“封 装”,使一个一点不懂中药的人也可以去当抓药师,相反,如果没有这些“封装”呢?
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有