开放式前端类库的构建

标签: Programming | 发表时间:2011-07-20 16:16 | 作者:lifesinger plume
出处:http://lifesinger.wordpress.com

hax 的文章很不错:关于国内前端和 JS 技术发展的乱想
愚公贴出了四个月前的聊天记录,如今再读,别有一番滋味:我们需要什么样的“技术”

我当时也留存了一些感想,索性也贴出来:
———————————————————————
这是一篇改变我很多想法的文章:大教堂和集市。老文章,很耐读,最近放在 iPhone 上,没事就看看,烂熟。

世界上有很多聪明人,很多事情已经做得非常棒。有太多更需要投入的地方,的确不应该在别人已经做得很好的地方浪费时间了。

遇到 jquery 的问题,通过 google 一搜,十有八九就能搜到结果,这就是社区。

在公司做事,有两件事情很重要:(1)做什么事;(2)和什么人做事。其他都是浮云。

“天时”是个很奇妙的东西。当有一帮兄弟在召唤你,当有一件事情在吸引你的时候,就是“天时”。当然还需 “地利”和“人和”。在公司环境下,“地利”经常会限制很多想法思路。

步子迈大了,的确可能扯痛蛋,但也仅仅是蛋痛一下下而已。倘若步子迈小了,短时间内蛋不会痛,但却有可能永远错失超越的机遇。

如果你选择一条保守的线路,就只能实现一个狭窄的目标。

大教堂是个梦,很美。人人都想做。

百花齐放的目的,是让每个人都能成为类库/框架的开发者,就和 github 一样。不是形式上的分布式开发,而是内容上也分布式。打散了,物竞天择,人类社会就是这么演化的。

避免重复是很好的实践原则。懂得适量重复,是更高层次的实践。

没有自由,就没有突破。社会如此,写代码也如此。
———————————————————————

下面是读完 hax 文章后,对 seajs 的一些想法:

es5-shim 这一块,hax 和我的想法很相近。我的想法是,seajs 提供一个 conditional load plugin,当探测到当前浏览器缺少哪些 es5 的东东时,自动修复好。这样,所有模块都可以直接基于 es5 来开发,而且对开发者是透明的。

更进一步,还可提供 less 和 coffeescript 等编译扩展。使得基于 seajs 做开发时,可以直接用 less 写 css,用 coffee 语法写 js. 这样可以提前实现将 javascript 变成编译目标语言的愿景,使得 js 的开发直接可利用上最新技术。

基于模块环境 + 模块的方式来构建类库,最难的是模块环境要具有通用性,目前 commonjs 和 nodejs 的努力,使模块环境逐步成熟。其次就是各种模块的筛选和开发了,我早就想拆掉 kissy,只恨目前力又不逮。如果 qwrap 能拆分成多个小类库,绝对支持。拆分的好处,可能会造成少量重复,但好处是更灵活,更自由了。因为小了,意味着可替换性更好,这样,有现成做得不错的,直接拿来用就好。如果找不到满意的,大不了自己开发一个,满足自己的需求同时也能贡献给社区。这是一种良性竞争下的百花齐放。

这样,逐步努力下去,就会形成一个生态圈。生态圈呀,一旦形成,所有人都会受益。希望我不是在作梦。

————————————
最后放一个在 MPD 大会的分享,没什么新内容,不好意思:

相关 [开放 前端 类库] 推荐:

开放式前端类库的构建

- plume - 岁月如歌
hax 的文章很不错:关于国内前端和 JS 技术发展的乱想. 愚公贴出了四个月前的聊天记录,如今再读,别有一番滋味:我们需要什么样的“技术”. 我当时也留存了一些感想,索性也贴出来:. 这是一篇改变我很多想法的文章:大教堂和集市. 老文章,很耐读,最近放在 iPhone 上,没事就看看,烂熟. 世界上有很多聪明人,很多事情已经做得非常棒.

前端技术

- - CSDN博客综合推荐文章
随着互联网产业的爆炸式增长,与之伴生的Web前端技术也在历经洗礼和蜕变. 尤其是近几年随着移动终端的发展,越来越多的人开始投身或转行至新领域,这更为当今的IT产业注入了新的活力. 尽管Web前端技术诞生至今时日并不长,但随着Web技术的逐渐深入,今后将会在以下几方面发力. JavaScript的兄弟们.

