也谈谈前端,架构,框架与库
今天裕波发了一链接给我是周爱民老师在淘宝做的一个分享的视频:“前端,架构,框架与库” (http://v.youku.com/v_playlist/f4262628o1p0.html)又看了淘宝玉伯的感想(http://lifesinger.org/blog/2010/03/thinking-of-architecture/)。看的我也想说两句。
无论是大公司还是小公司,创业公司还是成熟公司的前端开发都需要一个“架构师”的角色。理由很简单就是我在这些公司都呆过。但大家对“前端架构师”的理解,我怎么听都觉得太高深了,太玄了,像普通的前端工程师,产品经理,设计师一样它是一个很具体的工作,具体到每天应该做什么都可以列出来。另外它并不深,甚至说看起来简单。
前端架构师的工作:
1. 他需要制订一套跟上下游环节更高效配合的技术方案。具体说有改进模板(视图层)的开发方式,团队内部开发方式,维护和测试方式等。
2. 他要把关各种技术的实施方案。哪种好,哪种有风险,哪种还不成熟,哪种成本高。需要“把握问题的关键,平衡设计”的能力。
3. 他要主动联合相关部门,从性能、易用性、安全性等方面提升产品的价值和竞争力。
4. 他要正确选择适合产品的框架和库(或设计这样的框架和库),建立建全规范体系。保证代码风格的一致性(解决开发效率的问题)。
5. 他要有前瞻性。引入先进的前端技术落地到具体的产品中。
6. 他要负责团队成员的甄选。
7. 他要能做PPT,向高层布道。
大致就想到这些。可见,干这个怎么也要方方面面知道的多,技术的理解准确,直觉(经验丰富),有一堆成形的或实践过的理论和方法论(我虽然鄙视理论高手,但干这个比须是理论高手),沟通能力强,有资历(有一定的个人影响力)。一下子就想成为前端架构师不是说技术上有多难,而是缺失经验累积的过程,这让你缺少某种敏感性和直觉,对技术的理解也不能真正准确。所以这基本上是老帮菜,老油子们干的事。
框架本质上就是为解决各种问题提供的一套可复用的模式。像具体的应用开发框架、模板框架、组件框架、类模板,模式库等。我们在做任何项目时,不用想先拽过来,再按照它提供的线索一块一块填上具体的内容。而库是指一堆可复用的具体功能的集合。二者区别显而易见,侧重亦完全不同。现在市面上各种库的讨论和介绍都很多,框架则很少。框架很容易被混淆在语言的设计模式里,我认为这不是重点。我在豆瓣正尝试通过一个很轻量的框架,组织现有的javascript开发,日后有机会再做详细分享。它可以灵活置换核心库,和组织各种库及组件的应用。我认为这是框架该干的最主要的事。当然,框架可以扩展出很多种,凡事事先有个框架框一框,可以更高效的产出结果。
最后再次强调前端架构是有很具体的和丰富的内容的,它正成为整个公司技术架构的重要一环。希望在下次D2或其他前端技术交流中,看到更多更具体的前端架构的分享和交流。
建议继续学习:
- 大型高并发高负载网站的系统架构分析 (阅读:7737)
- Feed架构-我们做错了什么 (阅读:7531)
- 淘宝数据魔方技术架构解析 (阅读:6704)
- web应用应该考虑的一些问题 (阅读:6246)
- Craigslist 的数据库架构 (阅读:5829)
- 如何寻找一个不会让你后悔的PHP开发框架 (阅读:5377)
- 如何成为一名优秀的web前端工程师(前端攻城师)? (阅读:5477)
- 大型网站架构基本问题 (阅读:4408)
- 前端第三方服务优化策略 (阅读:4295)
- 自己写的一个轻量级javascript框架的设计模式 (阅读:4039)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:kejun 来源: Kejun's Blog
- 标签: 前端 库 架构 框架
- 发布时间:2010-04-12 23:47:02
- [46] 界面设计速成
- [41] Oracle MTS模式下 进程地址与会话信
- [40] 视觉调整-设计师 vs. 逻辑
- [39] IOS安全–浅谈关于IOS加固的几种方法
- [38] android 开发入门
- [37] 如何拿下简短的域名
- [36] 程序员技术练级攻略
- [36] 图书馆的世界纪录
- [35] 【社会化设计】自我(self)部分――欢迎区
- [33] 读书笔记-壹百度:百度十年千倍的29条法则