zoukankan      html  css  js  c++  java
  • 对编程中“脚手架”的理解

    在阅读Vue(前端框架)以及Spring(Java框架)相关的文章时,经常会看到“脚手架”的概念。

    脚手架,英文scaffolding。
    编程的世界来源于现实的世界,那么现实世界中的“脚手架”是什么呢?
    脚手架一般理解是建筑中使用的设备工具,为了保证各施工过程顺利进行而搭设的工作平台。

    Stack Overflow上有问答:What is scaffolding? Is it a term for a particular platform?

    Scaffolding is a meta-programming method of building database-backed software applications. It is a technique supported by some model-view-controller frameworks, in which the programmer may write a specification that describes how the application database may be used. The compiler uses this specification to generate code that the application can use to create, read, update and delete database entries, effectively treating the template as a "scaffold" on which to build a more powerful application.

    翻译:
    “脚手架”是一种元编程的方法,用于构建基于数据库的应用。许多MVC框架都有运用这种思想。
    程序员编写一份specification(规格说明书),来描述怎样去使用数据库;而由(脚手架的)编译器来根据这份specification生成相应的代码,进行增、删、改、查数据库的操作。
    我们把这种模式称为"脚手架",在脚手架上面去更高效的建造出强大的应用!

    看完之后,小白还是一脸懵逼!
    在web2.0时代,应用程序变得非常复杂,于是出现了很多可以让前端开发效率提升的框架和标准及工具。
    一句话来说:脚手架就是帮助我们快速搭建工程的工具,自动帮我们生成工程目录以及相关依赖,省的你一个个去配置,笨人才这个搞!

    脚手架这个词在编程领域初次看到是在使用前端框架时。许多团队在制定前端工程方案时会加入脚手架模块。虽然不同的团队对工程化的理解和实施有所差异,但是对于脚手架的定位基本是一致的:创建项目初始文件
    脚手架的定义:脚手架作用是创建项目的初始文件,本质是方案的封装

    每一个成熟的工具,都有对应的脚手架工具,它可以快速构建项目的必要目录,不必自己一个一个的配置与搭建,只需要执行一些命令即可
    常见的脚手架工具:
    如vue的vue-cli,react的creat-react-app,flutter的flutter create等等类似。其实每种语言技术都有自己的脚手架,或者自己手动搭建一个适合自己实际项目情况的脚手架工具也是可以的。

    工具吗,会用就行,封装后,尽量最小知道,让程序员专注于真正具体的编程。

    参考
    What is scaffolding? Is it a term for a particular platform?
    编程中的脚手架是什么意思?
    https://www.cnblogs.com/guanghe/p/10694748.html
    https://blog.csdn.net/tjj3027/article/details/90180603

  • 相关阅读:
    图片压缩ShareSDK的简化压缩和使用例子
    qml 调试
    BSP 算法
    粒子系统(Particle System)
    QML Item Element
    Chapter 13. Playing God: Basic Physics Modeling (Tricks.of.the.Windows.Game.Programming.Gurus,.Second.Edition)
    qml资料
    wpf教程
    凸包
    QML Animation
  • 原文地址:https://www.cnblogs.com/MakeView660/p/13044058.html
Copyright © 2011-2022 走看看