`
guoyiqi
  • 浏览: 1002055 次
社区版块
存档分类
最新评论

程序员是这样炼成的(7)-水滴石穿

 
阅读更多

周末跟曾经的一位程序员同事聊天,他说他貌似遇到了技术的瓶颈了,最近一直在刻苦攻读,希望可以突破自己取得进步。有时候想想自己还挺惭愧的,高手们况且都还在不断的努力,自己的日子过的总是有点太安逸。我们总是在清醒的时候,喜欢为自己制定计划,每天要完成多少行代码,多少天要看完一本技术方面的书,但是计划总是没有办法实现,因为我们有一个口头禅叫"没时间"。

编程其实没有捷径可走,虽然你可以花很短的时候完成一本速成教材,但是你以后解决你遇到的问题时间肯定要比你学习的时间多的多,我们每天的工作就是新的练习和挑战,我们要尽可能的再平时认真对待我们遇到的问题,一个一个的攻克难题,实现量得积累,把我们的无知和丑陋都暴露在平时,在关键的时候,我们才能实现质的突破。那么作为一名软件开发人员,我们应该知道如何进行练习?如何提升自己的水平?如果把这个问题展开,那就太大了,我觉的我可以出本书来讨论了,在这里我只简单的跟大家分享下,我的感触在四方面进行练习和提高:
A.极限练习。
B.技巧练习。
C.模仿他人。
D.即兴思维。

一、极限练习

人无论是运动还是思维都会有自己的一些极限值。我小时候体育成绩不多,1000米跑步成绩还不错,很多同学向我请教经验,有的说跑久了呼吸吃力。有的说跑久了肚子疼。老是说,其实我也一样,每次跑一段后就会发现自己,呼吸困难,心跳剧加。这个就是我们说的个人的运动极限,如果你能坚持下去,反复的练习,这个极限出现的时间,就可以往推迟,你的运动能力就能提升。如果你遇到的极限就放弃了,那么你永远都没有进步。
编程也是如此,我们在工作中总会遇到大大小小的麻烦,你会为这些麻烦而头疼吗?你可以选择把这些问题放一放,等别人解决了自己再去copy下,也可以去请教‘百度'马上把问题也解决掉。但是这不是最好的解决办法,我很反对程序员们在自己连问题都没有看清楚,想都没有想的情况下,就去百度或者CSDN.编程的工作,就是用人脑去控制电脑的过程,很多人都不愿意让自己的大脑装些知识,这么问题都去请教,虽然看上去试谦虚好学,实质上确是思维懒惰。我在这里并不是反对大家多提问,多交流,而且希望大家可以在开始提问之前,把问题尽全力想清楚透彻,多尝试几次,挑战下自己思维的极限,不要以为头大就放弃了一次提升自己的机会,纸上得来终觉浅,绝知此事要躬行.


二、技巧练习
你写的代码可以优化吗?你喜欢的编程语言支持正则表达式吗?你是不是创造了很多不必要的冗余代码,你会使用API吗?你掌握了你喜欢的编程语言的多少知识?多线程会吗?同步呢?我们每天都在至少做8小时的工作,你有没有想过在通过技巧的提高,对过去知识的总结,用6个小时去完成过去8个小时的工作?为自己赢得两个小时的休息时光,去维护自己的学习手册。


三、模仿他人
如果你没有看过或者用过别人的源代码,甚至连hello world都不知道的,请跳过该节。像练字一样的,程序也可以临摹。你可以去一些开源社区,挑选你喜欢的任务或者功能来练习。也可以去下载一些源码,理解别人是怎么做出来这样的功能的,然后把源码删除,自己重新做一个相同功能的,或者寻找不同的风格或者用不同的编程语言来实现。你甚至可以在网络上找一个自己喜欢的小软件,尝试着去实现这个软件。这些都是练习,可以培养你在最快的时候里弄清楚需求,培养你读懂别人代码的速度,培养你思维的活跃度,快速的完成开发。
BTW,我前几天上网发现了一个非常不错的博客,我确定要把博主的全部文章中技术代码都实现一次。做为我4月的一个任务。:)


四、即兴思维
这一点的练习跟人的创新能力息息相关,你知道你喜欢的语言编出的最小的应用程序是多大吗?当你的同学,同事向你求助的时候,你会以最快的速度拿出解决方案吗?难道你没有发现这些豆是很好的练习和挑战,这些都是你作为一个程序员的责任。在紧急的关头,以优秀并且迅速的编程能力来满足需求,这是一种能力。


绳锯木断,水滴石穿,刚才说的这些练习都不一日之功,罗马也不是一天修成的,日积月累你才会发现原来自己在成长了。大家要勤加修炼!!

分享到:
评论

相关推荐

    程序员表白神器 love-master

    程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 ...

    程序员简历模板10份-蓝色主题

    程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历...

    程序员简历模板10份-蓝色主题 各不相同

    程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历模板10份--蓝色主题 各不相同 程序员简历...

    WINDOWS程序员使用指南(三)----OLE_DDE

    WINDOWS程序员使用指南(三)----OLE_DDEWINDOWS程序员使用指南(三)----OLE_DDE

    WINDOWS程序员使用指南(五)----OBJECT WINDOWS库

    WINDOWS程序员使用指南(五)----OBJECT WINDOWS库WINDOWS程序员使用指南(五)----OBJECT WINDOWS库

    程序员是这样炼成的.rar

    "程序员是这样炼成的"这个主题揭示了从新手到资深专业人士的蜕变之路。在这个过程中,学习、实践、经验和持续进步是关键要素。 首先,成为一名程序员的基础是掌握编程语言。无论是Python、Java、C++还是JavaScript...

    简历模板-程序员-通用-精选

    简历模板-程序员-通用-精选简历模板-程序员-通用-精选简历模板-程序员-通用-精选简历模板-程序员-通用-精选简历模板-程序员-通用-精选简历模板-程序员-通用-精选简历模板-程序员-通用-精选简历模板-程序员-通用-精选...

    程序员是这样炼成的

    【程序员是这样炼成的】 在信息技术日新月异的今天,成为一名优秀的程序员不仅需要扎实的编程基础,更需要不断学习、实践与创新的精神。"程序员是这样炼成的"这个主题,旨在揭示程序员的成长之路,包括他们所需掌握...

    软件工程课程设计-学生管理系统-程序员SUMER

    软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---...

    软件工程课程设计-Release.rar -程序员SUMER

    软件工程课程设计-----Release.rar --程序员SUMER 软件工程课程设计-----Release.rar --程序员SUMER 软件工程课程设计-----Release.rar --程序员SUMER 软件工程课程设计-----Release.rar --程序员SUMER 软件工程课程...

    WINDOWS程序员使用指南(二)----MICROSOFT基本类库

    WINDOWS程序员使用指南(二)----MICROSOFT基本类库WINDOWS程序员使用指南(二)----MICROSOFT基本类库

    程序员必备技能----断点调试(IDEA版)---- 代码

    程序员必备技能----断点调试(IDEA版)---- 代码

    程序员的数学系列书籍介绍-2022-02-01(B).pdf

    7. 程序员的数学【一本为程序员朋友们写的数学书】-2012 年 10 月 8. 程序员的数学 2 概率统计-2015-08-01(Ruby 版) 9. 程序员的数学 3 线性代数-2016-03-01(Ruby 版) 10. 离散数学-2016 年 03 月 11. 离散数学...

    程序员考试大纲和1990 --2006年度程序员水平考试试题及答案

    程序员考试大纲和1990 --2006年度程序员水平考试试题及答案

    软考程序员历年真题解析10年-17年.zip

    软考程序员历年真题解析10年-17年.zip 真题与解析。2积分福利。

    程序员的数学系列书籍介绍-2022-02-22(B).pdf

    7. 程序员的数学【一本为程序员朋友们写的数学书】-2012 年 10 月 8. 程序员的数学 2 概率统计-2015-08-01(Ruby 版) 9. 程序员的数学 3 线性代数-2016-03-01(Ruby 版) 10. 离散数学-2016 年 03 月 11. 离散数学...

    MicrosoftWin32程序员参考大全(五)----消息、结构和宏

    MicrosoftWin32程序参考大全 函数大全 结构大全 等 Win32程序参考大全(一)——窗口管理和图形设备接口 Win32程序参考大全(二)——系统服务、多媒体、系统...MicrosoftWin32程序员参考大全(五)----消息、结构和宏

    Java 程序员是怎么炼成的

    Java 程序员是怎么炼成的,程序员必备呀

Global site tag (gtag.js) - Google Analytics