个人认为一个完备的前端产品开发团队,必须拥有如下的人才配备,也希望大家补充: 团队全体成员达到所有技能中的a级标准 团队全体成员必须掌握两项技能中的b级标准,并保证所有的b级标准在该团队中有50%以上成员能达到 团队全体成员必须掌握一项技能中的c级标准,并保证所有的c级标准在该团队中有25%以上成员能达到 具体技能描述:【必备】UserInterface PhotoShop/Fireworks Design
a - 配合美工将草图形成具体的符合WebPage的设计
b - 有快速制作分层高品质PSD、PNG的能力
c - 能迅速将PSD、PNG的内容构思成div+css或者table等HTML代码 Flash Design
a - 基本动画效果
b - 复杂的交互体系设计,了解第三方swf辅助设计软件
c - 复杂的交互体系设计以及较强的对各类外埠资源(PNG、JPG、MP3、WAV等)的整合能力。精通部分第三方辅助设计软件(AE、SwishMax、Swift3D等) 【必备】Browser-side (Web Application) XHTML/CSS
a - 基本的layout实现
b - 严格跨平台的layout实现以
c - 优雅的HTML code,尽可能符合标准并有SEO的考虑因素。在任何平台、浏览器下基本保持一致。不要求了解各种CSS的hacks,但要求知道遇到问题应该如何查阅资料以在第一时间内解决。能够为JavaScript开发人员提供最好操作的DOM结构,让JS开发人员在开发的时候认为”一切都已经准备就绪了”,而不是”捉襟见肘”。 JavaScript/Ajax/DOM
a - 基本的DOM操作,了解AJAX,可以实现数据通信
b - 基本的DOM操作,能写高效率的OOP代码,以降低维护成本
c - 基于需求,进行不同的开发,选择合适的框架,做到代码效率最高,用户体验最好,代码下载量最小,并且可以在单独甚至更多产品线中最大限度重用代码 Flash Developement
a - 基于Timeline的ActionScript操作,能实现简单交互
b - 掌握a外,能实现数据层通信(与服务器以及本地SharedObject)
c - 精通AS1-3,能根据需求进行各类RIA开发。无论是要求支持FlashPlayer8的,还是FlashPlayer9的,都能做到开发效率最高、灵活性最大(比如对HTML层的接口设计,等等)。 【必备】Client-side (Desktop Application) Apollo
a - 产品级的封装,基本技术了解(如何打包、如何加入HTML和JavaScript等)
b - 掌握a的同时,能利用Apollo的API独立设计、开发OS的文件I/O功能。
c - 掌握基本技能的同时,对”3D概念体系”有所认知。这里”3D”即:Design(设计)、Development(开发)、Deploy(产品部署)。能用Apollo Windows Presentation Foundation、WPF/E(Silverlight)
(待定,欢迎补充) 【增补】Server-side (修改:经考虑,这个技能不参与评级)
本来列举了”1、Server端简单的技术、脚本”和”2、MediaServer(Red5)接口”作为”Web前端工程师技能列表“的一种(服务器、数据逻辑层技能的)评判标准。但似乎很多朋友对于前端工程师是否应该掌握Server端技能的必要性表示怀疑。确实,要掌握好上述的展现层技能不是意见容易的事情,而且前端工程师的确非常辛苦。但是,站在另一方面来说,辛苦的原因是什么,我不知道在你日夜奋战div+CSS的时候思考过没有。就我的经验,前端的辛苦在于以下几个方面: 重复劳动多,大量的div+css都是重复的,即便可以复制粘贴,但几千行的div海洋中去寻找一个入口恐怕都非常痛苦 需求变更多,往往你折腾几个小时终于把跨平台问题解决好了,而且在IE6、7和Firefox下面都能显示同样的效果了,甚至连JavaScript交互都已经快搞定了。突然上面说需求要变。这无疑是莫大的痛苦。 也许表面上看,这跟Server端技能无关,但我觉得有好的Server端的意识,一定会有所帮助(当然不可能解决所有的问题)。毕竟信息结构和数据库是密切相关的,而Server是连接数据库的唯一渠道(至少大多数B/S应用是如此)。掌握Server端的基本技能,对于同逻辑层开发人员设计接口是非常重要的。而且HTML表现层在开发时与数据的分离,也与Server端的各种模板技术有关。例如PHP中的Smarty模板(我曾经用的)、jsp的model2概念等等。HTML结构如何设计,如何让HTML重用,甚至在HTML层进行OOP的开发(我现在在新产品线中设计的前端开发流程),都需要Server端的支持。最起码,你要告诉php程序员你需要什么。如果你完全对PHP一无所知的话,那也无从谈起了。
此外,对于创业团队,往往人手非常有限。为了让运营成本降到最低,所有的技术人员都有义务对Server端技术有所了解。如果为了修改一个网页的标题还要跑去喊PHP程序员连接Remote Server的话,那实在是增加了整个公司的运营成本。
总结:我认为,可以不了解技术细节,但应该知道原理,最好能掌握一两套设计思想(毕竟数据逻辑都在这里走,光看HTML和JavaScript,对人的见识还是有局限的,这种局限限制了我自己很久的时间),那将是一比宝贵的财富。 【增补】Mobile-side(不参与评级) Flashlite
(待定,欢迎补充) Java?
(待定,欢迎补充)
相比php asp .net jspjs、flash html css等就是前端开发有基础最好 没有 那就从基础学
web前端是一个做有关网页的一个概述,是一个网页view层的总得称呼。前端开发,简单来说,就是把平面效果图转换成网页,把静态转换成动态。它的工作包括了:切图、写样式、做鼠标效果和图片切换效果等。而优秀的前端开发可以保障实现这些效果的同时,即不能影响网站的打开速度、浏览器兼容性还有搜索引擎的收录,还可以让用户体验更加舒适,使网站在访问中显得更精细、更用心。访客使用起来更简便。前端有很多技术方向,包括软件WEB化、WEB工程化、可视化技术,以及HTML5,一般WEB前端的工作内容有这些:
1.负责网站前端规划、架构和设计;2. 运用相关web前端技术,规划产品和用户需求设计页面原型; 3. 熟练使用JavaScript进行代码构建,完成产品设计的各种交互; 4. 保持高效的前端性能,优秀的代码可维护性,良好的浏览器兼容性; 5. 同后台相关开发人员协作,获取后端数据后进行效果展示。
web前端有广阔的发展空间,app、小程序、移动端、pc端等都是需要前端技术的开发支持才能够完成,技术门槛相对较低、需求量较大,薪资待遇良好。只要是互联网端的客户界面,就需要前端来制作完成,前端开发的编程量不大,但是需要部分编程,入门简单,但是要学的深入需要一个过程。
在互联网行业,前端有WEB前端、HTML前端等,随着互联网技术发展,就业方向也有很多。web前端的就业方向有web架构师、web前端工程师、HTML前端开发工程师、网页设计师等等。
HTML前端开发
与Web前端开发不同的是,使用HTML5不仅仅可以开发前端,还有网页游戏,手机APP,使用浏览器进行3D渲染等一系列建立在HTML5标准与搭载其标准浏览器上的开发,而未来可能会有更多的功能分支并入HTML5标准。web前端工程师
这个方向是目前从事Web前端开发的主要就业方向
Web架构师
薪资普遍比较高,技术要求高,掌握多种技能,包括:后端技术、DBA、Platform等等,甚至包括网站优化SEO技术。
数据方向
数据研发这个是在Web开发的基础上用数据附能,懂可视化的一定是有前端能力的,懂hadoop的一定java玩的溜,属于Web开发的拓展方向。
大前端方向
比如阿里,在大量实践rn和weex;由于公司内部安卓/ios式微,一定程度上,前端把ios和安卓收编了,统称大前端(还有node)。
图形学方向
前端自然是与图形学有千丝万缕的联系,除了上面提到了可视化,还有相关3d引擎的开发工作。做这一行要求也非常高了,图形学相关的算法,3d引擎的开发,这都需要图形学相关知识。