【前端】前端工程该干的事儿!!(网络笔记)

大多人都认为前端开发是一个「相对于其他模块来说更简单的领域」,在他们心中的前端工程师是这样工作的:

1、把 Photoshop 文件、图片或者线框放进一个网页;
2、偶尔设计 Photoshop 文件、图片或者线框;
3、用 Javascript 编程,为网页制作动画、过渡效果;
4、用 html 和 CSS 编程,确定网页的内容和布局。

事实上,前端工程师在做的是:

1、在设计师和工程师之间实现可视化的语言;
2、用可视化的设计,定义一组代表内容、品牌和功能的组件;
3、为 Web 应用程序的会话、框架、需求、可视化的语言和规格设定底线;
4、定义 Web 应用程序的设备、浏览器、屏幕、动画的范围;
5、开发一个质量保证指南来确保品牌忠诚度、代码质量、产品标准;
6、为 Web 应用程序设定适当的行距、字体、标题、图标、填充等等;
7、为 Web 应用程序设定多种分辨率的图像,设备为主的实体模型,同时维护设计指南;
8、标记 Web 应用程序,使之语义化,seo 友好;
9、用一种友好的,耗电少的,设备和客户端感知的方式连接 API,获取信息;
10、开发客户端代码来显示流畅的动画、过渡、延迟加载、交互、应用工作流程,大多数时间用来考虑渐进增强和向后兼容的标准;
11、保证后台连接安全,采取跨域资源共享 (CORS) 的程序考虑,防止跨站点脚本 (XSS) 和跨站请求伪造 (CSRF) ;
12、最重要的是,尽管有严格的期限、利益相关者的要求,以及设备的限制,无论现在还是将来永远是「客户第一」。

13、一位合格的前端工程师,必须对视觉设计有兴趣。

为了实现上述目标,前端工程师采用了从可视化到编程的多种工具 ,甚至有时要照顾市场、 UX 到内容改进等等。

原因三:大量糟糕前端工程师的存在,扰乱了市场

这或许是难以招到优秀前端工程师最明显的原因。由于前端工程师的入门门槛非常低, JavaScript、CSS、HTML 并不是很难入门掌握的语言,似乎只要花一点时间,谁都可以通过网上教程和书本学会它。对的,前端工程师市场就是被这些浅尝辄止的家伙搞坏的。

糟糕的前端工程师是这样做事的:

1、滥用 JavaScript 库,因为他们实际上并不了 JavaScript 的核心(e.g. 一切都用 jQuery);
2、滥用 JavaScript 插件,无节制的复用别人的代码,哪怕自己根本读不懂;
3、不看需求、设计,也不做比较或评价,就给 Web 应用程序添加 CSS 框架,却只用到框架的一小部分;
4、认为只要用了 CSS 框架,网站就是响应式的,或是对响应式设计的意义理解不到位;
5、一边在说着「响应式 Web 设计」,却对服务器端解决方案技术一无所知;
6、用 CSS 编程时不做预处理器、命名规范等;
7、忽视性能、内存泄露(并不理解内存泄露的真正含义),不会检测代码;
8、不会用指标衡量一个产品,或者这种指标旨在自己的电脑、浏览器、设备有效;
9、忽视 30 年来的软件工程技术,闭门造车。

要知道,入门容易精通难,计算机和软件的基础对你用 JavaScript 或浏览器编程都非常重要。Web 可能是最有影响力的平台和环境之一,在那里执行的程序必须被小心对待。一位优秀的前端工程师不仅要考虑 Web 技术和语言,并且还要了解所有不同的组件、系统和概念。

以下是优秀的前端工程师在即时面对普通的任务也会做的事情(这才是市场急需的前端):

1、DNS 解析,使用 CDN,把资源请求分散到多个域名上去;
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、原生 JavaScript,知道何时从头开始做,何时参考别人的代码,同时可以评估这样做的优缺点;
8、 最新的 MVC Javascript 库知识以及用法;
9、CSS 标准的知识与用法;
10、JavaScript的计算机科学部分的知识(内存管理,垃圾收集算法等等等等)

换句话说,如果说掌握(或者某些简历里自称的精通) HTML+CSS+JavaScript,了解后端知识,只是 60 分的合格前端;那么要想成为受追捧、拿高薪的 80 分优秀前端,要对业务需求和、架构设计有真正的运用;而 100 分的顶级前端,则必须要能够兼顾技术和设计,更接近「以前端开发为主的全栈工程师」了。

原文摘自:http://caibaojian.com/the-best-webfrontend.html

时间: 2024-10-08 15:52:24

【前端】前端工程该干的事儿!!(网络笔记)的相关文章

MariaDB日志审计 帮你揪出内个干坏事儿的小子

Part1:谁干的? 做DBA的经常会遇到,一些表被误操作了,被truncate.被delete.甚至被drop.引起这方面的原因大多数都是因为人为+权限问题导致的.一些公共账户,例如ceshi账户,所有的人都可以进行操作,由这些公共账户引起的误操作,你在办公室大喊:谁把我的表删了?8成不会有人回应你. 审计日志功能,该技术主要在MariaDB10.0/10.1和Percona 5.6版本里实现.该功能在MySQL5.6/5.7企业版里也支持.本文主要介绍和演示MariaDB10.1中如何开启审

