程序员的基本功之我见

2018-02-10  本文已影响0人  冯阿良

前言

各行有各行的基础知识,或曰基本功。例如,作为医生,需要知道人体各个器官、各个系统(呼吸系统、消化系统、免疫系统等)的作用,知道细胞、细菌、病毒等分别是什么,知道抗生素的种类、工作机理,等等——很难想象,缺乏这些基本知识的医生会如何诊断、开药。

而计算机领域中的概念的数量、概念间的关联等远复杂于人体,但缺乏类似于医学上的人体骨骼系统结构图、人体内脏器官结构分布图之类可以作为“地图”的东西。

本文尝试以一个普通操作——从开机开始到打开网页——作为主线,罗列出(我认为的)一个程序员所应该懂得(掌握?)的基础知识,希望可以帮你描绘出一张“地图”。

至于所罗列的每一点应该掌握到什么程度,都是很含糊的(就如很多人在简历中动不动就说掌握、精通一样),所以,本文中仅使用“了解”(或”知道“)和“懂得”。“了解”是指知道有这个东西,知道它大概是什么;而”懂得“,是指有使用过,且懂得一样东西的使用场景、适用范围。

零、概述

主线故事:

正文分两部分:

文中以Linux系统作为主体,使用Windows的读者,请自行映射。

一、基础部分

二、扩展部分

这一部分该要描述了上述过程中会涉及到的一些一般用户不涉及的东西。

微机原理

网络知识

编程基础

三、结语

上述罗列的概念、术语只是计算机基础的一部分,还没有涉及到其它方面,如:编程语言(如Java、Python等)、软件工程、设计模式、架构模式、数据库、MVC等 —— 所以,立志当程序员的同学,请做好充分的心理准备。 :-)

当然,知识虽多,但只要有你掌握了上述基本功,心中有了那张“地图”,就可以较好地理解计算机领域的其余部分。

参考

上一篇下一篇

猜你喜欢

热点阅读