现在虽然每次看到 TIOBE 的排名中 C 的排名都是很靠前的,但事实上现在发现写 C 的工程师不多。
首先,可能是应用场景有限,最多的就是 Linux 底层应用编程,写驱动,嵌入式编程,网络相关的编程;
其次,可能就投入和产出效率来说,Java,Python, C#这类语言的产出效率要比 C 高,而 C 追求的是高性能对商业公司来说有时候可以用堆硬件上集群的方式来解决。
最后,坚持写 C 且能把 C 写好的工程师不多,以前也说过公司如果真的不得不要用 C 和 C++来解决问题,那么一般都是花大价钱请个厉害的然后当几个人用,绝对不会请几个菜鸡 C 码农,效率低容易出错浪费时间浪费钱。
我还有个问题,像 C++和 Java 都有 Think in 系列,有 Effective 系列,更不谈各种设计模式的。但是 C 的书好像就 C Traps and Pit 那本书,Pointers on c 那本书,想问问还有其他进阶的读物么?特别是关于系统设计和编程技巧这方面的,设计模式什么的好像基本没有看到用 C 写的。还有就是想了解一下除了嵌入式这个行业的发展路线以外,其他写 C 的行业发展路线图和技能树都是什么?
长期写 C 的都出来冒个泡。
101
tt67wq 2018-07-31 13:07:52 +08:00
redis 源码都读的稀里糊涂的,根本不敢说精通。。。。
|
102
SPACELAN 2018-07-31 13:19:15 +08:00
精通 C 并不难,但是用 C 写出一个优质的程序并不是纯靠精通一门语言能做到的啊
然后说精通 C++话,可能真没几个 |
103
ioth 2018-07-31 14:00:50 +08:00
精通汇编。
|
104
chanin 2018-07-31 14:04:44 +08:00
@SPACELAN 楼上说的对,精通 C 并不难,然而你要写出一款优秀的程序只会 C 这门语言是不够的。
C++由于包含你能想象的所有东西,路线多到无限大,每次你用它实现一个新功能都好像重学一遍 C++一样,所以让人又爱又恨! |
105
wangpugod2003 2018-07-31 17:07:32 +08:00
@chanin 每次只要看到简历只要说精通 c++又只有一两年经验的一概丢到垃圾筐中。
|
106
ShineSmile 2018-07-31 19:03:07 +08:00
楼主指 C 的各种奇技淫巧么?
|
107
shijingshijing OP @ShineSmile 奇技淫巧也算,其实更多的是想看到 C 在各个行业中到底是个什么现状?总感觉 C 语言和写 C 的人都有点吃力不讨好,给别人做嫁衣的意思。
|
108
zyp0921 2018-07-31 20:30:04 +08:00
一直用的 C,嵌入式,没有真正的写过一个应用,都是拿来写 CGI,或者修改一下开源代码。
|
109
tushankaka 2018-07-31 20:37:23 +08:00 via Android
我只知道 linus 利用十几天的时间用 C 语言开发出 git 第一版本。而且现在是最高效的版本管理系统。
|
110
MiaSanMia 2018-07-31 20:39:01 +08:00 via Android
@wizardoz 所以听到你们这样说之后简历都是写熟练操作熟悉之类的词不用精通哈哈哈哈哈哈哈哈哈
|
111
codechaser 2018-07-31 20:51:25 +08:00 via Android
@waruqi 佩服,你是优秀的程序员!😄
|
114
wuxi889 2018-08-01 09:24:48 +08:00
精通睡觉
|
115
danc 2018-08-01 09:57:54 +08:00
楼主发现发现写 C 的工程师不多,确实不多,但实际上也不少,跟楼主所从事的领域,或者楼主的层次有关。楼主说 Java,Python, C#这类语言的产出效率要比 C 高,你说,jvm、cpython 解释器及众多库、C#编译器,是不是用 C/C++写的?你去看这些语言工具的开发者维护者们,是不是有很多?或者 linux、redis、mysql、以及你现在浏览这个网页所使用的浏览器,是不是用 C/C++?还有 tensorflow、caffe。楼主只看到了互联网领域,确没有放眼于整个软件领域。至于进阶,看一些读物,没有什么用,不如现在就开始,造个轮子然后不断的去完善它,包括但不限于研究、借鉴其他优秀开源项目来完善你的轮子。
|