看看 “悲催” 的码农得学多少东西?

首先你得会一门编程语言,比如 C, Java, Python, PHP 等,但是光语言本身还差得远,还得学习这门语言的类库,学完类库还得学框架,Spring, Struts, Hibernate, MyBatis 每一个都不是善茬。

做前端的同学也不用说了,HTML/JavaScript/CSS,再加上一大堆前端框架 Angular, React, Vue,总得学会一样吧。

学完了框架才能做项目,找工作,才有可能开始光荣的增删改查之旅。

但是这还远远不够,前面说的这些知识只能算是入门。

数据结构和算法必须得学,要不然你写的代码永远没有隔壁的张大胖写的好,同样的需求,人家的代码赏心悦目,你的凌乱不堪,被领导批得体无完肤。

所以《算法》、《大话数据结构》、《图解数据结构》、《算法导论》...... 统统都来吧,数组、栈、队列、二叉树、图、排序、搜索保证不把你淹没。

平时和大家聊天,一定得能说出几种常见的设计模式,尤其是单例模式的几种写法,要不然出门都不好意思给人打招呼。

一直做一个被分配任务的初级码农肯定是不行的,所以面向对象的分析和设计必须学习,要不然将来领导给你委以重任,让你做分析和设计,你怎么去划分模块和服务,怎么去设计接口?依据什么原则和指导方针?

软件的开发过程及最佳实践也快变成码农必备了,敏捷开发、DevOps、单元测试、持续继承、TDD、结对编程......必须得跟上趟。

作为程序员的自我修养,计算机的基础知识也是必备。

计算机的组成原理,冯诺依曼结构必须得了解,要不然整天写程序,都不知道计算机是怎么工作的,被人家笑话;如果想深入一下,数字电路、汇编也需要略知一二,因为在某个阴暗的犄角旮旯总会有汇编在等着你。

数据库得学,基本的 SQL、表的设计都得会,范式、锁、隔离级别让人头大。

深入一点的还涉及到调优,在架构层面还得了解分库、分表、备份、读写分离。

光关系数据库还不够,NoSQL 在互联网时代很流行,工作中很有可能用到,不会不行。缓存也跑不掉,memcached, redis 已经是工作中的必备了。

现在不联网的程序几乎都要绝迹了,所以计算机网络得学,至少得理解 http, https, socket, tcp 是怎么工作的,由 https 引出的 RSA, Hash, 证书也得知道是怎么回事。

安全其实是个大话题,像什么 XSS, CSRF, SQL注入……应该成为 Web 编程必须要考虑的事情。

操作系统也得学,这样才能理解进程/线程,还有他们之间的通信和同步,以及同步/异步,阻塞/非阻塞,select/epoll 等听起来很时髦的词汇。虚拟内存和文件系统,总得明白一个大概。

此外,Linux 的基本命令怎么着也得能敲出来一些,如果能使用 vi 就更好了。

深入理解 Java 虚拟机啊,搞不明白虚拟机是怎么工作的,系统中有些问题你还真搞不定。

还有 Tomcat, Ngnix .... 都不是一时半会儿就研究透的。

你可能还会听人说:离散数学很重要,是计算机学科的基础!那就去看看吧,除了布尔运算之外,其余的什么等价关系、偏序、命题演算、谓词演算、群、格....彻底把人搞晕。

这些基础知识没还搞定,什么云计算、大数据、微服务、容器又开始鼓噪起来了,你难道不想了解一下?难道不怕落伍?

码农就是这么悲催,被各种新技术赶着不断向前,但是反过来看,要是对软件编程有兴趣,那简直是太幸福了,新玩具不断出现,玩都玩不过来。所以想在这个充满挑战的行业里一直保持就竞争力,那就不断的学习吧。

