web前端工程师

作者:党建凯
链接:https://www.zhihu.com/question/19554845/answer/13025360
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

397 赞同 反对,不会显示你的姓名
sofish ,饿了么程序员
1. 多写。很多问题都是积累得来的。写了,遇到了,才能去真正理解解决方案,才会随着自己的不断成长而有进步。别人问我为什么知道那么多 CSS 兼容解决方案,为什么一看就出的时候,我只能告诉他,我写了 20 几个 Wordpress 主题。-,-

2. 看书。看 BLOG 或者一些网上的教程,都很难让你全面理解一个东西的。坚持看书,至少前端相关的语言都看一本。CSS 的推荐 《精通CSS》,JS 推荐 《Javascript 高级程序设计》现在都是第 2 版了。

3. 读 BLOG。最后你会发现,很多东西大家都会。但只有某些人才解决得了某些细节性的东西,这些人就是我们所谓的高手。很大牛在 BLOG 不会写一些简单的 List, 而是针对某个问题深入研究。这时看 BLOG 对于进阶非常有帮助。

4. 去学一门后端语言。怎么说呢,实际用到会很少。但会很有利于一些问题的理解。比如 Ajax。还有 HTML5 中像 Web sockets、post message 之类的 API。

5. 去用很多产品,至少去爱一个产品。你不止是一个前端,你还应该是一个设计者,去用很多产品,你才会发现技术为什么有用,去爱一个产品,你才会把技术用得更好。

好吧,这是我的个人看法。一个法学院毕业自学前端的别人面前的专业前端攻城师的做法。
77 赞同 反对,不会显示你的姓名
堂主 ,Taobao UED 前端开发工程师
多写只是基本,在多写的基础上还要思考、总结和提炼。最重要的,我个人认为还是基础一定要打好,比如说基于CSS的布局技术,大家都很熟悉,很可能会脱口而出浮动和定位,那除此之外还有什么布局技术?这些布局技术的优劣势各是什么?每种布局技术各适合什么场合不适合什么场合?

再比如浏览器,对浏览器渲染问题的总结到位不到位?能否说出已知的浏览器兼容性bug和对应的解决方案?以及在此基础上的为什么用某种方法就能解决这个问题,背后的原理是什么?

是的,细节一定要扣透,很多前端的同学只是停留在“我知道遇到这个问题应该怎么做”,但他们不知道为什么要这么做。最简单的例子就是都知道“overflow:hidden”可以清除浮动挽救高度塌陷,但是什么原理使得这个方法可以做到这一点呢?或者又是因为浏览器如何渲染才导致clear属性可以清除浮动呢?如果基础扣得细,这里会知道设置了clear属性的元素会通过自动填满(补足)其上外边距(margin-top)来实现视觉上的清除浮动,所以设置了clear属性来清除浮动的元素,如果对其设置margin-top会不起作用。

那再换个问法,什么情况下margin-top会不起作用呢?答案又能列出多少条?

基础是非常重要的,因为很多时候出现问题,都会发现是自己对基础知识了解不清。这不单单是指CSS元素,我发现80%以上的兼容性问题可以追溯到结构代码写的不规范不标准。错误和冗余的套嵌易导致很多意料外的问题。
21 赞同 反对,不会显示你的姓名
元彦 ,可简历至 [email protected]
冯晓梦客i知乎用户 等人赞同
讲下我比较认同的方法学:先从模仿开始,不要闭门造车,然后研究背后的实现,这其中加入自己的理解与思路,最后有整理出自己的一套实现方案
20 赞同 反对,不会显示你的姓名
fishenal ,做前端的设计师
我说说我的看法,我觉得目前国内所谓前端工程师还是有好多分支的,有的前端在UED部门,有的在设计部门,有的在技术部门,所以首先要找好自己的定位,在技术部门的你就狂钻研javascript,死扣兼容性问题, 在UED部门你就可以关注一些交互,提高自己的沟通技巧(因为我觉得产品和交互就是耍嘴皮子的),在设计部门你就扣css细节,像素级别的,关注各种布局和效果的技术实现,提高设计稿还原度和效率。

你要求一个前端,即能高效准确的还原设计稿,又精通浏览器兼容性问题,同时精通javascript,各种跟后台的数据交互,又广泛涉猎产品和交互设计,能与交互设计是和产品唇枪舌战。你当前端工程师是神啊~
7 赞同 反对,不会显示你的姓名
孙芋头 html-js.com 前端乱炖-最专业的…
紧箍当头知乎用户、知乎用户 等人赞同
多想,其实有很多途径和方向和出路,能做到一点就足以成为一名高手
 
李萧 ,来不及洞察和理解这个鬼魅的世界
首先,优秀的Web前端开发工程师要在知识体系上既要有广度和深度!做到这两点,其实很难。所以很多大公司即使出高薪也很难招聘到理想的前端开发工程师。技术非黑即白,只有对和错,而技巧则见仁见智。
在以前,会一点Photoshop和Dreamweaver的操作,就可以制作网页。
现在,只掌握这些已经远远不够了。无论是开发难度上,还是开发方式上,现在的网页制作都更接近传统的网站后台开发,所以现在不再叫网页制作,而是叫Web前端开发。
Web前端开发在产品开发环节中的作用变得越来越重要,而且需要专业的前端工程师才能做好。
Web前端开发是一项很特殊的工作,涵盖的知识面非常广,既有具体的技术,又有抽象的理念。简单地说,它的主要职能就是把网站的界面更好地呈现给用户。

