【软件工程师之路一】咸鱼翻身之自学软件开发[通俗易懂]

【软件工程师之路一】咸鱼翻身之自学软件开发[通俗易懂]给大家推荐一个网站,主要是给在校学生提供资料和交流的平台,也希望社会人士能进来给与一些经验和建议,把这个网站维持下去。阳光沙滩 http://bbs.sunofbeaches.com/?fromuid=9791“做人如果没有梦想,跟咸鱼有什么分别?”我们的梦想就是如何从零基础去学习软件开发,最后达到我们心目中的高度,首先我按自己的理解大致将各个阶段进行划分,每个公司

大家好,又见面了,我是你们的朋友全栈君。

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

阳光沙滩 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
    • ……太多了,如果选择这行,要做好心里准备,都是难啃的茬
通用的一些书籍,如设计模式、架构、性能调优、软件工程、项目管理等参杂于其中,反复的看。
希望各位看官留言交流心得。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138917.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Pytorch的BatchNorm层使用中容易出现的问题

    Pytorch的BatchNorm层使用中容易出现的问题前言:本文主要介绍在pytorch中的BatchNormalization的使用以及在其中容易出现的各种小问题,本来此文应该归属于[1]中的,但是考虑到此文的篇幅可能会比较大,因此独立成篇,希望能够帮助到各位读者。如有谬误,请联系指出,如需转载,请注明出处,谢谢。∇\nabla∇联系方式:e-mail:FesianXu@163.comQQ:973926198github:htt…

    2022年4月28日
    37
  • 时间单位换算表

    时间单位换算表 时间单位换算表   1毫秒=1/1,000秒(s)               1秒=1000毫秒(ms)1微秒(μs)=1/1,000,000秒(s)    1秒=1,000,000微秒(μs)1纳秒=1/1,000,000,000秒(s)       1秒=1,000,000,000纳秒(ns)1皮秒=1/1,000,000,000,000秒(s) 

    2022年7月11日
    36
  • 解决ubuntu虚拟机桥接模式下不能上网

    解决ubuntu虚拟机桥接模式下不能上网①sudovim/etc/network/interfaces修改ip和主机在同一网段,gateway和主机一致(ipconfig-all查看主机ip信息)②重启虚拟机,重启之后配置的静态ip才能生效③配置dnssudovim/etc/resolv.conf和主机一直④重启网络sudo/etc/init.d/networkingrestart…

    2022年6月9日
    59
  • JavaScript判断数组中是否包含某个值「建议收藏」

    JavaScript判断数组中是否包含某个值「建议收藏」有下面几种方法可以实现:方法一:array.indexOf判断数组中是否存在某个值,如果存在,则返回数组元素的下标,否则返回-1。letarr=[1,2,3,4];letindex=arr.indexOf(3);console.log(index);方法二:array.includes(searcElement[,fromIndex])此方法判断数组中是否存在某个值,如果存在返回true,否则返回falseletarr=[1,2,3,4];if(arr.includes(3))

    2022年10月7日
    0
  • 背包九讲—-整理+例题[通俗易懂]

    背包九讲—-整理+例题[通俗易懂]背包九讲类型汇总:1.01背包问题2.完全背包问题3.多重背包问题4.混合背包问题5.二维费用的背包问题6.分组背包问题7.背包问题求方案数8.求背包问题的方案9.有依赖的背包问题注:以下所有题目来源于ACwing题库,链接:https://www.acwing.com/problem/这里每个类型基本都是具体题目+自己的一些体会+代码,背包九讲的理论以及解析证明之类的…

    2022年4月19日
    47
  • pandas’_pandas 删除列

    pandas’_pandas 删除列文章目录1.pd.Series.dropna官方案例2.pd.DataFrame.dropna官方案例1.pd.Series.dropnaSeries.dropna(axis=0,inplace=False,how=None)描述返回删除了缺失值的新Series参数axis:{0or‘index’},default0只有一个轴可以从中删除值inplace:bool,defaultFalse如果为True,则就地修改返回None如果为False,则

    2022年9月18日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号