先来说说国产的 seajs http://seajs.org/ 在关于页面里可以看到:Sea.js 是一个开源项目,目前由阿里、腾讯等公司共同维护。
汇集了国内一流公司的大牛们的技术,显然是一个值得推荐使用的模块化加载类库了。

而 requirejs http://requirejs.org/ 则是国际流行的一个模块加载类库,拥有相当活跃的社区和第三方插件以及解决方案

就我本人来说,是首先接触使用 seajs 的,但是现在的项目我选择了使用 requirejs 。在实际使用中体会到了二者相似但各有优缺点。
seajs的优点是:国产,文档还算丰富,社区也不错,有问题在github里提交后会有人帮忙解决,并且它支持css的加载,这个 requirejs 是不支持的。
requirejs 的优点则是细节做的比较到位,可以设置资源加载成功的回调方法,js的以来关系等等,这些我在 seajs 里找了老半天也没找到,甚至由于我的项目的依赖关系比较复杂,一度出现各种诡异的问题,比如刷新下页面没问题,再刷新下有可能页面就会报错,总结下来就是依赖类库的执行顺序差异导致的。
有这一片文字介绍了 seajs 和 requirejs 的加载区别 http://www.douban.com/note/283566440/,虽然文章里的观点是说 requirejs 不如 seajs,会埋下坑,但是我实际用下来还是比较赞同 requirejs 的加载理念。
我甚至看了这篇文章后有重新用回seajs,并尝试把项目改成用 seajs 加载,但是当我做完了所有的修改,最后始终无法成功运行,归集最后还是依赖关系顺序加载有问题导致的,这个应该算是seajs的最大的问题了吧。

文章里其实也说了,二者遵循的规则是AMD和CMD,AMD是requirejs用的规范,在实际使用中,我还发现很多国外类库都是可以在 requirejs 里总结用的,即支持 AMD 规范,但是在seajs里就会有问题,不得不对其进行稍微修改后才可以使用,比如鼎鼎大名的jQuery,这一点恐怕就会吓走不少人了。

当然,requirejs 不能加载css确实是一大问题,这样我就不得不自己去实现模块化加载的方法,相比使用seajs就比较麻烦了。

总的来说,两个模块化加载的类库都是非常不错的,我本人比较推荐使用 requirejs