程序员需要具备哪些知识

看了几条程序代码,感觉能写代码指令的人真牛,怎么样才能有他们这样的水平,需要学习哪些知识?

第1个回答  2019-05-09
1、程序员需要学会主动学习,要懂得懂得不断精进自己的专业技能。
2、程序员需要具有个人品牌意识,要学会自我营销,在业界打造自己的个人品牌。
3、程序员重视单元测试,专业的程序员需要知道单元测试的重要性,会把测试代码和产品代码看的一样重要。
4、程序员要善于管理时间。尊重对方的时间。只召集那些必要的同事参加会议,并且会在会议前整理好会议的主题和议程。
5、程序员要善于管理精力。专业的程序员能够让自己精力充沛地投入到工作中。
6、程序员要善于管理压力。专业的程序员会尽量避免压力,他们谨慎承诺,不答应做不到的事情;懂得保持代码的整洁,方便问题定位和重构代码。
7、要懂得去掌握一些编程之外的技术。专业的程序员除了们具备计算机原理、TCP/IP协议这些计算机学科的基础知识,他们也会对常用的Shell命令牢记于心,他们还善于使用各种工具的快捷键来提升他们的工作效率。
第2个回答  2019-04-23

一、两大能力

1、学习能力

关于为什么需要学习能力,前面已经吐槽了,我想理由大家也明白了,这里就不再叙述了;只是再次提醒一下,一定要保持随时学习~

2、动手能力

动手能力还需要啰嗦一下,动手是学习编程的最短途径,如果你有看不懂的地方,可以马上动手操作一下;如果你想自己做个小玩意儿玩玩,不要等着明天,马上开始动手做做;如果你想学新技术,最好的就是动手去写写……

其他关于为什么要多动手啦之类的问题,就不再叙述了,有这个疑问的人,自己打自己一耳光再说吧!

二、基础学习

什么是基础学习?比如你学的java,那么网络基础知识要略懂吧,计算机基础要略懂吧(所谓略懂,就是大概看一本书,了解了解就可以),java语法你要懂吧,java三大框架要懂吧,J2SE要懂吧,JDBC要懂吧,设计模式要懂吧……简单来说,就是你把Java相关的知识都至少要了解或者知道,对于重点核心内容,要通透最好;

具体的就不再叙述了,看下图:

三、常用工具的掌握

什么是常用工具, 上图可以看到,你的编程开发工具(VIM/IDE/Eclipse),无论你用的哪个,都需要熟练掌握;你的版本工具,现在常用的是git,至少要学习使用最基本的吧,当然还有很多其他的(markdown/数据库的使用等等),你常用的工具都需要掌握才行。

四、技术方向的选择

前面的技能掌握之后,那么恭喜你,你至少可以打打小怪兽了(反正打小怪兽就使劲把你所学的技能使出来就可以了,基本小怪兽就挂了),也可以作为应届毕业生应聘啦,但是这远远不够的,想要打倒BOSS,可不是随便把你所学的技能发射出来就可以的,还需要修炼更多专项技能才行。

这时候就需要选择技术方向了,想想,假如你学的Linux,而你的基础知识学的还不错,你也知道Linux知识技能那么多,你不可能每个方向都精通,唯有精通有一个领域,对其他的了解即可,这样你的竞争力才更大,这时候你就要想好你是要做Linux研发呢还是Linux运维,然后针对所选择的技术领域深入学习,已达到打倒BOSS级别怪物。

貌似就上面几点了,但是可能又有小伙伴要问了,那是看书籍呢,还是网上找资源呢?

~~(>_<)~~,这个问题也是挺有趣的,必须结合起来啊,书籍比较系统,成体系,网络资源多但比较零散,开源项目较多,可以好好学习,不过也不可一概而论,一些IT学习网站的课程还是很有体系的,我的建议是:

1、先看书籍,掌握大概体系;

2、找IT学习网站,对自己不熟悉的地方进行专项学习,同时也有很多 IT学习网站有很多还不错的项目可以练手用(我用的比较多的IT学习网站是实验楼 ,里面有很多不错的课程和项目,最关键的是配有在线环境,比较方便,可以边看边动手实践);

3、逛逛各种社区,国外的、国内的都可以,什么CSDN啊,博客园啊,开源中国啊、SegmentFault、V2ex啊,太多了,挑选自己喜爱的,里面有各种大牛和志同道合的小伙伴一起;

4、开发中遇到的问题,先google了,自己思考,实在还是不懂,再去个社区提问;

相似回答