好的系统是由意识、想法决定,而不是由语言决定

做系统,一直使用C#,其开发环境简单好用,被称为宇宙第一编译器,没有第二。

经常会看到一些争论,关于程序语言的争论,这个从不同的程序语言诞生,一直就存在的。

很多开发者,会有一些抱怨,使用的语言决定了软件或代码的组织结构。

这个因为一直在用C#做开发,一直没有体会到,我认为C#语言上的应用,确实能实现代码的完美艺术化。

最近,在开发一款,嵌入式的系统,用C语言做开发,在STM32处理器上开发,C语言的初次接触,可能要追溯到10年前了,那时候还是在大学时代考计算机资格证时,记得是谭浩强的一本书,用的Turbo C,好像是这么个开发环境。为了过级,在考前一个月突击背了一些算法和结构,总归最后过了。

后来工作了,初始接触的是VB.net,后来是C#,还有一段时间,花心思在MFC编程上。C#是用过最长的语言,从正式工作开始吧。

一直在用C#开发代码,有时接触一些C++或C封装的动态库和代码,会看到代码写的及其难解和不可读。印象中,这两种语言写得代码,就大致是这样,比较晦涩难懂,没有太多可读性。因为一些代码是面向硬件层面的开发人员写得,感觉更是缺少了像C#这种高级语言所有的一些抽象表达。

但是最近在写这款嵌入式系统的过程中,我意识到了,其实语言自身并没有限定我们的表达,是学习入门时或常年形成的一些固化习惯决定了程序能写成哪种样子,好的设计关键是意识、想法和大局观,如果在规划时,就是按照这个大局观去考虑,那就会组织明确、层次清晰明了,而直接反应到代码上就是结构和算法了。

用过C#等语言的开发者,不愿意接触C等语言开发的主要原因是,C#中编译器辅助实现了大量的函数和类库,可以轻松驾驭调取应用,那转到c开发,因为系统没有提供太多的函数和类库,有些需要自己去手动封装,比如队列,在C语言中是没有的,但是在设计中假设又要用到,这个时候即使队列的算法再复杂,我们也不能绕过去,而应该服从设计。

有了这种思路、意识、想法,一套软件代码,可能在设计阶段就不会纠结在语言的实现上,而只是关心怎样设计,用什么样的层次,为设计而去实现,自然就会处处流露出一些优秀的结构或算法了,抽象性就会更好了,用C语言写出了C#语言更容易表达的抽象性。


1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值