Ruby Sinatra和PerlDancer被称为“微网络框架”? 微框架意味着什么?
微网框架是否适合大型项目(比如Stackoverflow,电子购物,房地产管理或......)? 微Web框架的最佳使用案例是什么?
答案 0 :(得分:9)
“微框架”没有完美的字典定义,但是python微框架,Flask在这里有一个不错的解释:what does micro mean。
至于它是否适合复杂的网站,经验将指导您。随着您的项目变得越来越复杂,您可能会发现您已经超出了微框架,并且可能更喜欢在大型项目中促进更好的代码组织的东西。但是,如果这是一个侧面项目,不要让恐惧超出它,阻止你从一个你觉得舒适的微框架开始。
答案 1 :(得分:8)
微观定义:对我而言,微框架对您的影响较小,并且为您编写和组织代码留下了更多自由。
使用Rails时,你几乎拥有来使用关系数据库并使用它构建的传统命名和目录结构。它还包含更多开箱即用的功能。
另一方面,Sinatra让您拥有自己想要的灵活性,并选择您的功能。例如,我使用Sinatra创建了一个支持CouchDB的网站/服务,而在Rails中这样做会复杂得多。答案 2 :(得分:1)
我是Sinatra的忠实粉丝,并在几个小项目中使用过它。如果项目中没有很多路径或资源,那么这是一个很好的解决方案。还有很多插件和助手可以帮助解决“千篇一律”代码并减少工作量(并保持代码库更小)。
请注意,您不会获得诸如迁移或模型开箱即用的内容。这些功能可以轻松地引入您的项目,但您可能会发现自己在很多情况下重新发明了轮子。
在我写这篇文章时,我实际上将基于Sinatra的项目移植到Rails 3.1。该项目开始很小但随着时间的推移逐渐变得难以管理。
答案 3 :(得分:1)
这个没有一个真正的答案。我自己已经有了很多并且自己开发了几个框架,所以我要说的是,微框架主要是一个路由库,加上一个安全库和一些语法糖和存根,以便以后扩展它上。最近,微框架已被用作较大的框架,如Silex和Symfony,所以你不能再强烈真正了。