V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
weizn
V2EX  ›  程序员

作为一名即将大四的普通学生,却对自己选择的方向产生了疑惑。

  •  
  •   weizn ·
    weizn11 · 2015-07-26 11:08:44 +08:00 · 4759 次点击
    这是一个创建于 3203 天前的主题,其中的信息可能已经有所发展或是发生改变。
    无论如何,都十分感谢点开这篇主题的人们,谢谢你们能抽空看一位普通学生的问题。
    先说说我个人的情况吧,我在济南一个很普通的二本院校学计算机科学与技术专业,大三时选择了主修方向,我选的是软件工程,主要用到的开发语言是C/C++,当时觉得的无论是哪种语言,只要学好了就会有一份比较满意的工作,当然网上也是有很多人这么说的,但是直到我昨日看到了这篇文章:
    http://blog.csdn.net/guolaixiao/article/details/7727096
    说实在的,就凭我现在的阅历来看,也没有感觉这篇文章有何不妥,但是看到作者后面说C/C++市场越来越小,找不到工作,后来我又在网上查了查,感觉也确实有这样的一种说法,甚至也有人说C/C++的前景堪忧,当时我心情着实落到了低谷,虽然在最初决定学C/C++时也知道这方向就业岗位较少,但也没有过多的在意,周围的同学全去学JAVA,IOS,WEB了,也就我一个人还在学C/C++,当然我这里没有比对任何语言好坏的意思,个人也是对语言之间的争吵很是反感。可是我毕竟是一名即将毕业的学生,况且也没有考研的打算,那么就业也就成了我现在最重要的问题。虽然有的人会说学习哪种语言都一样,到最后殊途同归,但这毕竟高手才能触及到的境界,对于一个毕业生来说为时尚早,不得不承认的是,一门编程语言在毕业生求职中还是占据了很大的比重。
    感觉有些扯远了,还是回到最根本的就业问题吧,正如您所见的,大学这几年我基本都花时间在学习C/C++上了,也用它做过一些项目,参加过软件设计比赛,也获得了省二等奖,虽然这比赛没ACM那么有含金量。此外个人对信息安全也十分感兴趣,选择C/C++为自己的主修语言也跟这有着很大的关系,在这方面也曾获得过省信息安全大赛个人三等奖,可能也并没有什么用。我现在感觉自己学的东西也就进一些大公司有些用,对于进一些小型公司没办法展现自己擅长的方向,而且小公司对于C/C++的需求本就很少,可是大公司对于院校和学历也是有选择的,这点我不占优势,况且自己的英语水平也不怎么好,所以我现在真的很迷茫,昨夜辗转一宿未睡,我不知道自己是否该在自己选择的方向上坚持下去,还是选择一门容易就业的语言重新学习,当发现自己最大的依仗却在毕业后可能无法给自己带来价值,那种失落确实是无法比拟的。
    我知道这里肯定有很多C/C++的前辈高手,所以特地来询问我这种情况该如何抉择?我是十分喜欢C/C++,但我同样也是个俗人,虽然深知C/C++短期内不可能被淘汰,但也没雄心壮志的敢说自己能学到可以开发操作系统的水平,我只想在毕业后有先个稳定的工作,从事自己喜欢的行业,但不知这个期望能不能达成。无论大家能不能给我建议,我都十分感谢您能在百忙中看看我写的一些“叨扰”。
    40 条回复    2015-08-03 13:46:52 +08:00
    herozem
        1
    herozem  
       2015-07-26 11:42:02 +08:00
    c是unix系上很多软件的基石,同时也包括unix本身。你觉得你学好了c会没有用途吗?他会帮你理解很多的上层, 学c本身就是打基础。现在开发软件都讲究一个快, c确实不适合快速迭代, 但是在c之上的东西,python, 火爆的语言, lua, 很多游戏开发都用, go, google他儿子, c++, 大部分游戏都用这个。。。等等等等, 问题不是c++学好了能不能找到合适的工作, 而是, 你真的学好了c++吗?
    chengzhoukun
        2
    chengzhoukun  
       2015-07-26 11:59:25 +08:00
    C++都是做Windows桌面开发和Linux服务器开发了吧
    bwangel
        3
    bwangel  
       2015-07-26 12:04:34 +08:00
    我和你一样,现在在一个做保密设备的公司实习,现在决定好好学python,自己先给自己写个博客,租个云挂上去。

    有些东西东西用来学习,有些东西用来吃饭。

    如果吃不了饭,就先想办法吃饭,吃饱了,再来学习!
    Andiry
        4
    Andiry  
       2015-07-26 12:05:13 +08:00
    你以为学iOS就不是C了?
    aprikyblue
        5
    aprikyblue  
       2015-07-26 12:17:32 +08:00 via Android
    ios的objc是c的扩展,java属于类c语言
    weizn
        6
    weizn  
    OP
       2015-07-26 12:21:25 +08:00
    @herozem 是的,我从来不敢说自己学好C++了,只能说熟悉C,较熟悉C++,此外我也知道很多底层的东西是C/C++做的,比如JVM,OS或其他一些大型系统,但是达到那个水准还真的很远,现在只想通过目前的专业技能能在毕业前找到一家合适的公司,若这个路可行,那我绝对会坚持下去。
    weizn
        7
    weizn  
    OP
       2015-07-26 12:24:15 +08:00
    @bwangel 嗯,高中毕业时就建了一个博客,虽然中途数据丢失过好几次,但最终还是坚持到现在了。你为什么又决定要转python呢?
    weizn
        8
    weizn  
    OP
       2015-07-26 12:25:27 +08:00
    @chengzhoukun 嗯,差不多也算是主流吧。
    weizn
        9
    weizn  
    OP
       2015-07-26 12:26:16 +08:00
    @Andiry 虽然没接触过,但是觉得object-c还是有些差别。
    HJK
        10
    HJK  
       2015-07-26 12:32:46 +08:00
    我和你一样,也是即将大四。现在web和app那么火,你很焦虑也可以理解,因为这些表面上看起来似乎都与C无关。其实不然,其实很多语言都是借鉴了C的思想,计算机语言是一通百通的。思想其实都是相似的,剩下的差异主要还是在于语法。

    所以建议的话,先把英语学好。至于是否把C学好学深入,这个问题不大。学C或者别的都行,有一定的基础,学起来都快的。关键是要坚持,不要被市场忽悠了。
    bwangel
        11
    bwangel  
       2015-07-26 12:43:23 +08:00
    @weizn ,我学C基本上就是看APUE,感觉自己也没做过什么大型项目。目前工作上也主要以C 和C++为主,但是自己私底下也想做项目,但是不知道C能做什么实用性的东西,还是想用Python做网站,或者爬虫爬一些有意思的玩意!
    weizn
        12
    weizn  
    OP
       2015-07-26 12:52:41 +08:00
    @HJK 谢谢理解,我会找到适合自己的方向。
    weizn
        13
    weizn  
    OP
       2015-07-26 12:55:42 +08:00
    @bwangel 挺好的,说实在我也比较喜欢python,只是当初死脑筋,就像把一门学通了,于是就没学python,如果我以后能找上实习,去学学python也不错。
    jdlau
        14
    jdlau  
       2015-07-26 13:10:01 +08:00
    一理通,百理明。好像是这样说的~~
    反正任何语言都好,关键的还是用的那个人。
    zeal7s
        15
    zeal7s  
       2015-07-26 13:15:17 +08:00
    我觉得对于一个程序员来说掌握3~4门语言是很正常的事,不管在学校还是在公司,有时候项目需求就是指定了特定的语言,这时候不得不学。

    以我自己为例,读研中,用C++, C#, Java, Python, Swift都做过大大小小的项目,最近对函数式编程比较感兴趣,开始学Scala,赶脚很难上手,对初学者来说很难写出高效简洁的代码,但是我仍然乐在其中。

    如果楼主觉得写程序有意思,那就用空闲时间多学点吧,学一门新东西并不需要给自己一个理由。你会发现,学的越多,越有多学的必要。另外,技多不压身。
    ilotuo
        16
    ilotuo  
       2015-07-26 13:17:56 +08:00
    学术界 像机器视觉还是大量用c++的.开源库甚至系统一大大大大堆.
    没你想象的那么少吧.
    我也大四,我司就是都用c++的.
    xiaoxiuaoliang
        17
    xiaoxiuaoliang  
       2015-07-26 13:22:48 +08:00
    学好了C,转其他语言应该很轻松吧,无非又是一堆新语法,库 等等,基本思想还是那些。心情不好时就放下手头的事情,出去转转。加油吧,学弟
    hellogmh
        18
    hellogmh  
       2015-07-26 13:37:24 +08:00
    从找工作的角度,不建议走C++这条路,就业岗位少,应用面窄,那篇博客说的是真的。
    从学习的角度,建议学C++,搞定它之后其他语言对你来说就不是问题了。
    tracyone
        19
    tracyone  
       2015-07-26 13:58:11 +08:00
    linux C/C++的主要就业方向是嵌入式,相信我这个世界充满了嵌入式..就业有保障...
    int64ago
        20
    int64ago  
       2015-07-26 15:25:34 +08:00 via Android
    如果你觉得你 C++ 学得不错,按理说一周搞定 Java 基础根本不是难事,学 Java 根本不是学习语言本身,你需要找到载体,如:Android / Java Web 等
    而这些语言本身占用的分量就很少,更多的是计算机的基础以及视野
    所以,除非你语言是“掌握”,否则不要在语言上纠结,更不要把跟头栽在语言上
    xrjr2015
        21
    xrjr2015  
       2015-07-26 15:40:46 +08:00
    把英文一定要学好,哪怕说的差点,但写和阅读一定要强,哪怕是学c的,课余完全可以搞搞来钱快的语言,苦干+巧干才是王道!
    要不准备准备肉身翻,出去赚赚美元,打打酱油啥的也不错!
    phoneli
        22
    phoneli  
       2015-07-26 18:06:37 +08:00
    如果真的喜欢linux c/c++的,又找不到相关的工作。可以学习python,找python的工具。然后c++和python一起研究学习。
    phoneli
        23
    phoneli  
       2015-07-26 18:07:07 +08:00
    上面打错字。不是工具,是工作。
    xionghengheng
        24
    xionghengheng  
       2015-07-26 18:23:08 +08:00
    去鹅场 实力第一 最爱c++学生
    anubiskong
        25
    anubiskong  
       2015-07-26 18:31:38 +08:00
    个人很讨厌C系, 不过C的优势很明显, 你完全可以毫无顾虑的学下去.
    未来市场网络和硬件齐飞, 你专注C的话, 可以往硬件走走看, 或者IOS开发, 这是我个人的看法, 当然C远不止这点能耐.
    你和你其他同学的选择都没有任何对错之分, 机会是均等的
    watzds
        26
    watzds  
       2015-07-26 18:54:03 +08:00 via Android
    我本科的时候也是专注C/C++, 反正现在我是不执着于此了,需要什么学什么,现在都搞java,也挺好的,java的世界很大,也很精彩
    cxshun
        27
    cxshun  
       2015-07-26 20:57:16 +08:00
    企鹅场基本全是C/C++的,百度也经常招C++的,话说那个博客是什么鬼?还老师?3年前的贴子说C++的前景,但为什么现在C++/C还是很火啊,你出去外面说一下精通C++,保证公司随便你挑,估计年薪也随便你开,当然是要真的精通。

    PS:如果有精力,涉猎一下其他语言是件好事,但如果没有精力,那就好好地深入一门。如果需要用到其他,现学现用就好。
    pandachow
        28
    pandachow  
       2015-07-26 21:10:45 +08:00
    很多职位要求「能用 C 实现较为复杂的算法和数据结构」哦。。。比如http://jobs.douban.com/#position-cam_sftj
    gouwudang
        29
    gouwudang  
       2015-07-26 21:20:09 +08:00
    楼主,我司有C++岗位,但只熟悉C++也不行,还得会用它解决某些实际的问题才好,具体需求如下

    http://v2ex.com/t/177206#reply11
    Tovcn
        30
    Tovcn  
       2015-07-26 21:56:12 +08:00
    我同意一楼的观点,本人知道的很少,但却有不同的见解,c是所有软件的基础,不必在意学什么语言。语言本身其实是告诉你编程的本质,有c的基础才可以学习其他的语言。
    ipconfiger
        31
    ipconfiger  
       2015-07-26 22:52:09 +08:00
    楼举,你这么早就锁死自己的科技树真的好吗?
    TanJunqiang
        32
    TanJunqiang  
       2015-07-26 23:01:29 +08:00
    C/C++强大了 相当于你的内力强大了,其他的外家功夫 还用说么
    oska874
        33
    oska874  
       2015-07-26 23:19:42 +08:00
    呵呵。前后两个公司上千号人都被你“无工作”了。
    你盯着互联网肯定找不到c/c++ 了。
    少年,眼界放开点。
    GaoMjun
        34
    GaoMjun  
       2015-07-27 01:33:53 +08:00 via Android
    嵌入式
    blue7wings
        35
    blue7wings  
       2015-07-27 09:15:05 +08:00
    完全没有必要担心语言的问题,何况还是C,越少的人会,工资不就越高么?现在PHP,java到处都是,稍微培训一点的人都可以去工作了,他们的工资又怎么样呢?
    ----
    lz也可以学习一门其他的语言,不用总是局限在一个地方.多搞一搞嘛,也许有另一番风景呢...
    focux
        36
    focux  
       2015-07-27 09:35:24 +08:00
    夯实基础,语言只是一种工具,选择自己喜欢的方向和行业,坚持下去,应该错不了。
    onevcat
        37
    onevcat  
       2015-07-27 09:40:56 +08:00
    简单说一点吧...现在我在日本工作,当年一起来中国招人的一堆企业里有一个是招 C++ 大牛的。
    其他公司给的薪资在当时大概是 40W 软妹币,而那家公司底薪是 120W...

    高下立判。我其实是个学不会 C++ 的 loser,被迫只能去写 iOS 而已。
    horizon
        38
    horizon  
       2015-07-27 11:00:27 +08:00
    @onevcat 大神别闹。
    wind3110991
        39
    wind3110991  
       2015-07-27 17:12:59 +08:00
    在CSDN上自称老师的人,估计也是什么二三流的码农。
    举个例子,学C++就像你从小学说话,学母语
    学会说话了,你还要知道,做人,要怎么说话,什么时候该说什么,会说什么,说得有没有水平;
    有的人说话厉害,成了领导,娶了媳妇;有的人不会说话,那么他的事业和朋友圈可能没有那么顺利;
    C++学得好,不代表你能找好工作,但是绝对能代表你是个合格甚至厉害的工程师
    mko0okmko0
        40
    mko0okmko0  
       2015-08-03 13:46:52 +08:00
    重点不是哪一种编程语言,而是你能用编程解决什么问题.所以你需要的是观察身边的事物,然后脑中开始模拟我用C来解决这个问题的实作方法.
    学会一门编程语言后,再去学习别的编成语言,在我看来语法结构接近的话,根本是一天就完成的事情.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   803 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 22:14 · PVG 06:14 · LAX 15:14 · JFK 18:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.