全栈开发人员词汇表(完整列表!)
第一部分:基本要点
第 2 部分:更高级的
第 3 部分:语言、工具和框架
Jamstack?Docker?DOM?无服务器?
大家在谈论什么???
如果您对全栈开发还不熟悉,并且对人们在谈论全栈开发时使用的一些术语感到困惑,那么请继续阅读,因为我将在这里整理与全栈开发相关的最常用词汇和短语。当然,学习我将要提到的每个方面的细节需要花费更多时间。我会对每个词汇和短语进行总结,以便您了解它们的含义,从而理解人们在谈论全栈开发的某些领域时所指代的内容。
第一部分:基本要点
1. 前端
应用程序或网站中与用户直接交互的部分。
2. 后端
应用程序或网站中用户无法直接看到或交互的部分。
3. 全栈
应用程序或网站的整体,包括前端和后端。
4. DOM
文档对象模型 (DOM) 是 Web 文档的编程接口。它代表页面,以便程序可以更改文档的结构、样式和内容。
5. API
API 代表:应用程序编程接口。其目的是为程序提供一种轻松访问和交换数据的方法。
6. 加密
将信息或数据转换为代码的过程,特别是为了防止未经授权的访问。
7. 解密
加密是将信息转换为代码,而解密的目的是将相同信息的代码转换回其原始形式。
8. HTTP
超文本传输(或传输)协议,万维网上使用的数据传输协议。
9. HTTPS
基本上与 HTTP 相同,但使用加密方法来保护传递到网页和从网页传出的数据。
10. CI/CD
CI/CD 代表:持续集成、持续交付,
CI/CD 系统的目的是更频繁、更可靠地将代码更改传递给应用程序或网站。
11. UI
UI 代表:用户界面。UI 开发人员尝试使网站的界面易于使用和导航。
12. UX
UX 代表:用户体验。UX 开发人员专注于使网站的设计对访问者更具吸引力。
13. 无服务器正如Cloudflare 博客
所述:无服务器计算是一种按使用量提供后端服务的方法。无服务器提供商允许用户编写和部署代码,而无需担心底层基础设施。从无服务器供应商处获得后端服务的公司将根据其计算量付费,并且无需预留和支付固定的带宽或服务器数量,因为该服务是自动扩展的。需要注意的是,尽管名为无服务器,但仍然会使用物理服务器,只是开发人员无需意识到它们的存在。
14. 后端操作
这些操作在后端执行,因为它们对于前端来说太耗时或占用太多内存,或者这些操作根本无法在前端执行,因为它们需要仅在后端工作的库或框架。
15. 请求/响应
前端和后端通过请求和响应进行通信。前端脚本可以向后端请求数据,后端脚本则可以将该数据作为响应发送。
16. 缓存
缓存是数据在浏览器或计算机上的临时存储位置,以便节省每次需要时一遍又一遍地加载相同数据的时间。
17. 命令行 命令
行是直接向计算机操作系统输入命令的界面。这是在计算机操作系统上执行操作最直接、最快捷的方式,例如启动 PHP 服务器、创建目录、执行脚本、更改文件权限等等……
18. 虚拟机
虚拟机是一种计算机系统,它模拟物理远程机器,以便在该机器上执行操作,例如托管网站或存储数据。
19. AWS
AWS,即亚马逊网络服务 (Amazon Web Services),目前是这些虚拟机的最大提供商,同时还提供文件存储等许多其他服务。
20. 数据库
数据库是结构化的数据集合,大多数时候需要数据库来存储大量用户数据。
第 2 部分:更高级的
1. XML
XML 代表可扩展标记语言 (eXtensible Markup Language)。XML 在许多不同的 IT 系统中扮演着重要的角色,并常用于在互联网上分发数据。阅读本文,深入了解 XML。
2. JSX
JSX 代表 JavaScript XML。JSX 允许您在 ReactJS 中编写 HTML。
3. JSON
JSON 是 JavaScript 对象表示法 (JavaScript Object Notation) 的缩写。它是一种轻量级、基于文本的开放标准格式,专为人类可读的数据交换而设计。它是一种独立于语言的数据格式。它几乎支持所有类型的语言、框架和库。
4. 防火墙
一种根据预定的安全规则监视和控制传入和传出网络流量的网络安全系统。
5. IP 地址
IP 地址是一串唯一的字符,用于标识每台使用互联网协议进行网络通信的计算机。IP 地址有两种类型:IPv4 和 IPv6。
6. IPv4
IPv4(IP 版本 4)地址是 32 位整数,以十进制表示。例如,192.0.2.126 可能是一个 IPv4 地址。IPv4 地址是最常见的。
7. IPv6
IPv6(IPv6 版本)是 IPv4 的改进版本。IPv6 地址比 IPv4 地址更加唯一,因此提供了更多地址变体。除了提供更多地址之外,IPv6 还实现了 IPv4 所不具备的功能。它简化了地址配置、网络重新编号以及更换网络连接提供商时的路由器公告等操作。
8. 代理服务器 代理
服务器是充当客户端和目标服务器之间的中间人。代理服务器允许您通过不同的 IP 地址发出 Web 请求。代理服务器在 VPN 中最常用,如果您想在网络上隐藏您的位置、个人数据或您的整体身份,它非常有用。
9. VPN
VPN 代表“虚拟专用网络”。VPN 可以保护您的互联网连接和在线隐私。它们为您的数据创建加密隧道,通过使用代理服务器隐藏您的 IP 地址来保护您的在线身份,并允许您安全地使用公共 Wi-Fi 热点。
10. Nginx
Nginx,发音类似“engine-ex”,是一个用于处理 Web 请求的开源 Web 服务器。
11. Apache
Apache 是与 Nginx 类似、最广泛使用的 Web 服务器软件。
12. Jamstack
Jamstack 是一种旨在使 Web 运行更快、更安全、更易于扩展的架构。它基于许多开发者喜爱的工具和工作流程构建,例如 ReactJS。预渲染和解耦的核心原则使网站和应用程序能够以前所未有的信心和弹性交付。
13. Sudo
Sudo 是“SuperUser DO”的缩写,用于访问受限制的文件和操作。默认情况下,Linux 系统会限制对系统某些部分的访问,以防止敏感文件被盗用。sudo 命令可以暂时提升权限,允许用户无需以 root 用户身份登录即可完成敏感任务。
14. Web Scraping
Web Scraping 是从外部网站提取数据的过程。一些最流行的 Web Scraping 库包括:Puppeteer、Selenium和BeautifulSoup。
15. Git
Git 用于跟踪文件和目录的变化。Git 通常用于在软件开发过程中协调开发人员协作开发源代码的工作。
16. Cron 作业
Cron 作业是由后端按设定的时间间隔运行的作业。Cron 作业主要用于管理用户通过前端创建的后端作业。
17. 响应式网页设计
响应式网页设计,也称为 RWD 设计,是一种现代网页设计方法,它允许网站通过自动适应屏幕(无论是台式机、笔记本电脑、平板电脑还是智能手机)在所有设备和屏幕尺寸上呈现(或显示)。
18. MySQL
MySQL 是由 Oracle 开发的基于结构化查询语言 (SQL) 的关系数据库管理系统 (RDBMS)。数据库是结构化的数据集合。它可以是任何东西,从简单的购物清单到图片库,再到企业网络中存储海量信息的地方。
19. NoSQL
NoSQL 以其强大的功能、易于开发和大规模性能而闻名。NoSQL 被称为非关系型数据库。它不遵循关系数据库管理系统 (RDBMS) 的规则,因此不使用传统的 SQL 语句来查询数据。两个著名的 NoSQL 系统示例是MongoDB和Neo4J。
20. 环境变量
环境变量是指在程序外部(通常通过操作系统)设置的变量。使用环境变量可以避免在程序中定义和重新定义变量。
第 3 部分:语言、工具和框架
1. ReactJS
你可能已经在 dev.to 上听说过很多关于 React 的内容,但 ReactJS 到底是什么呢?
React 是目前最流行的 JavaScript 前端框架。React
由 Facebook 于 2013 年开发,用于构建交互式用户界面。
2. Angular
Angular 是一个基于 TypeScript 构建的开发平台。作为一个平台,Angular 包括:
一个基于组件的框架,用于构建可扩展的 Web 应用程序;
一系列高度集成的库,涵盖路由、表单管理、客户端-服务器通信等各种功能;
一套开发者工具,可帮助您开发、构建、测试和更新代码。
使用 Angular,您将充分利用一个可以从单人项目扩展到企业级应用程序的平台。Angular 旨在使更新尽可能简单,让您能够以最少的努力利用最新的开发成果。
3. Docker
Docker 是一个软件平台,可让您快速构建、测试和部署应用程序。Docker 将软件打包成标准化单元(称为容器),其中包含软件运行所需的一切,包括库、系统工具、代码和运行时。使用 Docker,您可以快速部署和扩展应用程序到任何环境中,并确保您的代码能够运行。
4. Kubernetes
Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务。
Kubernetes 这个名字源于希腊语,意为“舵手”或“领航员”。缩写 K8s 取自“K”和“s”之间的八个字母。谷歌于 2014 年开源了 Kubernetes 项目。Kubernetes 融合了谷歌超过 15 年的大规模生产工作负载运行经验以及社区的最佳理念和实践。
5. Rust
Rust 是一种静态类型编程语言,专为性能和安全性而设计,尤其是安全并发和内存管理。
6. TensorFlow
TensorFlow 是一个端到端的机器学习开源平台。它拥有一个全面、灵活的工具、库和社区资源生态系统,让研究人员能够推动机器学习领域的最新进展,让开发者能够轻松构建和部署由机器学习驱动的应用程序。
7. Solidity
Solidity 是一种静态类型的花括号编程语言,旨在开发在以太坊上运行的智能合约。
8. Laravel
Laravel 是一个 PHP 框架,具有富有表现力、优雅的语法。它是最受欢迎的 PHP 框架。
9.
Go 语言 Go 语言最初是由 Google 的 Robert Griesemer、Rob Pike 和 Ken Thompson 于 2007 年开发的编程语言。它是一种静态类型语言,语法类似于 C 语言。它提供垃圾收集、类型安全、动态类型功能以及许多高级内置类型,例如可变长度数组和键值映射。它还提供了丰富的标准库。Go 编程语言于 2009 年 11 月发布,并已用于 Google 的一些生产系统。
10. jQuery
jQuery 是一个快速、小巧且功能丰富的 JavaScript 库。它通过易于使用且兼容多种浏览器的 API,使 HTML 文档的遍历和操作、事件处理、动画和 AJAX 等操作变得更加简单。凭借其多功能性和可扩展性的结合,jQuery 改变了数百万人编写 JavaScript 的方式。
11. AJAX
Ajax 代表异步 Javascript 和 XML。Ajax 只是一种从服务器加载数据并选择性地更新网页部分内容而无需重新加载整个页面的方法。
基本上,AJAX 所做的就是利用浏览器内置的 XMLHttpRequest(XHR)对象在后台异步地向 Web 服务器发送和接收信息,而不会阻塞页面或干扰用户的体验。
Ajax 已经变得如此流行,以至于你几乎找不到一个不在某种程度上使用 Ajax 的应用程序。一些大型 Ajax 驱动的在线应用程序包括:Gmail、Google Maps、Google Docs、YouTube、Facebook、Flickr 等等。
12. NodeJS
Node.js 是一个开源、跨平台的后端 JavaScript 运行时环境,它基于 V8 引擎运行,并在 Web 浏览器之外执行 JavaScript 代码。Node.js 允许开发人员使用 JavaScript 编写命令行工具,并允许服务器端脚本在页面发送到用户的 Web 浏览器之前生成动态网页内容。因此,Node.js 代表了一种“JavaScript 无处不在”的范式,将 Web 应用程序开发统一到一种编程语言上,而不是使用不同的语言来编写服务器端和客户端脚本。
13. NPM
NPM 有两个作用:首先,它是一个用于发布开源 Node.js 项目的在线存储库;其次,它是一个用于与上述存储库交互的命令行实用程序,有助于软件包安装、版本管理和依赖项管理。npm 上发布了大量的 Node.js 库和应用程序,并且每天都有新的库和应用程序添加。您可以在其网站上搜索这些应用程序。一旦您有了想要安装的软件包,只需一条命令即可安装。
14. CSS
层叠样式表 (CSS) 是一种样式表语言,用于描述用 HTML 等标记语言编写的文档的呈现方式。CSS 与 HTML 和 JavaScript 并列,是万维网的基石技术。
CSS 旨在实现呈现与内容(包括布局、颜色和字体)的分离。这种分离可以提升内容的可访问性;在指定呈现特征方面提供更大的灵活性和控制力;通过在单独的 .css 文件中指定相关的 CSS,使多个网页能够共享格式,从而降低结构内容的复杂性和重复性;并且允许缓存 .css 文件,以提高共享该文件及其格式的页面之间的页面加载速度。
15. Git
Git 是一款用于跟踪任何文件集更改的软件,通常用于在软件开发过程中协调程序员协作开发源代码的工作。其目标包括速度、数据完整性以及对分布式非线性工作流(在不同系统上运行的数千个并行分支)的支持。
16. AWS
亚马逊网络服务公司 (AWS) 是亚马逊的子公司,以按使用量计费的方式向个人、企业和政府提供按需云计算平台和 API。这些云计算网络服务提供各种基本的抽象技术基础设施以及分布式计算构建块和工具。其中一项服务是亚马逊弹性计算云 (EC2),它允许用户通过互联网随时使用虚拟计算机集群。AWS 的虚拟计算机模拟了真实计算机的大部分属性,包括用于处理的硬件中央处理器 (CPU) 和图形处理单元 (GPU);本地/RAM 内存;硬盘/SSD 存储;操作系统选择;网络;以及预装的应用软件,例如 Web 服务器、数据库和客户关系管理 (CRM)。
17. 谷歌云
谷歌提供的谷歌云平台 (GCP) 是一套云计算服务,其运行基础架构与谷歌内部用于其终端用户产品(例如谷歌搜索、Gmail、谷歌云端硬盘和 YouTube)的基础架构相同。除了一系列管理工具外,它还提供一系列模块化云服务,包括计算、数据存储、数据分析和机器学习。
18. Microsoft Azure
Microsoft Azure(通常简称为 Azure)是由微软运营的云计算服务,用于通过其托管的数据中心进行应用程序管理。它提供软件即服务 (SaaS)、平台即服务 (PaaS) 和基础设施即服务 (IaaS),并支持多种不同的编程语言、工具和框架,包括微软专用和第三方的软件和系统。
19. Selenium
Selenium 包用于通过 Python 实现 Web 浏览器交互的自动化。它常用于开发机器人和网络爬虫。
20. Django
Django 是一个高级 Python Web 框架,它鼓励快速开发,并采用简洁实用的设计。它由经验丰富的开发人员构建,解决了 Web 开发中的许多麻烦,因此您可以专注于编写应用程序,而无需重新设计轮子。它是免费且开源的。
这就是全栈开发人员词汇表。