当前位置: 首页 > 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问答!
http://www.lryc.cn/news/536843.html

相关文章:

  • Linux(Centos 7.6)命令详解:head
  • HTTP请求X-Forwarded-For注入
  • 《生息之地》入围柏林主竞赛,总制片人蒋浩助力青年导演走向国际
  • 实践记录--电脑故障的问题定位和处理回顾--磁盘故障已解决
  • uni-app 学习(一)
  • Ubuntu 22.04 Desktop企业级基础配置操作指南
  • QILSTE H4-105LB/5M高亮蓝光LED灯珠 发光二极管LED
  • 【Elasticsearch】Elasticsearch检索方式全解析:从基础到实战(一)
  • 封装neo4j的持久层和服务层
  • 基于Spring Boot的宠物爱心组织管理系统的设计与实现(LW+源码+讲解)
  • error: conflicting types for ‘SSL_SESSION_get_master_key’
  • 测试狗参加国家超级计算成都中心2024年度用户大会
  • 从2025年起:数字化建站PHP 8.1应成为建站开发的基准线
  • 飞牛OS与昔映OS深度对比
  • vscode本地和远程对应分支没有同步提交数量
  • 通过docker启用rabbitmq插件
  • DeepSeek计算机视觉(Computer Vision)基础与实践
  • 哪些专业跟FPGA有关?
  • 【STM32系列】利用MATLAB配合ARM-DSP库设计IIR数字滤波器(保姆级教程)
  • Java每日精进·45天挑战·Day18
  • C# 中用于比较两个字符串的方法string.Compare
  • 进阶数据结构——树状数组
  • 键盘启用触摸板-tips
  • 信息安全之网络安全
  • 成都国际数字影像产业园布局者树莓集团,亮相宜宾翠屏招商签约
  • opencascade 获取edge起始点 会出现终点与实际不同的情况
  • 掌握正则表达式_模式匹配的艺术
  • 【蓝桥】二维DP--摆花
  • 在AMLOGIC android14 平台上使用adb
  • 力扣-二叉树-222 完全二叉树节点的数量