学C还是学C++?或者学别的好?

442 4

楼主本人原本是做竞赛的,所以从一开始学的就是C和C++。但是如果是小白、还有选择,还是润别的语言去吧。这个帖子不讨论性能的事,这事大家心知肚明,就聊聊哪个语言开发者用着舒服。

首先,如果你要学C++,C几乎是绕不过去的一部分,因为C++就是作为C的超集发展而来。不要小看这些年C++的发展(C的没关注,热度太低),C++98/03标准写程序和C++11/20是完全不同的体验!C++虽然看起来语法上在靠近Python但是还差得远,但是这些年已经算是天翻地覆了。如果要学C++,那么基础的东西一般C++98就有了。但是找工作方面,楼主曾经面试4399,他们要求C++14。出现这种情况,一方面是C++11以来的STL太过好用(仅C++11不能解锁完全体体验,还在持续更新,所以越新的标准越好),另一方面主要是编译器的问题(据说GCC低于7会有命名长度限制,才31位,没有类概念的C语言难受的一批)。不过,其他语言有些库其实都是C或者C++写的以确保性能,C++最好要能懂一些,但是靠这个吃饭,那可就要遭老罪喽!

楼主能劝一个是一个,工作几个月别的长辈问我她女儿想找C的工作,被我劝去学Java了(虽然其实结果未知)。

关于Java,虽然楼主Java学得挺浅的,当初上手感觉不如C简洁,但是逐渐发觉,Java在大量商用的今天,可能是最能被商业接受的语言了。就是从C++过来,还不是很适应,毕竟继承、接口、OOP深度都有变化(老实说,楼主只做过安卓APP和class文件修改,OOP思想可能理解还是不够深入😢)。Java还是很值的学习的,楼主学了Python后,5年都没等到Python工作大爆发(全都是大数据方面的工作,没匹配上)。Java还有很多现成的轮子,各种框架,多得迷人眼,但选择困难症比闭门造车要好一万倍,这也是C和C++语言的一大劣势。

关于Python,这是楼主最喜欢的语言,也是楼主认为最简单的语言。这语言虽然性能还是不太够商用,但是它是非常优秀的“胶水语言”,绝不是早期部分人认为的只适合做科学计算。恰恰相反,它的性能不适合做科学计算,科学计算用的库(比如numpy)其实都是其他语言写好的(比如C),只是Python的学习成本、开发成本、维护成本最低,所以让它这么地受欢迎。事实上,Python在世界上受欢迎的程度是非常高的。如果GIL问题解决了(已经在实验了),Python可能有机会取代Java在商业应用方面的地位。Python也被认为是可能的高级shell。如果你问我学不学Python,在2025年2月,我会告诉你,这件事有点像你买个Intel显卡(不是摩尔线程)战未来。如果你决定学习Python,别忘了学习typing这个东西,这个库可以帮你适应这种不用显示标注类型的语言,是降低学习成本的一大利好,也是保持可维护性的一个重要工具。刚学Python可能会很不适应没有花括号和缩进指示结构的语法,但是用久了你会渐渐发现这是天才设计!这至少能降低写出史山的概率!!!(当你接过同事新鲜出炉的C语言史山的那一刻,你绝对是抓狂的。)如果打包程序的时候选择PyInstaller,建议搭配venv使用(更高级的我也没玩过)。

其他的语言嘛,不会。什么rust,ruby,dart,C#,kotlin,Pascal,VB,楼主不会哇(但是楼主的Windows cmd挺强的😋)。(补充一点,vb6不等于vb)

关于前端的那些、web的那些,楼主其实不太会,比如vue和nodejs,楼主还没学过,更别提各种框架了。不过浅浅说一下还是可以的,html是基础,可以搭配Markdown学。学了html就可以学css了(xass也是不错的),然后可以学学javascript。到这里,web开发就勉强入门了。有了这么一点点基础都足够支撑楼主开发浏览器插件了(虽然用了不少GPT辅助)。找工作方面,岗位应该也不太少,比如什么wx小程序的制作就相关。但是整体人数,估计都没安卓开发的多。但是工作方面,楼主已经被C90的C折磨得受不了了,受不了后端程序开发了,还是前端(比如客户端(但是这个好像在走下坡路)、Web)比较具象化的疑似好一些。

噢对了,如果处理得不是很猛,Java和Python的东西打包出来并不安全,可以逆向出源码的,这事楼主干过。所以绝对不要在Java/Python代码里写敏感信息。

综上,小白们,优先选java或者前端吧。

然后再说说IDE:

新手就别用VS Code了,不会配置就是个折磨。

C/C++:Dev-C++(建议用后来的RedPanda)

Java:过去人们用Eclipse,现在似乎大部分改用Jetbrains IDEA了(好用,但是Jetbrains系大部分都是启动慢,堪比VS)。

Python:用Jetbrains Pycharm。

安卓开发:Android Studio(别用2024版,吸纳了傻逼win11的二级菜单和平板模式设计的交互,示例项目和模板还都是优先傻逼kotlin(教程和资料匮乏)的,楼主之前用的2021 dolphin版就很舒服)。

Web:不知道哇,m27好像用的webstorm,记得先前好像有新闻Jetbrains要把这东西免费。

最后讲讲生态位(不那么严谨,仅仅是楼主对市场采用率的感觉):

Python(AI、大数据行业用的多)/WEB

小程序/安卓

Java

C++

C

...

(几乎不会采用shell类)

私货:Windows cmd脚本比Linux bash语法好看!😋

最新回复 ( 4 )
  • 大佬大佬,感觉现在开发岗工作越来越少了,对菜菜新人不太友好 QAQ

    还有-6条回复,登录后查看更多!

  • ee
    举报 4
    rust

    还有-6条回复,登录后查看更多!

  • Tsurumaki_Kokoro 资源大神
    举报 3

    👀

    曲终人散,黄粱一梦,该醒了!
  • M27IAR 刑满释放 好人卡
    举报 2

    py缩进确实好文明

    webstorm现在是非商用免费,商用可能会找上你吧。可以试试HbuilderX。Adobe也有个写web的软件叫dreamweaver,但是Adobe嘛,肯定要钱。建议是见仁见智。

    玩!人活着就是为了玩游戏的哥们! 理论上什么都玩(
    • 闪电炫芬批
      闪电炫芬批 : 开始怀念上古Microsoft FrontPage 2003了,小学的时候学的这玩意,后来再找就是甚么SharePoint, 还有好像Microsoft Expression Web,再后来貌似就没微软的事了
    • XM25
      XM25 闪电炫芬批 : 废物微软(

    还有-8条回复,登录后查看更多!

发新帖

目录