This page looks best with JavaScript enabled

程序员常用的技术栈、工具栈都有哪些?

 ·  ☕ 4 min read  ·  🧑 WYT

程序员常用的技术栈、工具栈都有哪些?

什么是技术栈?

技术栈,就是一堆的技能的集合,是某项工作或某个职位需要掌握的一系列技能组合的统称。

举个例子,开发一个电商后台管理系统,前端可能需要使用 HTML、CSS、JavaScript、VueJs或Angular,后端可能需要 Go (Gin框架) 或 PHP (Laravel/Lumen框架)、MySQL数据、Redis缓存等,这一系列技能组合可以称为开发后台管理系统的技术栈。

前端工程师技术栈

基本前端知识:

HTML 定义了网页的内容。HTML产生于1990年,1997年HTML4成为互联网标准。

HTML5 在从前 HTML4.01 的基础上进行了改进,引入了不少的新特性。

CSS 描述了网页的布局。

JavaScript 控制了网页的行为,是 Web 的编程语言,简称JS。

ECMAScript 可以理解为是JavaScript的一个标准,它规定了JS语言的核心组成部分。

ES5: 是 ECMAScript 第五个版本。
ES6: 是 ECMAScript 第六个版本,提供大量新特性,引入 Modules,支持异步加载和可配置的模块加载。

CSS 框架和库:

Bootstrap,来自 Twitter 公司,是目前最受欢迎的前端框架。

CSS 的预处理语言( Stylus / LESS / SASS)

JavaScript 框架和库:

Vue.js
ReactJs
Angular
AngularJS
Backbone

传统的 DOM 操作框架 jQuery 、Zepto。

jQuery 是一个轻量级JavaScript 函数库,极大地简化了 JavaScript 编程。

jQuery UI: 是jQuery出的一套用户交互界面和效果库,比如弹出框,可以在页面里直接调用,方便开发。

现在流行的 MV* 框架: 如 Angular / Backbone / Ember / React 等。

Vue、Angular、React 这是目前前端最火的三个框架。

Vue.js(读音类似于 view) 是一套构建用户界面的渐进式框架。Vue 的核心库只关注视图层,并且非常容易与其它库或已有项目整合。

React 是 Facebook 开源的一个用于构建用户界面的一款JavaScript库。React 它只专注于MVC框架中的 V (视图)。

AngularJS 是一个 JavaScript 框架。AngularJS 通过 指令 扩展了 HTML,且通过表达式绑定数据到 HTML(现在已经停止维护)。

Angular 是一个开源的 JavaScript 框架,用于构建 We 应用程序。可以称为是 AngularJs 的升级重构版本,为了与 AngularJs 区别,一般称为 Angular 2+。
Angular 使用 TypeScript 语言开发。TypeScript 是 JavaScript 的超集,可以安全便捷的编译成 JavaScript 语言运行。

工具

Webpack,现代 JavaScript 应用程序的静态模块打包器(module bundler)

后端工程师技术栈

后端,即服务器端,后端工程师主要是开发服务端使用的一些功能。

后端常用的开发语言有:

Java 是由Sun公司推出的面向对象程序设计语言和Java平台(1995年)。后来 Sun 公司被 Oracle (甲骨文)公司收购,Java 成为 Oracle 公司的产品。

PHP 是创建动态网站的服务器端脚本语言(1995年),主要应用于Web服务端开发和命令行开发。

ASP.NET

ASP 指 Active Server Pages (动态服务器页面),是 Microsoft 公司开发的服务器端脚本环境,可用来创建动态交互式web应用程序。

C# 是微软推出的一种基于 .NET 框架的、面向对象的、面向组件的编程语言。
C# 源于 C 语言系列,C、C++、Java 和 JavaScript 程序员很快就可以上手使用。

VBScript 是微软公司出品的脚本语言(国内很少用了)。VBScript 是 Visual Basic Script 的简称,即 Visual Basic 脚本语言,有时也被缩写为 VBS。

Go 是一个2012年由谷歌公司开源的一种静态强类型、编译型语言,融合了C语言、C++语言、Java等众家之所长,更简洁、安全、高效。为了方便搜索,Go语言也称 Golang。

Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。

Python 由 Guido van Rossum 于 1989 年底发明,1991 年第一版公开发行。
Python 可以分为 Python 2.0 和 3.0 两个不兼容的版本。2020年1月停止 Python 2 的更新, Python 2.7 被确定为最后一个 Python 2.x 版本。推荐大家都使用 Python 3.0 以上的版本。

SQL 是用于访问和处理数据库的标准的计算机语言。

常见数据库

MySQL 是最流行的关系型数据库管理系统(RDBMS)。

MySQL 由瑞典 MySQL AB 公司开发,现在属于 Oracle 旗下产品。 MySQL 使用 C和 C++编写,为多种编程语言提供了 API。

MariaDB 数据库管理系统是 MySQL 的一个分支,主要由开源社区在维护。MariaDB 由 MySQL 的创始人Michael Widenius 主导开发,是 MySQL 的代替品。

SQLite 使用 ANSI-C 编写的,是一个嵌入式的数据库引擎。SQLite 可在 UNIX(Linux, macOS, Android, iOS)和 Windows 中运行。

PostgreSQL 是一个免费的对象-关系数据库服务器(ORDBMS)。PostgreSQL 的 Slogan 是 “世界上最先进的开源关系型数据库”。

NoSQL

NoSQL (NoSQL = Not Only SQL),意即“不仅仅是 SQL”,指的是非关系型的数据库。

NoSQL 的代表开源软件如:Membase、MongoDB、Hypertable、Apache Cassandra、CouchDB等。

MongoDB 是一个面向文档存储的数据库。由 C++ 语言编写。MongoDB 文档类似于 JSON 对象,是一个介于关系数据库和非关系数据库之间的产品。

Redis 是一个开源的高性能的 key-value 数据库,支持数据的持久化。

Memcached 是一个开源的,高性能,基于内存的 key-value 缓存系统。

常用工具栈

(1) 版本管理工具:

Git: 开源的分布式版本控制系统。

SVN: 即 Apache Subversion,是一个集中式的版本控制系统。

(2) 文本编辑器:

Sublime Text

Visual Studio Code

Notepad++ (Windows)

Share on

WYT
WRITTEN BY
WYT
Web Developer