语言真的是相通的吗

来源:互联网 发布:sybase12.5数据库下载 编辑:程序博客网 时间:2024/04/25 23:16

        之前学习C++,一直认为应该坚持STL舍去C里面的字符数组。但现在看看C里面处理类似文本问题却有自己的一套完备的方法。就拿给字符串排序来说吧,C的做法是先把待排序的字符串存在字符串数组中,另设一个和数组大小相同的字符指针数组准备排序,这里用的是指针排序,其实就是排原来数组的下标。这种处理方式带来的好处就是从来不用拷贝字符串,从新创建字符串。但如果用C++里的string怎么能做到避免赋值字符串呢,几乎不可能。

      就拿这个最简单的例子,我感觉就能说明语言之间的关系,语言在理论上的确是相通的。但是他们看问题的角度不同,就带来了不同的思维方式,思维方式是不同的,解决问题的出发点就不同。封装更好的高级语言让你站在更高的角度看问题如C#,Java。封装不够完备的语言让你更适合什么都自己去控制。其实这就带来了解决问题领域的不同。没有人会认为C是一个适合做界面的语言,相反做系统级的软件没有人会把C排除在外。

      这里丝毫没有说明语言优劣,恰好说明的每种语言有各自适用的场合,什么场合用什么工具。这是我们要注意的。另外如果不能对某种语言有个全面的了解,亲自做很多实践,当然也就不知道它的缺点所在。这时候遇到了其他语言只能看到相通,而不能看到不同。

     总之,实践出真知,我们最好不要去做评价,不做怎么知道呢。还有我们也要广,不知道一门语言提供哪些库,就不知道这门语言都能做哪些事,所以对一门语言最好要有个全面的认识,而不是上来就打算去精通它。

     写的很乱,水平有限,欢迎拍砖。

原创粉丝点击