当前位置: 首页 > news >正文

前端开发入门一

前端开发入门一

已经有若干年没有web相关的代码了,以前主要是用C/C++编写传统的GUI程序,涉及界面、多线程、网络等知识点。最近准备开发一个浏览器插件,才发现业界已经换了天地,只得重新开始学习了,好在基本的学习能力还在,而且有AI加持,应该不是太大问题,Let’s get started.

开发环境

开发工具:选择了vsCode,是微软开发的一个代码编辑器,可以通过插件来增加对不同语言的工具的支持,整体来看与eclipse相似。之前教C时总是推荐学生用visual studio,后来发现对于初学者,VS尤其是后面的界面越来越复杂,软件越做越大,对于他们来说太复杂,于是改成Dev C++,再后来,直接用了OJ平台布置作业,结果很多学生直接在Web里面写代码,连调试机会都没有了,有问题直接甩给老师,只能一声叹息,现在学生…

回到正题,发现现在开发web程序的工具丰富多了,要学的知识也多,下面简单列一些,都是这几天接触的:

Node.js

个人理解是一个类似于web服务器的后台工具,还是用官网定义说吧:Node.js 是一个基于 Chrome V8 引擎 的 JavaScript 运行时环境,用于在服务器端运行JavaScript。
在Windows下,直接上官方下载安装即可,这样免去了安装IIS或者Apache服务器,等到真的应用时再安装,方便了开发。安装成功后,在VS的terminal里面输入:

node -v

如果能显示其版本号,则表示安装成功。

优点包括:
  1. 内置 npm(Node Package Manager),拥有全球最大的开源库生态系统。
  2. 跨平台:支持Windows、Linux、macOS 等操作系统。
  3. 事件驱动与非阻塞 I/O:避免线程阻塞,适合高并发场景(如聊天服务、API 网关)。

TypeScript

  1. 是一种由微软开发的开源编程语言,它是 JavaScript 的一个超集,为 JavaScript 添加了可选的静态类型和基于类的面向对象编程。
  2. 设计目标是为了更好地支持大型应用程序的开发,这样就好理解了,就好比C++之于C,通过类型系统来提高代码的可维护性和可读性;
  3. TypeScript 的编译器通常被简称为 tsc,它是将 TypeScript 代码转换为 JavaScript 代码的工具。——这一点又有点象Java语言。
  4. 增加了OOP的概念,包括类、接口模块等,并且允许声明变量类型。

JavaScript 框架

早期好像是Jquery,最近下载了一个JQuery项目,发现已经是过去时了,脚本语言发展真快,现在流行的是React、Vue、Angular

React

React 是一个由 Meta(原Facebook) 开发的开源 JavaScript 库,专注于构建高效、灵活的用户界面(UI)。它于 2013 年发布,现已成为全球最流行的前端框架之一,尤其适合构建复杂的大型单页面应用(SPA)。
核心特征

  1. 将 UI 拆分为独立、可复用的组件,每个组件管理自己的状态和逻辑。包括函数组件(新)和类组件。
  2. JSX(JavaScript XML):一种类似 HTML 的语法扩展,允许在 JavaScript 中直接编写 UI 结构。
  3. 虚拟DOM(Virtual DOM):避免直接操作真实 DOM 的性能损耗。
React 的生态系统

SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

工具/库用途备注
React Router‘实现前端路由(SPA 页面切换)’
Redux全局状态管理(适合复杂应用)“”
Next.js服务端渲染(SSR)和静态站点生成
Next.js服务端渲染(SSR)和静态站点生成
Vite极速构建工具(替代 Webpack)
Material-UIUI 组件库(快速搭建美观界面)

官方文档:https://react.dev(新版文档)
教程推荐:

  • 官方教程:Tic-Tac-Toe 游戏教程
  • 免费课程:Scrimba 的 React 入门

Vue

