A. 2016年web前端开发要学哪些技术
HTML5开发就业班(面向零基础)6.0学习内容:
全栈:HTML5 + PHP + MySQL
第一阶段:前端页面重构:PC端网站布局、HTML5+CSS3基础项目、WebAPP页面布局;
第二阶段:JavaScript高级程序设计:原生JavaScript交互功能开发、面向对象开发与ES5/ES6、JavaScript工具库自主研发;
第三阶段:PC端全栈项目开发:jQuery经典特效交互开发、HTTP协议,Ajxa进阶与后端开发、前端工程化与模块化应用、PC端网站开发、PC端管理信息系统前端开发;
第四阶段:移动端项目开发:Touch端项目、微信场景项目、应用Vue.js开发WebApp项目、应用Ionic开发WebApp项目、应用React.js开发WebApp;
第五阶段:混合(Hybrid)开发:各类混合应用开发;
第六阶段:NodeJS全栈开发:WebApp后端系统开发。
HTML5开发好程序员班(科班出身/相关开发经验)2.0学习内容:
全栈工程师:
大前端:HTML5(Web前端)、Android(Native前端)、Hybrid(混合前端)。
后端:多栖后端(NodeJs、Java、PHP)。
第一阶段:前端页面重构:PC端网站布局、HTML5+CSS3基础项目、WebAPP页面布局;
第二阶段:JavaScript高级程序设计:原生JavaScript交互功能开发、面向对象开发与ES5/ES6、JavaScript工具库自主研发;
第三阶段:PC端全栈项目开发:jQuery经典特效交互开发、HTTP协议,Ajxa进阶与后端开发、前端工程化与模块化应用、PC端网站开发、PC端管理信息系统前端开发;
第四阶段:移动端项目开发:Touch端项目、微信场景项目、应用Vue.js开发WebApp项目、应用Ionic开发WebApp项目、应用React.js开发WebApp;
第五阶段:混合(Hybrid)开发:各类混合应用开发;
第六阶段:NodeJS全栈开发:WebApp后端系统开发、基于Socket.io聊天系统开发。
第七阶段:游戏开发:游戏类项目开发(植物大战僵尸、捕鱼达人等)。
第八阶段:Java开发:企业级开发技术架构实战、商城项目整站开发。
第九阶段:PHP开发:微信管理系统、商城系统、主流PHP免费系统的使用。
第十节段:Android开发:外卖系统开发、Android混合开发项目。
B. 前端工程师他到底是一种怎样的职业
前端工程师已经是大家不再陌生的一个软件行业的工种了,尽管这一工种诞生也没几年。作为一名从业三年的前端工程师,我尝试结合业界标准与我的理解,来尽可能诠释一下前端工程师这个职业。
前端工程师的英文名为front-end engineer,简称FE,下文将用FE来代称。现在意义上的前端(并非只制作网页),国内最早开始有大规模招聘岗位应该是2011年左右的事情吧,在此之前,FE的工作基本都是由服务端工程师包办的,或者是由设计师来产出HTML页面。那么,是什么样的原因催生出了FE这一职位呢?本文将从FE的工作内容、专业FE应具备的技能和品质来聊聊这个职业。
用户体验的操刀者
前端工程师的首要工作就是开发用户界面,在web系统中,就是指网页了。为什么网页需要专门的FE来写呢?答案就是“用户体验”。随着web2.0概念的普及以及web3.0的提出,用户成为互联网的主要生产者,网页所承载的功能越来越多。
一方面,企业的“用户体验”诉求很强烈。这个很容易就能理解,如果你的产品看上去就像个钓鱼网站而且还特别难用,就会有一部分用户离你而去。非互联网企业呢?也会面临这样的情况,你花了很大的功夫优化数据库,优化服务器负载,你的客户却很难感知到你的努力。你的系统界面还是八九十年代的风格,客户的第一感觉就是这系统不行,不买你的帐。相反,如果你花一点时间做一套崭新风格的界面出来,客户的第一感觉就是这个系统好炫酷,技术含量很高。不要小看这个第一感觉,对于外行人来说,第一感觉往往起到了决定作用。好多企业都意识到了这一点,所以对用户体验的诉求就上去了。
另一方面,现在的用户也都很挑剔。毕竟他们使用的产品一个比一个炫,都被惯坏了,你的产品稍有点不爽的地方,就上微博去给你宣传。
前端工程师是用户体验的把控者,在产品经理构想出交互原型,设计师设计出交互细节后,FE就用他的双手一行行敲出这些代码。他敲出的每一个按钮,每一张图片,都被成千上万的用户点击着,FE与用户可以说是“零距离接触”。作为产品交互的实现者,除了HTML、CSS这两门语言要精通外,对前端要求更高的其实是非技术因素。
FE需要对用户体验有较深的理解。比如页面上有一个超链接,字体比较小的情况下,用户可能会一下点不中,因为链接的可点击区域是紧贴着文字边缘的。前端可以通过很简单的方法来扩大这个链接的可点击区域,使得用户更容易点中。这就是用户体验,正如《瞬间之美》中提到的那样,touch到用户的内心只需要一瞬间。对用户体验的理解,还体现在对一些交互常识的把握上。比如用户操作某个软件的界面,会感觉它很灵巧,却具体说不出到底是哪里。那么很可能是这个界面上的按钮有着设计良好的四态(正常、鼠标移上、鼠标按下、不可用),它会随时对你的操作给出反馈。
懂用户体验的前端工程师,会让他的作品与用户沟通,能够touch到用户心中那一块柔软的区域。
FE需要有一点强迫症。这体现在对任何瑕疵的不容忍。比如采用技术手段让页面的滚动更平滑些,减少页面的视觉抖动,像素级别的定位校准。当用户触碰的内容是一串非电话号码的数字时,不要让手机自动调出拨号功能,等等。很多细节是产品经理无法感知的,因为这些都是很零散的技术手段,只有靠FE来点滴积累。再有极致者,追求让页面的响应时间再减少几个毫秒,让你的手机少耗几KB流量,少耗一些电量。这些甚至连用户都无法感知,但是当你的用户有百万级别或者千万级别,这样做的价值就显现出来了。
前端工程师需要是一个心思细腻之人,需要对美有所领悟,需要执着地追求完美,需要有品味,有思想,有大局观,最好还能懂点心理学。
用户端业务逻辑
做出优雅的界面只是前端工程师的第一步,编程也是必备技能,FE承担着处理用户端业务逻辑的任务。放在以前,用户端就是个IE浏览器,没有什么业务逻辑可言。但现在不同了,用户使用浏览器发表文章、进行社交活动,更复杂的能使用在线工具完成工作。
javascript就是FE需要掌握的编程语言,他应该通晓这门语言的优势和缺点,掌握各种编程思想、开发模式。利用各种技巧实现交互越来越丰富的界面,同时还要与服务端的工程师沟通,调试接口,完成:页面展示——响应用户操作——提交用户数据——反馈操作结果这一系列流程。
从这一点上,要求前端工程师要有软件开发的基础,了解计算机的基本原理,网络通信的基本原理,所以计算机相关专业出身的前端会更有优势一些。
前端也需要架构
写写网页也要架构?有什么好架的?回答这个问题首先得明确一点,FE的工作内容已不再是“写写页面”这么简单。随着前端代码的规模越来越大,逐渐涌现出了模块化开发、MVC、MVVM等开发模式。团队规模也从原来的单兵作战演变为团队开发。
所以,一个高级前端工程师,要有架构能力。这个架构能力包括不限于:
对现有优秀框架的了解与整合使用
根据项目的业务特点构建出合适的开发模式
设计前端测试方案保证代码质量
用工程化方案组织起团队的开发流程。
向前延伸、向后延伸
物联网的市场越来越热了,手机是物联网体系中的一个关键节点。前端工程师的战场已不再是单纯的浏览器,将来会覆盖到各种“端设备”上。得益于javascript语言的灵活性,现在用javascript已经可以开发windows应用、ios应用、android应用,可以编写智能电视上的应用。将来,或许是VR、可穿戴设备、智能家电。这是前端可以向前延伸的方向。
另一方面,由于nodejs的横空出世,javascript这门语言竟然神奇的有了服务端的能力。之前用java、PHP做的事情,js同样可以实现了。本来前端阵营中就有一批人是从后端转过来的,有服务端开发的基础,得了nodejs这一利器,再加上现在市场的需求,快出产品,敏捷开发,前端工程师向后延伸的路线宽广而明亮。事实上,全栈工程师的概念在前年就被提出,BAT这样的业界领头羊早已用nodejs做一些基础设施的建设,而很多小而快的创业公司,也在用nodejs进行快速迭代开发。
持续学习
前端领域的技术更新相对于其他领域要快很多,原因大概也是因为这个领域离用户最近吧。有一些新的技术甚至是颠覆性的,前端工程师必须要跟上时代的步伐,否则你开发出的产品在体验上就落后别人一截了。
有一些市场人员提出的需求,产品经理根据多年的经验评估后觉得无法实现,就被打回了。而事实上,随着新技术的出现,有些你认为无法实现的功能已经可以在前端实现了。随着HTML5的支持度越来越高,前端拥有的能力也会越强。比如利用canvas能够获取到图片上的每一个像素点,这样前端就拥有了图像处理能力。有了FileReader API,前端拥有了本地文件的读取能力,还有地理位置获取等等。
而这些新东西,就需要前端工程师来不断学习。所以,一个称职的前端必须能够保持持续学习能力,能够对新技术有敏锐的嗅觉。活到老,学到老,说的就是前端工程师。
高情商的程序猿
大多数人对程序猿的印象就是情商低、不善言谈。但前端工程师应该是个例外,这是由工作性质决定的。
从工作流程来看,FE处于设计师的下游,他要接设计稿,转化为网页。同时又是后端工程师的上游,需要把用户产生的数据提交到服务端。横向来看,他又与产品经理有着密切接触,因为他可能随时和产品经理探讨交互的细节。这样一个连接着团队中的其他成员的角色,需要他既是一个粘合剂,又是一个润滑剂。
前端工程师需要有较高的沟通能力和理解能力。我们经常开玩笑说“设计师活在童话故事里”,因为有时候他们设计的页面根本不符合常规,无法实现。这个时候你就需要耐心的给设计MM讲原理、讲原因,并且告诉她设计需要遵循哪些基本规范。对于产品经理的思想,你要能把握到位,你得理解他比划了半天到底是想要做什么。与后端工程师打交道的时候,你又得马上化身编程达人,跟他们聊数据类型,聊面向对象,聊设计模式。
你需要能随时切换角色,切换你的表达方式和谈话内容。所以,你得是一只高情商的程序员。
以上就是我对前端工程师的理解,前端的门槛低,但要成为一名专业的前端工程师,需要掌握的东西太多了。除了前端技术外,我认为前端更重要的是综合能力,包括我上面谈到的思维细腻、有品味、有思想、情商高等等。毕竟你要通过代码与用户产生接触,给用户带来愉悦感。从某种程度上来说,你得是一个好恋人。
C. 我中专学历都没完成,WEB前端方面工作的简历怎么写好
制作个人简历要根据自身的实际情况来制作。
1、个人简历中一般应该包括:自然状况:姓名、性别、学历等;同时要简述个人的接受教育经历和相关工作经历以及个人的业务描述在工作中取得的业绩。
2、个人简历要简单、明了,描述个人工作经历时要重点突出,简述工作业绩时要尽量详细,最好有案例。这样用人单位会对你有一个比较详细的了解,提高应聘成功率。
3、如果你觉得麻烦,告诉你一个技巧,其实也可以在网上找人代做的,我之前有很多同学找过叫优易做的团队做过,我觉得做出来效果非常好。
D. 我想做UI设计师,最重要是掌握什么啊
我们第一个要掌握的能力就是软件技法能力
我们在学习UI设计的过程当中,需要学习到很多知识,比如 PS,AI,AE,XD,ARP,C4D,蓝湖,默刀软件,这些都是一名UI设计必需要掌握好的软件。而学习到这些软件,可以通过视视频,书籍,网站等多种方法学习。
工欲善其事必先利其器,从这个阶段开始,觉得先学习软件工具了,一般UI设计要学习有以下8款软件(PS,AI,AE,XD,ARP,C4D,蓝湖,默刀软件)那么这几款软件在UI设计工作是负责什么的呢?
PS:PS软件在UI设计工作中主要来用做UI设计界面设计、图标设计、图片处理的
AI:AI软件在UI设计工作中主要用来做UI界面设计、图标设计、字体设计、插画设计的
AE:AE软件在UI设计工作中主要用来做动效设计的
XD:XD或者sketch软件,Sketch(只能在苹果电脑上安装)XD软件可以在双系统上安装
Sketch和XD这两款软件功能是差不多的,XD的话是一款非常适合做UI设计工作,XD做图会非常快,因为XD的工具特别少,里面的工具是专门为做UI设计工作开发的一款软件,而且XD软件特别小,不会卡。
ARP:ARP或者默刀软件,ARP和默刀软件功能差不多二选一学习就可以了,这两款软件都是做原型设计的
UI设计是由很多很多界面组成的,这些界面每一步之间去交接的这个界面,如果说我们只做一个界面,UI设计师是可以做出来的,但是要做几十个上面个界面,如果我们一个个做是肯定会出问题的,所以需要先制作原型,我们根据原型再制作界面,这就是我们的前后联系,原型是不用做这个颜色,图标,细节的,只需搭建一个基础的版式就行,这个就是我们用ARP或者默刀软件做的。
C4D:C4D软件在UI设计工作中主要用来做建模的
蓝湖:蓝湖软件在UI设计工作中主要用来做标注设计的
就是我们做好了页面,这个页面的高底,宽度,包括页面的色值我们都需要标注出来,为什么需要标注呢,因为我们做的图,做完之后他就是张图片,这个图片我们用手机是点不了的,我们手机APP上的那些图之所以能点,那是因为有程序猿做了一个二次开发,这个东西我们不用懂,但是我们要标注出来,标注出来让程序猿知道你的颜色,你的色值,你的尺寸到时是多少,他才能开发出来。
那么除了软件技法之外我们还需要会哪能力?
我们可以用软件做一些图,但是呢软件只是个工具,我们还需要会设计
设计包含了:图标设计,界面设计,动效设计,交互设计,运营设计,插画设计,平面设计,作品集设计,小程序设计
图标设计:手机及电脑上的界面里面的图标
界面设计:手机APP界面和电脑上的界面
动效设计:动效设计可能很多人没有留意过,但是动效设计是非常非常重要的,只要是页面切换效果都属于动效设计
交互设计:交互设计要做的就是原型图设计
UI设计师的职业发展:
设计学完后就业方向非常广,除了美工,可以做webUI设计师、移动端UI设计师、平面设计师、产品经理等很多方向。图形设计师,它不仅仅是单纯意义上的美术工人,而是了解软件产品、致力于提高软件用户体验的产品外形设计师,例如工业外形设计、装潢设计、信息多媒体设计等;交互设计师,设计软件的操作流程、树状结构、软件的结构与操作规范等;用户测试/研究工程师,主要测试交互设计的合理性以及图形设计的美观性,通常采用户外问卷的形式来衡量UI设计的合理性。所以,学习UI设计就业方向非常广,可以给子自己很多不同的工作选择。
总之,UI设计师的主要工作内容就是设计出能够满足用户需求的界面设计。这需要设计师既要有扎实的设计功底,又要懂得一些基础的软件开发知识,和前端知识等等。因此传统的设计师比较起来,UI设计师在当今社会需求量更大。
E. Web前端应该有什么好习惯
1、建议多看书
2、每天坚持写代码,提高代码质量
3、了解前端标准/规范,了解相对正确和新鲜的内容
4、多看常更新的专业团队博客和喜欢share技巧的达人也是不错的获取技巧的方法
F. 达人们,能具体请教下 前端和后端的 具体含义和区别吗
WEB程序员的技能要求:
Web程序员不光要对 后端程序(如 php,jsp,asp.net)语言知识,对程序设计架构知识,数据库知识等等后端相关的知识要熟练精通。
而且对一下几方面的知识要做到熟练的程度:
Html:
至少能知道怎么样嵌套html标签的结构是合理的,常用的标签怎么嵌套。能正确的修改静态页面里结构良好的嵌入程序代码。
JavaScript:
JavaScript也是程序语言,这个对于后端程序员来说,应该不是困难的事情。
程序语言都有相通之处,比如复用,继承等等,所以,web程序员应该坐到对JavaScript的脚本应用做到如何精简使用,而不是将一段js的code,反复复制在每一个页面中使用。
=================================================================
为什么web程序员要对html,JavaScript要掌握?
Web程序,与html,JavaScript密切相关,如果没有html,JavaScript,那web程序根本不能称之为web程序,那我们做web开发的,不能称之为 web程序员html,浏览器是web程序的载体。
无论你后端是php,jsp,asp.net,最终都会在客户端转化称html代码的页面,在浏览器中浏览。
而JavaScript使web程序的交互丰富多彩,不是会那么的呆板。最基本表单的提交验证等等的功能,都是在客户端用js来验证的,虽然在后端可以用php等语言进行验证,但将会失去很多良好的体验。
在协作方面,如果web程序员不熟练html,JavaScript,与前端开发人员,网页设计师的协作也将会变得困难。
至于每个phper对html,JavaScript的掌握程度,需要根据phper内部分工进行配置,比如做底层架构的phper,偏前端phper的等等都会有不同的要求。
而且phper对web标准的开发也要有所了解。
==================================================================
前端开发工程师,和web程序员的区别及职责界限:
前端工程师知识结构:
精通: xhtml,css,JavaScript
熟悉:一种后端程序语言(如php,jsp,dotnet)
为什么前端工程师需要对后端语言熟悉?
一般分工比较详细的公司,对前端工程师的都会要求熟悉一种后端语言,否则一般不会可以设置一个前端工程师的开发职位。
如果是小公司招聘,那将要求对xhtml,css,html,后端语言都精通。
前端开发工程师对后端程序开发思想的了解,将会使与后端程序员的协作变得简单合理,容易沟通。
反之,phper当中也需要对xhtml,JavaScript了解,及对前端开发的熟悉。
web程序员知识结构:
精通:php,架构思想,数据库 等等
熟悉:xhtml,JavaScript
区别:
根据上面写的,可以看出前端开发工程师与web程序员的知识结构的区别。
一个是前端,一个是 精通。 前端的知识结构还需要往“前”延伸,用户体验,交互设计,等等
一个是后端,一个是熟悉。后端往“后”延伸,程序设计架构思想,数据库,等等
根据这种知识结构的侧重,前端工程师和后端工程师的职责各有侧重。
当然,web开发人员在很多其他地方也有思想的重合之处,比如产品设计的一些东西。
界限:
虽然两者的知识结构侧重很明显,但两者界限在某些方面的还是比较模糊的,这需要协作者相互配合,明确职责的基础上相互促进,不相互推诿。
比如在表单提交验证的脚本开发,由前端,后端来做都是合适的。
================================================================
前端工程师和后端工程师的协作:
与后端程序员合作:
前端将页面的DEMO交付给后端,并在有Ajax数据交互操作的功能上确定实现方式及接口。
前后端合作有两种方式:
1. 前端交付页面静态页面DEMO,后端在页面中编写模板输出部分。后端完成后再由前端Check页面的Xhtml及交互部分的功能。
2. 后端给出数据集合的字段描述说明文档,前端编写模板输出。
我们现有的人员的技术技能配置,只适合第一种,我比较倾向于第二种合作方式,因为页面的数据显示逻辑需要和Xhtml的页面结构相关联,后端人员如果对 Xhtml了解的不够熟悉,往往编写出的模板逻辑代码比较混乱,不够优化,会破坏原有的页面结构。也正式因为如此,第一种合作方式中需要由前端 check。
但目前人员配置要求比较高,目前的配置不适合,也只有才有第一种方式。
项目后期:
与后端人员一起部署项目,前端人员需要对CSS,JS进行选择优化发布(比如,将js,css文件进行压缩发布),以及其他优化工作。并对发现的bug进行修复。
=================================================================
传统的web程序员与偏向web标准的web程序员:
传统的web程序员对html的结构元素,可能只对table的这个标签比较熟悉。一般都是用table表格来进行页面的设计的。 虽然是用table表格进行设计,但table表格的嵌套,也是可以做到很精简的。
偏向web标准的web程序员需要对web标准有所了解,并逐渐转变table表格布局为主的观念。
要打破这个传统的设计,了解web标准开发的思想。
程序员需要对html的常用标签进行了解,熟悉各种标签的嵌套结构,及书写规范等等。
=====================================================
G. ...哪些数据可视化做的比较好的公司或者达人
大数据魔镜,数据可视化做的很好,效果很漂亮。
H. 请教前端达人,知乎的编辑器是怎样实现这个功能的
在线富文本编辑器里面,做以下操作:
选中一串文字,点击“ B ”把它加粗。
把游标移到这串文字的中间,再点“ B ”。
输入一些文字。
在大部分其他的编辑器里面,到第二步的时候,刚才加粗的所有文字都回复了正常状态:
step1: some bold text
step2: some bold text
step3: some inserted text bold text
而知乎的编辑器的效果是这样:
step1: some bold text
step2: some bold text
step3: some inserted text bold text
从 HTML 上面看,它是把一个<b></b>节点拆成了三个节点:
<b>some</b>inserted text<b>bold text</b>.
问题是:在 contentEditable 上的编辑操作只能更新当前节点的文本内容,也就是说如果没有 js 干预,效果是这样:
<b>some inserted text bold text</b>
知乎的编辑器是怎样完成分拆动作的?
监听 keypress 事件?那输入中文怎样实现?
监听 change ?
I. 做web前端是一种什么体验
其实web前端是一个新词汇,刚开始的时候只有美工和程序,后来随着web的发展,对用户交互的需求越来越高,就衍生出了ui(用户交互页面)这除了视觉效果还要有交互体验,就需要js去实现,毕竟一个人的精力是有限的,这么多的工作不可能由一个人去实现,于是出图就成了前端美工,切图出htmlcss就成了前端切图,js就成了前端交互。一般情况下出图和html页面是一个人完成,而js效果由程序员去写,因为毕竟都是程序脚本,程序员学起来相对容易一些。
J. html5混合app开发需要掌握哪些技术
HTML5开发就业班:
全栈:HTML5 + PHP + MySQL
第一阶段:前端页面重构:PC端网站布局、HTML5+CSS3基础项目、WebAPP页面布局;
第二阶段:JavaScript高级程序设计:原生JavaScript交互功能开发、面向对象开发与ES5/ES6、JavaScript工具库自主研发;
第三阶段:PC端全栈项目开发:jQuery经典特效交互开发、HTTP协议,Ajxa进阶与后端开发、前端工程化与模块化应用、PC端网站开发、PC端管理信息系统前端开发;
第四阶段:移动端项目开发:Touch端项目、微信场景项目、应用Vue.js开发WebApp项目、应用Ionic开发WebApp项目、应用React.js开发WebApp;
第五阶段:混合(Hybrid)开发:各类混合应用开发;
第六阶段:NodeJS全栈开发:WebApp后端系统开发。
HTML5开发好程序:
不会原生开发(iOS、Android),后端应用(NodeJs、Java、PHP)开发,游戏开发的HTML5工程师不是一个好的工程师。
全栈工程师:
大前端:HTML5(Web前端)、Android(Native前端)、Hybrid(混合前端)。
后端:多栖后端(NodeJs、Java、PHP)。
第一阶段:前端页面重构:PC端网站布局、HTML5+CSS3基础项目、WebAPP页面布局;
第二阶段:JavaScript高级程序设计:原生JavaScript交互功能开发、面向对象开发与ES5/ES6、JavaScript工具库自主研发;
第三阶段:PC端全栈项目开发:jQuery经典特效交互开发、HTTP协议,Ajxa进阶与后端开发、前端工程化与模块化应用、PC端网站开发、PC端管理信息系统前端开发;
第四阶段:移动端项目开发:Touch端项目、微信场景项目、应用Vue.js开发WebApp项目、应用Ionic开发WebApp项目、应用React.js开发WebApp;
第五阶段:混合(Hybrid)开发:各类混合应用开发;
第六阶段:NodeJS全栈开发:WebApp后端系统开发、基于Socket.io聊天系统开发。
第七阶段:游戏开发:游戏类项目开发(植物大战僵尸、捕鱼达人等)。
第八阶段:Java开发:企业级开发技术架构实战、商城项目整站开发。
第九阶段:PHP开发:微信管理系统、商城系统、主流PHP免费系统的使用。
第十节段:Android开发:外卖系统开发、Android混合开发项目。