这是熟悉Vibe Coding所必须了解的一些基础知识,但是肯定不够全面,后续会陆续补充。如果你在使用vibe coding中遇到了陌生的知识,请请教claude或者别的AI来教你学习,可以使用“请用80岁老奶奶都能看懂的方式教导我xx概念”。

1程序

程序就是计算机能够理解的代码

2运行环境

运行环境就是指程序的生存空间,程序只有放在这里才能运行

分类:

1)浏览器环境:google,firefox——专门运行网页相关的代码

2)服务器环境:node.js,Apache——运行服务器端的代码

3)桌面应用环境:windows,Macos,linux——运行电脑软件

4)移动应用环境:android,ios——运行手机应用

补充说明:

1)linux是一个开源系统,非常稳定,占用资源少,学习曲线陡峭,大多数网站和云服务都运行在linux上

2)node.js是一个基于chrome v8引擎的javascript运行环境(后续还会讲解node.js)

3)Apache:提供网页,适用于博客等,编程语言为PHP、python,一次只能处理一个请求。作为对比,node.js是处理业务逻辑并生成内容,适用于即时交互的应用(聊天室等),编程语言为javascript,可以同时接受很多个请求。

3服务器

硬件意义上就是指提供服务的计算机

软件意义上就是指接受请求并提供相应的程序

4HTMl

HTML可以浅显理解为网页的结构,是一个网页的“骨架”

(可以不用理解,留个印象)标签:

<!DOCTYPE html>:告诉浏览器这是一个HTML5文档

<html>:整个网页的容器

<head>:存放网页的配置信息

<body>:存放实际显示的内容

5CSS

CSS可以浅显理解为内容的样式(颜色、字体、布局等)

现阶段小白选手会用到Tailwind CSS,这是一种功能类优先的CSS框架,通过组合预定义的CSS类来构建页面,无需编写自定义CSS即可创造现代化UI(用户界面)。

优点是:高度可定制(通过配置文件轻松自定义颜色、间距、断点等)、响应式设计(不同设备的适配【电脑、手机】)、暗黑模式支持、JIT编辑器(只生成实际使用的样式,传统CSS是把所有样式列出来)、最终生成的CSS体积小、无需在HTML和CSS文件间切换(传统开发需要不停切换)。

6javascript

javascript是一种脚本语言,当你访问网页时,javascript会下载HTML、CSS和javascript(网页交互)代码。

7引擎

引擎就是驱动某种功能的核心部件

V8引擎:把javascript代码翻译成计算机理解的编程语言。

不同引擎都是翻译javascript的代码,只是性能和工作方式有所不同

8网页的动态效果VS静态效果

网页的动态效果:网页内容实时变化(javascript)

网页的静态效果:网页内容固定不变(HTML+CSS)

9I/O

也就是input/output,指的是计算机与外部世界(文件系统、网络、外部设备)交换数据的过程。

常见操作:读写文件、发送请求、接收数据、用户输入、数据库操作

10单线程模型与多线程模型

单线程模型:一个线程处理所有任务,任务排队进行,要等待I/O操作

多线程模型:多个线程同时处理任务,同时进行(独立),不等待I/O操作

11前端与后端

前端:用户看到并进行交互的页面(界面展示)

后端:服务器上运行,用户看不到(用户账号验证、订单处理、数据储存)

12JAVA与PHP、Node.js

JAVA:通用、面向对象的编程语言,适用于企业级应用

PHP:主要用于web开发的编程语言,适用于中小型网站、内容管理系统

Node.js:介于两者之间,比PHP性能好,比java更灵活。I/O密集性(很多I/O)适用

13CPU与GPU

CPU:central processing unit中央处理器——计算机大脑,负责执行各种计算和控制指令

GPU:图形处理器——专门处理图像和视频的“绘图专家”芯片

14CMS

Content Management System内容管理系统

创建、管理和更新网站内容的软件

不需要再编写代码、上传文件和服务器等等

15wordpress

创建各种网站的平台

完全免费、用户友好、高度可定制

16数据库

数据库:有组织地存储、管理和检索数据

分类:关系型数据库(SQL数据库)和非关系型数据库(NoSQL数据库)

关系型数据库:像整齐的超市货架,数据存储在表格中,表与表之间建立联系,有严格数据结构要求

非关系型数据库:像灵活的杂货店,不局限表格形式,存储多种形式数据,结构更加灵活

典型的关系型数据库是MySQL,适用于网站、应用程序、中小型企业

典型的非关系型数据库是MongoDB,存储JSON样式文档,适用于快速开发迭代、内容管理、实时分析

17响应式设计

让网页能自动适应不同大小的屏幕(手机、平板)

18渲染

浏览器读取HTML、CSS和javascript代码,并将他们转化为用户可以看到和交互的视觉元素的过程。

19CDN

内容分发网络。

分布在全球各地的服务器网络,用来更快地向用户传递网站内容。

20React

facebook开发的用于构建用户界面的javascript库,利于创建交互式网页应用。适用于复杂的单页应用、大型项目。

21储存

你写的代码会保存在一个地方,一般是储存在本地,但这仅仅适合小型项目或静态网站。

一旦需要多人操作、存储用户信息、动态内容、数据统计分析,就需要把代码储存在数据库里面。

22边缘情况

程序在极端或特殊情况下的表现

23SSL与TLS

SSL是一种安全协议(secure sockets layer安全套接层),用户保护网络通信的安全。TLS是SSL的进阶版。