×

rust取代c语言就是笑话 c 语言

rust取代c语言就是笑话(个人或者小团队选择C语言还是c++)

admin admin 发表于2023-03-28 03:12:26 浏览109 评论0

抢沙发发表评论

本文目录

个人或者小团队选择C语言还是c++

选择c++比较好。特别是小团队开发,更应选择C++。C++的面向对象、类、dll动态链接库以及VS的属性表等等,可以把一个项目更好地分解给多个人来做,最后合成。

我主持做过很多项目,谈一些自己的看法。

团队开发,最重要的是项目分解。对C++的dll来说很容易,对于C语言来说,基本无法做。

在团队开发中,把任务分解,如图形处理、通讯处理、轨迹计算、键盘鼠标处理、资源RC等,每一个开发任务都编绎成C++的动态链接库dll。把每一个人的任务输入、输出接口事先一定要定义清楚,用import,export定义。

最后合成时,可以用如LoadLibrary(”Comm.dll”)函数进行调用。主程序也只要相应的h文件,把import的变量定义拷贝过来,在主程序中引用。

这样做有很多好处,实现了真正的并行工作,接口明确;便于保密,不至于一个人辞职了,软件全泄露了。

C++的类,有继承、引用等功能,有利于把各子项目以类的形式封装,便于调试时寻找bug。

在个人、团队的开发中,类class是一个非常好的封装形式。class的继承、引用,便于把一个class在不同场景进行调用。

C++的虚函数类,可以很好地扩展底层的开发,而不用改动主程序。如通讯类,串口、TCP/IP、FIFO等等,都用虚函数来开发,这样可以适应不同的通讯方式,后续还可以增加更多的通讯类。

总结:C++是一个非常不错的开发环境,其动态链接库、class的继承及引用、class的结构化封装等功能对个人、团队开发都提供了绝好的方法。一般的C++开发环境,也支持C语言的编绎,这更加显示了C++的开发实力。

C++是开发者首选开发环境。

为什么很多人说c\u002Fc++能站在编程语言鄙视链顶端,而对于号称“21世纪的C语言”的go语言却无此说法

经常收到这类的问题邀请,如果用吃瓜的态度提出这样的问题,那就真的很无聊。如果是因为择业或者工作中的选择那就另当别论。如果是计算机科班出身的朋友提出这样的问题,也表明了他的所有专业课并没有学进脑子里,因为专业课弄通了,肯定对C/C++有一个比较全面的认识。提问人具体什么原因提出这样的问题不得而知。我假设以择业为目的,说说对C/C++的看法。

前面很多朋友都说过C/C++的应用场景,以及它在软硬件中的地位,就不再重复了。

从计算机专业择业的角度来讲,C语言的工作更多是面向系统层面的开发。怎么说呢?具体的就是单片机,嵌入式系统的开发。应用的场景,大领域有军工,航天,电力。小领域比如路由器,手机基板,玩具机器人。这些都是看得见的产业。那么人工智能,大数据,BI之中的分析系统的开发场景就非常不适合使用C/C++开发,效率太低,成本太高,反而Python这种解析型语言更适合这类的开发。所以谁是所谓的王者,首先要看应场景。应用场景通常有两个方面要满足:高性能(编译型语言),高伸缩性(解析型语言),这两个方面正好互斥。高性能滋味着需要制造特定环境,放弃可扩展的功能,全力只做最核心的事。高伸缩性通俗讲就是随时随地随便改,想到哪改到哪,改完立即可用。

说这么多,说白了如果工作是互联网业务开发,不要主攻C语言,以学习更多的技术框架为主。如果是传统行业或者互联网网络底层,学习C语言还是很有必要的。但有一条要注意的,不是所谓的底层就工资高,工资高低基本是所在岗位所赋予的。

那么精通C语言是不是可以鄙视其他所有语言呢?肯定不是,因为从来都只有钱多鄙视钱少的,哪怕英语汉语什么语言都不懂。

哪些软件应用值得用Rust重写

Rust是一门系统级别的编程语言,与C和C++的性能相差无几,大多数学习Rust的程序员都是看中了它对C和C++的可替代性,所以从原则上来说,C和C++的软件都可以用Rust来重写。

但是Rust又是一门新生期的语言,尚未进入成熟期,所以在GUI领域还不能替代C++,目前Rust没有任何成熟可用的GUI三方库,大名鼎鼎的Qt都没有出Rust的版本,我本人也是十分期待Rust能有PyQt这样的三方库。

在web开发领域,目前出来的几个版本,actix-web,rocket,wrap,都尚未符合我心里对一个web框架的期待,可以使用,但是解决方案并不够完美,有时候自己都想花点时间实现一个web框架了。

完全用Rust重写一些已经流行的软件不太现实,但是可以使用Rust解决一些痛点,就像TiDB的部分功能使用Rust一样,其实我倒是蛮希望微软能将Rust发扬光大,比如重写一些微软的软件应用。

Rust是不是就相当于新时代的C语言

应该是新时代的c++。go是更好的c,rust是更好的c++。rust比c++简单些。

现阶段,最值得学习的,应该是函数式编程。rust借鉴了很多函数式编程的思想。

函数式编程,Haskell,lisp是典型代表。按函数式编程写程序,放心的多。

Rust可能取代C语言吗

部分领域可以替代,但是还有有部分场景会坚持使用c语言的。

历史原因,c语言出生就是为了unix系统,所有的特性都是为了服务于硬件层上的一层抽象层, 就像是一个建好的大楼再去替换地基,虽有可能但是难度很大, 如果把linux内核从rust开始重写, 估计也有很大的工作量。 这些不是语言是否可以实现的问题,而是是一个选择问题。 rust重写后带来的收益真的有那么可观吗。 操作系统的格局已经存在了, 不可能有更大的变化了。

rust可以用在操作系统之上的应用开发, 比如:传统的一些工控软件,企业级软件中后台,直接面对的应该是c++、csharp、java、golang等。

其实以后的趋势应该是融合,不是替代关系, 一个系统中不同的偏重采用不同的语言开发,也是现在大企业的一种趋势。

还有一种可能,rust还没有全面替代了c++,又出来一种语言反而会替代了它。