其次,优秀的Web前端开发工程师应该具备快速学习能力。Web发展的很快,甚至可以说这些技术几乎每天都在变化!如果没有快速学习能力,就跟不上Web发展的步伐。前端工程师必须不断提升自己,不断学习新技术、新模式;仅仅依靠今天的知识无法适应未来。Web的明天与今天必将有天壤之别,而前端工程师的工作就是要搞清楚如何通过自己的Web应用程序来体现这种翻天覆地的变化。
说到这里,我想起了一个大师说过的一句话:对于新手来说,新技术就是新技术。
对于一个高手来说,新技术不过是就技术的延伸。
再者,优秀的前端工程师需要具备良好的沟通能力,因为前端工程师至少都要满足四类客户的需求。
1、 产品经理。这些是负责策划应用程序的一群人。他们会想出很多新鲜的、奇怪的、甚至是不可是实现的应用。一般来说,产品经理都追求丰富的功能。
2、 UI设计师。这些人负责应用程序的视觉设计和交互模拟。他们关心的是用户对什么敏感、交互的一贯性以及整体的好用性。一般来说,UI设计师于流畅靓丽、但并不容易实现的用户界面,而且他们经常不满前端工程师造成 1px 的误差。
3、 项目经理。这些人负责实际地运行和维护应用程序。项目管理的主要关注点,无外乎正常运行时间、应用程序始终正常可用的时间、性能和截止日期。项目经理追求的目标往往是尽量保持事情的简单化,以及不在升级更新时引入新问题。
4、 最终用户。指的是应用程序的主要消费者。尽管前端工程师不会经常与最终用户打交道,但他们的反馈意见至关重要。最终用户要求最多的就是对个人有用的功能,以及竞争性产品所具备的功能。
Yahoo 公司 ,YUI 的开发工程师 Nicholas C. Zakas 认为:
前端工程师是计算机科学职业领域中最复杂的一个工种。绝大多数传统的编程思想已经不适用了,为了在多种平台中使用,多种技术都借鉴了大量软科学的知识和理念。成为优秀前端工程师所要具备的专业技术,涉及到广阔而复杂的领域,这些领域又会因为你最终必须服务的各方的介入而变得更加复杂。专业技术可能会引领你进入成为前端工程师的大门,但只有运用该技术创造的应用程序以及你跟他人并肩协同的能力,才会真正让你变得优秀。
————————————
关于书籍:
HTML、CSS 类别书籍,都是大同小异,在当当网、卓越网搜索一下很多推荐。如果感觉学的差不多了,可以关注一下《CSS禅意花园》,这个很有影响力。
Javascript 的书籍 推荐看老外写的,国内很多 Javascript 书籍的作者对 Javascript 语言了解的都不是很透彻。
这里推荐几本 Javascript 书籍:
初级读物:
《JavaScript高级程序设计》:一本非常完整的经典入门书籍,被誉为JavaScript圣经之一,详解的非常详细,最新版第三版已经发布了,建议购买。
《JavaScript王者归来》百度的一个Web开发项目经理写的,作为初学者准备的入门级教程也不错。
中级读物:
《JavaScript权威指南》:另外一本JavaScript圣经,讲解的也非常详细,属于中级读物,建议购买。
《JavaScript.The.Good.Parts》:Yahoo大牛,JavaScript精神领袖Douglas Crockford的大作,虽然才100多页,但是字字珠玑啊!强烈建议阅读。
《高性能JavaScript》:《JavaScript高级程序设计》作者Nicholas C. Zakas的又一大作。
《Eloquent JavaScript》:这本书才200多页,非常短小,通过几个非常经典的例子(艾米丽姨妈的猫、悲惨的隐士、模拟生态圈、推箱子游戏等等)来介绍JavaScript方方面面的知识和应用方法。
高级读物:
《JavaScript Patterns 》:书中介绍到了各种经典的模式,如构造函数、单例、工厂等等,值得学习。
《Pro.JavaScript.Design.Patterns》:Apress出版社讲解JavaScript设计模式的书,非常不错。
《Developing JavaScript Web Applications》:构建富应用的好书,针对MVC模式有较为深入的讲解,同时也对一些流程的库进行了讲解。
《Developing Large Web Applications》:不仅有JavaScript方面的介绍,还有CSS、HTML方面的介绍,但是介绍的内容却都非常不错,真正考虑到了一个大型的Web程序下,如何进行JavaScript架构设计,值得一读。
要做优秀的前端工程师,还需要继续努力: 《高性能网站建设指南》、《Yahoo工程师的网站性能优化的建议》、“YSLOW”性能优化建议、《网站重构》、《Web开发敏捷之道》、“ jQuery 库”、“前端框架”、“HTML5”、“CSS3”。。。 这些都要深入研究!

万事开头难!如果你能到这个境界,剩下的路自己就可以走下去了。
人们常说:不想当裁缝的司机,不是个好厨师。
如果单纯只是学习前端编程语言、而不懂后端编程语言(PHP、 ASP.NET,JSP、Python),也不能算作是优秀的前端工程师。
在成为一个优秀的前端工程师的道路上,充满了汗水和辛劳

猜你喜欢

转载自2312865928.iteye.com/blog/2292005