单机笔记更改为网络笔记

myBase 是一款用于分类管理自由格式资料的小型个人数据库软件, 有助于个人用户在( Linux/MacOSX/Windows )桌面电脑系统上实施文档.笔记.日记.图片和网页等知识内容的分类管理. 借助软件提供的各项功能,创建和维护一个专属于自己的个人知识库将变的非常容易. 与传统意义上的数据库软件不同,myBase 通过内置的富文本编辑器接受图文信息的输入,并按树形 列表分类保存,同时接受任意磁盘文件作为树形列表条目的附件. myBase 提供了更好的方式使知识/信息的捕获.编辑.组织.查

vue单页(spa)前端git工程拆分实践

背景 随着项目的成长,单页spa逐渐包含了许多业务线 商城系统 售后系统 会员系统 ... 当项目页面超过一定数量(150+)之后,会产生一系列的问题 可扩展性 项目编译的时间(启动server,修改代码)越来越长,而每次调试关注的可能只是其中1.2个页面 需求冲突 所有的需求都定位到当前git,需求过多导致测试环境经常排队 基于以上问题有了对git进行拆分的技术需求.具体如下 目标 依然是spa 由于改善的是开发环境,当然不希望拆分项目影响用户体验.如果完全将业务线拆分成2个独立页面,那么用户

Web前端(16)_F12打开浏览器调试以及网络协议详解

1.elements 指的当前页面的样式,查看图片以及布局等 2.console js交互 3.source 访问的当前页面涉及到哪些资源 4.network 4.1.request  Headers 其实这里浏览器还充当了socket客户端的角色,第一步就是和服务器建立连接 send和rec之间 1. 等待浏览器发送请求,拿到数据解析,http报文,返回给客户端 2.知道了用户请求后,服务器在特定的目录中找到文件,read出来(文件操作),拿到数据,把数据组织成http返回报文,返回前端 也就

[聊一聊系列]聊一聊前端速度统计(性能统计)那些事儿

欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码): https://segmentfault.com/blog/frontenddriver 上一篇文章我们讨论了,如何进行前端日志打点统计: https://segmentfault.com/a/1190000005861012 这一篇我们来看看如何进行速度统计 网站的速度影响了用户访问网站最初的体验.试想,如果一个用户,在等待了若干秒后,还是停留在白屏的状态,那么他的选择将是离开这个网站.性能统计有

前端开发工程师从入门到精通学习过程及资源总结(持续更新中)

职位名称:前端开发工程师 学习概要:1.先了解基础,html/css/JavaScript是基础.html/css就是做静态页面的,javascript是做动态的. 2.学习框架:jQuery(基于DOM的,必学),Vue(基于数据的,目前比较流行的框架) 一.编辑工具 用sublime text3,下一个安装就行了.如果想用的更加方便,可以百度一下常用的插件,安装几个最常用的就够了. 二.HTML/CSS 1.先看慕课网的基础教程:HTML+CSS基础课程(非常适合零基础入门) 其他教学视频:

《现代前端技术解析》第七章读书笔记

<现代前端技术解析>是张成文写的一本书,2017年4月出版的.先看的最后一章(第七章),第七章主要讲的是未来前端技术的发展趋势及如何成为一名优秀的前端工程师. 过去几年,前端主流技术框架发展极快,在填补了原有技术框架空白和不足的同时也渐渐趋于成熟.未来前端的发展方向主要是等待下一个风口的到来,可能是VR丶人工智能或者其他.就前端应用开发方向来讲,MVVM丶Virtual DOM和同构的技术解决方案依然会延续发展一段时间,而且这段时间内前端框架技术的变化将不会像原来一样具有颠覆性.当MVVM丶V

[Web 前端] 前端频道之团队维护、聚合、订阅

cp from :https://blog.csdn.net/ivan820819/article/details/78885404 国内 腾讯 ISUX 腾讯全端 AlloyTeam 奇舞周刊 阿里巴巴 -U 一点 淘宝前端团队 (FED) 网易 FEG 前端团队 网易用户体验中心 码农周刊 凹凸实验室 ( 京东 ) WEB 前端开发 百度 WEB 前端研发部 搜车大无线团队博客 饿了么大前端 美团点评技术团队 携程设计委员会 前端观察 ( 腾讯 ) 前端外刊评论 Awesomes-Web 前

MySQL日志审计 帮你揪出内个干坏事儿的小子

MySQL日志审计 帮你揪出内个干坏事的小子 简介 Part1:写在最前 MySQL本身并不像MariaDB和Percona一样提供审计功能,但如果我们想对数据库进行审计,去看是谁把我的数据库数据给删了,该怎么办呢?我们主要利用init-connect参数,让每个登录的用户都记录到我们的数据库中,并抓取其connection_id(),再根据binlog就能够找出谁干了那些破事儿. MariaDB如何审计,可移步: http://suifu.blog.51cto.com/9167728/1857