Web前后端開發(fā)快速上手指南
時間:2023-05-30 21:57:01 | 來源:網(wǎng)站運營
時間:2023-05-30 21:57:01 來源:網(wǎng)站運營
Web前后端開發(fā)快速上手指南:
前置說明:
- 下面內(nèi)容只是按照個人的理解進行整理說明,適用于快速上手,僅供學習參考
- 一些編程通用的技術(shù)或工具比如Git、Linux等下面就不再贅述
- 學習參考不限于下面我所列出的,可以去看別人的博客教程,也可以去慕課網(wǎng)、B站、極客時間、騰訊課堂等網(wǎng)站進行相關內(nèi)容的學習
- 如果實在沒啥時間學習的話,可以去 how2j學習網(wǎng)站(當年我入門的學習網(wǎng)站,可能也有其他類似的學習網(wǎng)站可以去找一下),前后臺內(nèi)容都有而且都很基礎,把他的教程都擼一遍過去,可以讓你快速入門前后臺開發(fā)...
前后端分離整體架構(gòu)概圖
一、Web前端(Vue)
1. 前端架構(gòu)設計圖
2. 基本語言
(1)HTML
網(wǎng)頁元素語言(網(wǎng)頁布局、控件等)
學習參考:菜鳥教程-HTML教程
(2)CSS
網(wǎng)頁樣式語言(以后可以了解一下CSS擴展語言Sass)
學習參考:菜鳥教程-CSS教程
(3)JavaScript
網(wǎng)頁腳本語言(網(wǎng)頁DOM元素操作,業(yè)務邏輯,與后臺交互等)
學習參考:菜鳥教程-JavaScript教程,《JavaScript高級程序設計》
(4)ECMAScript 6(ES6)
JavaScript 語言的下一代標準(很多新語法可以加快開發(fā)效率)
學習參考:ES6入門教程,菜鳥教程-ES6教程
3. 開發(fā)工具/環(huán)境
(1)NodeJS
JavaScript本地運行環(huán)境,很多工具都依賴該環(huán)境(暫時先把環(huán)境裝好,node.js編程可以先不看)
學習參考:Node.js中文網(wǎng)
(2)npm
同NodeJS一起安裝的包管理工具
學習參考:菜鳥教程-NPM使用介紹
(3)webpack
前端資源加載/打包工具(前端應用
工程化開發(fā)解決方案,模塊化開發(fā)工具)
學習參考:webpack中文文檔
(4)VsCode
代碼開發(fā)、調(diào)試工具(個人推薦使用VsCode進行Vue應用開發(fā),當然配合Vue的開發(fā)需要下載一些插件。其他IDE還有WebStorm、HBuilder、Sublime啥的)
學習參考:vscode教程(基礎篇)
4. 框架
(1)Vue
輕巧、高性能、可組件化的MVVM框架,前端三大框架之一(React、Vue、Angular),中文文檔完善上手簡單(Vue國內(nèi)公司用的比較多,React國際上用的較多),當然除了Vue框架本身,還可以配合使用其他組件,比如vuex,vue-router、axios、Vue-Cli腳手架等組件(Vue全家桶)
學習參考:Vue官網(wǎng)
(2)Element-UI
基于 Vue.js的UI組件庫(其他的UI庫還有iview等),布局、表單、表格等常用控件基本都能滿足
學習參考:Element-UI官網(wǎng)
(3)ECharts
使用 JavaScript 實現(xiàn)的開源可視化庫,各種折線圖、柱狀圖、路徑圖等酷炫的制圖應有盡有(數(shù)據(jù)分析展示必備)
學習參考:ECharts官網(wǎng)
(4)其他
Bootstrap、Jquery等框架可以了解下,都是以前Web開發(fā)常用框架,現(xiàn)在使用Vue等框架的話很少使用了
5. 優(yōu)秀案例/教程
(1)
手摸手,帶你用vue擼后臺 系列教程GitHub源碼地址(項目技術(shù)棧基于 ES2015+、vue、vuex、vue-router 、vue-cli 、axios 和 element-ui,所有的請求數(shù)據(jù)都使用Mock.js進行模擬)
- 手摸手,帶你用 vue 擼后臺 系列一(基礎篇)
- 手摸手,帶你用 vue 擼后臺 系列二(登錄權(quán)限篇)
- 手摸手,帶你用 vue 擼后臺 系列三 (實戰(zhàn)篇)
- 手摸手,帶你用 vue 擼后臺 系列四(vueAdmin 一個極簡的后臺基礎模板)
- 手摸手,帶你用 vue 擼后臺 系列五(v4.0 新版本)
- 手摸手,帶你封裝一個 vue component
- 手摸手,帶你優(yōu)雅的使用 icon
- 手摸手,帶你用合理的姿勢使用 webpack4(上)
- 手摸手,帶你用合理的姿勢使用 webpack4(下)
該系列教程學完,基本上Vue開發(fā)管理系統(tǒng)沒啥問題了,源碼可以直接使用進行二次開發(fā)即可(2)
renren-fast-vue開源項目基于vue、element-ui構(gòu)建開發(fā),實現(xiàn)renren-fast后臺管理前端功能,提供一套更優(yōu)的前端解決方案
可以看一下直接拿來添加業(yè)務模塊進行二次開發(fā)6. 快速入門建議
- 花時間快速把HTML、CSS、JS的內(nèi)容過一遍
- 了解一下npm和webpack,HTTP協(xié)議、如何通過ajax和后臺數(shù)據(jù)交互等
- 學習Vue官網(wǎng)教程,對著例子敲一遍
- 學習手摸手,帶你用vue擼后臺 系列教程
- 看看github上面star較多的vue管理系統(tǒng)項目,基本上都可以直接拿來用進行二次開發(fā)
二、Java后端
1. 后端架構(gòu)設計圖(單應用)
2. 基本語言
(1)Java
Java后端開發(fā)語言,重要性不言而喻
學習參考:《Java編程思想》,《Effective Java》,廖雪峰-Java教程
(2)SQL
一種數(shù)據(jù)庫查詢和程序設計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關系數(shù)據(jù)庫系統(tǒng)。
這邊我們除了SQL的基礎使用,還需要掌握業(yè)務系統(tǒng)的數(shù)據(jù)庫表設計學習參考:慕課網(wǎng)-數(shù)據(jù)庫設計那些事、《mysql必知必會》、廖雪峰-SQL教程、《高性能mysql》
2. 開發(fā)工具/環(huán)境
(1)JDK&JRE
JDK:java開發(fā)工具包
JRE:java運行時環(huán)境
直接下載后解壓并進行環(huán)境變量配置即可
學習參考:JDK安裝與環(huán)境變量配置
(2)Maven
用于構(gòu)建和管理Java相關項目的工具
學習參考:菜鳥教程-Maven教程
(3)Idea
代碼開發(fā)、調(diào)試工具,業(yè)界被公認為最好的java開發(fā)工具之一??梢园惭b一些插件提高開發(fā)效率,比如Alibaba Java Coding Guidelines、Lombok等等
學習參考:IntelliJ IDEA 使用教程(2019圖文版) ,Jetbrains系列產(chǎn)品2020.1.2最新激活方法
(4)Postman
接口測試工具,后端服務暴露HTTP接口使用該工具進行相關測試
學習參考:Postman教程大全
(5)Navicat
數(shù)據(jù)庫管理工具,簡化數(shù)據(jù)庫的管理
學習參考:mysq數(shù)據(jù)庫管理工具navicat基本使用方法
(6)Jenkins
一個持續(xù)集成工具 (自動化構(gòu)建、測試和部署)
學習參考:Jenkins詳細教程
(7)其他
Docker、Kubernetes、虛擬機等其他一些工具可以自己簡單了解下
3. 開發(fā)框架/庫
(1)Spring/Spring MVC/Spring Boot
- Spring是一個一站式的輕量級的java開發(fā)框架,核心是控制反轉(zhuǎn)(IOC)和面向切面(AOP),針對開發(fā)的WEB層(SpringMVC)、業(yè)務層(IOC)、持久層(jdbcTemplate)等都提供了結(jié)局方案;
- SpringMVC是Spring基礎之上的一個MVC框架,主要處理web開發(fā)的路徑映射和視圖渲染,屬于spring框架中WEB層開發(fā)的一部分
- SpringBoot框架相對于MVC框架來說更專注于開發(fā)微服務后臺接口,不開發(fā)前端視圖,同時遵循默認優(yōu)于配置,簡化了插件配置流程,不需要配置xml,相對SpringMVC大大簡化了配置流程;
現(xiàn)在項目基本上都直接使用Spring Boot2.x進行開發(fā),幾分鐘就能搭建一個后臺服務哦后面很多工作都是Spring Boot和其他框架或庫的整合,比如Spring Boot整合MyBatis、整合Redis、整合gRPC框架等等,基本上官網(wǎng)都有教程或者百度相關博客即可
學習參考:Spring官網(wǎng)教程、W3Cschool-Spring 教程、W3Cschool-Spring Web MVC 框架、程序猿DD-Spring Boot基礎教程
(2)MyBatis
支持定制化 SQL、存儲過程以及高級映射的優(yōu)秀的持久層框架,MyBatis 可以對配置和原生Map使用簡單的 XML 或注解,將接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java對象)映射成數(shù)據(jù)庫中的記錄。
還有其他的持久層框架比如 Hibernate個人并不推薦,可以自己去了解下
MyBatis-Plus框架也可以去了解下,是一個MyBatis的增強工具,在 MyBatis 的基礎上只做增強不做改變,為簡化開發(fā)、提高效率而生。
學習參考: W3Cschool-MyBatis 教程、Mybatis教程-實戰(zhàn)看這一篇就夠了、MyBatis-Plus
(3)Junit
Java語言的單元測試框架
學習參考:W3Cschool-jUnit 教程
(4)Druid
阿里的
Druid 數(shù)據(jù)庫連接池
學習參考:官方WIKI
(5)其他
- 常用的庫還有Shiro安全框架、Quartz定時任務框架、FastJson、commons-io、poi、guava等庫,可以簡單了解下,看看其他項目案例用到了哪些框架
- SpringCloud微服務框架、Dubbo RPC、gRPC框架等,可以簡單了解一下,單應用系統(tǒng)目前用不到
4. 中間件
(1)MySQL
最流行的關系型數(shù)據(jù)庫管理系統(tǒng)(開源免費、性能卓越),基本上項目都是使用MySQL數(shù)據(jù)庫,除非有些項目指定oracle數(shù)據(jù)庫
學習參考:菜鳥教程-MySQL教程、《高性能mysql》
(2)Redis
分布式key-value存儲系統(tǒng)(緩存數(shù)據(jù)庫),可以應用為熱點數(shù)據(jù)的緩存、分布式鎖、Session會話緩存、簡單的消息通知等
學習參考:菜鳥教程-Redis 教程
(3)消息隊列
常用的有RabbitMQ、RocketMQ、Kafka等,應用場景主要是:異步處理、應用解耦、流量削峰等??勺孕辛私庀?,一般用RabbitMQ就夠了,對吞吐量高要求的話可以使用RocketMQ和Kafka,大數(shù)據(jù)領域用Kafka
學習參考:RabbitMQ教程、Apache RocketMQ開發(fā)者指南、Kafka 1.0 文檔
(4)Tomcat
開源的輕量級Web應用服務器
- 使用Spring Boot開發(fā)的項目已經(jīng)內(nèi)嵌Tomcat容器,直接jar啟動即可
- 如果使用Spring MVC進行項目開發(fā)需要將項目war包放入外部Tomcat容器進行啟動
學習參考:Tomcat 教程之快速入門、SpringBoot內(nèi)置tomcat啟動原理
(5)Nginx
一個高性能的HTTP和反向代理web服務器,常用來作靜態(tài)資源web服務、反向代理、負載均衡等
學習參考:W3Cschool-Nginx 入門指南
(6)其他
MQTT平臺、OSS分布式文件系統(tǒng)、短信服務平臺等一些商業(yè)或開源的中間件等需要使用的時候自行了解即可
5. 優(yōu)秀案例/教程
(1)
spring-boot-demo一個用來深度學習并實戰(zhàn) spring boot的項目,目前總共包含66個集成demo
常用框架的Springboot集成基本上都有了,想要用啥就找怎么使用的demo即可,so easy...
(2)
renren-fast一個輕量級的Spring Boot2.1快速開發(fā)平臺,其設計目標是開發(fā)迅速、學習簡單、輕量級、易擴展;使用Spring Boot、Shiro、MyBatis、Redis、Bootstrap、Vue2.x等框架,包含:管理員列表、角色管理、菜單管理、定時任務、參數(shù)管理、代碼生成器、日志管理、云存儲、API模塊(APP接口開發(fā)利器)、前后端分離等。
基本上拿來直接二次開發(fā)即可,配套的Vue管理系統(tǒng)參考renren-fast-vue開源項目
(3)
mallmall項目是一套電商系統(tǒng),包括前臺商城系統(tǒng)及后臺管理系統(tǒng),基于SpringBoot+MyBatis實現(xiàn),采用Docker容器化部署。 前臺商城系統(tǒng)包含首頁門戶、商品推薦、商品搜索、商品展示、購物車、訂單流程、會員中心、客戶服務、幫助中心等模塊。 后臺管理系統(tǒng)包含商品管理、訂單管理、會員管理、促銷管理、運營管理、內(nèi)容管理、統(tǒng)計報表、財務管理、權(quán)限管理、設置等模塊。
配套的Vue管理系統(tǒng)參考 mall-admin-web
(4)
jeesite一個Java EE 企業(yè)級快速開發(fā)平臺,基于經(jīng)典技術(shù)組合(Spring Boot、Spring MVC、Apache Shiro、MyBatis、Beetl、Bootstrap、AdminLTE)
免費版本的限制較多,如果要求不高直接使用即可....
6. 快速入門建議
- 花時間快速把Java和Mysql的內(nèi)容過一遍,具備Java編碼和數(shù)據(jù)庫設計能力
- 掌握并安裝常用的開發(fā)工具與環(huán)境
- 挑一個開源項目好好看看(renren-fast),了解下項目基本結(jié)構(gòu)、如何與其他框架集成、如何實現(xiàn)RBAC權(quán)限模塊、如何實現(xiàn)分布式Session與鑒權(quán)等等
- 基于一個開源項目進行二次開發(fā),擴充業(yè)務模塊
本文原創(chuàng),歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明出處,如有不正確或侵權(quán)的地方懇請各位看官指正。