不找C/C++的工作也要学C/C++的原因!

举报
C语言C加加学习 发表于 2018/12/19 16:16:48 2018/12/19
【摘要】 C语言是面向过程的,而C++是面向对象的C和C++的区别:C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的...

C语言是面向过程的而C是面向对象的


C和C++的区别


C是一个结构化语言它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程对输入或环境条件进行运算处理得到输出或实现过程事务控制。


C++首要考虑的是如何构造一个对象模型让这个模型能够契合与之对应的问题域这样就可以通过获取对象的状态信息得到输出或实现过程事务控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进是因为“ 设计这个概念已经被融入到C++之中 ”。


C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进是因为“ 设计这个概念已经被融入到C++之中 ”而就语言本身而言在C中更多的是算法的概念。那么是不是C就不重要了错算法是程序设计的基础好的设计如果没有好的算法一样不行。而且“C加上好的设计”也能写出非常好的东西。

很多学编程的人认为特别是初学者会认为“我又不找C/C++的工作为什么要学C/C++”就像“我又不找C语言的工作为什么要学C语言”一样其实答案不在于你做不做C/C++的工作而在于你做不做编程行业的工作。道理很简单打个比方如果你听到这样的话估计你也晓得为什么了。“我是数学老师不是语文老师所以我不要学语文”这话看似正确其实当你语文不好你的数学表达能力也就欠佳你的数学也难以成就多大至少你表达不清沟通不行很多灵感的产生来源也就被抹杀了。《少年包青天》有一句话一些漫不经心的说话将我疑惑解开。包拯破案并不是所有技巧都是自己从头思考的而是很多得以于别人的提醒这是正常的思维逻辑。这是一个综合的范畴。你需要的是提升综合编程能力而不是局限于某门编程语言否则该门编程语言带出来的瓶颈你无法超越。


很多时候并不是我们做什么就只学什么特别是在编程这种科技行业。因为科技行业是客观的涉及到一个现实功能的开发它不会给你区分你必须要用PHP还是必须要JAVA的…

小编推荐一个学C语言/C++的学习裙【 892643663】入裙即送C/C++全套学习资料满满的干货


所以社会上复合型人才才是珍贵的物以稀为贵。


为什么是C++?


C语言接近底层它细节繁琐难度大阐述的是面向过程编程思想难以用在现实中用户体验度良好的项目开发。它的角色就像在背后默默为你付出的其貌不扬的人有她不觉得多但是少了又不行。


而C++的特点是处在中层语言下接C语言上接PHP,JAVA等高级语言。它是最好探索编程世界的入口。


那么学C++的意义具体表现在哪里


当然好的C++编程开发者找个高薪工作是做的到的。这算意义之一。这也是很多人为什么选择编程的理由。其实我很想问如果编程不是高薪行业还会有多少人去学所以利益熏心太重不是一件好事它会阻碍你长得高看得远。所以不要再找那些借口“我没时间啊”“大家都那样”“我得结婚”“我得养小孩”因为这些大多数人都经历过选择平庸是大多数人的做法你借口太多接下来的结果就是“大家都在挣扎我也应该挣扎”…但是你喜欢这样的结局吗


回报是需要付出的在“想要”和“得到”之间还需要“做到”。


“把薄书读厚把厚书读薄”相信大家都听过这种学习方法后者是很难做到因为是需要博览群书之后的融会贯通的总结是涉及到境界的提升但也只有做到了后者你才能得到解脱。所以编程人生的最好发展模式就是进入编程走出编程超越编程。


其实很难做到的是境界


所以我认为学C++的更大意义在于有助于让你探索到编程的本质、智能的本质让你从现实中去理解为什么需要面向过程编程思想为什么需要面向对象编程思想。数据结构是什么算法是什么编译原理是什么操作系统是什么等等更深层的东西…


当一切都来的顺其自然的时候你就会发现计算机前辈们的智慧了你也就学通了编程而不是只学通C++这门编程语言


那么对于C++范畴怎么样才算学好C++其实这个问题应该问你。