Web前端优化

- - JavaScript - Web前端 - ITeye博客
优点:直接使用浏览器内存的缓存数据,减少网站后台压力,用户体验(速度)好. 缺点:对于时时变化的动态页面,这种情况就不能容忍了,因为每次访问的都是第一次访问的内容,这样即使所请求的页面已经变化了,用户也不可能知道,所以此场景必须要消除这种缓存的影响. 延迟加载,将资源延迟到需要的时候的加载,例如detail页面,相关产品推荐,当用户浏览更多的信息往下拉动滚动时,才进行加载,异步加载可以大幅减少对后端资源的使用,在需要的时候加载,是资源合理使用常用的方式,但是也带来一个问题,当往下拉才去加载,如果性能不够好,用户的体验其实是不好的,“菊花”转动的时间会比较长,同时异步加载对前端性能的作用也是非常明显的,渲染的节点数量大幅减少.

Web 前端测试

- - Web前端 - ITeye博客
Web 网站测试流程和方法(转载). 进行正式测试之前,应先确定如何开展测试,不可盲目的测试. 一般网站的测试,应按以下流程来进行:. 1)使用HTML Link Validator将网站中的错误链接找出来;. 2)测试的顺序为:自顶向下、从左到右;. 3)查看页面title是否正确. (不只首页,所有页面都要查看);.

前端xss攻击

- - SegmentFault 最新的文章
实习的时候在项目中有接触过关于xss攻击的内容,并且使用了项目组中推荐的一些常用的防xss攻击的方法对项目进行了防攻击的完善. 但一直没有时间深入了解这东西,在此,做一个简单的梳理. xss跨站脚本攻击(Cross Site Scripting),是一种经常出现在web应用中的计算机安全漏洞,它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入的恶意html代码会被执行,从而达到恶意用户的特殊目的.

初识前端模板

- slackware - 百度泛用户体验
“模板”这个词,可能很多人第一印象是后端的技术(Smarty,Velocity等),但本文要讲的却不是后端的概念,而是前端开发中所使用到的一种技术,也就是“前端模板”技术. 模板的工作原理可以简单地分成两个步骤:模板解析(翻译)和数据渲染. 这两个步骤可分别部署在前端或后端来执行. 如果都放在后端执行,则是像Smarty这样的后端模板,而如果都放在前端来执行,则是我们要探讨的前端模板.

前端的横向发展

- Oasis - 崔凯,前端开发
今天的交流会上,提到了“横向发展”这个词,意指推荐大家学习与前端打交道的相关技术,如:php. 其实“前端”这个词,是2005年才逐渐在国内兴起的. 那之前,国内的网站,通常是TABLE+ASP搞定一切. 做这份工作的人,通称“程序员”. 那是个孤军奋战就能赢得天下的年代. 一个网站丢过来,一个人就全拿了:“写需求==>出设计稿==>做模板==>写程序==>运营.

前端神器 Sublime Text 2

- - 博客园_首页
  博主之前一直用notepdd++写前端代码,用得也挺顺手了,早就听说sublime的大名,一直也懒得去试试看,认为都是工具用着顺手就好. 这几天突然心血来潮,下了个试了下,结果. 结果博主毫无节操的抛弃了notepad++. 下面根据博主这几天的使用心得,来介绍下这款前端神器,介于使用时间很短,有些说的不妥的地方还望各位看官海涵.

前端CSS规范整理

- - 标点符
1、文件均归档至约定的目录中. 具体要求通过豆瓣的CSS规范进行讲解:. 所有的CSS分为两大类:通用类和业务类. 通用的CSS文件,放在如下目录中:. 基本样式库 /css/core. 通用UI元素样式库 /css/lib. JS组件相关样式库 /css/ui. 业务类的CSS是指和具体产品相关的文件,放在如下目录中:.

Web 前端攻防(2014版)

- - 博客 - 伯乐在线
外链会产生站外请求,因此可以被利用实施 CSRF 攻击. 目前国内有大量路由器存在 CSRF 漏洞,其中相当部分用户使用默认的管理账号. 通过外链图片,即可发起对路由器 DNS 配置的修改,这将成为国内互联网最大的安全隐患. 百度旅游在富文本过滤时,未考虑标签的 style 属性,导致允许用户自定义的 CSS.