成为高手,人人可以

来源:互联网 发布:java实现文件下载 编辑:程序博客网 时间:2024/04/28 21:46

这里说的高手是指计算机高手。

总的来说,我认为计算机技术是比较简单的,尽管我现在还是个低手。其复杂度,跟大一、大二的高数、微积分、矩阵这些东西比起来,简直小巫见大,不在一个档次上。你看现在业界采取的一些所谓高大上的架构啦,解决方案啦,算法啦,其实都是一些很朴素、很自然的思想。

比如说,提高性能,就用缓存,集群,分布式;提高可靠性,就镜像,同步之类,这些其实都是人人都能很自然想到的方法,本质上是很简单的。当然,大道至简,最简单的,可能就是最好的。所以最质朴简单的办法并没有什么不好,只是说,这其实并没有什么难的。

事实上,绝大部分的计算机技术都不是什么高深理论,只要是个人,看几天书,就能入行,编程也好,测试也好,甚至乎,完全没有基础的话,当项目管理也不错。

那么为什么现实世界中,我们身边,各种计算机从业者水平参差不齐呢,有的给人的感觉很烂呢?(比如说在下),我认为原因有二:

一是际遇的问题。有些东西,你没搞过,或者你没见过,周围又没有这个氛围,你的眼界和水平就会受到限制。这是客观因素

二是学习方法的问题。计算机的技术虽然浅薄,但名目繁多,各种概念、名词铺天盖地,而且还发展一日千里。我们程序员很大部分的工作就是不同地新瓶装旧酒,不停地采用新工具、新技术去解决老问题,自觉分层分架构,解耦煲老藕,逻辑清晰得很,乐在其中,隐隐然大架构师焉。今天新工具,明日新语言,很容易迷失其中,到头来学了一大堆新语言,其实都是重复重复再重复,并且每种都是学一些语法和皮毛。

这时候我们会惊叹,为什么会有一些大牛,他们知道得那么多,对某种语言理解得那么透彻?

原因是他们学习的时候,注重吃透原理和核心的机制,知其然,更知其所以然。

原理有许多种,每种语言、工具会有其原理,但计算机会有基础原理,只要实实在在地弄懂这些基础原理,成为高手不是什么难事。它们都在大学的课程中:

操作系统原理

计算机组成原理

数据结构

编译原理

计算机网络

数据库原理


0 0