Vue 是一款用于构建用户界面(UI)的渐进式 JavaScript 框架,专注于简化Web 应用的开发,适合中小型项目快速开发

  1. Vue 自动追踪数据变化,并实时更新视图。——所见即所得!
  2. 组件化开发:将Web页面拆分为独立、可复用的组件,每个组件包含自己的逻辑和样式。——那不就是向传统GUI开发那一套靠齐,这是好事。
  3. 虚拟 DOM(Document Object Model,代表性的如HTML):通过虚拟 DOM 高效更新页面,仅渲染变化的部分,提升性能。——可以理解为画图程序,里面仅更新部分区域。
  4. 最新版本是Vue 3:支持 Composition API、TypeScript 等。
  5. 官方文档:中文VueJs/英文VueJs

react vs Vue

在这里插入图片描述
总结React 凭借其组件化、高性能和强大的生态,成为构建现代Web 应用的首选之一, 适合中大型项目,但对新手需要一定学习成本。若追求快速上手,可考虑 Vue;若需要极致灵活性和跨平台支持,React 是更优选择。

其它一些工具

  • Webpack是一个现代JavaScript应用程序的静态模块打包器(module bundler)。它的主要目的是将各种资源(如HTML文件、CSS样式表、图片、JavaScript文件等)打包成一个或多个bundle,以便于在浏览器中使用。

Express

Express 是一个快速、无配置、极简的 Node.js Web 应用框架,它为 Web 和移动应用程序提供了一组强大的功能,使得构建单页、多页或混合 Web 应用程序变得更加容易。Express 是 Node.js 最流行的中间件框架之一,用于处理网站的路由、请求和响应等基础任务。

Mongoose

Mongoose 是一个为 Node.js 环境设计的 MongoDB 对象模型工具库

  1. 它管理着数据验证、业务逻辑以及数据之间的关系,并提供了一个简单的接口来与 MongoDB 数据库进行交互
  2. Mongoose 是一个对象数据模型(ODM)库,它封装了 MongoDB 的驱动,使得与数据库的交互更加容易和直观。

svg-captcha:用于生成验证码

dotenv:管理环境变量

  • 关于以上资料,多数来自于AI问答!

相关文章:

  • c# 对象属性拷贝 解决方案
  • NPDP学习笔记 -产品经理(第二版)-第二章 组合管理
  • 为什么vue3需要对引入的组件使用markRaw?
  • 【Elasticsearch】词项中心(term-centric)和字段中心(field-centric)
  • 10bit VS 8bit 视频:色彩深度的较量,谁才是视觉盛宴的王者?
  • 【Sceneform-EQR】实现3D场景背景颜色的定制化(背景融合的方式、Filament材质定制)
  • OpenLayer创建第一个基础地图实例
  • “集团企业浪潮”(Conglomerate Wave):市盈率套利(P/E Arbitrage)与每股盈利增长的幻象
  • 基于深度学习的半导体领域关键技术创新与应用突破
  • python调用多平台deepseek等大模型api
  • 求助文心一言帮我用antv x6开发一个直线审批流程设计页面Vue2.0
  • int* a = new int(3);delete a;后会调用析构函数吗?
  • ClickHouse的前世今生
  • Training for Computer Use
  • 【实战AI】利用deepseek 在mac本地部署搭建个人知识库
  • 堆栈欺骗技术
  • leetcode 2684. 矩阵中移动的最大次数
  • DeepSeek介绍本地部署保姆级教程
  • 三角测量——用相机运动估计特征点的空间位置
  • MySQL与Oracle对比及区别
  • 公司网站平台/seo有名气的优化公司
  • 新手做网站的注意事项/合肥瑶海区
  • 兰州新区网站建设/sem推广和seo的区别
  • 手机新机价格网站/百度文库官网首页
  • 房产中介做租单用哪个付费网站更好/东莞网站seo推广
  • 四川达州网站建设/计算机培训短期速成班