赞
踩
如今计算机非常火热,尤其是程序员(软件开发)更是大众眼中高工资的代表。
而新的编程语言和技术框架等更新迭代速度可以说是360行中最快之一,一般来说程序员知识半衰期是五年,也就是五年以后用的技术和之前的技术大相径庭。
时代变化如此之快,软件行业跟是如此,如果你不善于适应新的环境,又不能改变环境,就很可能面临几年之内丢掉饭碗。
那么,我跟大家聊一聊:一名不落伍的程序员,应该如何构建自己的知识技能树呢?
金字塔的最底层:当然一切都需要建立在逻辑能力,语言表达能力,智商情商等软实力上,这里就不画出了。
这一层里面的操作系统原理,数据结构原理以及算法原理都是帮助我们在软件行业快速学习新技能所必须要掌握的知识。
看如今各大互联网公司招聘软件开发时,算法题可谓是重中之重。
而如今,算法已经成为一个职位(算法工程师),个个拿着计算机行业顶尖的工资。
软件开发界更有一句:千军万马转算法。足以体现算法与数据结构的重要性。
计算机网络能帮助我们理解我们在编程语言中操纵的数据是什么,是怎么传输的。以及非常重要的网络安全,因为安全无论在哪都是第一位的,如果我们的数据不安全,会造成极大的隐患。
一般来说,我们第一次接触编程,都是需要从一门语言入手,目前使用率最广泛的是 c语言 和 java语言。
那么语言中我们最先接触到的是什么?无非就是所有编程语言都有的数据类型,if语句,循环语句等等。
假如你学会了c语言的基本语法,那么java、c++、python、scala等编程语言的基本语法只要花一两天看看他们有什么不同就可以迅速的理解另外一门语言的基本数据类型了。而语言的语法其实并不算难,因为无非就是一些数据类型,数据结构和逻辑判断这样的基础知识。
学习编程的语法-------------->我们小时候学习语文
汉字----------------------------->数据类型
如何组织成一句话----------->编程语法
一句话--------------------------->一小段程序(用编程语法控制数据类型)
一片文章------------------------>很多小程序拼在一起(像语文的作文一样,作文也不是几句没有关系的话拼凑的,需要有开篇,衔接,结尾。程序也使一样,程序有程序的调用关系,有程序的入口和结束)
当有了前面两层的累积,你会用更优秀的程序设计思想去解决频繁更改的需求,会更熟练地运用开发工具帮助我们实现高效开发。
即使你一点不明白工具的细节,可能看不懂全英文界面的开发工具,但你就是知道它们能够做什么,那就够了。人类研发工具就是为了辅助人类自身。
最后,通过前三层的累积,可以说对于计算机的软件开发原理和流程的知识早已融汇贯通,无论语言怎么变,框架怎么变,技术怎么变,都可以拥有快速学习新技术的能力。
活到老,学到老:我认为软件开发过程中最有意思,最让人兴奋的原因就是总能学到新的东西,看着自己写的代码被别人使用其实也是一种享受。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。