您的位置:首页 > 其它

【软件工程师之路一】咸鱼翻身之自学软件开发

2017-03-02 15:16 344 查看
给大家推荐一个网站,主要是给在校学生提供资料和交流的平台,也希望社会人士能进来给与一些经验和建议,把这个网站维持下去。

阳光沙滩 http://bbs.sunofbeaches.com/?fromuid=9791



“做人如果没有梦想,跟咸鱼有什么分别?”

我们的梦想就是如何从零基础去学习软件开发,最后达到我们心目中的高度,首先我按自己的理解大致将各个阶段进行划分,每个公司都有自己评定的标准,但大致都差不太多。




学习模式

我将学习分为两种模式

一、项目驱动型

以软件项目开发为导向,先暂时绕过基础知识的学习,起初只求会用,过程中慢慢去补足计算机相关的知识。这种方式在早期对于定力不强,容易退缩的同学是非常有效的学习方式,早早地能进行软件开发无形中会增加成就感,产生驱动力继续去深入学习,这种方式缺点也比较的明显,就是瓶颈出现的时候会比较的明显,不过如果能持之以恒,坚持不懈的学习,瓶颈也会跨过去的。我身边有不少同事,大学的专业跟计算机都没什么关系,毕业后自己转行,也一样能把软件开发做得很好。

二、系统学习型

按部就班,这种比较适合本专业,也建议有恒心的同学采用这种方式。这种方式怎么讲,就跟学功夫,天天扎马步,打桩一样。平时没什么感觉,一旦遇到难题,瓶颈时就能体现出稳扎稳打的优势,时常会因为以前的一个知识点让你灵光一闪。这种方式缺点就是比较枯燥,所以我建议采用这种方式的同学,阶段性的结合方式一去获取一些成就感。比如学习C、C++或者研究算法到一定程度,去写一些简单的单机游戏,或者去参加一些算法竞赛。

学习路线

第一种学习模式比较简单,主要是在挑选书籍的时候以项目案例类的书籍为主即可。

第二种学习模式,学业中的数学,物理,高数、现代、图形学、计算机组成原理,微机原理、语言类C、C++、Java等都别落下,这是打基础的阶段,别挑食学得越扎实越好。
下面会列举目前公司比较常见的开发语言,框架等需要掌握的一些东西共大家参考学习。

Android学习
开启Java之门,学习OOP、泛型、IO操作、多线程、网络、序列化、反射、注解等
熟悉数据库,QSLite、MySQL,Oracle
AndroidUI/四大核心组件,网络通讯,动画等
在深入则学习JNI,NDK编程
如果往游戏开发走还需要学习Cocos2d-x等框架
现在HTML5开始火起来了,有精力的话这个方面也可以学习一下

IOS学习,IOS开发我没有做过,仅在MAC下做过Qt的开发,这里我只粗略提一下
OC目前还是IOS主流,这个是一定要掌握的
Swift已经在慢慢热起来,学习完OC这个还是去学习一下

PC桌面应用开发
C、C++、C#等
Qt 首推Qt框架,跨平台
WPF Windows下的利器,新项目别去学MFC,早该丢弃的框架,目前只有维护旧项目有用

大数据
linux基础,大数据离不开linux,这个是要优先学习的
Hadoop 
HDFS
MapReduce
......太多了,如果选择这行,要做好心里准备,都是难啃的茬

通用的一些书籍,如设计模式、架构、性能调优、软件工程、项目管理等参杂于其中,反复的看。
希望各位看官留言交流心得。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: