前端开发简介

前端开发的主要范畴包括网页的布局和展示(如图片、文字、视频等的布局和展示)、与用户的交互(例如,输入内容、单击按钮并响应用户操作等),以及与后端的数据交互。同后端开发一样,前端开发并不会从零开始,而会直接使用一些功能完备的框架来快速开发。本节先介绍几款常用的前端框架,后详细介绍 React 框架的用法。

常用的前端框架

React

React 起源于 Facebook 的内部项目,它主要用于以 MVC 模式开发的 Web 应用程序。它采用声明式的编程范式,使创建交互式 UI 变得轻而易举,可以轻松描述应用界面,并可以与已知的各种框架很好地兼容。它运用了虚拟 DOM 这种新颖的技术,并通过这种技术衍生出了 React Native。由于运用了虚拟 DOM 技术,因此 React 只在调用 setState 的时候更新 DOM,并且会先更新虚拟 DOM,然后将其与实际 DOM 进行比较,如有差异再更新实际 DOM,其性能较高。

Vue.js

Vue.js 是一套构建数据驱动的 Web 界面的渐进式轻量级 MVVM 框架。它关注视图层,采用自底向上增量开发的设计,其目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。其核心是一个响应的数据绑定系统,非常容易上手。

AngularJS

AngularJS 是谷歌公司推出的开源框架,它扩展了 HTML 的语法,允许在 Web 应用程序中使用 HTML 声明动态内容,从而清晰、简洁地表示应用程序中的组件。AngularJS 允许以标准的 HTML 作为模板语言,通过双向数据绑定同步 JavaScript 对象模型及 UI 视图的数据。AngularJS 有诸多特性,其中重要的是 MVVM、模块化、自动化双向数据绑定、语义化标签、依赖注入等。

React框架的用法

上述前端框架各有优劣,在实际应用中更推荐使用 React 框架,因为其开发模式同时适用于 Web 前端开发(React)及手机应用程序开发(React Native)。本节以 React 框架为例,介绍基于 TypeScript 语言的前端开发,以及如何搭建一个基础的前端界面。

假设当前项目目录为 D:\TSProject\client-side,首先在 D:\TSProject\ 目录下执行以下命令,创建该项目。

$ npx create-react-app client-side --template typescript

执行该命令后,在 D:\TSProject\ 目录下创建名为 client-side 的 React 项目文件夹,其文件模板使用 TypeScript 语言,同时将自动下载 Node.js 的相关库文件。

创建项目后,其结构如下。

D:\TSProject\client-side
│  .gitignore
│  package-lock.json
│  package.json
│  README.md
│  tsconfig.json
│
├─node_modules
│      ...
│
├─public
│      favicon.ico
│      index.html
│      logo192.png
│      logo512.png
│      manifest.json
│      robots.txt
│
└─src
        App.css
        App.test.tsx
        App.tsx
        index.css
        index.tsx
        logo.svg
        react-app-env.d.ts
        reportWebVitals.ts
        setupTests.ts

可以看到,在项目目录下已经包含了一个可以直接运行的模板项目。

在项目目录下执行 npm start 命令,启动该前端项目,访问前端界面,如图23-1所示。应用程序前端访问的地址为 http://localhost:3000。

image 2024 02 20 13 58 23 660
Figure 1. 图23-1 访问前端界面

React 框架的参考资料较多,这里不再详述其基础用法,读者可以自行在网上搜索相关资料。