首页 > 代码库 > 写给在迷茫期的程序员(尤其是Java程序员)入行了一年,感觉不知道接下来该怎么做才能继续进步了,求指教
写给在迷茫期的程序员(尤其是Java程序员)入行了一年,感觉不知道接下来该怎么做才能继续进步了,求指教
入行了一年,感觉不知道接下来该怎么做才能继续进步了,求指教(V2EX)
@kafka0102 :做技术可以学的东西太多了,只是在不同的阶段做好不同的规划,要结合当前所做的事情去做更深入或广度的学习。以Java Web开发为例,至少可以拓展的点有:
1、Web框架的原理学习,比如Spring、Play等等,最好自己能写出个简易的MVC框架(几千行代码)。这样至少对常用设计模式、反射等技术很熟练了。
2、优秀代码研读。比如Java集合类、JUnit、Spring等源码,写出源码分析,会有很多收获。源码分析可以学一辈子的。
3、对Nginx、Tomcat、Jetty等Web server的深入学习。
4、对Redis、Mysql、Mongodb等存储的学习。也许环境受限,但至少可以做些实验性的研究,比如主从、简单集群的搭建和应用。
5、学习重构、模式、架构等偏虚的东西,但会对高编程境界很有帮助。
6、各种场景的性能优化。比如你写一个页面,能抗住多大并发流量?瓶颈出在哪?遇到问题该如何下手处理?
7、周边技能培养,运维、测试、前端、不一而足。
8、Java相对其他语言来说,代码易读性很好,可以学习使用的库和框架太多了。一段时间可以专门研究某套代码,时间久了,技能就提高多了。
--------------------------------------------------------------------------------------
@humiaozuzu 说点正经的
业务之外的:
个人时间管理,个人心智管理,个人目标管理,心智黑客,你可以把他们叫做 meta knowledge,元知识,学习知识的知识,管理人生的知识。
业务基础的知识:
算法,操作系统原理,数据库原理,设计模式,编程语言的范式。我觉得最后一个是很多人忽视了的。
业务知识的扩展
不会运维的后端不是好的前端,这是纵向的。
横向的后端好多可以学的啊,邮件,CDN,统计分析,推荐系统,缓存,队列,推送,搜索,安全
前2项里很多东西的学习都是短时间看不到成效,需要在寂寞的时间里忍受孤独独自认真学习的。
写完后又抽了自己一巴掌,怎么又耐不住寂寞上v2ex了呢。
原文地址:http://v2ex.com/t/109974#reply64
-----------------------------------------------------------------------------------
最后,来一个资源,知道创宇研发技能表:http://blog.knownsec.com/Knownsec_RD_Checklist/v2.2.html