作为一个合格的程序员需要掌握的知识

我是一个c#,ASP.NET程序员,去年刚毕业,对编程技术很感兴趣,以后想一直从事技术方面的工作,可技术更新太快,我现在不知道该掌握些什么知识,比如 XML AJAX JQUERY JAVASCRIPT CSS LINQ PS 这些技术需不需要掌握啊,如果都学的话有点困难,我想知道下以上各知识所占权重比各是多少,好让我学习有个头绪,谢谢各位有识之士指点

1宁专勿多
我认为,在学习技术时,不应该把面铺行太广,不要试图把OS,语言,数据库,设计等都掌握了,一个人的精力是有限的,不可能也没有必要去学习那么多的技术.'这方面想的多了,那方面必竟就想得少了'.另外,技术在某方面是相通的,比如Java和C.所以,我认为,在学习技术时,可以根据自己的情况结合公司以及技术本身(最好选主流技术,而不要先已经过时的.比如,就是公司需要,也最好不要再学VFP)的情况,选取一种或者两种主流技术当作自己学习的核心技术.然后深入进去,在学习的过程中,最好做一些小项目或者向一个技术高手学习.这样是很有必要且很有效的.想必大家都深有体会.这样,用不了三年,你就会成为一种技术领域内的专家.
2选取什么样的技术
技术可以分为两种:一种是一些高深的技术,直到现在也在研究和探索中,或者存在争议.虽然绝对华丽且时髦,却不一定实用.比如:UML.WebService等,到底有多少公司和人能够理解它并完全用于项目中?不得而知.到底哪一种分析设计更适合我们?RUP?我觉得这些都需要时间去验证.而且它本身是否完善也许仍是一个问题.所以,我认为这种技术适合那些对技术有狂热的兴趣,本身又有很高的悟性,且有条件(公司需要学,或者有一些培训机会),则可以去学习这种技术,如果掌握以后,肯定会站在技术的前沿.而个人待遇也会有很大的前进,掌握这种技术对个人能力要求比较高.所以,在选取这样的技术时,要结合自身条件.也就是你能不能学会.
第二种是成熟的技术,大家都在应用,且能够解决公司或者个人所面临的一系列问题.比如:delphi,java,pb,sql server等等,这种技术发展到今天,已经非常成熟和完善,而且学习的资料全面,易于掌握.所以,如果你注重应用的话,可以选取这种技术.就像上面的文章中提到的:"单纯的技术,无论如何先进,如果不能给企业带来好处,都没有任何意义;同样是技术,无论多么原始和落后,如果对企业来说足够用,能带来好处,就应当采用".所以.选择这样的技术在以后的几年里,仍然有很多用武之地.如果能够精通的话,待遇方面也不会低多少.
3从技术转入管理
现在看到很多人在谈论技术人员在超过35以后能不能编程,担心自己过了35就会失业.其实这完全是没有必要的,据我了解,国外超过35的程序员是非常多的.而国内之所以出现程序员很少有超过35的是因为,在国内,程序员这个职业起始于上世纪90年代初,而当时做这个行业的和今天情况一样:大多是刚毕业的学生,他们当时不过20多点,那也是国内第一代程序员,他们到今天为至,也很少有超过35的,而且很多选择了自己做公司,不再亲自写程序.所以,现在国内的程序员很少有超过35的.说了这么多,只是为了说明程序员超过35仍可以写程序,纵然是这样,程序员这工作仍然是脑力劳动中工作量很大的一个职业,所以,大家可以根据情况,从技术转入管理,这样的话,以后的生活会轻松许多.如果选择以后做管理的话,那么现在学习什么就应该重新选择了.
温馨提示:内容为网友见解,仅供参考
第1个回答  2021-01-18

作为程序员,你必须掌握的5大数据结构

相似回答