让老司机告诉你:程序员编程从初级到中级的10个秘诀

时间:2019-07-25 来源: 国内新闻

1.学习另一种语言

41b8b24a42fa41a2a29c5a969550a4c6

事实上,你正在学习哪种语言并不重要,但学习另一种语言(无论你已经知道多少种语言)都会让你成为更好的程序员。学习与您每天使用的语言不同的语言会更好。例如,如果您是C#程序员,学习VB.NET或Java将无法帮助您学习Ruby或Groovy。

我的意思是“学习另一种语言”意味着要真正学习它。学习语言包括三个知识领域:语法,内置操作符和库,以及“如何使用”。前两个很简单;我认为有经验的程序员可以掌握足够的语法知识,根据语言在半小时到几小时内维护代码。运营商和图书馆只是一个积累知识的过程。您何时想知道自己想知道什么,现在咨询参考资料还为时不晚。只有第三个项目“如何使用它” - 需要几个月的时间来处理语言,真正的奇迹发生在这里。我建议使用该语言的风格来制作适合该语言的项目。

在真正学习另一种语言之后,我可以保证你的程序员水平肯定会突飞猛进。

2.学习高级搜索技术,工具和策略

040f8e97b4334ba3a4757de2c230dbcc

作为一名优秀的程序员,不仅是技能问题,而且是寻找信息的技巧,这种趋势也越来越明显。对于大多数人来说,只输入“现代语言和开发框架”是一个普遍的讨论,并且记不得太多。因此,您完成工作的能力通常取决于您的搜索能力。不幸的是,知道如何找到准确和高质量的信息不仅仅是去TechRepublic寻找答案,或者只是在您选择的搜索引擎上输入几个单词。

“技术”,“战术”和“战略”似乎是一回事,但事实并非如此。您需要学习的技术是一种高级搜索系统,可以掌握您最喜爱的搜索引擎;您需要了解布尔运算符,如何过滤结果(如“非”关键字,域限制等),关键字的单词顺序扮演的角色等等。总之,RTFM(阅读他妈的手册,阅读那些他妈的手册)。

您应该学习这些工具,例如如何接近特定搜索,以及您实际想要查找的内容。检查错误很容易 - 只检查错误的代码 - 但许多搜索关键字更难以选择。

至于策略,你需要学习什么,包括应该使用哪个搜索引擎(提示:普通搜索引擎不一定是最佳选择),在使用普通搜索引擎之前应访问哪个网站,甚至应该使用哪个论坛寻求帮助,等等。

3.帮助他人

806c77b8b32f42c58ff6994246b83fcb

教别人永远是学习一切的最佳方式之一。相对来说,既然你仍然是发展领域的新人,并认为你没有什么可以教别人,这是可以理解的。但这没有任何意义。记住,你学到的一切都是你从别人或其他地方学到的东西;因此,试试并成为另一个人要求。尝试每天花一点时间尝试回答TechRepublic上的问题。其他网站也可用。您还可以通过阅读其他成员的答案来学习很多东西。

4.要有耐心,经常练习

81d3d003bd134579bf1f3f4b1bde7dca

研究表明,需要10年,或10,000到20,000小时的刻意练习时间才能成为“专家”。真的很长此外,成为专家不一定是10年的同一任务;通常这意味着在特定区域执行各种任务。成为“专家”需要花费大量的时间和精力;几年来做程序员是不够的。想成为一名30岁左右的高级软件开发工程师?要么尽早接受教育/培训,要么你愿意在业余时间做很多工作,阅读和练习。我开始在高中编程并牺牲了很多休息时间来跟踪行业发展,学习新技能等等。结果,我比大多数同事更早地得到了中级和高级程序员,随着时间的推移,这些变成了很多钱。

5.拒绝教条

669a5f8766d04a4ea4e6456f49c85464

现在是开诚布公的时候了:也许初级程序员知道的事情还不足以说有最好的办法。尊重朋友或权威人士的意见是好的,但在你有更多经验之前,不要把他们的意见称为你自己的意见。很简单,如果你不知道足以让你独立发现这些东西,你怎么认为你知道哪个“专家”是对的?很难听到,但请相信我;由于一些愚蠢建议的诱惑,或者一些不知道他们在谈论什么的所谓专家的后续行动,他们已经将他们的职业生涯推迟了几年。小程序员,我见过太多了。一个很好的例子就是滥用面向对象的结构。例如,在许多初学者阅读了一些面向对象的信息之后,突然他们的简单应用程序的类图看起来像埃菲尔铁塔。

6.了解有关高级概念的更多信息

d408b00cc35143fcbcc69fda8a9f2133

要成为一名中级程序员,其中很大一部分就是体现一些擅长代码的概念。就我而言,它是多线程/并行性,正则表达式,以及如何更改动态语言(后两者在我离开Perl时开始退化)。这怎么发生的?多线程和并行处理是因为我阅读了相关文章,我觉得它看起来很有趣,然后我自己弄清楚了;然后我一直在使用这些技术来编写应用程序。我做了一个用Perl编写的工作,它使用了很多正则表达式。我还使用流程引擎模板和内置数据库系统编写了自己的电子商务引擎;我花了将近2年的时间。

找到真正吸引你的东西。也许它是图像处理,也许是数据库设计,等等。即使您是入门级程序员,也要努力成为您感兴趣领域的专家。这将使您很快达到中级水平,一旦达到该水平,您的专家路径就会到达一半。

