闲着没事我又想到我当年刚上班的时候,学习git,一个代码管理的工具,然后我特别懵逼:这些本地代码仓库、远程代码仓库的概念到底在干嘛呀?为啥又是本地又是远程的搞这么麻烦在干嘛?后来我发现我当年之所以很懵逼,是因为我完全没有服务器的概念!!虽然我上学的时候也学过编程,但我写的程序都是在自己的笔记本电脑里跑的,我根本没见过服务器长啥样,我脑子又很笨,联想不到什么是服务器,所以虽然我会做编程算法题、也学了c++和java,也了解操作系统和网络编程,但我当年完全想象不到软件系统的整个架构是啥样的。所以当我在公司里用git提交代码的时候,我想象不到代码其实是通过git提交到公司存储代码的服务器里了,因为服务器这玩意我也看不见摸不着,我就想象不到有这么个东西,对这个东西完全没概念。然后我现在回忆过去,我发现我在刚学编程的时候,虽然我也学了c++、java这些编程语言、也会做算法题、也学了操作系统和网络编程,但我并不知道整个软件开发相关的商业架构是怎样的,我不知道如果我要开发一个给其他人使用的软件并赚钱,那我怎么把这软件分发给用户、用户又是通过什么途径下载我这个软件、这个软件最终是运行在哪里的、是运行在用户的电脑或手机上、还是运行在服务器里的?是用什么样的形式运行的、运行在什么操作系统之上的、用户是怎么下载安装的、开发者又是把软件以什么样的形式发布到哪里能让用户下载到?这些不同类型的软件都是什么编程语言开发的、开发流程和使用的工具大概都是什么样的?不过我现在也不太懂[允悲]只是大概对整个软件的商业形态有了一点了解了。其实这些百度一下都有很多人讲得很详细,但我当时只会背编程语法和在自己电脑里做算法题,完全没有任何联想能力、连服务器这个东西我都不知道[允悲]所以我前两天转发的那个微博,他说学习最重要的是联想能力,要把学到的东西联想到具体的事情上,连成一张网,我觉得蛮有道理的。我以前学习就完全死记硬背、从来不联想不好奇不百度,所以学到的全是琐碎的、漂浮的东西,一到具体实践就蒙了,怪不得我工作能力一直都很差
