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

【软件工程师之路一】咸鱼翻身之自学软件开发[通俗易懂]给大家推荐一个网站,主要是给在校学生提供资料和交流的平台,也希望社会人士能进来给与一些经验和建议,把这个网站维持下去。阳光沙滩 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
    • ……太多了,如果选择这行,要做好心里准备,都是难啃的茬
通用的一些书籍,如设计模式、架构、性能调优、软件工程、项目管理等参杂于其中,反复的看。
希望各位看官留言交流心得。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Unity | Cinemachine FreeLook Camera「建议收藏」

    Unity | Cinemachine FreeLook Camera「建议收藏」FreeLookCamera是可以基于第三人称视角进行自由观察的虚拟相机。如下图所示,自由视角相机有上中下三个红圈,我们可以通过修改CinemachineFreeLook组件中的值来修改红圈的高度及大小。三个红圈由一个纵向的红线相连。通过改变YAxis及XAxis的Value可以修改虚拟相机的视角。 SplineCurvature决定纵向的紧绷状态。 TopRig、MiddleRig、BottomRig即三个红圈的属性。在CinemachineFreeL…

  • YII2安装中遇到的错误解决Calling unknown method: yii\web\UrlManager::addRules()

    YII2安装中遇到的错误解决Calling unknown method: yii\web\UrlManager::addRules()

  • kubernetes ingress更改日志格式

    kubernetes ingress更改日志格式 IngressNginx默认访问日志都输出到/var/log/nginx/access.log文件中,但是对于一般的生产环境来说,不可能把所有日志都输到一个日志文件中,一般情况都是根据域名分别输出到各个文件中。所以这里区分http指令域默认配置以及单独域名的日志的配置方式。1.默认日志格式更改为json  修改mandatory.yaml部署文件nginx-configurationConfigMap配置中log-format-upstream字段,具体修改如下:log-form

  • c++利用mutex(互斥量)实现多线程「建议收藏」

    c++利用mutex(互斥量)实现多线程「建议收藏」C++使用内核对象互斥体(Mutex)实现线程同步锁,当两个线程共同访问一个共享资源时,Mutex可以只向一个线程授予访问权。下面的例子模拟了售票系统,定义了两个售票线程///ConsoleApplication1.cpp:定义控制台应用程序的入口点。////mutex#include”stdafx.h”#include<stdio.h>#include<windows.h>#include<process.h>void__cdecl.

  • 如何修改bt tracker服务器,bt tracker服务器

    如何修改bt tracker服务器,bt tracker服务器bttracker服务器内容精选换一换云审计服务支持删除已创建的追踪器。删除追踪器对已有的操作记录没有影响,当您重新开通云审计服务后,依旧可以查看已有的操作记录。DELETE/v1.0/{project_id}/tracker无无无请参见错误码。本文操作介绍使用Linux操作系统的HECS(云耀云服务器)安装宝塔面板。宝塔面板是一款使用方便、功能强大且终身免费的服务器管理软件,支持Linux…

  • JSONPath浅析

    JSONPath浅析 在日常的项目开发中,我们常常会为了避免在代码中hardcoding而对某些参数进行配置化,进而提高开发效率和灵活性。而常用的数据结构就是JSON。而对配置的数据的获取的方式常常有以下几种方式:第一种:JSONPath:@TestpublicvoidtestJsonPath(){JSONObjectdata=JSONObject…

发表回复

您的电子邮箱地址不会被公开。

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