全栈工程师的纯技术干货总结 生活是一个有趣的循环,当我们试着往围城外走的时候,我们又被拉到围城里
什么是全栈工程师 在现在这一个时代来说,不会有人掌握所有的编程语言、技能,以后应该会有,但是掌握这些全部技术的不是人类了
所以,其实我们需要的是懂得多种技术的,并能借些独立完成产品的人
当我们需要做一个移动 CMS 的时候,我们就会在不同的技术栈之前选择,或是RequireJS + Backbone + jQuery + Mustache,又或者是 ReactJS + Backbone,当然也有可能是AngularJS 等等
我们所需要做的是,从中选出一个最好的方案,然后实施之
这也就意味着,我们需要有更好的知识面,也会导致对于某些技术的不够深入
两者就是一个很好的对立面,在这两之间很好地平衡可能就意味着平庸
有时也并非如此,但是多数时间这这样的
要么成为专家,要么成为全栈,要么就平衡他们
全栈工程师V S 专家 人的大脑如同一间空空的阁楼,要有选择地把一些家具装进去
柯南道尔说的话还是很有道理的
由于这个阁楼的大小是有限的,假定他是一个书架
那么全栈工程师的书架就会充满各种各样的技术栈从My SQL、SQLite、MongoDB、Redis 等等各种各样的书籍;而专家的书籍则是My SQL 优化、My SQL重构、My SQL 权威指南、DBMS 等等的专业书籍合集
如果他们都是一本书,那么全栈工程师的书是一个索引
专家的书则更多的是内容本身
所以,每个人都会去选择不同的存储方式、不同的数据库
对于我们大脑这个数据库来时,平时我们存储的是Key-Value(ps: 我们只有key,value 是 Google 和书本),对于专家来说,存储的是 Documents
在同样的容量大小的情况下,我们可以了解到更多的知识
如下图所示,左边的关系数据模型即为全栈工程师,