你可以这样的来扪心自问不看任何C++的书对一个不懂计算机的人讲述C++是什么你能回忆起多少C++的东西你能顺理成章的给他解释为什么要有面向对象这种编程思想其实这也是督促你要学的灵活、学的融会贯通的一种学习方法。



小编推荐一个学C语言/C++的学习裙【 892643663 】入裙即送C/C++全套学习资料满满的干货


学好C++可以从这几个方面去检测


1兼容C语言的部分


所以学好C++必须以学好C语言为前提。同理学好上层语言如PHPJSjava又必须要以C/C++为前提。违背这个原则你会遇到无法超越的技术瓶颈。你的编程职业生涯就会打折。比如学PHP的时候难度不在于PHP的if…else…这些语法而在于比如PHP的面向对象PHP的接口数据库的优化服务器的负载均衡集群技术网络编程等等。


2面向对象编程思想类继承多态这些的产生渊源。


3泛型机制。


4模板机制函数模板类模板


5它的标准库STL里面的数据结构和算法这些内容你主要是要知道它们有什么实现方案虽然不要你去写但是你要懂得来源这样用起来才放心。如怎么实现容器vector,list,map的


6非标准库如Boost。


当然也是它里面的数据结构和算法。这些内容它帮你写好了你很多时候其实只是在使用接口而已。所以熟悉它是一件简单的事。关键是要探索它的实现方案。


7做几个项目包括控制台的图形化的以及进一步延伸的QT编程。


8游戏编程如Cocos2d


9Linux操作系统


虽然不需要你在Linux上开发但是你要懂Linux而它里面涉及到的东西就多了。比如进程、线程、管道、队列、消息、通信等等。


学好C++不是你开发了几个控制台程序也不是开发了几个项目就可以宣告结束的它是一个长期的战争需要有打硬仗的心理准备。你要把它总结成一棵活着的知识树。这棵树的意义在于当你几年过后语法基本上忘记光了的时候来看这颗知识树能瞬间找到感觉。


这是一种境界这种境界不是靠看过几本书、背了几个语法就能达到的而是要思考要领悟要联想学习、时刻要想到怎么去融会贯通…


所以学习C++很多的时候都是在自我修炼修身养性就像练成葵花宝典都需要闭关修炼一样。学通编程很多时候也都需要闭关修炼…需要灵感需要智慧所以我把现在的对编程的感悟以及做的编程的作品都给了个新的名字灵感编程。


记住你学习东西不是为了别人学也不是为了显摆而学而是让你自己的生存竞争力提高让你成为强者。否则在“弱肉强食、适者生存”的环境下你会觉得很苦苦到家苦到无底洞…


反过来学通编程的世界会让你越活越轻松、越老越吃香。谁都不想在30岁左右转型去做和编程无关的事情只是被逼无奈主要是学习速度跟不上知识更新速度因为没学通…学通编程你就可以像国外那些高手那样专业而自由不会因为年纪大而被迫改行国外的高手都是头发花白了的而国内就像吃青春饭一样存下来的技术实力可想而知是难以和国外的高手媲美的。但随着改革/开放越来越深入这种趋势只是暂时的以后会是像国外那种情景头发花白的一个老头去某公司解决问题什么也不带两手空空坐在电脑前以迅雷不及掩耳之势玩转着黑不溜秋的屏幕linuxunix几下子问题解决报酬上W…

人生都是几十年别人工作一下抵得上你工作一年他过的才是上等生活…


所以要活出质量


所以现在无论你多大年纪只要还不死都可以有梦想去学编程。


当你学通的时候你可以在未来任何时候爆发比如因为你学通了编程所以未来什么语言火了你可以立马转过去总是走在前列而且走的是那么的轻松自在…


这些是C/C++能做的


服务器开发工程师、人工智能、云计算工程师、信息安全黑客反黑客、大数据 、数据平台、嵌入式工程师、流媒体服务器、数据控解、图像处理、音频视频开发工程师、游戏服务器、分布式系统、游戏辅助等


小编推荐一个学C语言/C++的学习裙【  892643663 】入裙即送C/C++全套学习资料满满的干货


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200