最近写了一些 demo 程序,包括 blog、forum 等。发现每次项目至少都需要用户系统等,都需要配置 devise、post、comment、tag 等。属于重复性的工作。
向各位请教,如何将这些不同但常用的 gem 打包(包括 migration、M\V\C 等),以便下次类似的项目直接在其基础上开发。
PS:我的目的不是想要集成的 gem,我知道 720p.so 开源了 homeland 的集成 gem。我想要了解的是如何将其集成,原理是什么?
模块化,重用是软件开发追求的一个目标,但是具体情况也不是那么容易
做成 template,生成的时候直接用,这是一种办法,优点是快速简单,缺点是可能还是要人为配置不少内容。
另一种方法是写成一个 engine,把这些内容包在里头,优点是直接拿来就能用(如果业务逻辑重复一样的话),缺点是写这个的时候会比较花时间(但考虑到反正已经写过几遍了,再花时间是值得的)。
你的需求是需要一个 Template 可以在这个基础上调整你需要的配置 https://gist.github.com/2168014
@ashchan @huacnlee 非常感谢