本文来自开源中国社区 [http://www.oschina.net]

时间: 2024-09-20 00:16:13

看看 “悲催” 的码农得学多少东西?的相关文章

码农的2014年,年终总结

问题描述 码农的2014年,年终总结 公司无法写博客,改天回家改下,对不住大家了 HI,2015: 我个人是个工作狂,也是研究技术狂,不太喜欢过旧的生活,本来前两天应该总结, 回老家啦--媳妇生小孩啦,我升级了--呵呵-- 公司工作: 2014年初,主要负责xx公司里的应用版本平台服务接口开发,为解决业务问题, 详细了解mybatis和mysql之间sql底层数据交付,完成文件批量上传,优化数据库,借鉴老应用版本的业务, 设计数据库,核心业务逻辑编写和引导新同学. 微信公众平台:功能有,微信用户

也谈“为什么中国的程序员总被称为码农?”

        我经常在CSDN上浏览新闻,同时也喜欢阅读博客.最近,我看到有不少文章在谈"为什么中国的程序员总被称为码农"这个话题.大家虽然各抒己见,但都在表明一个事实:在中国做程序员真的很累,与种地的农民没有什么区别.        作为一个刚工作不久的程序员新手,我想就自己的经历谈一下对这个话题的认识.        在学校的时候,我们对那些"IT界的英雄"很是敬佩,包括:盖茨.乔布斯.扎克伯格,以及大家都很熟悉的李开复老师.想到他们用自己的智慧改变了人类的生

阿里巴巴六年码农自白

各位亲爱的网友朋友大家好,又到了回顾上周新闻的时候了.上一周热闹的事情比较多,我们把他们拆开来看一下. 首先看一下开发者感兴趣的话题.一提到开发,大家可能都会想到一个形容词,那就是"辛苦".的确,开发人员的工作量非常的大,所以很多开发人员被冠以了"码农"的称号.上周点击量第一的文章,标题就叫"一个阿里巴巴码农的六年回眸"这篇文章讲述了一个码农的六年心路历程,中心思想总结起来就是:"技术耐得住寂寞,低谷积累高峰冲刺,主动改变一切.&quo

程序员 软件工程师-研究生毕业28.5岁了,还可以当码农吗?会有单位要吗?

问题描述 研究生毕业28.5岁了,还可以当码农吗?会有单位要吗? 研究生毕业28.5岁了,还可以当码农吗?会有单位要吗? 研究生毕业28.5岁了,还可以当码农吗?会有单位要吗? 电子信息工程专业 解决方案 肯定有!但是起薪可能不高,发展不可限量的 解决方案二: 可以的,关键看自身的水平了.姐姐考考你,请问能用C++写一个Basic解释器么? 解决方案三: 这么年轻啊,找对方向,没问题 解决方案四: 现在码农这么缺的时代,当然可以 解决方案五: 研究生阶段都学了啥呢?只要你不介意,有基础当然可以当

为什么你说“就差一个码农了”,我们是拒绝的

根本原因是 90% 这么说的人不懂技术,不了解行业,把技术实现想太简单,以为编程就是打字.分开来说包括以下 4 个方面:不尊重程序员.不只缺一个.大大低估投入.还没到需要程序员的时候,下面一一说明. 不尊重程序员 要一起共事的基础是相互尊重,古语讲"礼贤下士"是有道理的,人才需要得到相应的尊重,但是很多人在发"就差一个码农"招人帖时是不注意这一点的. 如果你需要一个程序员,而你招人的标题真的是"我们就差一个码农了",那多半大家看了标题就会来喷的,

年薪三十万的码农不如一个省委办公厅公务员吗?

简评:程序员也好省委办公厅的公务员也好,其实每个人都有自己的选择,不必却质疑别人的路,不用艳羡别人的生活,活出自己就好了.对于我而言,曾经对未来也有很多憧憬或者是不切实际的幻想,但是现在我选择了我的路,我认为程序也能让这个世界变得更美好,没有什么值得和别人攀比的,与君共勉. 这是春节期间水木上一个非常火的帖子:水木社区-源于清华的高知社群     水木原贴:     都是我们村的后辈,三个都研究生毕业,都25岁左右,你们觉得这两个人谁厉害些?     1.男A,北邮本硕计算机,毕业进了网易游戏,

担心提前做了码农的大学生

这封信里的信息量很大,包含了不少让IT大学生专业学习无效的想法.由于写书赶进度,第一次迟了十多天才回复.但愿这封信能鼓起他学习的激情.[来信] 贺老师,您好.我现在是个即将挪入大二的学生,我是一个思想上急性子,行动上的慢板拍,在我学了一点C语言的时候,我就想学习如何做项目,看了一点C++,觉得和C语言一样写不出什么的东西,这时候我了解到windows编程,于是硬着头皮去碰了一下win32编程,花了我很多时间,但收效不大,能写一点基本的界面,但由于没有什么相关的基础知识,想学些类似于服务和网络编程

流着码农的血,为突破理论极限值而生 | 阿里中间件性能挑战赛内部赛全记录

近日,第三届阿里中间件性能挑战赛内部总决赛在西溪园区举行,经过前期线上比赛和现场解题思路答辩,来自阿里云数据库技术团队的资深专家曹伟(鸣嵩)获得本次比赛总冠军并揽得大奖. 线上比赛阶段得分屡创新高,现场解题思路答辩交流活跃,气氛热烈,精彩纷呈的内部赛为今年的中间件性能挑战赛开了一个好头,期待在接下来的外部赛上涌现出更多好成绩和令人耳目一新的工程创新. 作为阿里中间件(Aliware)举办的历史最悠久的工程视角赛事,自举办以来,受到业界工程师和高校技术爱好者的一贯支持和好评.2014年中间件性能挑

一个经验尚浅的码农五年软件开发的一点自我总结,对工作五年的反思~

class="post_content" itemprop="articleBody"> 一位就要换城市(离开北京)+ 换职业(不做开发),去新公司报道的程序猿,最近反思了自己毕业后的这五年工作,记录下五年以来软件开发的一点自我总结,也算是给过来人提点建议,少走点弯路吧-- 08年顶着名校硕士的光环加入了一家非常有名的非软件公司做软件开发,刚开始一切其实都很美好.大外企的各种好在头一年给自己带来了很多光环,当然自己也学到了很多(主要是非技术的东西).可是从第二