程序员的学习和积累

对于一个程序员来说,学习的重要性相信大家都能意识得到。如何才能有效地学习,高效地学习?探讨下这个问题,我认为很有必要。

  每个人学习的方法和习惯可能都不尽相同,很多人习惯了在学校的学习方式,特别是很多刚出校门的人。在他们潜意识中,学习只是应付考试的一种手段,考完就一切OK了,全部还给老师了也无所谓,反正考完之后下次不会再考这么课程了(大学尤其如此)。长期的应试教育会让很多人以考试的心态来对待学习,我也是受害者之一,翻翻我硬盘中散落的各种语言编写的"hello world",各种半成品,它们就像一张张60分、80分的试卷悄无声息地躺在某个昏暗的角落里。

  职业生涯的学习一个最大的特点是具有持续性,你需要在某个知识或技能上花费你大部分精力。这时候,应付考试的学习方法已经不再有效了,而知识积累显得尤为重要。如果没有积累,所有的学习的成果都是一张60分的试卷。当你下次使用所学知识的时候,你手头有的就只有那张60分的试卷,你的学习将重新从0开始,由于时间关系或其他原因,你这方面的学习可能在你达到可以考60分的水平时又戛然而止,当你后面又需要使用时,又从0开始学习...如此循环往复,一定时期内,你的水平将永远停留在0~60分中间。

  职业生涯学习的另一个特点是,你有机会去教。“The best method to learn is to teach”,你可以将你的所学通过各种形式的分享传授给他人。通过教的方式你不仅能够巩固你所学的知识,更能够推销自己、结交志同道合的朋友。

  那么,基于职业生涯学习的特点,应该养成哪些好习惯呢,本人愚见,提出几点:

  积累:

  1、使用note。比如evernote,one note(个人推荐神器evernote)。作为一名程序员,如果你不使用note的话,显然你已经out了。你可以使用note来在任意时间记录你的想法、学习笔记、分享、待办事项等等任意你想记录的。

  2、经营好你自己的资产。你的作品、代码、idea、你搜集到的资料都是你的资产。对其进行分门别类,同步到网络硬盘(注意信息安全)、多备份都是很好的选择。

  分享:

  1、将自己的知识总结成ppt、写出demo。要养成这种意识,当你形成ppt、demo的过程中,你将站在更高的层次去看待你学过的知识、加深你的理解。当然,如果有机会一定要去讲,不管是何种级别的分享,哪怕是自己给自己讲或是讲给自己身边的朋友。

  2、写技术博客。博客有很多种,对博客的定位,决定你写什么样的博文。如果你的博文每篇都作为一个研究课题来写,我相信你打造一个精品博客一定是早晚的事情。当然我们可能没有要求这么高,那么博客也可以当note来使用(记录你每天的所学所想),这样可能有好心的人会指出你博文中的错误,和你探讨相关的技术等等。

  最后想谈下自己对技术书籍、博客订阅和技术社区、QQ群一些看法。现在社会的信息非常大,你可以通过很多渠道获得你想要的信息。但是,问题是信息的质量良莠不齐、信息量巨大,如果每天都把时间花在自己熟悉的信息上、每天都参与各种无意义的讨论(如语言之间的优劣),那么反而学不到东西还会把自己弄得心烦意乱。

  技术书籍:技术书籍应该是最严肃的获取信息方式,你可以通过对优秀技术书籍的研读、思考(特别注意思考这个词),形成你知识的框架,这应该是一个稳固的结构。

  技术博客和社区:这里是指订阅业界的博客,参与相关博客社区的技术交流。订阅业界、牛人的博客是获得最新、最前沿的知识和技术的方式,应该每隔一定时间段(如每天、每周2次等)研读这些文章、做好笔记。

  QQ群(或其他即时通讯群组):即时通讯是最直接的技术交流工具。通过这种工具交流技术、扩大职业圈子是一个很好的选择。但是鉴于目前,很多技术群很少谈论技术、或技术含量较低等情况,建议加入后仔细甄别,不要因为大量垃圾信息浪费宝贵的时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
作为一名 Java 程序员,你需要掌握以下基本知识: 1. 基本数据类型和变量:了解 Java 中的基本数据类型和变量的概念,以及如何声明、初始化和使用它们。 2. 流程控制和循环:掌握条件语句、循环语句、分支语句等控制程序流程的语句。 3. 面向对象编程:掌握面向对象编程的概念、类的定义、实例化对象、继承、多态等基本概念。 4. 异常处理:了解 Java 中的异常处理机制,以及如何使用 try-catch-finally 语句来捕获和处理异常。 5. IO流:了解 Java 中的 IO 流,包括字节流、字符流、文件读写等操作。 6. 多线程编程:掌握 Java 中的线程机制,了解多线程编程的基本概念和技术。 7. 数据库操作:了解 JDBC 的使用,包括连接数据库、执行 SQL 语句、处理结果集等操作。 8. Web开发:学习使用 Servlet、JSP、Struts、Spring、MyBatis、Hibernate 等框架进行 Web 开发。 学习路线: 1. 先学习 Java 语言的基础知识,比如语法、数据类型、流程控制、面向对象编程等。 2. 掌握常用的开发工具,比如 Eclipse、IntelliJ IDEA 等。 3. 学习 Java 的核心 API,比如集合框架、IO、多线程、反射、注解等。 4. 学习数据库操作和 SQL 语言,了解 JDBC 的使用。 5. 学习 Web 开发相关技术,比如 Servlet、JSP、Struts、Spring、MyBatis、Hibernate 等框架。 6. 深入学习 Java 的高级特性,比如泛型、枚举、Lambda 表达式等。 7. 学习设计模式,了解如何使用设计模式来解决实际开发中的问题。 8. 学习常用的开发工具,比如 Git、Maven、Jenkins 等。 9. 实践项目,积累经验,不断学习和提高自己的技能。 以上是 Java 程序员学习路线,但也需要根据自己的实际情况进行调整和补充,不断拓展自己的技能和知识面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值