Board logo

标题: 使用 CouchDB 和 Bootstrap 设计 Web 应用程序原型(1)简介 [打印本页]

作者: look_w    时间: 2018-10-18 20:07     标题: 使用 CouchDB 和 Bootstrap 设计 Web 应用程序原型(1)简介

CouchDB 是一种新型的 NoSQL 数据库系统(DBMS)。主要信息存储为 JSON(JavaScript Object Notation,JavaScript 对象表示法)文档。CouchDB 还以托管附件的形式支持更通用的文档格式。它不支持经典的表格型数据,这些数据由 SQL 查询,已统治 DBMS 领域几十年。CouchDB 的另一个重要特征是,它的所有操作都以简单 HTTP 调用形式实现,尤其体现在它采用的 (Representational State Transfer,具象状态传输)风格接口。无论您采用何种主机平台或工具包,这种架构都简化了 CouchDB 的使用。它还使得 CouchDB 成为一个为网站和应用程序提供持久性后端的有用工具。
可以找到多篇介绍如何开始使用 CouchDB 的内置 JavaScript 库和相关工具(比如 CouchApp)开发应用程序的教程(参阅 )。在本文中,我将采用一种不同的方式,展示如何将 CouchDB 与简单的、静态提供的网站框架相结合,快速设计网站原型。
REST 简介REST 是一种针对松散耦合的 Web 应用程序的架构风格,这些应用程序依靠指定的资源,例如统一资源定位符 (URL)、统一资源标识符 (URI) 和统一资源名称 (URN),而不是依靠消息。REST 利用了万维网的 HTTP 基础架构协议的某些方面,比如 GET 和 POST 请求。

一种快速构建网站前端的流行新方式是 Bootstrap。Bootstrap 系统由 Twitter 工程师开发,旨在帮助简化工程师们网站开发所用的平台和工具包。Bootstrap 为 Web 应用程序 UI 提供了一致的框架。它使设计漂亮的站点变得非常轻松,并使用级联样式表 (CSS) 来设计排版、表单、按钮、表格、网格、导航、警报等。在本文中,我们将学习如何快速启动开发流程,使用 Bootstrap 开发前端,使用 CouchDB 开发后端,甚至还会开发复杂的 Web 应用程序。
为什么不完全在 CouchDB 堆栈上执行原型设计?尽管许多教程介绍了如何在 CouchDB 上轻松开发一个完整的网站,但这么做是不可取的。以这种方式着手开发会留下想要投机取巧并在站点上线时使用相同方法的巨大诱惑。从安全和维护角度讲,将后端数据库与前端表示层分开会更好一些。本文提供了在 CouchDB 实例上线时锁定它的各种选项,以保护所有敏感数据。安全性始终需要警觉的态度和专业的技能。因为基于静态文件的网站由来已久,所以它们已被广泛接受,而且它们的管理工具也最成熟。
将 CouchDB 与网站前端分开还有另一个优势,因为在 Web 开发期间通常存在多个框架:
在本文中,我使用了 CouchDB、Apache HTTP Server 和 Bootstrap。
人员、技能集和为这些层选择技术的标准常常各不相同。您希望一个方面的决策与另一个方面的决策松散耦合。除此之外,还有一些其他的部件,比如内容交付网络、测试框架、支持安全性的中间件等。越灵活地混搭这些组件,就能越容易在中长期内维护和改进系统。
我为本文选择的技术反映了我的数据库管理专长。Apache 和 Bootstrap 只是帮助我快速完成应用程序的工具。我期望在基本要素就绪后,能够与其他专家合作。中间件开发人员可能喜欢继续使用 Web 服务器框架,比如 Django 或 Ruby on Rails,甚至是内容管理系统,比如 WordPress,所以我使用的 Apache 是可被替换的,且不会影响其他层。Web 设计人员可能最希望进行手工设计而不是使用 Bootstrap,所以我使用的 Bootstrap 也可被轻松替换。得益于现代工具和框架,与依靠单个庞大的软件栈相比,采用这种方式设计 Web 应用程序原型并没有复杂多少。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0