软件开发,你应该这样学习
当下互联网时代,软件开发被称为高薪代表,很多毕业了的、没毕业的童鞋都纷纷投向码农行业,那对于对软件开发几乎一无所知或知之甚少的零基础人员,该如何学习软件开发,该怎样开启码农生活呢?
首先,给出几点学习建议:
1、先有一个想法,像学钢琴也有一开始想弹奏的曲子,提出一个想用生产出来的产品,或者买一本评价好的入门书,看一套评价好的软件开发教程,做以出书或教程中提出的“产品”为目标;
2、将这个目标细化,可以找专业人士帮忙,梳理出知识的“切入点”以及周围的“关联点”,然后开始计划第一次迭代(做出第一样东西),可以是一段很短的程序或者一个作品,但必须有具体的产出;
3、每次产出后都重新调整计划,重要的是自己或者专业人士要能具体地评估这次产出的价值。如果是跟着教程就自然容易了,跟教程上对一下就是了。
如果要具体给到一个切入点,那么建议:
1、从基础的C语言开始,然后学习算法,走科班路线;
2、从网页制作开始,然后学习网站工程,走产品路线,这是编程中最好入门的了;不管是Java、python、php这类后端开发,还是iOS、Android、WP这类移动开发,抑或是前端开发,对网页制作的掌握都是少不了的。
不必太担心学错,因为到达工程级别,你学过的八成知识都不会被作为工具使用,而它们的只是实现了它们的历史使命——成为你现有某个实用知识的中间点/桥梁、为你现在的学习效率做了一次铺垫。
首先吧,别想速成。这要能速成,那么专业人士不就该喝西北风去了?
所以要真解决了学习范围的问题后,你下一个问题应该是“要实现**应该具备那些知识”一类的了。等你在某个点扎根后,想的就是利用这个学习能力,去另一个自己更喜欢的领域,还是就此为据点扩充范围,亦或者深入这个领域(也是扩充的一种吧,方向不同)。
最后,重申的一点,就是软件开发本身就是一个学习的过程,只是产出的代码具备不同的价值而已。软件的特殊性已经导致了难以重复地写出两段相同的代码,一般只会改写重写,或者重用原来的代码(就是复制黏贴或者引用调用)。
上面讲的内容算是比较泛的了,以Android学习为例,如果你是一个零基础童鞋,那么首先你要学习的就是一些Android的基础知识,比如:Android开发环境搭建和配置、Android 编码规范及代码风格、Eclipse IDE、Android Studio、Java 语言等等基础知识。然后在逐步向下,学习Android的基础编程、Android进阶、Android高级开发、Android相关知识拓展等等。至于如何学习,你可以在网上找一整套视频教程学习,也可以直接报培训班。自己学习的话,一般要半年左右时间,当然也不一定,因人而异,而报安卓培训班的话,他们声称是4个月。当然这些都只是基础知识掌握阶段,如果要熟悉、要精通肯定是要在工作中去慢慢摸索。对于零基础童鞋而言,个人觉得比较好的方法就是自学+培训班,很多时候自学是有些吃力的,而仅仅靠培训班的教学肯定也是不够的。
不管是学习什么语言,只要是做软件的,要想成功、要想变大牛,除了学习、实践,就是学习、实践。这是一个苦逼的行业,也是一个必须要静得下心的行业。如果你有信心能成为一个优秀的程序员,那就别犹豫,赶紧投入学习吧。
相关文章:《移动开发学习,安卓和iOS哪个好?》 http://www.maiziedu.com/group/article/6774/