0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

程序员在大学里应该学习什么

工程师人生 来源:工程师吴畏 2019-01-04 08:44 次阅读

首先我们得知道这问题的答案是个变量,他依赖于你的目标和天资能力,绝不唯一。当然大学的课程设置往往是唯一的,所以会有点矛盾。

这里最关键的东西是目标,大学学习只是达成最终目标高度的一个环节,他应该为最终目标服务。

当然大学生很难清楚的知道自己的目标究竟在那里,但要总归要大致知道自己的方向。

这个之所以关键是因为,这直接决定你应不应该学习某个东西。我是在做了很多年软件后,才发现软件和软件的差别其实比马和牛的差别还要大。

用流行的分类方法比如:前端开发、后端开发、.net开发,Java开发等会让人迷失焦点,

所以我一直觉得Barry W Boehm在《软件成本估算:COCOMOII模型方法》里的分类方法对学习更有帮助。

在这个分类方法里软件被分了三层:最底层是基础结构型(平台)软件的开发;中间层次是开发工具、系统集成、中间件;最上层是终端用户编程,也可以理解为一般应用的开发。

同时作者还补充了份数据说:在2005年95%的美国程序员是在做终端用户编程。

这似乎把话题扯开了,但其实不是,关键要大致定位下自己的方向。因为对于目标是基础结构的程序员和目标是一般应用的程序员,他们要学习的东西差别很大。

Donald Knuth的《计算机程序设计艺术》不是没用,但如果你花了2年把他啃了一遍回头专门做应用开发,那它真的用处不大。

至少和一个精通具体语言、框架、设计模式、面向对象、UML的人比只是钻研了《计算机程序设计艺术》的人反倒是在劣势,虽然可能后者更花时间。

反过来讲则是在算法密集型的工作里,那优劣情形就会掉过来。

无疑的什么都精通最好,但人的时间是有限的,而软件相关的知识是无限的,所以把学习聚焦在自己的目标上非常关键。

而目标是什么则要根据自己的实际情形来定。

假设说你真的感觉自己的能力挺好,就想做基础结构型的东西,去做MapReduce,去做操作系统等等,那首先要认识到的是干这个的人很少,竞争很激烈。

如果说在2005年美国只有5%的程序员是干这个的,那我估计今天在中国也顶多是这么个比例。

个人感觉,大学的计算机课程还真都是往这个方向培养人的,一旦真的走这个方向,那么大学的计算机课程还真用的上。需要好好学习,天天向上。

当然只上课也不行,把课上学的东西实践起来也很关键(比如开源项目)。

这里麻烦的事情是,干这个的可能只有5%,很多人即使很努力也不一定挤的上去。

那么假设说一个人很现实,说:国内排名靠前的几所学校凑凑也就5%了,竞争太激烈,我不选这个目标方向,我还是95%里做做吧,那这个时候我应该学什么?

我个人认为主要要学好一些比较硬的,需要大块时间学习的东西,而不要在花里胡哨的东西上多费时间。

硬的东西是指:

数据结构和基本算法。

不管是不是做基础结构性软件,基本的数据结构和算法知识还是要有的。

很可能不太会有自己从头写数据结构和算法的机会,但如果复杂度不知道怎么算,链表、红黑树、哈希表的差别都不知道,那就怎么都玄。

精通一门编程语言

具体是那个可以根据实际情形来选。但这里强调的是语言,不是IDE和框架。可以通俗理解为每个关键字背后的含义要整清楚。

这里的陷阱是学一堆语言,但那个都不精。

精读一个有点规模的开源项目(至少要超过2万行)

要找那种规模不太大,又比较有名的项目,一定要精读,争取每行都懂。

累积一定的代码量

不算IDE帮助生成的,争取也在2万行之上。

面向对象和设计模式

这点最好配合着下一点一起做。

从头考察一下某个框架

考察某个框架的内存机制、线程机制等。

整个学习过程中最常见的陷阱是学会操作一堆IDE和框架的使用,但实际上这事儿价值不大,程序员的价值符合反木桶原理,啥都知道一点的,大多时候不如某个上精通的。

同时除非很特别的公司,大一点的公司并不期望毕业生过来就能干活。

有上面的基础后,再突击下,应该可以面对大部分公司的笔试和面试。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序员
    +关注

    关注

    4

    文章

    945

    浏览量

    29631
