Cortex - 让前端开发轻便而有趣

2014-07-08 11:52:29 +08:00
 supersheep
在生产环境平稳使用了18周126天之后,今天,我们决定把我们的前端包管理工具 —— Cortex 介绍给大家,使更多的前端工程师们从此可以不再烦恼前端组件的版本升级和依赖管理,专心享受创造与分享的乐趣,携手建立一个更好的前端生态。

这一次,我们带来了

* 轻巧而强大的命令行工具

通过 `npm install cortex -g` 进行安装之后,你就可以像开发node模块一样,开发浏览器组件与网站。
我们在 http://ctx.io/get-started 准备了一个简单的示例来带你体验一下cortex的开发流程。

* 方便的搜索服务与social coding站点 http://ctx.io

在这里,你可以轻松找到你想要组件,获得文档,订阅热门贡献者的最新动态。

* 一本不断完善中的git-book小书

帮助你快速了解如何使用cortex来开发、测试、发布组件与网站。http://book.ctx.io


如果你对cortex的代码有兴趣,欢迎来 https://github.com/cortexjs/cortex 转转,使用中有任何问题也欢迎提issue帮助我们一起改进 :)
6305 次点击
所在节点    分享创造
22 条回复
villadora
2014-07-11 11:29:36 +08:00
@iwege 所以web领域都没有做套嵌树的模块管理。和node一样的模块管理方式更适合于文件系统,比如node, node-webkit也是这样,不用考虑overhead。像插件更是需要进行模块独立,即使有overhead也是在能不用共享的情况就不使用共享,而自己打包。这个是符合谁使用谁负责的原则的。外层不应该关系内层的实现。

web上的模块管理,cortex都是采用扁平化的,cortex的build的模块也不会包含依赖的重复代码,只会包含自己本身的代码。

d
| - a
| - b
| - c

a依赖于b这个信息都是模块自己申明而不是靠将b整体打包到a中实现, 只要版本兼容,d只会获取a,b,c各一份, 像之前说到的重复就不存在。但这种方式在其他的包管理下会存在冲突的可能,因为b只有一个。

虽然js是开源的,但是每次使用模块都需要用户去自己处理,选择代码甚至修改源码,比如我写d我需要去处理b里面的代码是很奇怪的,就像开发atom的packages的时候如果还要关心别的packages用了哪些依赖一样。
iwege
2014-07-11 12:26:44 +08:00
@villadora 嗯,你的解决方案是对的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/121518

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX