对前端工程师的误解

Tuesday, April 2nd 2019, 9:51:16 am ( ISO 8601 )

标签:

隔行如隔山,经常会有一些不太了解前端工作者对前端开发的误解。 已经过时的模式描述这个误解:‍

  • 大多数人心中的前端工程师是:
    1、把Photoshop文件、图片或者线框做成一个页面;
    2、偶尔设计Photoshop文件、图片或者线框;
    3、用JS实现动画、过渡效果;
    4、用HTML和CSS编程,实现网页的内容和形式。

  • 事实上,前端工程师在做的是:
    1、在设计师和工程师之间创建可视化的语言;
    2、根据设计稿定义一组代表内容、品牌和功能的组件;
    3、为Web应用程序的框架、需求、可视化的语言和规格设定基准;
    4、根据设备、浏览器、屏幕、动画来划分web应用的工作划分;
    5、用QA基准来保证指南来确保品牌忠诚度、代码质量、产品标准;
    6、调节Web应用程序的样式,包括间距、字体、标题、图标、布局等等;
    7、根据不同分辨率、横屏竖屏等,调节Web应用程序的样式;
    8、标记 Web 应用程序,使之语义化,SEO 友好;
    9、通过API获取内容要考虑友好性、电池消耗性、设备和客户端的特性;
    10、开发客户端要考虑动画的流畅、延迟加载、交互、应用工作流程,大多数时间用来考虑渐进增强和向后兼容的标准;
    11、保证后台连接安全,采取跨地资源共享( CORS )的程序考虑,防止跨站点脚本( XSS)和跨站点请求伪造( CSRF ) ;
    12、最重要的是,尽管要符合以上标准,但是无论现在还是将来永远是「用户第一」。

为了实现上述目标,前端工程师采用了多种工具,从可视化工具(Photoshop/Adobe/Macaw/Sketch),到编程工具(IDE’s,命令行,源代码版本控制, Bash脚本,建设任务)。有时,我们甚至要照顾市场(Newsletters,Campaigns,分析,SEO,社会媒体) 、 UX(动画、过渡、反馈、接口、可视化语言),到内容改进(断点、避免孤立词汇、可读性、颜色) 。

  • 糟糕的前端工程师是这样做事:
    1、滥用JS库,因为他们实际上并不了JS的内部(e.g. 一切都用jQuery);
    2、滥用JS插件,抄别人的代码哪怕自己根本读不懂(e.g.jQuery.doParallaxPls.js);
    3、给Web应用程序添加CSS框架,却只用到CSS/JS的5%,没有看到任何的需求、设计或者比较和评价;
    4、认为只要添加了CSS框架,网站就可以「有求必应」;
    5、一边在说着「响应式web设计」,却对服务器端技术一无所知;
    6、用CSS编程时不管预处理器、命名规范等,却用不合适的selector/ids/magic numbers等;
    7、忽视表现、内存泄露(并不理解内存泄露的真正含义),不会检测代码;
    8、不会用指标衡量一个产品,或者这种指标旨在自己的电脑、浏览器、设备有效;
    9、忽视软件技术。

虽然CS背景并不是成为一个优秀前端工程师的必备条件,但是计算机和软件的基础对你用JS或浏览器编程都非常重要。优秀的前端工程师知道,web可能是最有影响力的平台和环境之一,所以在那里执行的程序必须被小心对待,甚至比在任何一台可视化机器上的任何一种语言更小心。一位优秀的前端工程师不仅要考虑web技术和语言,并且还要了解所有不同的组件、系统和概念。

  • 以下是优秀的前端工程师在即时面对普通的任务也会做的事情:(这才是市场急需的前端)
    1、DNS解析、使用CDN和关于multiple Hostnames as part of resources request.
    2、HTTP Headers (Expires, Cache-Control, If-Modified-Since)
    3、Steve Souders的所有规则(High Performance Websites)
    4、如何解决PageSpeed, YSlow, Chrome Dev Tools Audit, Chrome Dev Tools Timeline显示的所有问题;
    5、何时把任务传到服务器和客户端;
    6、缓存,预取和负荷技术的使用;
    7、Native JS,知道何时从头开始做,何时查找别人的代码,同时可以评估这样做的优缺点;
    8、modern MVC Javascript libraries (e.g.AngularJS, EmberJS, ReactJS),graphic libraries (e.g. D3, SnapSVG), DOM manipulation libraries (e.g. jQuery,Zepto), lazy loading or package management libraries (e.g. RequireJS, CommonJS),task managers (e.g. Grunt, Gulp), package managers (e.g. Bower, Componentjs) and testing (e.g. Protractor, Selenium)的相关知识和用法;
    9、CSS标准、modern conventions、 strategies (e.g. BEM, SMACSS, OOCSS)的知识和用法;
    10、JS的电脑知识(内存管理,单线程的性质,垃圾收集算法,超时,范围,提升,模式)