收藏 人收藏

    评论

    相关推荐

    程序员节视频创意盛宴,邀您共襄盛举!

    10月24日,程序员专属的节日,我们盛大开启“程序员节视频创意大赛”特别活动!这不仅是一场视觉的盛宴,更是智慧与创意的璀璨碰撞。我们诚挚邀请每一位程序员及编程爱好者,拿起你的镜头,记
    的头像 发表于 07-04 09:00 32次阅读
    <b class='flag-5'>程序员</b>节视频创意盛宴,邀您共襄盛举!

    适者生存,程序员最终会流向哪……

    程序员没有永远的护城河!!就目前的互联网大环境来看,it行业已经是……
    的头像 发表于 03-11 17:11 220次阅读
    适者生存,<b class='flag-5'>程序员</b>最终会流向哪……

    薪资高、青春饭,是不是程序员=青楼?

    进入裁员阶段。所以我们程序员要做的只能是与时俱进。 适者生存,程序员亦是如此 顺应时代发展,是我们必须跟紧的。就好比技术更迭我们就要学习更新。而现在我们程序员最好的赛道出路在哪? 目前
    发表于 03-06 21:32

    2024程序员的未来方向如何走?还看今朝

    这几年的IT行业想必大家已经感受到了,Android、Java、前端等等程序员都经历了大厂……
    的头像 发表于 02-02 09:45 541次阅读
    2024<b class='flag-5'>程序员</b>的未来方向如何走?还看今朝

    程序员表白程序

    电子发烧友网站提供《程序员表白程序.rar》资料免费下载
    发表于 11-21 10:41 0次下载
    <b class='flag-5'>程序员</b>表白<b class='flag-5'>程序</b>

    嵌入式程序员应知道的几个基本问题

    电子发烧友网站提供《嵌入式程序员应知道的几个基本问题.pdf》资料免费下载
    发表于 11-20 11:21 0次下载
    嵌入式<b class='flag-5'>程序员</b>应知道的几个基本问题

    中软国际鸿蒙生态实践成果闪耀程序员节,以智联创新码动程序世界

    10月24-25日,由中国软件行业协会、中软国际有限公司联合主办的2023中国程序员节活动北京展览馆隆重举办。作为面向程序员群体的年度盛会,本届中国程序员节以“技术创新与开源合作”为
    的头像 发表于 10-27 09:30 308次阅读
    中软国际鸿蒙生态实践成果闪耀<b class='flag-5'>程序员</b>节,以智联创新码动<b class='flag-5'>程序</b>世界

    一文速览!拓维信息@1024程序员节精彩看点

    10月23日,第四届“长沙·中国1024程序员节”湖南长沙盛大开幕。自2020年首次启动以来,1024程序员节已行至第四届,以独特的IT先锋视角见证了新一代信息技术与经济社会发展深度融合的关键过程
    的头像 发表于 10-25 08:15 394次阅读
    一文速览!拓维信息@1024<b class='flag-5'>程序员</b>节精彩看点

    喜迎1024程序员节!祝各位开发者们“码”到“程”功!

    祝各位开发者们,节日快乐! 程序员(Programmer)是从事程序开发、维护的专业人员。 对于奋斗一线的程序员们来说, 10月24日 是一个特殊的日子,这一天是属于
    的头像 发表于 10-24 20:00 507次阅读
    喜迎1024<b class='flag-5'>程序员</b>节!祝各位开发者们“码”到“程”功!

    今天程序员节长沙出招 全国首个!长沙为程序员打造“1024街”

    今天10月24日,今天程序员节;先给程序员点赞,我们还看到有一些平台举办了程序员节;而在长沙,更有为程序员打造“1024街”。 昨天第四届“长沙·中国1024
    的头像 发表于 10-24 14:29 444次阅读

    程序员节 | 今年程序员们都想要的礼物竟然是……

    原文标题:程序员节 | 今年程序员们都想要的礼物竟然是…… 文章出处:【微信公众号:微软科技】欢迎添加关注!文章转载请注明出处。
    的头像 发表于 10-24 10:35 331次阅读
    <b class='flag-5'>程序员</b>节 | 今年<b class='flag-5'>程序员</b>们都想要的礼物竟然是……

    16位MCU和DSC程序员参考手册

    电子发烧友网站提供《16位MCU和DSC程序员参考手册.pdf》资料免费下载
    发表于 09-25 14:51 8次下载
    16位MCU和DSC<b class='flag-5'>程序员</b>参考手册

    2023 长沙-中国1024程序员节全面启动

    北京2023年8月28日 /美通社/ -- 千年岳麓,技术英雄,对话论道,谁与争锋。第四届“长沙·中国1024程序员节”正式全面启动。“长沙·中国1024程序员节”自2020年发起,已成功举办三届
    的头像 发表于 08-28 18:11 971次阅读
    2023 长沙-中国1024<b class='flag-5'>程序员</b>节全面启动

    移植ARM DHCP服务器版本1程序员指南

    这本书由ARM DHCP服务器服务器软件提供, 假定ARM DHCP服务器移植源可以作为参考, 也假设您可以访问程序员的 C 和 ARM 组装语言指南。 本程序员指南是为有经验的内嵌系统程序员编写
    发表于 08-18 06:46