脚手架,是什么?它是 Rails 独有的吗?
8 回答
脚手架通常是指为应用程序快速设置的骨架。它不是唯一的,因为其他平台也有它。它通常也不意味着是“最终”系统。只是第一种,最小的方法。
来自维基百科:
脚手架是一种构建数据库支持的软件应用程序的元编程方法。它是一些模型-视图-控制器框架支持的技术,程序员可以在其中编写描述如何使用应用程序数据库的规范。编译器使用此规范生成应用程序可用于创建、读取、更新和删除数据库条目的代码,有效地将模板视为构建更强大应用程序的“支架”。
就像建筑工地中的真正脚手架scaffolding
一样,为您的项目 提供某种(快速、简化、临时)结构,您可以依靠它来构建真正的项目。
它可以(并且现在)用于描述许多事情——从抽象 DB 层到 Web 应用程序文件夹结构,再到生成和管理项目依赖项。
它不是特定于任何语言/技术的东西,就像术语一样,skeleton
或者boilerplate
与平台无关。
它只是从真正的脚手架借来的一个术语(如上所述)。您构建一些快速、简化的(有时是外部的,有时是临时的)结构,它将帮助您在该临时结构的下方、上方、内部或外部构建真正的、更复杂的、最终确定的结构。
.. 就像真正的脚手架一样,脚手架结构旨在支持项目的构建过程,而不是项目本身(有一些例外)。
支架通常是某种类型的代码生成,您将其指向数据库,并且该技术创建基本的 CRUD(创建、读取、更新、删除)屏幕。
我相信维基百科和这里的一些答案提供了一个狭隘和受限的观点。脚手架不仅适用于数据库之上的 CRUD 操作。Scaffolding 有一个更广泛的目标,即为您提供适用于任何技术的框架应用程序。
Yeoman是一种现代且有用的脚手架工具。用他们自己的话:
用于现代 webapps 的 web 脚手架工具
什么是约曼?
Yeoman 帮助您启动新项目,提供最佳实践和工具来帮助您保持生产力。
为此,我们提供了一个生成器生态系统。生成器基本上是一个插件,可以使用
yo
命令运行来搭建完整的项目或有用的部分。通过我们的官方生成器,我们推广“Yeoman 工作流程”。这个工作流是一个健壮且固执己见的客户端堆栈,包含可以帮助开发人员快速构建漂亮 Web 应用程序的工具和框架。我们负责提供入门所需的一切,而不会出现与手动设置相关的任何正常问题。
借助可以开箱即用的模块化架构,我们利用从多个开源社区获得的成功和经验教训,确保开发人员使用的堆栈尽可能智能。
作为良好文档和经过深思熟虑的构建过程的坚定信徒,Yeoman 包括对 linting、测试、缩小等的支持,因此开发人员可以专注于解决方案,而不是担心小事。
而已。使用脚手架创建快速启动应用程序,作为示例或解决方案的基础。它可以让你更快地从头开始构建东西。
尽管我认为它起源于那里(至少我第一次听到它的地方),但它并不是唯一的 Rails 术语。
Scaffolding 是一个框架,它允许您使用很少或没有代码对数据库执行基本的 CRUD 操作。通常,您然后通过并添加代码以按照您想要替换脚手架的方式管理数据。它通常只是为了让您快速启动和运行。
不,它也用于其他技术,例如 ASP.NET MVC
它从程序员在几乎每个项目中使用的一些预定义代码创建一个基本布局,例如:对于数据库数据访问,它可以为创建、读取、更新、删除操作创建一个 crud 方法,或者您可以使用它来为您的视图创建布局/ html代码
Scaffolding is writing any piece of code that would not be part of the business logic but would help in unit testing and integration testing.
This is a software engineering term and not bound to any framework or programming language.