Toweave

关于作者
本人是前端工程师 Toweave. 一个努力成为优秀工程师的男人.了解更多...

文章精选.

程序员的文字障
Friday, May 28th 2021, 2:31:26 am ( ISO 8601 )
什么是文字障?
文件类型判断
Friday, April 12th 2019, 1:51:30 am ( ISO 8601 )
常用的文件类型判断
vue 实例生命周期钩子
Thursday, April 11th 2019, 9:15:48 am ( ISO 8601 )
每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM 并在数据变化时更新 DOM 等。
浏览器运行环境判断
Thursday, April 11th 2019, 9:05:35 am ( ISO 8601 )
常用的浏览器运行环境判断
现在很多人开网约车,这样能赚多少钱,能够赚到大钱吗?
苏州-虎丘
Saturday, April 6th 2019, 3:05:22 am ( ISO 8601 )
苏州虎丘一日游。
日积月累,你将完成不可思议的事情。
Wednesday, April 3rd 2019, 8:08:38 am ( ISO 8601 )
日积月累,你将完成不可思议的事情。
JavaScript Date 对象
Wednesday, April 3rd 2019, 6:18:56 am ( ISO 8601 )
Date 对象用于处理日期和时间。
常用正则表达式
Wednesday, April 3rd 2019, 3:47:31 am ( ISO 8601 )
正则表达式,一个十分古老而又强大的文本处理工具,仅仅用一段非常简短的表达式语句,便能够快速实现一个非常复杂的业务逻辑。熟练地掌握正则表达式的话,能够使你的开发效率得到极大的提升。下面是在前端开发中经常使用到的20个正则表达式。
上海-一朵梨花压海棠
Wednesday, April 3rd 2019, 3:05:22 am ( ISO 8601 )
一朵梨花压海棠。
CSS Selector 选择器
Tuesday, April 2nd 2019, 10:15:53 am ( ISO 8601 )
了解并且熟用 CSS3 为我们提供的强大并且优雅的选择器,就可以简化我们的代码。
对前端工程师的误解
Tuesday, April 2nd 2019, 9:51:16 am ( ISO 8601 )
隔行如隔山,经常会有一些不太了解前端工作者对前端开发的误解。
Material Design 中文版
Tuesday, April 2nd 2019, 9:28:52 am ( ISO 8601 )
Material Design 的核心思想,就是把物理世界的体验带进屏幕。去掉现实中的杂质和随机性,保留其最原始纯净的形态、空间关系、变化与过渡,配合虚拟世界的灵活特性,还原最贴近真实的体验,达到简洁与直观的效果。
Markdown - 使用指南
Tuesday, April 2nd 2019, 8:50:09 am ( ISO 8601 )
是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用。
浮点数运算的精度问题
Monday, April 1st 2019, 10:33:53 am ( ISO 8601 )
根据浮点数的定义,非整数的 Number 类型无法用 `==` 来比较(`===` 也不行)
上海-顾村公园
Saturday, March 23rd 2019, 3:05:22 am ( ISO 8601 )
上海-顾村公园,摄影。
上海-世纪公园
Sunday, March 17th 2019, 3:05:22 am ( ISO 8601 )
上海-世纪公园,摄影。
Toweave's logo.
Sunday, March 3rd 2019, 8:08:38 am ( ISO 8601 )
Toweave's logo. 哈哈,2015 年,为自己设计的 logo。