你对C最绝望的时刻是什么?
我,38年软件研发经验。从磁芯存储器,纸袋穿孔机至今。从技术上看,C要比JAVA强很多。但是由于开源和LinuxUnix使得C处于弱势。我曾劝很多年轻人要用JAVA。主要是找工作方便。我本人是CC,JAVA,C,prolog,LISP,scala,Delphi,Python,混合使用。需要哪个用那个,取其所长。有些情况下并不是最好的能够流行。例如Delphi与CWPF,人们的评价是有一次商业公司打败了技术公司。当然后来的WPF确实强于Delphi。也是最好的技术。但是还是争不过JAVA。虽然JAVA很烂。
我也算是一名资深的CCRUD程序员,从wf到webform,再到MVC。从。net到现在的。netcore。一路走来,早已经忘了当时为什么选择他了。一直都有人拿C和JAVA比。说实话,比语言特性,他不比JAVA差,但是生态天差地别。
得益于开源的红利,爪哇已经走的太远了,C想要追上爪哇的脚步,就目前来看很困难了。这也直接导致了C和爪哇开发者之间的薪资差距。
爪哇开发者,从毕业到工作两三年,只需要按部就班的往前走,可能就对linux、nginx、微服务等等等等不说了如指掌,也差不多是熟练运用了。
而C开发者如果按部就班工作两三年会得到什么呢?大概率就是沉浸在。net那一亩三分地,无法自拔。(学习能力强的大佬请无视)。
这也就直接导致了C的开发者必须要有很强的学习欲望,要不断去了解在工作中用不到的技术栈。但是这何尝不是一种无形的阻力,随着经验的增长,技术却还是停滞不前。绝望吗?其实想想也挺绝望的。
C面对爪哇唯一的优势,可能就是竞争没那么大了。想想又绝望了。
但是呢,偶尔绝望一下就可以了。毕竟C相关的岗位也不算太少。虽然公司小了点,技术旧了点,工资微薄了一点,咱也算个程序员不是。
随着。Netcore的慢慢普及,C的开发人员也能接触到大哥们施舍的一些新技术了。所以,多学习总是没错的。
以上准确说应该是。net,毕竟C在游戏开发领域还是有一定地位的。
说了这么多,作为一名C从业人员,绝望是不可能的,反而充满了希望,只要有希望,才会有学习的动力,才会找到快乐。愿未来。Netcore越来越好。
最后的最后再说一句,不要拘泥于任何语言。
实习的时候,曾经做过一小段时间的C,工作后做了三年的C,到现在为止又做了四年java。
对比这三种语言,我觉得C确实是最没有前途的,工资最低的,我有时候都怀疑微软模拟java实现的C这门语言到现在为啥还有公司在用着。其次是C,要比C好很多,至少C有自己的专攻,一些追求高性能的底层开源工具都会用C,还有游戏领域也大量使用C,虽然有人说C语法难,但我觉得仅仅一个语法就说难的人做软件也成不了啥气候。最后是java,这个东西仍是软件开发的首选,什么都扛不过java生态好啊,各种系统框架,大数据框架等等,都是用java实现的,而且语法结构简单,自然很香,网上招聘一搜一大把。
最后想说,还是很体谅楼主的处境,之前我自己做C的时候,也差不多能体会到一些。还是期望工作之余花点时间研究下其他领域,然后换个方向,早日摆脱找工作绝望的处境。
用了10多年c了,没有感觉绝望,但确实后悔当初没选java。大厂已经很少用。net了,微软现在也开始跨平台,开源,但愿能让。net生态建设更好,对c很有感情别没落了,大家一起加油吧。
最绝望的在win10下。net4。7。2写了个winform
部署了很多终端后发现有几台win7运行不起来,需要安装环境,安装。net又提示缺少补丁xxx,安装补丁xxx有提示缺少领一个补丁,写代码俩钟头,打补丁半天,然后另一个xp的电脑上还得再打一遍不同的补丁,这个时候多么怀念一次编译,到处运行了,再也不觉得yum装依赖麻烦了。
到了。netcore时代,以为这一切结束了。
公司俩项目,一个3。1的,一个2。1的,运行不到一台服务器上,2。1升级3。1约等于重写,很多基础配置都不一样。最后还得上docker解决部署问题,然后vs整个win下docker,结果win下的docker不兼容vmware
折腾的欲仙欲死。
早年aspDelphi,然后十多年。net,接着2年PHP两年Java,最终回到了。net。从语言本身看,Delphi以及与它一脉相承的c无疑是最佳的。无奈c错过了互联网时代,如今正在追赶,希望有翻身的一天。
最初接触压根学不懂,我没有选择坚持,我一同学学了北大青鸟软件开发,这个还是要看兴趣,现在坚持了那么多年,自己开了软件公司,做的还不错!
一堆说的。net生态差的,我说个公道的
。NET在云原生生态上也有比较完善的生态(虽然第三方库比不上Java和Python,但完完全全够好用了),而且在容器里面的优势比他们强多了,三十年河东,三十年河西,等着时间会说明问题
感谢邀请!我在自己的工作上都是在用C,并不是它功能强大,也不是容易上手,主要还是在自己的工作领域上能够用得上。前几年一直都是做一些与新能源自动化科技设备的项目,软件基本上都是基于C的开发环境,公司的其他工程师也都是用同样的开发软件,毕竟一个工程师用C开发出来的项目,不可能让一个java工程师去还写,存在着矛盾性。后来公司都是以用C的工程师来做优先招聘,这样在同一个项目中,可以由多个工程师负责相关对应的开发模块。最绝望的并不是C软件的本身,而且它在使用工作上的一个领域,而本人正在做相关上位机开发的软件,基本上都是全国到处跑,项目没有个把月都很难搞定。如果说是做网站后台开发的工程师可能就另当别论了,没有绝对性的评判。
如果有想要往C软件开发的方向走,建议多去学习一些相关的知识,不仅仅是写几个代码就去开发,而是去学习能与你开发的软件实现互联互通的知识还有更多的网络编程。多去思考问题,变通自己的思维逻辑,不要盲目的跟风,才可以突破自己。
如果有需要学习资料的同学,可以私信我,免费发给你。我非常愿意能帮到一些热爱学习,持之以恒的同学!
我认真学了,然后老师要求我们自己编个代码作为该课程成绩。我自己一个人编了个简单的小代码。老师看得出我这个作业确实是原创,打了优,然后告诉我:逻辑太混乱。确实学习的过程中能感觉到自己有时候理解一串代码有点吃力,但有一腔热血,依旧坚持着,直至老师这句直戳心窝的点评,承认自己确实不是这块料,彻底绝望,放弃。