7.学习你所在领域的基本理论

54a5e7c035394758aa7b6caf2aa01d9a

编写“Hello World”与理解这些单词在屏幕上的显示方式不同。通过学习支持你正在做的工作的“基础工作”,你将获得更多的成就。为什么?因为你会理解为什么事情以这种方式运作,当事情被打破时,你就可以知道问题出在哪里,等等。通过掌握工作的基本机制,您将变得更好。

如果您是Web程序员,请阅读HTTP RFC和HTML规范。如果您使用代码生成器,请查看它生成的代码;如果使用数据库工具,请查看它生成的基础SQL语句,依此类推。

8.查看高级程序员的代码

e2e2bbe20bb345719c1985a10a300f48

看看高级程序员在工作中编写的代码,然后询问如何以特殊方式完成工作,为什么?如果可以,请查看开源项目。即使其他程序员没有最好的编程习惯,您也将学到很多编程经验。当然,要注意不要学习坏习惯。我的意思是,不要让人们做一些勤劳的事情;你需要能够理解什么是可实现的,什么是有道理的,然后模仿他人。

9.学习好习惯

ad11e388560c491e9263550772e21855

愚蠢的变量名称,糟糕的缩进习惯和其他聪明的标志是没有经验的程序员的最佳标志。当程序员学习如何编程时,他通常不会被教导不那么有趣的细节,比如代码格式化。即使学习这些东西不会使你的代码变得更好,但它不会让你成为更好的程序员,它也会确保你的同事不会被你视为入门级程序员。即使有人是高级程序员,如果他的变量以他的97只猫命名,或者如果他的功能被称为“doSomething()”,那么他们看起来并不像是知道他们在做什么的人。并且它将使代码在此过程中更难维护。

10.玩得开心

82f5ad0800224d258f3cbcac7c221079

想要沉迷于繁琐的工作?讨厌工作。升级到中级程序员不仅仅是为了摆脱不断增长的工资,而是要真正享受这份工作。如果你不喜欢自己的工作并且是初级程序员,你认为作为中级或高级程序员会如何改进?改变工作或改变职业。相反,如果你喜欢你做的事情,那就太好了!只要你坚持下去,我保证你可以成为一个更好的程序员。来源网络,侵权联系人删除

新闻排行
  1. 根据马来西亚的嗡嗡声世界网站,一位名叫AlnwickSutariIndonesia的医生最近在Facebook上分享了一个有趣的故

    根据马来西亚的嗡嗡声世界网站,一位名叫AlnwickSutariIndonesia的医生最近在Facebook上分享了一个有趣的故...

  2. 呼和浩特新闻网7月9日报道《北方新报》报道(北方新闻报道荣媒体记者张巧珍实习生何敏)7月8日上午9点,呼?

    呼和浩特新闻网7月9日报道《北方新报》报道(北方新闻报道荣媒体记者张巧珍实习生何敏)7月8日上午9点,呼?...

  3. 你知道微生物是我们终生的合作伙伴吗?美国着名天然药物专家JoshAxs博士在《吃土》中描述了微生物对人类健?

    你知道微生物是我们终生的合作伙伴吗?美国着名天然药物专家JoshAxs博士在《吃土》中描述了微生物对人类健?...

  4.   对于支付宝大家应该都很熟悉,很多人想尽办法就是为了提高支付宝里的芝麻信用,因为一旦支付宝芝麻信用

      对于支付宝大家应该都很熟悉,很多人想尽办法就是为了提高支付宝里的芝麻信用,因为一旦支付宝芝麻信用...

  5. 临夏方言动词1工作---护理,护理米饭受到影响-不舒服咂---用嘴吮吸4.飞行展---快速步骤飞5.亢---咳嗽6.Mock

    临夏方言动词1工作---护理,护理米饭受到影响-不舒服咂---用嘴吮吸4.飞行展---快速步骤飞5.亢---咳嗽6.Mock...

  6. 驾驶考试理论考试如果我无法通过考试怎么办?有些人选择海战术重新尝试考场有些人认为“吉尔吉斯人有自己的

    驾驶考试理论考试如果我无法通过考试怎么办?有些人选择海战术重新尝试考场有些人认为“吉尔吉斯人有自己的...

  7. 121,360人担心,阿克苏公众号连续第40个月位居榜首。----------文字开始---------暑假模式的第一天你最担心

    121,360人担心,阿克苏公众号连续第40个月位居榜首。----------文字开始---------暑假模式的第一天你最担心...

  8. 英国,法国,德国和欧盟9日发表联合声明,呼吁伊朗核问题签署国召开紧急会议,讨论伊朗放弃协议条款的问题?

    英国,法国,德国和欧盟9日发表联合声明,呼吁伊朗核问题签署国召开紧急会议,讨论伊朗放弃协议条款的问题?...

  9. 在过去的两个月里,拳头设计师变得非常活跃,新的英雄Yumi和Chiana纷纷出现。诸如BattleAcademy,DeathStar

    在过去的两个月里,拳头设计师变得非常活跃,新的英雄Yumi和Chiana纷纷出现。诸如BattleAcademy,DeathStar...

  10.   7月9日上午10点,成都市公共资源交易中心以拍卖方式出让一宗位于邛崃市的住兼商用地,总出让面积合68.9

      7月9日上午10点,成都市公共资源交易中心以拍卖方式出让一宗位于邛崃市的住兼商用地,总出让面积合68.9...

日期归档
友情链接