如何成为一个合格的程序员

简介: 偶尔的,我会被人问道:如何成为一名优秀的程序员,更或者,如何成为一名程序员。每次人们问起,我都力图给出不同的答案。因此,我的答案是各种各样的。

偶尔的,我会被人问道:如何成为一名优秀的程序员,更或者,如何成为一名程序员。每次人们问起,我都力图给出不同的答案。因此,我的答案是各种各样的。下面就是我认为的成为一名优秀的程序员需要做的一些事情。记住,想成为一名程序员,很多条路可走,这里列出的只是我的方法。

1. 解决你自己的问题 —

从外面获取答案和自己解决问题、找到答案,这两种方式是有区别的。当你自己解决一个问题时,你不仅解决了这一个问题,也意味着解决了跟它类似的数百万问题。这是一个先投资后收获的过程。有时,你可能需要花2到3天的时间解决一个问题,这没什么;这是你的前期投资。

2. 从做小程序开始 —

我说的小程序,是指100行左右的。目前为止,《Java程序设计教程实验手册(Deitel and Deitel)》这本书是我见过的最好的编程书。从第一章到第十章,里面的所有习题都做一遍。当你做完了这些,你就对编程有了相当的掌握了。

3. 仿造软件 —

找一个你喜欢的网站或游戏,把它仿造出来。在你真正的想做一件项目前,先做完这个。这个能促使你学到前沿的编程技术,而且能让你更容易的被招聘公司选中。做3-5个这样的仿制项目后,你就能实现任意的你想要的东西了。

4. 每个项目都要学到新东西 —

每次项目都努力使用一些听到过但从未使用过的新东西。没有使用过Jquery,那下次项目中就使用它;没有试过测试驱动开发,下次项目就是你的实验品;你明白我的用意,对吗?

5. 说行 —

如果有人请求你为他做些什么东西,记得要说“行”——如果你从来没有给别人做过什么东西的话。我知道你可能会想,我自己还有无数的东西要做呢,但从经验来看,除了把主要时间花在自己有利可图的项目上外,你也应该花一些时间做一些慈善项目。这样做你会得到人们的认可,人们会想着你,如果有机会的会话,他们就会引荐你。

6. 交结程序员朋友 —

这是另外一个获得引荐机会的方法。总有机会,你的程序员朋友的盘子装满了,他们需要有人把多余的商业机会接下来。这时他们需要你出现。同样,当你的盘子装不下时,你也需要有人帮你把活接走。

7. 成为一个领域专家 —

广闻博识,同时要至少精通其中一项。编程世界很大,没有人能掌握所有东西,所以,要有一个专长。例如,成为一个本地应用或金融软件方面的专家。

虽然做到这些很难,成长是痛苦的,每一次蜕变都会有撕心裂肺的剧痛,但我们要学会享受痛苦,学会去拥抱失败。不要害怕那些未知的东西,要学会主动接触那些新奇的事物。无论过去如何,只要有心,就能成功,我推荐一个群710520381,邀请码:柳猫,这里都是希望能够成长的程序员或者将来的程序员,欢迎大家加入讨论。

目录
相关文章
|
6月前
|
Java 测试技术 C#
什么样的自动化测试开发是合格的?
什么样的自动化测试开发是合格的?
|
设计模式 运维 前端开发
如何成为一名合格的程序员
有些东西你必须知道!!!
71 0
如何成为一名合格的程序员
|
运维 安全 算法
如何成为一名真正的、合格的、乃至优秀的程序员?
如何成为一名真正的、合格的、乃至优秀的程序员?
|
设计模式 前端开发 JavaScript
🐞 如何成为一名合格的“中级开发”
和大家一起聊聊怎么做一个专业的开发者,如何突破自己的职业瓶颈,找到方法,在这个内卷的时代,等待破局的机会!一起加油!
73 0
|
运维 Java 程序员
一个合格的程序员,需要哪些必备技能?
对于一个Java开发来说,编程技能毋庸置疑是很重要的。 但是,除了基本的编程开发能力,其他方面的能力也是体现一个程序员的能力的很重要因素。 比如,问题排查能力、线上运维能力、项目管理能力、协调沟通能力等。 本文,主要来简单介绍一下,作为一个合格的Java开发,除了自身技术成长之外,还有哪些方面可以提升。 类开发技能 第一类,并不是纯coding技能,但是也和开发相关,我称之为类开发技能。 Linux系统 很多人的开发机器是windows,所以平时也基本都是图形化开发界面。但是,这并不意味着你就不需要基本的Linux技巧。 因为,你开发出来的应用可能部署在一台Linux机器上,很
674 0
|
Java C++
关于一个不合格萌新
我感觉关于自己没啥好说的,学过c和自学一点数据结构 但我感觉并不太友好对于初学者。 以后想跟大家一起努力 ,找个好工作,能养活自己就行。 但我感觉这些都不重要 互关互关 兄弟们这个才重要。
82 0
关于一个不合格萌新
|
测试技术 程序员
程序员与项目经理
  有人加我为好友后,经常问到的一句就是:你写程序这么长时间了,一定是项目经理了吧?郁闷呀!为什么就要是项目经理呢?在我看来程序员和项目经理完全是两个不同的发展方向。     程序员是和代码打交道的,而项目经理却是和人打交道的,所以他们完全没有什么共同点,我觉得他们是两个行业。
849 0
|
数据挖掘 Unix
bedtools不合格的使用介绍
如何使用bedtools处理Rang数据 什么是Range数据 参考基因组表示的是一种坐标系统,比如说某一个物种基因组大小为100bp,那么他参考基因组就可以表示为[1,100], 之后就可以用任意[x,y]表示这条参考基因组上的位置,这就是一种范围信息,X-Y这段区域可能是外显子,也可能是内含子,可能是编码区,也可能是基因间区,也有可能是一个测序结果。
1701 0