程序员应了解:知识技能金字塔
这是我的开篇文章!!
如今计算机非常火热,尤其是程序员(软件开发)更是大众眼中高工资的代表。
而新的编程语言和技术框架等更新迭代速度可以说是360行中最快之一,一般来说程序员知识半衰期是五年,也就是五年以后用的技术和之前的技术大相径庭。
时代变化如此之快,软件行业跟是如此,如果你不善于适应新的环境,又不能改变环境,就很可能面临几年之内丢掉饭碗。
那么,我跟大家聊一聊:一名不落伍的程序员,应该如何构建自己的知识技能树呢?
我用画图给大家做了一个简单的四层模型:
金字塔的最底层:当然一切都需要建立在逻辑能力,语言表达能力,智商情商等软实力上,这里就不画出了。
第一层:
这一层里面的操作系统原理,数据结构原理以及算法原理都是帮助我们在软件行业快速学习新技能所必须要掌握的知识。
看如今各大互联网公司招聘软件开发时,算法题可谓是重中之重。
而如今,算法已经成为一个职位(算法工程师),个个拿着计算机行业顶尖的工资。
软件开发界更有一句:千军万马转算法。足以体现算法与数据结构的重要性。
计算机网络能帮助我们理解我们在编程语言中操纵的数据是什么,是怎么传输的。以及非常重要的网络安全,因为安全无论在哪都是第一位的,如果我们的数据不安全,会造成极大的隐患。
第二层:
一般来说,我们第一次接触编程,都是需要从一门语言入手,目前使用率最广泛的是 c语言 和 java语言。
那么语言中我们最先接触到的是什么?无非就是所有编程语言都有的数据类型,if语句,循环语句等等。
假如你学会了c语言的基本语法,那么java、c++、python、scala等编程语言的基本语法只要花一两天看看他们有什么不同就可以迅速的理解另外一门语言的基本数据类型了。而语言的语法其实并不算难,因为无非就是一些数据类型,数据结构和逻辑判断这样的基础知识。
举个例子:
学习编程的语法-------------->我们小时候学习语文
汉字----------------------------->数据类型
如何组织成一句话----------->编程语法
一句话--------------------------->一小段程序(用编程语法控制数据类型)
一片文章------------------------>很多小程序拼在一起(像语文的作文一样,作文也不是几句没有关系的话拼凑的,需要有开篇,衔接,结尾。程序也使一样,程序有程序的调用关系,有程序的入口和结束)
第三层:
当有了前面两层的累积,你会用更优秀的程序设计思想去解决频繁更改的需求,会更熟练地运用开发工具帮助我们实现高效开发。
即使你一点不明白工具的细节,可能看不懂全英文界面的开发工具,但你就是知道它们能够做什么,那就够了。人类研发工具就是为了辅助人类自身。
第四层:
最后,通过前三层的累积,可以说对于计算机的软件开发原理和流程的知识早已融汇贯通,无论语言怎么变,框架怎么变,技术怎么变,都可以拥有快速学习新技术的能力。
活到老,学到老:我认为软件开发过程中最有意思,最让人兴奋的原因就是总能学到新的东西,看着自己写的代码被别人使用其实也是一种享受。
程序员应了解:知识技能金字塔相关推荐
- 程序员必备的软技能-金字塔原理拆解(下)
原书 290千字,本文预计 14千字,拆解比 20:1,预计阅读时长 15分钟 第 4 章 序言的具体写法 文章的序言(前言.引言.导言)概述读者已知的信息,并将这些信息与文章将要回答的疑问建立联系, ...
- 程序员必备的软技能-金字塔原理拆解(上)
原书 290千字,本文预计 14千字,拆解比 20:1,预计阅读时长 15分钟 序言 日常工作中,常常因为思维.表达方式不对产生不想要的结果: 写了一个小时的周报,领导却不满意? 跟团队讲了半天自己的 ...
- 怎么移动矩形选框工具选中的东西_程序员应具备的PS基本技能(二):程序员切图最常使用的工具组-选择工具组...
若该文为原创文章,未经允许不得转载 原博主博客地址:https://blog.csdn.net/qq21497936 原博主博客导航:https://blog.csdn.net/qq21497936/ ...
- 【观点】程序员应知——循序渐进
导读:作者侯伯薇在CSDN博客中写了一篇<程序员应知--循序渐进>,在他看来,想成为一名优秀的程序员要脚踏实地的,一步一个脚印,逐步提高,切忌不可一蹴而就. 以下是文章内容: 作为程序员, ...
- 面试感悟----一名3年工作经验的程序员应该具备的技能,对于一些入门或者还在面试阶段的人有着很大的启发...
前言 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发的,因此有一部分内容也是专门面向咱们Ja ...
- 程序员应该会哪些内容
以下文章转载自知乎,暗灭-京华九月秋近寒,浮沉半生影长单 暗灭 京华九月秋近寒,浮沉半生影长单 156 人赞同了该回答 题外话:我实在看不下去阳阳和柯基这两个菜鸡,代码写的一塌糊涂了,所以找了个时间, ...
- 优秀的Java程序员应具备哪些编程技术?
想要成为一名合格的java程序猿,需要学习的知识是有很多的,但是基础知识一定要非常牢固,基础不牢固的程序员,随时都会被新的知识和技术所淘汰,下盘不稳风一吹就倒,那么具体作为一个优秀的Java程序员应具 ...
- 嵌入式程序员应知道的基本问题-C语言(zz)
来源:21ICbbs 作者:lhf C语言测试:想成为嵌入式程序员应知道的0x10个基本问题 其中少量灰色的文字是我添加的,表达一些我的看法,很不成熟,希望朋友们指正. C语言测试是招聘嵌入式系统程 ...
- 面试感悟-------一名3年工作经验的程序员应该具备的技能
转载: 面试感悟-------一名3年工作经验的程序员应该具备的技能 前言 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当 ...
- 程序员应知——学习、思考与分享
有人说,程序员是个苦差事,一辈子总是要不停地学习,学习新的技术,学习新的架构,学习新的工具,一旦一段时间不学习,就会发现其他人嘴里冒出来的新鲜词,自己已经搞不懂是什么了. 的确,作为程序员,学习很重要 ...
最新文章
- zcmu1157: 新年彩灯Ⅱ(二维树状数组)
- HTML5常用标签~
- VS2008 只生成DLL不生成lib文件
- 成都Uber优步司机奖励政策(3月17日)
- 单片机实验:交通灯控制
- webservice和restful的区别
- NC6.3 变更销售合同维护模板后单据追溯查询提示权限问题的解释
- 数据结构 图的邻接表
- 训练集、测试集、验证集之间的区别及理解
- debian sid 安装 sopcast
- 关于c++16进制字符串与ASCII字符串的相互转换
- 程序员应该学习的一些数学知识
- vivado error:Multiple declarations of unsigned included via multiple use clauses
- 修改系统默认 alert 弹框样式
- 【超详细教程(附源码)】基于 ARM Cortex-M3 处理器与 FPGA 的实时人脸检测 SOC
- 解决JS双击事件dblclick触发时,同时会执行click事件中的语句
- 归一法的计算方法讲解_初三化学计算题中归一法,XY法,拆分法,分配法,K值法是怎样的,最好有具体的例子...
- Kotlin高仿微信-第58篇-开通VIP
- PAT甲级刷题记录-(AcWing)-(Day06树 8题)
- u盘怎么样在w ndows7上使用,Windows7安装U盘 DIY 制作全攻略
热门文章
- TCP粘包以及粘包处理
- 怎么搭建可视化BI数据平台(下)
- P4学习——p4runtime
- postman报错500 Internal Server Error
- [bzoj3238]差异
- scalac: Token not found: /Users/shengquan.nian/Library/Caches/JetBrains/IntelliJIdea2021.1/compile-s
- ID号自动生成,补缺功能
- 3.处理机调度——作业调度算法与进程调度算法
- 简单的电商分销管理系统介绍
- JN5168的SPI使用