每日分享最新,最流行的软件开发知识与最新行业趋势,希望大家能够一键三连,多多支持,跪求关注,点赞,留言。
旨在帮助开发人员了解 Node.js、GraphQL、React、Netlify 和 JavaScript 等技术,以启动他们的应用程序开发组合。
这是由三部分组成的应用程序开发研讨会系列中的第一部分,旨在帮助开发人员了解 Node.js、GraphQL、React、Netlify 和 JavaScript 等技术,以启动他们的应用程序开发组合。在本文中,我们将介绍网站应用程序的基本概念,并介绍 DataStax Astra DB 作为基于 Apache Cassandra® 的免费、快速、永远在线的数据库。
在美国,我们将近88% 的移动互联网时间花在了Facebook、Instagram、TikTok 和游戏等应用上。每年有近 100 万个新应用发布,2020 年应用下载量达到 2180 亿次,学习如何构建它们是任何前端开发人员职业生涯中必不可少的一步。
那么如何开始构建应用程序呢?作为现代应用程序开发人员,您对多云平台和开源框架的选择无所适从,它们可以为您完成所有繁重的工作。假设您学习了基础知识并利用了正确的工具。在这种情况下,您可以从开发简单的待办事项列表到全栈 Netflix 克隆——这正是我们将在应用程序开发研讨会系列中介绍的内容。
第一个研讨会是关于构建一个网站应用程序,让您走上正轨。您将学习 Web 应用程序的基础知识,熟悉流行的语言(如 JavaScript),然后获得一个预编码的待办事项列表应用程序,您将学习如何修改和部署该应用程序。只需不到三个小时即可完成,您所需要的只是网络浏览器和互联网连接。让我们开始吧。
Web 应用程序开发的基础知识
网站应用程序(或网络应用程序)是在远程服务器上运行的软件,可以使用任何设备上的网络浏览器访问。例如,想想 Slack、Gmail、Google Docs 和 Twitter 等应用程序。与直接安装在设备上并为特定操作系统设计的原生应用程序不同,网络应用程序可以重复使用相同的代码并将其界面调整为适用于任何移动设备、笔记本电脑或平板电脑。
虽然本机应用程序的执行速度要快得多,但它们的开发成本也很高,因为您需要为每个平台或设备学习不同的语言和框架。另一方面,Web 应用程序可以“构建一次,永远重复使用”,并且启动、管理和迭代要简单得多。
在开发 Web 应用程序时,您通常会使用以下架构:
图 1:典型网站应用程序的架构。
- 客户端是您设备的网络浏览器,您可以使用它来访问应用程序。
- 前端是用户与之交互的地方,基本上是一个依赖三种主要技术的 Web 服务器:HTML、CSS 和 JavaScript。
- 后端是与网络服务器交互并存储所有数据库驱动程序、API 和连接前端与后端的微服务的部分。
- 数据层是您存储应用程序状态的地方。这可以在文件系统、外部存储、面向文档的软件或数据库中。
您可能已经熟悉的一个流行数据库是Apache Cassandra®,它为包括 Hulu、Netflix、Spotify 和 Apple 在内的数千家公司的高性能应用程序提供支持。虽然这个免费的开源数据库以其高可用性、可扩展性和弹性而闻名;缺点是它的设置和管理也非常复杂。
在处理数据层时,这种复杂性是一个持续的主题。作为开发人员,您只需要四个操作即可与数据库交互:创建、读取、更新和删除。但是要执行它们,您首先必须学习您正在使用的数据库的语言。例如,您需要 Cassandra 查询语言 (CQL) 才能与 Cassandra 数据库交互。此外,您还需要学习如何设计数据模型(模式),以便正确格式化和组织存储在数据库中的数据。
对于新的应用程序开发人员来说,这是一个陡峭的学习曲线,这就是 DataStax 构建 Astra DB(无服务器 Cassandra 即服务)的原因,作为我们将每个开发人员与 Cassandra 的力量联系起来的使命的一部分。
使用 Astra DB 简化 Cassandra 应用程序开发
Astra DB 是开发人员使用云原生 Cassandra 支持其应用程序的最简单方法,允许他们:
- 更快地部署现代应用程序,无需安装、管理或扩展 Cassandra 的复杂性。
- 使用多个 API 与您的数据库交互以避免数据建模。
- 使用加密数据和基于 JSON Web 令牌 (JWT) 的身份验证从头开始确保安全性,以便与您的数据库进行安全通信。
- 选择是在 Azure、GCP 还是 AWS 上部署 Astra DB。
- Autoscale 数据库资源基于流量和应用要求,因此您只需为使用的资源付费。
作为开发人员,您可以在 Astra DB上免费创建一个帐户。您每个月会收到 350 万个查询和 40 GB,当您准备好扩展时,您只需按需付费即可。
Astra DB 不仅为您提供了一个数据库,它还为您提供了一组 API,您可以使用这些 API 与开箱即用的数据库进行交互。这个位于您的应用程序和 Astra DB 之间的 API 层称为Stargate。
Stargate 可帮助您使用流行的 API 使用 Cassandra 简化应用程序开发:
- REST 提供了一个通用网关,因此您可以通过适用于任何 Cassandra 数据库的 RESTful API 使用熟悉的界面访问您的数据。
- 文档 (JSON)是一种文档 API,可让您在 Cassandra 中保存和搜索无模式 JSON 文档(无需数据建模)。
- GraphQL是一种 API 查询语言,可让您在数据库中插入、查询和更改数据(无需使用 CQL 编写)。
所有这些意味着您需要学习的语言和框架更少,启动时间也更短。将 AstraDB 视为您自己的个人 Samwise Gamgee,其包中包含各种有用的工具,可让您的应用程序开发之旅更加轻松。
使用 JS、Node.JS 和 Astra DB 构建您的第一个 Web 应用程序
没有比构建待办事项列表更好的练习来帮助您开始成为应用程序开发人员了。您将在我们的第一个研讨会中学到的概念和技术是构建任何 Web 应用程序的基础,并将让您走上自己创建更高级应用程序的轨道。因此,在本次研讨会中,您将学习如何:
- 设置一个免费的 Astra DB 实例
- 运行基于 Web 的 IDE Gitpod
- 使用 API 与数据库交互
- 使用 React 构建待办事项列表应用程序
您无需安装任何东西,所涉及的技术都是开源的,可以免费使用。除了 Astra DB 之外,这里还简要介绍了我们将在第一个研讨会中介绍的其他技术:
- Gitpod 是一个基于云的集成开发环境 (IDE),由 VS Code 提供支持,可让您创建现成的开发环境并直接在浏览器中编辑代码。
- Node.js是一种在浏览器外部执行 JavaScript 的运行时环境,可让您生成动态页面内容并与数据库中的数据进行交互。
- React是一个 JavaScript 库,用于创建可轻松适应大多数浏览器和设备的交互式用户界面。
为了给你一个更大的画面,下面是我们将遵循的架构来构建待办事项列表应用程序:
https://github.com/datastaxdevs/appdev-week1-todolist?utm_source=medium&utm_medium=blog&utm_campaign=ytpromo&utm_term=M1&utm_content=Build_Your_First_App_JS_NodeJS 具体代码请查看此处
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.