不同编程语言的强大和劣势、混乱、编译警告

发布于:2024-10-15 ⋅ 阅读:(142) ⋅ 点赞:(0)

编程语言的强大和劣势

人类的致命缺点就是总喜欢过分夸大自己长处、贬低别人短处,而能三思理性看待得少之又少。基本所有编程语言都自诩功能强大,事实上,它们都各有自己的长处,缺点也很明显。

不同编程语言的强大和劣势

  • C语言非常适合写内核和驱动程序,因为当初它就是为创建操作系统而生。正因为此,它和硬件非常紧密,汇编语言和它是极好的朋友。缺点便是太过于底层,上层复杂应用很难直接用C写完,尤其是有很多业务处理,用C语言程序员会崩溃。

  • C++作为一门高效可用于大型化设计的语言,在游戏引擎、不依赖虚拟机的基础类库和重要高效的底层引擎都有它的影子。面向对象的设计和泛型思想去写底层引擎简直是如虎添翼,有性能和精简,没有GC, 没有太多类库,大型的上层应用很难直接用它去编写,普通程序员进去会bug不断,痛苦度日,惶恐不安。举例,QT包含众多C++类库,可让C++程序员好受一些。

  • Java的流行建立在硬件性能飞速提高以及互联网和更广泛的移动互联网繁荣,并依托平台无关特性,大量应用于服务器端和手机客户端,比起C++有”更高效的内存管理”,更安全有效。大量服务器后台和移动端APP使用Java构建。缺点也很明显,占内存耗内存,不提供精准地底层控制,不适合编写底层代码。

  • Shell语言作为类Unix OS交互的首选,更注重和用户CUI交互。和操作系统内核的基本交互,不需要单独写一个程序去做,用Shell自带或者已编写的内置程序即可。如果去写业务或者底层逻辑,它完全或者很难胜任。

  • Python作为新时代AI语言,脚本的优势显而易见,简洁迅速,不拖泥带水,上层用Python,底层库用C++或其他效率更高的语言搭配,简直是不服不行。缺点也是效率不够高,不要指望用Python能高效实现大型游戏服务器所需的每秒30帧快速响应,除非硬件是白送。

混乱

每个公司都有自己的屎山,所有有理想要重构的程序员刚开始很激动,往往后来热情就逐渐退却了。

编程语言的混乱

  • 越高级的编程语言,语言本身的混乱越来越少,有编译器和类库的支援,想写混乱都难。除非是代码逻辑混乱了。

  • 早期的编程语言,应该说编译型靠近硬件的编程语言,可以相当混乱,这仅仅是语言层次的混乱。语言支持这么混乱的表达。C语言混乱大赛就是一个例子。

编译警告

有时警告是没用的,普京说,多少次警告都不如飞机翅膀振几次。

不同语言的编译警告

  • C语言可使用-Wall打开所有警告,也可以将某些或所有警告设置为error.


若文章对您有帮助,欢迎关注。助您在编程路上越走越好!

微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是程序员小迷(致力于C、C++、Java、Kotlin、Android、iOS、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。


网站公告

今日签到

点亮在社区的每一天
去签到