全栈工程师的纯技术干货总结_第1页
全栈工程师的纯技术干货总结_第2页
全栈工程师的纯技术干货总结_第3页
全栈工程师的纯技术干货总结_第4页
全栈工程师的纯技术干货总结_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、全栈工程师的纯技术干货总结生活是一个有趣的循环,当我们试着往围城外走的时候,我们又被拉到围城里.什么是全栈工程师在现在这一个时代来说,不会有人掌握所有的编程语言、技能,以后应该会有,但是掌握这些全部技术的不是人类了.所以,其实我们需要的是懂得多种技术的,并能借些独立完成产品的人.当我们需要做一个移动CMS的时候,我们就会在不同的技术栈之前选择,或是RequireJS+Backbone+jQuery+Mustache,又或者是ReactJS+Backbone,当然也有可能是AngularJS等等.我们所需要做的是,从中选出一个最好的方案,然后实施之.这也就意味着,我们需要有更好的知识面,也会导致

2、对于某些技术的不够深入.两者就是一个很好的对立面,在这两之间很好地平衡可能就意味着平庸.有时也并非如此,但是多数时间这这样的.要么成为专家,要么成为全栈,要么就平衡他们.全栈工程师VS专家人的大脑如同一间空空的阁楼,要有选择地把一些家具装进去.RelationaldatamodelHighlystructuredtableorganizationwithrigiddefineddataformats3ndrecordstructure.DocumentdatamodelCollectionofcomplexdocumerttwithartjitrarv,nesteddataformatsand

3、varyingRecordformaL柯南道尔说的话还是很有道理的.由于这个阁楼的大小是有限的,假定他是一个书架.那么全栈工程师的书架就会充满各种各样的技术栈从MySQL、SQLiteMongoDB、Redis等等各种各样的书籍;而专家的书籍那么是MySQL优化、MySQL重构、MySQL权威指南、DBMS等等的专业书籍合集.如果他们都是一本书,那么全栈工程师的书是一个索引.专家的书那么更多的是内容本身.所以,每个人都会去选择不同的存储方式、不同的数据库KE对于我们大脑这个数据库来时,平时我们存储的是Key-Valueps:我们只有key,value是Google和书本,对于专家来说,存储的是

4、Documents.在同样的容量大小的情况下,我们可以了解到更多的知识.如下列图所示,左边的关系数据模型即为全栈工程师,右边那么为专家.Key曾经迷惑了很久:为什么对于一些知识点,我需要去Google,而别人可以独立地完成的时候.我就意识到我更适合于互联网企业,据说在一些电信设备制造商里是没网的办公环境.然而在多数的时候,这并非一种劣势.我们会更快地方式来解决问题,由于我们有一些这方面的经验.缺乏那么是,有时候我们没有方法深入问题去分析.如何成为全栈工程师这是一个有趣的问题,在知乎也有这样的讨论.而我觉得,最重要的是好奇与创造.创造记得在上大学之前已经有一个明确的目标,尽可能地做到能做到的程序

5、一一想到的都应该能做到.于是,顺着这个目标构建了一个知识体系,又或者说是索引.当我们心里有一个想法的时候,我就开始从一个key中进行头脑风暴,如之前做的地图搜索.我们要做的功能便是:持久化GEO信息,在地图上显示坐标.1 .首先会在头脑中列出所有我用过的框架,选择后台框架:Django(Python)、Flask(Python)、RubyOnRails(Ruby)、Sinatra(Ruby)、NodeJS、Laravel(PHP)、Spring(Java)排除过后就只剩下Django、Flask、NodeJS,接着由于Django内置Geo支持,果断选择了Django.2 .接着,对于持久化方

6、案的选择:由于Django内置ORM,所以这一步可以轻轻松松地过去.不过,我选的是SQLite3,本地调试方便,还可以将数据复制到效劳器上.3 .然后,对于空间搜索的支持:就这么有了两个搜索引擎和一个数据库:ElasticSearch、Solr以及MongoDB.由于Django对于MongoDB支持的原因,想到使用搜索引擎会更容易搜索到结果.接着找到了Haystack,看到Solr需要手动更新索引就选择了ElastiSearch.4 .到了,移动开发:要跨平台支持自然是Cordova,用Hybird还是Ionic好用.5 .实战这一步自然也不是问题,向来是以实战出真知的.在不断创造地过程中会

7、学到更多的知识,有更多的方案可以选择.下一次,将会想着用不同的技术栈再实现一遍.有了之前的体系,再横向深入也是一个很好的突破点.如,我们用Python构建一个原型,然后我们用Java来实现.好奇与专家不同的是,全栈工程师更容易被新的技术吸引.至于,是好是坏我想大家都懂的.当ReactJS出来的时候,就会试着去玩.当Ionic还在测试版的时候,就会做一个个Demo.而有意思的是,同我们在?技术的本质?中看到的一样,新的技术都是基于旧的技术产生的.没有一种技术可以无中生有.所以要学习一种新的技术必然不难,只是有时候会难以深入.全栈程序员进阶在思考过一些日子后,我明白了更多的东西.也似乎找到了两条更

8、有意思的成长路线:构架设计在我打算试着写一个名为Echoes_的CMS的时候,找到了书架上的几本书:?架构之美?面向模式的软件架构?领域驱动设计?实现领域驱动设计?软件框架设计的艺术?发现书中提及到的一些模式似乎已经很常见了,要理解起来已经变得很简单,看上去那些更像是一个又一个的工程的缩影.更主要的点还有架构师并不是最好的程序员,但是知识面一定要广.只有有着更多的知识才能决定好方案,如果我们只深入一局部知识,那么我们无法总做出正确地决定.所以,也必须也是一个好的成长方向.成为专家000我一直不认同木桶理论的一点是,我们会被最低的木板限制.但是有一天我们会被最高的那一块限制到,毕竟我们都会意识到

9、我们的短片,我们会尽量把所有的木板提到同样的高度,以保证水的容量.但是,如果最高的那块木板不是那么高呢?那么,为什么不在一开始的时候,让它尽可能的高?于是,我想说的是我们需要在某一局部成为专家.当我们在某一领域成为专家,要在另外一领域成为专家,也是很容易的一件事.当我向Senior程序员咨询一些成长意见的时候ps:毕业不到一年,那么就是往专家开展.对于一个JavaWeb程序员来说,成长意见可能就是深入Spring探索Tomcat底层、深入JVM.问题是,他们都写得复杂,但是我们又不能放弃这样的成长时机.我们还能做的事,从一个更简单的语言中学会这些原理,再回头去补充.对应于Spring,会有Flask、Tornado;对应于Tomcat,我们是不是可以深入Gunicorn;对应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论