Web全栈工程师的自我修养

Web全栈工程师的自我修养

作者:余果

出版社:人民邮电出版社

出版年:2015-9-1

评分:7.5

ISBN:9787115399021

所属分类:行业好书

书刊介绍

内容简介

余果,腾讯社交用户体验设计部高级UI工程师,前端开发组负责人,熟悉前端开发、iOS开发、PHP开发和Ruby开发等;曾独立开发iOS APP(撸大师)和CMS(33PU);翻译有《众妙之门: 网站重新设计之道》和《响应式Web设计全流程解析》;平时喜欢编程、写作、演讲、摄影和英语等,希望自己能做一个终生学习者。

作品目录

什么是全栈工程师
002tFacebook只招全栈工程师
004tWeb开发流程
011t全栈工程师登上舞台
014t全栈工程师的发展前景
如何成为全栈工程师
020t先精后广,一专多长
023t围绕商业目标
027t关注用户体验
从学生到工程师
034t校园招聘
038t获得面试机会
041t实习
野生程序员的故事
046t遭遇“野生程序员”
050t什么是“野生程序员”
053t大公司还是创业公司
工程师事业指南
058t那个什么都懂的家伙
059t积累作品集
068t突出重点
全栈工程师眼中的
072t简介
074t前端视角
077t后台视角
079tBigPipe
高性能网站的关键:缓存
084t什么是缓存
085t服务器缓存
090t浏览器缓存
大前端
098t前端工程师
098t知识体系
104t岗位细分
向移动端转型
112t为什么向移动端转型
113t一个转型故事
114t一定要是自己的产品的用户
115t有哪些方向
持续集成
126t版本控制
134t包管理
141t构建工具
理解编程语言
150t编程语言是什么
159t全栈工程师最佳实践
161t脚本语言的优势
全栈游乐场
168tVPS
172t实践
软件设计方法
178t设计模式
183t架构模式
186t设计原则
高效工程师
192t为什么需要高效
192t提速100倍
学习设计
204t科学家和工程师
207t设计基础
211tFacebook的品牌设计故事
全栈思维
218t有兴趣就够了吗
220t学一点管理
224t沟通:被忽视的竞争力
后记
· · · · · ·

作者简介

余果,腾讯社交用户体验设计部高级UI工程师,前端开发组负责人,熟悉前端开发、iOS开发、PHP开发和Ruby开发等;曾独立开发iOS APP(撸大师)和CMS(33PU);翻译有《众妙之门: 网站重新设计之道》和《响应式Web设计全流程解析》;平时喜欢编程、写作、演讲、摄影和英语等,希望自己能做一个终生学习者。

精彩摘录

1.什么是全栈工程师全栈工程师(Full-StackEngineer),是一个在IT行业圈子里越来越热门的话题,无论是像Facebook这样的大型公司,还是刚刚起步的初创公司,都开始招募全栈工程师。据说,Facebook声称:“我们只招全栈工程师!”Facebook只招全栈工程师?“全栈”是一个外来词,对于中国读者而言,会觉得它很陌生。当我第一次对某人提到“全栈工程师”时,他一头雾水:“全栈?您是说全端工程师吗?”其实,“全栈”翻译自英文full-stack,表示为了完成一个项目,所需要的一系列技术的集合。“栈”是指一系列子模块的集合。这些软件子模块或者组件组合在一起即可实现既定功能,不再需要其他模块。全栈中的“栈”与计算机数据结构中的“堆栈”不是同一个概念,后者是指先入后出的串行数据结构。顺便说下,“队列”是指先入先出的串行数据结构。IT行业之外的人其实很难理解Web开发是多么复杂的工程。人们一般认为,在计算机公司或者互联网公司工作的人,就应该能够解决与计算机相关的所有问题:电脑开不了机、应该买什么型号的手机、家里上不了网,等等。在他们眼中,计算机行业的从业者天生就带有“全栈光环”。但是拿着这本书的您知道,要开发一个Web页面,工程师需要掌握的知识至少包括:服务器(比如Linux)、数据库(比如MySQL)、服务器端编程语言(比如PHP)、前端标记语言和脚本语言(HTML、CSS、JavaScript)等。这些技术中的每一个,都需要几年的学习和练习才能达到精通的程度。Web工程是一个如此大的专业类别,以至于IT公司为每一个环节都设置了专门的部门和岗位,来把每一个环节做好。服务器、数据库、服务器端编程语言、HTML、CSS、JavaScript等组合在一起就是一个“栈”。这个“栈”是用来制作Web站点的,所以又叫Web栈(Web-Stack)。如果要开发...

——引自第1页


我们知道,前端工程师就是负责页面浏览器端编程的人,后端工程师就是负责服务器端编程的人,那么什么才是全栈工程师呢?对于全栈工程师,业界并没有严格的定义,并不是说一定要一种都不能少地具备哪几项知识才能叫做全栈工程师。我倾向于认为,应该从能力和思维方式两方面,来判定一个人是否是一个合格的全栈工程师。国外是怎么定义全栈工程师的呢?在著名的问答网站Quora上有人提出了这个问题。一个获得了高票的回答是:全栈工程师是指,一个能处理数据库、服务器、系统工程和客户端的所有工作的工程师。根据项目的不同,客户需要的可能是移动栈、Web栈,或者原生应用程序栈。基本上,当客户需要一个全栈工程师的时候,客户需要的是一个全能的“大神”。简单来说,全栈工程师就是可以独立完成一个产品的人。当客户让他去做一些舒适区之外的工作时,他敢于迎难而上,并成功完成任务。我们每一个工程师,进入到公司和企业工作之后,就会有一个职位头衔。我的职位头衔是“UI工程师”,其他人的头衔可能是“交互设计师”“PHP开发工程师”,等等。“全栈工程师”不需要头衔。他既有全面的技术能力,也渴望跨界工作的状态。“全栈”好像是一个遥不可及的梦想,所以对于初次了解“全栈工程师”这个概念的工程师而言,有可能觉得“不可思议”或者抱着“这不可能”的排斥心理。但如果我们回头看看Web开发的历史,就知道“全栈”其实没那么难。Web开发流程有人曾开玩笑说,全栈工程师是资本家的阴谋,因为老板想雇一个人来做三个人的工作。其实在2000年第一次互联网泡沫破裂之前,那时候的Web工程师也许符合“全栈工程师”的简单定义:一人包揽整个网站的构建。那时的Web工程师们所面临的挑战比今天小很多,他们可能只是制作一些静态的页面,不会面对如今富交互的Web应用程序。那时网站可能包含数据库和一些HTML表单,但仅此而已,甚至只需要将一些静态页发布到服务器上...

——引自第1页

相关推荐

微信二维码