今天裕波发了一链接给我是周爱民老师在淘宝做的一个分享的视频:“前端,架构,框架与库” ( 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或其他前端技术交流中,看到更多更具体的前端架构的分享和交流。
觉得文章有用?立即:和朋友一起 共学习 共进步!
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习