A. 优秀的web前端工程师需要具备哪些条件
在以前,会一点Photoshop和Dreamweaver的操作,就可以制作网页。
现在,只掌握这些已经远远不够了。无论是开发难度上,还是开发方式上,现在的网页制作都更接近传统的网站后台开发,所以现在不再叫网页制作,而是叫Web前端开发。
Web前端开发在产品开发环节中的作用变得越来越重要,而且需要专业的前端工程师才能做好。
Web前端开发是一项很特殊的工作,涵盖的知识面非常广,既有具体的技术,又有抽象的理念。简单地说,它的主要职能就是把网站的界面更好地呈现给用户。
其次,优秀的Web前端开发工程师应该具备快速学习能力。Web发展的很快,甚至可以说这些技术几乎每天都在变化!如果没有快速学习能力,就跟不上Web发展的步伐。前端工程师必须不断提升自己,不断学习新技术、新模式;仅仅依靠今天的知识无法适应未来。Web的明天与今天必将有天壤之别,而前端工程师的工作就是要搞清楚如何通过自己的Web应用程序来体现这种翻天覆地的变化。
说到这里,想起了一个大师说过的一句话:对于新手来说,新技术就是新技术。对于一个高手来说,新技术不过是旧技术的延伸。再者,优秀的Web前端工程师需要具备良好的沟通能力,因为Web前端工程师至少都要满足四类客户的需求。
1、产品经理。这些是负责策划应用程序的一群人。他们会想出很多新鲜的、奇怪的、甚至是不可能实现的应用。一般来说,产品经理都追求丰富的功能。
2、UI设计师。这些人负责应用程序的视觉设计和交互模拟。他们关心的是用户对什么敏感、交互的一贯性以及整体的好用性。一般来说,UI设计师侯倾向于流畅靓丽、但并不容易实现的用户界面,而且他们经常不满Web前端工程师造成1px的误差。
3、项目经理。这些人负责实际地运行和维护应用程序。项目管理的主要关注点,无外乎正常运行时间、应用程序始终正常可用的时间、性能和截止日期。项目经理追求的目标往往是尽量保持事情的简单化,以及不在升级更新时引入新问题。
4、最终用户。指的是应用程序的主要消费者。尽管Web前端工程师不会经常与最终用户打交道,但他们的反馈意见至关重要。最终用户要求最多的就是对个人有用的功能,以及竞争性产品所具备的功能。
Web前端工程师是计算机科学职业领域中最复杂的一个工种。绝大多数传统的编程思想已经不适用了,为了在多种平台中使用,多种技术都借鉴了大量软科学 的知识和理念。成为优秀Web前端工程师所要具备的专业技术,涉及到广阔而复杂的领域,这些领域又会因为你最终必须服务的各方的介入而变得更加复杂。专业技术可能会引领你进入成为Web前端工程师的大门,但只有运用该技术创造的应用程序以及你跟他人并肩协同的能力,才会真正让你变得优秀。
B. 如何用HTML前端知识写一个商品信息管理系统
你是要静态页面还是一个可以操作的系统,想要一个系统的话需要的东西很多很多,还需要后台,如果你只需要页面展示的话就简单了,有UI效果的话会div和css就能做出来
C. 商城类的前端要如何传商品id 给后端
发ajax请求携带id,如果不是很清楚的话可以看看下面这个教程。
ajax实战教程
D. 前端中如何将商品的总价直接转换为卢布
1、点击打开手机上的判历型计算器。
2、继续点击进入上方的换算设置。
3、点击进入左侧汇率烂银转换。
4、在菜单中选择卢布。
5、就能计算当前掘猜商品兑换卢布的总价值。
E. 前端效果是怎么实现的
没有楼上说的那么复杂,如果你会一点 div+css很容易实现。用firedebug看下就会知道,图书列表这边的效果每三个一行应该是 css写的,用jquery稍加控制了下。你的后台只管输出li就行,格式由css控制
F. 电商前端架构设计
什么是前端架构
说到架构,很容易拉出一系列的概念知识点,像系统架构、软件架构、框架等等,这些不是今天探讨的重点,大家可以下去网络来理解。架构的本质是什么?其实也是一种管理。通常我们所说的管理,都是指对于任务和人员的管理,而架构管的是机器和代码。比如说,机器的部署属于运维的物理架构,SOA属于服务架构,那么,前端的架构指什么呢?
长期以来,前端所处的位置是比较偏应用层,很薄的一层,而架构又要求深度和广度,所以之前在前端里面做架构,好比在小水塘里游泳,稍微扑腾两下就到处碰壁。但最近这几年来,随着一些列新的技术和概念的出现,前端的范围被大大拓展了,所以这一层逐渐变得大有可为。
单纯从语言的角度来说,html、js、css是最简单最容易上手的开发语言,不考虑模块化、工具、压缩优化,任何人都可以快速上手,完成一两个功能简单的页面。在规模很小的项目中,前端技术要素彼此不会直接产生影响,因此无需架构相关的思考。由于前端语言这种灵活松散的特点,使得前端项目规模在达到一定规模后,工程问题凸显,成为发展瓶颈,原来孤立的技术要素开始彼此产生影响,各种技术要素彼此之间开始出现关联,要用模块化开发,就必须对应某个模块化框架,用这个框架就必须对应某个构建工具,要用这个工具,就必须对应某个包管理工具……这个时候,需要有人从比较高的角度去梳理、寻找适合自己团队的集成解决方案。而这一系列解决问题的工具和手段就是所谓的前端架构。
架构不等于框架这一点很好理解,相信大家都能够很深入的说明这里的差别,框架是架构的重要组成部分,架构决定框架的选型,框架决定架构的技术路线。架构围绕框架进行一系列的流程工具建设,从而形成完善自动的开发体系。
+框架不等于类库,这里就是很多人困惑的点,你用的什么框架?jquery、underscore、linq、seajs、requirejs等等,每个人都能够列举一大堆。但这个是不准确的,一套编码框架是有一系列的元素组成:开发模式,我们如何来实现代码的职责分离。以前整个前端是mvc中v这一层,而现在前端内部也进行了mvc的逻辑细分,Javascript的MVC框架现在很多,有的强化m、有的强化c。每一个框架其实都有其特点的,并且有越来越多的创新改造,比如现在最流行的是mvvm。有angular、react等等。我们是为了引入mvvc才把他们纳入到我们的开发体系,而不是因为他是一个好用的类库。
通讯,模块化、组件化是前端在推进开发模式过程中的一个过程产物,为了有效的进行组件隔离和独立,现在有各种各样的通信模型出来,不过由于实现简单,代码少,他往往是合入到某个类库里面,但本质也是一个类库。比较成熟的比如:消息总线、事件模拟、缓存中转、flux模型等等。
模板,我们用什么样的方式来集中的处理数据往html的转换过程,这里就不用多展开,这种类库现在太多了,光我们公司就有很多套,大家在代码行、缓存管理、预编译、运算性能、强大的语法等等各个维度不段追求各种极致。
基础类库最后才是传统类库,相信现在已经没有同学会在项目中去约束团队中的dom操作、常用函数、方法、异步化等等各种很基础东西,这个时候我们一般就是引入jq、zepto、underscor这些封装好的东西就行了。核心就是为了改善编码生产力。
对于框架的选型要从两面看,一是看该框架的本领,二是看你们团队的能耐。从经验上给几个点建议:
这里也可以顺便展开聊一下现在前端产品的形态分类:
从这些分类里面,我们这些年派生出了所谓全端和全栈的概念。但本质上怎么走还是要由所在产品的形态来决定。
内容型Web站点 侧重渲染方面的优化,前端逻辑比重小
操作型B/S系统 以数据和逻辑为中心,界面较规整
hybrid内置型,要处理缓存和一些本地接口,包括PC客户端和移动端。现在的本地应用,基于很多考虑,都变成了混合应用,也就是说,开发这个应用的技术,既包含原生的代码,也包含了嵌入的HTML5代码
Web游戏,前端的逻辑非常重,在代码结构上要求非常高的可管理性和更复杂的设计模式。
桌面应用型,现在有一些PC端的混合应用开发技术,比如node-webkit和hex,前者的典型应用是XDK,后者的典型应用是有道词典,此外,豌豆荚的PC客户端也是采用类似技术的,也有一些产品是用的qt-webkit。这类技术可以方便做跨平台,极大减少开发工作量。
大工程应该尽量避开谷歌产品,他的很多技术开源项目都是玩票性质的,GWT、Closure、Darty就是前车之鉴。曾今提出过很多的新技术,到现在还是独家的,变出太大。包括现在angular,喜欢做断崖式升级,做做运营后台系统问题不大,如果是线上系统的话,每次升级就是一次人月神话中的典型焦油坑。
关注应用场景,像刚才说到的boss后台是一种;另外我的平台是否有沉重的历史包袱,需要兼容ie6,还是可以轻装上阵;产品对于seo是什么样的态度?是否需要考虑自适应?或者我的团队足够大,能够各搞一套?;产品特征是强内容还是强交互或者是游戏性。这些都是选择不同框架的主要出发点。
没有最好,只有最适合自己的,基本上,针对每个平台,我们都可以列出一些主流框架,但不意味着你们都能驾驭得住。小马过马,老牛没过膝,松鼠淹个半死,就是这么回事。但无论我们选择什么框架或决定自己动手造轮子,都勿忘初心,技术必须让我们工作生活更为轻松愉快——我们只选择我们能驾驭住的框架,我们不能保证它在一年后是否会过时落后。
而且按照我个人这么多年的经验来看,任何框架都会过时,往往不是因为他不够好,而是因为一定有更好的出来。我们再选择一个框架或者一个类库的时候就要想好,未来我如何抛弃他。至少不能成为我们引入新的框架的绊脚石。现实的工作中很多的团队往往会陷入到年复一年的用今年的新框架去重构去年老框架代码的历史循环中去。对于引入框架如何尽量延长他的生命力,我个人的意见是选择框架时去追求概念,而不是潮流,当我的架构可以接受新的设计概念的时候才去考虑引入新的框架。用设计理念的选择代替框架的选择。之所以这么说是因为我观察到我们部门的后端架构的开发理念跟我进公司的时候是差不多的。更多你可以参考成都网站建设
架构的组成
组件框架