什么是脚手架?它是一个特定平台的术语吗?

129

什么是脚手架?它只属于Rails吗?

10个回答

107

脚手架通常指快速建立应用程序的骨架。它不仅适用于Rails,其他平台也有类似功能。但它一般不是“最终”系统;只是最小的方式之一。


1
请参阅 https://linuxgeekoid.wordpress.com/2011/06/18/programming-tips-incremental-development/ 以了解这种观点的详细说明。该术语的其他用途是派生的。 - Alan
1
看起来更加合法。 - Dushyant Joshi
1
Rails在很多词汇上进行了大量的声明或重新定义(特别是在测试方面),这要归功于某些流行书籍和面向非传统背景的销售(这也没有错)。其中包含了一些绝对伟大的模式/想法,但不幸的是有时会让事情变得混乱。然而,在这种情况下,我同意其中的一个选择! - rob2d

50

来自维基百科:

脚手架是一种元编程方法,用于构建数据库支持的软件应用程序。它是一种由某些模型-视图-控制器框架支持的技术,程序员可以编写描述如何使用应用程序数据库的规范。编译器使用此规范生成代码,应用程序可以使用该代码创建、读取、更新和删除数据库条目,有效地将模板视为构建更强大应用程序的“脚手架”。


4
非常有趣。我以前从没听说过把脚手架用在那个意义上。我之前只听说过像swilliams提到的那种用法。每天都能学到新东西。 :-) - Onorio Catenacci
这实际上就是脚手架是什么,也是我一直以来所知道的。被接受的答案是一个我经常遇到的常见误称。 - undefined

49

就像建筑工地上的真正脚手架一样,scaffolding为您的项目提供了某种(快速简化临时结构,您可以依赖它来构建真实的项目。

它可以(现在也可以)用于描述许多事情——从抽象化DB层到Web应用程序文件夹结构,以及生成和管理项目依赖项。

它不是特定于任何语言/技术的东西,就像术语skeletonboilerplate一样平台无关。

它只是从真正的脚手架中借鉴而来的一个术语(如上所述)。 您可以构建一些快速、简化的(有时是外部的,有时是临时的)结构,这将帮助您在该临时结构的下方、上方、内部或外部构建更复杂、最终的结构。

..就像真正的脚手架一样,脚手架结构是为了支持项目的建设过程,而不是项目本身(有一些例外)。


37

脚手架通常是一种代码生成工具,你需要将其指向一个数据库,然后该技术会创建基本的CRUD(创建、读取、更新、删除)界面。


16
我相信维基百科和这里的一些回答提供了狭隘和受限制的观点。脚手架不仅仅是用于在数据库上进行CRUD操作。脚手架的更广泛目标是为任何类型的技术提供骨架应用程序。 Yeoman是一个现代而有用的脚手架工具。用他们自己的话说:

现代Web应用的脚手架工具——Yeoman

什么是Yeoman?

Yeoman可以帮助您启动新项目,并推荐最佳实践和工具,以帮助您保持高效。

为此,我们提供了一个生成器生态系统。生成器基本上是一个插件,可以使用yo命令运行,以搭建完整的项目或有用的部分。

通过我们的官方生成器,我们推广“Yeoman工作流”。这个工作流是一个强大而有见地的客户端堆栈,包括可以帮助开发人员快速构建漂亮的Web应用程序的工具和框架。我们负责提供一切所需的东西,让您能够轻松入手,无需手动设置。

我们采用可扩展的模块化架构,可以直接扩展,借鉴了几个开源社区的成功和经验教训,以确保开发人员使用的堆栈尽可能智能。

作为良好文档和深思熟虑的构建过程的坚定信仰者,Yeoman包括支持linting、测试、缩小等功能,因此开发人员可以专注于解决方案,而不必担心小事情。

就是这样。使用脚手架创建一个快速启动应用程序作为示例或解决方案的基础。它可以使您更快地提高生产力,而不是从头开始构建。


14

这个术语不仅适用于Rails,尽管我认为它是从那里起源的(至少那是我第一次听到的地方)。

Scaffolding 是一个框架,它允许你对数据库执行基本的CRUD操作而无需编写或只需很少的代码。通常,你需要添加代码来管理数据并替换掉脚手架生成的代码以实现所需的功能。它通常只是为了帮助你快速启动项目。


3

它不仅在ASP.NET MVC等技术中使用。

它可以从预定义的代码创建基本布局,程序员在几乎每个项目中都会使用。例如:对于数据库数据访问,它可以创建crud方法来进行创建、读取、更新和删除操作;或者您可能使用它来为您的视图/HTML代码创建布局。


2

脚手架是编写任何不属于业务逻辑但有助于单元测试和集成测试的任何代码。

这是一个软件工程术语,与任何框架或编程语言无关。


1

不,脚手架不是特定平台的术语,然而许多人在Ruby on Rails或.NET的上下文中知道这个术语。

还有很多工具可以执行JavaScript脚手架:

这些工具也被称为代码生成器


1
脚手架是一个术语,用于当您不想创建结构的所有部分(例如模型、视图等)并且希望一次性生成它们时。许多框架使用此技术,我在学习odoo时了解了它,但大多数参考资料都是针对Ruby on Rails的 :)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接