Skip to content

大前端知识

前端是一个广泛的概念,它涵盖了所有与用户直接交互的软件界面开发,包括但不限于 Web、移动应用(iOS、Android)、桌面应用、游戏等。本文介绍大前端的不同方向以及每个方向涉及到的技术栈

软件按终端分类

在我们生活中,常用的终端设备可分为移动端桌面端两大类。

PC 端应用

PC 端指的是个人计算机,包括台式机、笔记本电脑、一体机等多种形态。这些设备通常拥有较大的屏幕、更强的处理能力和更多的输入输出设备(如键盘、鼠标、显示器等)。

- 特点:

  • 大屏幕:相比移动设备,PC 端通常拥有更大的屏幕,提供更佳的视觉体验。
  • 高性能:具备更强的处理能力和更大的存储空间,适合运行复杂的应用程序和进行高强度的计算任务。
  • 丰富的输入输出设备:支持键盘、鼠标、触摸屏(部分笔记本电脑)、手写笔等多种输入方式,以及扬声器、耳机、麦克风等多种输出方式。
  • 固定或可移动性:台式机通常固定在某个位置,而笔记本电脑则具有可移动性,但相比移动设备仍显得较为笨重。

- PC 端操作系统: Windows,macOS,Linux

移动端应用

移动端指的是便携式的计算设备,主要包括智能手机、平板电脑、智能手表等。这些设备通常具有触摸屏界面,便于用户进行直观的操作。

- 特点:

  • 便携性:体积小、重量轻,便于随身携带和使用。
  • 触摸屏界面:主要通过触摸屏进行输入和交互,支持多点触控、手势操作等。
  • 移动网络和无线连接:支持移动网络(如 4G、5G)和 Wi-Fi 等无线连接方式,方便用户随时随地上网。
  • 传感器和摄像头:内置多种传感器(如陀螺仪、加速度计、GPS 等)和高清摄像头,支持拍照、录像、定位等功能。

**- 移动端操作系统:**iOS,Android,HarmonyOS

区分方式

  • 设备形态:PC 端设备通常较大且不可随身携带,而移动端设备则小巧轻便,便于携带。
  • 操作系统:PC 端主要运行 Windows、macOS 等桌面操作系统,而移动端则主要运行 iOS、Android 等移动操作系统。
  • 使用场景:PC 端更适合进行复杂的办公和学习任务,而移动端则更适合进行快速便捷的通讯和娱乐活动。
  • 交互方式:PC 端主要通过键盘、鼠标等输入设备进行交互,而移动端则主要通过触摸屏进行直观的操作。

跨终端,跨平台开发

跨终端和跨平台开发都是为了提高应用程序的兼容性和适应性,但它们关注的侧重点不同。跨终端开发更侧重于针对不同设备的优化和适配,而跨平台开发则更侧重于通过一套通用代码实现多平台运行

跨终端开发

跨终端开发主要指的是针对不同类型设备(如智能手机、平板电脑、桌面电脑、智能电视,智能手表手环等)进行优化和适配的开发方法。这种开发方式要求开发者考虑不同设备的屏幕尺寸、分辨率、操作系统、浏览器等因素,以确保应用程序能够在各种设备上呈现适当的布局、控件和交互方式,从而提高用户体验。

跨平台开发

跨平台开发,也称为多平台开发,是一种通过一套通用的代码,使应用程序可以在多个不同的操作系统和设备上运行的开发方法。这些平台可以包括移动设备(如 iOS 和 Android,小程序)、桌面操作系统(如 Windows、macOS、Linux)以及 Web 浏览器等。

- 跨平台开发框架:

  • 基于 Web 技术
  1. Electron:Electron 是由 GitHub 开发的一个使用 Web 技术(HTML、CSS、JavaScript)来创建跨平台桌面应用程序的框架。支持 windows,macOS,Linux 等多个平台

  2. uniapp:基于 vue 框架的开发工具,支持 iOS、Android,HarmonyOS,H5,小程序 等多个平台。

  3. React Native:是 Facebook 开源的跨平台移动应用开发框架,基于 JavaScript 和 React。支持 iOS 和 Android 平台。

  • 基于原生技术
  1. Flutter:由 Google 开发的跨平台 UI 框架,使用 Dart 语言,支持 iOS 和 Android 平台,具有高性能和高保真度的 UI 效果。

  2. Xamarin:基于.NET 框架的开发工具,使用 C#开发跨平台应用程序,支持 iOS、Android 和 Windows 等多个平台。

- 跨平台开发工具:

  • Visual Studio Code
  • Xcode(苹果公司开发,用于 iOS 和 macOS 应用程序开发)
  • Android Studio(Google 官方推出的 Android 开发工具)

大前端方向

Web 前端

  • 前端基础:html,css,js

  • js 框架:jquery,vue,react,Angular

  • 工程化:html,css,js

  • 工具:git/svn,vscode/hubilder,npm

  • UI 框架:PC 端(element,iView,AntDesign),移动端(vant,vView)

  • 其他:浏览器基础知识,网络基础知识,人机交互知识,响应式适配,web3D 动画,可视化(e-chart)

  • 前端基建研发:门户框架,UI 组件库研发,npm 工具,低代码平台,微前端

  • 前端开发:PC 端门户,中后台,移动端小程序,H5(uniapp)

iOS 和 Android 原生开发

  • Android 原生开发:使用 Java 或 Kotlin 编写 Android 应用程序,使用 Android Studio 作为 IDEAndroid 原生开发

  • iOS 原生开发:使用 Objective-C 或 Swift 编写 iOS 应用程序,使用 Xcode 作为集成开发环境(IDE)

可视化,游戏开发

  • web3D 技术:three.js,webGL,canvas,svg,e-chart

  • web3D 应用领域:游戏,动画,教学演示,VR/AR,3D 建模,数据可视化大屏

  • 游戏开发:C++、C#和 Python

服务端 node

  • node 框架:express,koa,egg

上次更新于: