新手如何提高计算机编程能力
计算机编程不是一种知识,而是一门手艺。手艺不是一天就能练成的,需要大量的练习。那么就由我带来新手提高计算机编程能力的方法。
1. 多写代码
学习某件事情最好的办法就是练习。你应该花大量时间去构建和编写代码除非你认为练习对你的帮助不大。你可以从写一些基础知识相关的简单程序开始。
2. 参与不同类型的项目
当你对某种开发语言非常熟悉之后,你应该开始做一些正事了。这样做能帮你对那种开发语言的性能有个全面的理解,同时也能推动你去学习与这门语言相关的一些东西。过了段时间你会发现你经常用类似的方法去解决类似的问题,将很难从固有思维中跳出来去学习新的技能。
3. 精通一到两门你使用的语言
读一两本关于这门语言的好书。重点掌握这门语言的先进开发理论知识,并且对它的核心和语言库足够了解。确保你所使用的语言中至少有一种脚本语言。
4. 开始阅读
尽可能的多读书。书能够帮你系统的学习一门语言,并且能够带你了解这门语言的各个方面。对于初学者来说更应该多读书。
5. 加入讨论
当和别人讨论的时候,你会产生一些以前从未出现过的主意或者想法。在这个过程中,你能够从别人那里学到很多,同时这也是一次机会,通过分享你关于编程的看法检查你到底对于这门语言掌握了多少。
6. 通读公司内部的技术和培训资料
比如说,谷歌有很多的代码实验室,有着几十年经验的大牛们用各种语言写出来的最好的.实践在实验室里用来做核心培训和高质量的指导。
7. 写博客
当你学习编程时,你会遇到各种问题,并且想尽办法去解决它们。你可以在博客中记录下你解决问题的过程和你从中学到了什么。其它人看到你的文章后,也能从中获益。同时,你还能和志同道合的人交上朋友。
至于花在学习编程上的时间,刚开始你应该挤出20%的个人时间致力于提高个人开发能力。如果可能的话,最好是每天一两个小时而不是一个礼拜一天,因为这样你能通过日常习惯去提高你的能力。最初的时候效果可能不明显(当然如果你因为上网或者其他事情分心的话是没效果的),但是这样做的目的是让你在长期的编程学习中有更高的效率。
我们可以通过学习开发方式进行提高自己编程水平,比如瀑布模型式就是是最典型的预见性的方法,严格遵循预先计划的需求、分析、设计、编码、测试的步骤顺序进行。敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。
一、瀑布开发
瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求、分析、设计、编码、测试的步骤顺序进行。步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。
瀑布式的主要的问题是它的严格分级导致的自由度降低,项目早期即作出承诺导致对后期需求的变化难以调整,代价高昂。瀑布式方法在需求不明并且在项目进行过程中可能变化的情况下基本是不可行的。
需求隔离:由于各阶段的人员只能接触到自己工作范围内的东西,所以对客户需求的理解程度高低不等,开发人员更像是定义为流水线上的工人。
变更代价大:既然叫作瀑布,就意味着不应该走回头路。否则如果出现返工,付出的代价会很大。需求变更,编码人员会很强的抵触情绪。
束缚创造性:由于强调文档管理,所以管理人员会比较喜欢,但是他束缚了开发人员的创造性。
周期漫长:整个开发持续的生命周期很长,需求和设计的时间会耗费特别多,有时候会占用三分之一甚至更多时间,这样整个周期就会变长,大都在半年到一年左右的时间,所以更适合需求相对稳定的大项目。
二、敏捷软件开发
敏捷软件开发是基于敏捷宣言定义的价值观和原则的一系列方法和实践的总称。自组织、跨职能团队运用适合他们自身环境的实践进行演进得出解决方案。
敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。
缺点:
很难进行准确的资源规划
很难准确的定义“轻量的“或必要的文档
很难把握整体产品的一致性
很难预测有限的终点
很难有效地进行度量
希望能帮到你,谢谢!