論程式碼所需要的環境、版本的重要性
學員們在參與“基於Spring Boot的部落格系統實戰”課程的時候,可能沒有太注意版本的問題。其實,版本是一個非常重要也是一個非常容易忽略的問題。
版本不一致會導致各種奇怪的問題,比如:
- 應用啟動不了
- 啟動過程中報錯
- 提示找不到 class
- 功能不正常
- 等等
初級學員往往不重視軟體版本,存在隨意更改版本的現象,從而導致上述問題。同時,學員又缺乏除錯程式的能力,一旦出錯,將不知所措。認為程式碼都是跟老師的一樣的啊,但是怎麼就執行不成功呢?
所以,環境、版本需要納入和程式碼同等重要的位置。從某種意義上來講,環境配置、版本配置都是原始碼,都要納入原始碼管理系統之中。
以下,是課程中學員經常犯的常見的由於環境、版本不一致所導致的問題:
- Spring RestTemplate 呼叫天氣預報介面亂碼的解決
- Spring Data Elasticsearch與ES的關係
- 使用 Bootstrap 4 正式版重新定義網站的新Style!
- Elasticsearch 使用中文分詞
- Spring Data Elasticsearch與Elasticsearch的版本關係
- Spring Boot自定義版本
學員們可以對照檢查。
如何避免此類錯誤
簡單一句話“莫裝逼”。如果能力還不夠的話,建議嚴格按照課程的所採用的版本來。因為課程中所有的軟體版本、環境都是經過老師嚴格測試,並確保可用的。避免此類錯誤,有效節省學員試錯的時間。時間就是money哦~
以下是《基於Spring Boot的部落格系統實戰》課程所使用的版本:
* JDK 8
* Gradle 3.5
* Eclipse Neon.2 Release (4.6.2):本書示例採用Eclipse編寫,但示例原始碼與具體的IDE無關,讀者朋友可以自行選擇適合自己的IDE,比如IntelliJ IDEA、NetBeans等。
* Spring Boot 1.5.2.RELEASE
* Thymeleaf 3.0.3.RELEASE
* Thymeleaf Layout Dialec 2.2.0
* MySQL Community Server 5.7.17
* MySQL Workbench 6.3.9
* Spring Data JPA 1.11.1.RELEASE
* Hibernate 5.2.8.Final
* MySQL Connector/J 6.0.5
* H2 Database 1.4.193
* Elasticsearch 2.4.4
* Spring Data Elasticsearch 2.1.3.RELEASE
* JNA 4.3.0
* Tether 1.4.0 :<http://tether.io/>
* Bootstrap v4.0.0-alpha.6 : <https://v4-alpha.getbootstrap.com/>
* jQuery 3.1.1 : <http://jquery.com/download/>
* Font Awesome 4.7.0 :<http://fontawesome.io>
* NProgress 0.2.0 :<http://ricostacruz.com/nprogress/>
* Thinker-md :<http://git.oschina.net/benhail/thinker-md>
* jQuery Tags Input 1.3.6 : <http://xoxco.com/projects/code/tagsinput/>
* Bootstrap Chosen 1.0.3 :<https://github.com/haubek/bootstrap4c-chosen>
* toastr 2.1.1 :<http://www.toastrjs.com/>
* Spring Security 4.2.2.RELEASE
* Thymeleaf Spring Security 3.0.2.RELEASE
* Apache Commons Lang 3.5
* Markdown parser for the JVM 0.16
* MongoDB 3.4.4
* Embedded MongoDB 2.0.0
當對講師的程式碼熟悉了之後,同時,掌握了調錯的能力之後,學員就可以根據自己的情況來調整版本了。 比如,將 Spring Boot 升級到 Spring Boot 2 、使用最新的 ES 版本等。
想學 Spring Boot 2
目前,上述課程是基於 Spring Boot 1.5.2 來講解的,新版本的 Spring Boot 大致上也是差不多的。學員可以舉一反三。
如果想直接學 Spring Boot 2 ,可以關注老師出版的另外一門書《Spring Boot 企業級應用開發實戰》(https://book.douban.com/subject/30192752/),基於最新的 Spring Boot 2 來展開。可以理解為是上述課程的升級。對課程的版本進行了升級,同時補充了課程中無法展開的知識點的梳理。
該書所使用的版本如下:
* JDK 8
* Gradle 4.0
* Eclipse Oxygen Release (4.7.0):本書示例採用 Eclipse 編寫,但示例原始碼與具體的 IDE 無關,讀者朋友可以自行選擇適合自己的 IDE,比如 IntelliJ IDEA、NetBeans 等。
* Spring Boot 2.0.0.M2
* Spring 5.0.0.RC2
* Thymeleaf 3.0.6.RELEASE
* Thymeleaf Layout Dialect 2.2.2
* MySQL Community Server 5.7.17
* MySQL Workbench 6.3.9
* Spring Data JPA 2.0.0.M4
* Hibernate 5.2.10.Final
* MySQL Connector/J 6.0.5
* H2 Database 1.4.196
* Elasticsearch 5.5.0
* Spring Data Elasticsearch 3.0.0.M4
* Tether 1.4.0 :<http://tether.io/>
* Bootstrap v4.0.0-alpha.6 : <https://v4-alpha.getbootstrap.com/>
* jQuery 3.1.1 : <http://jquery.com/download/>
* Font Awesome 4.7.0 :<http://fontawesome.io>
* NProgress 0.2.0 :<http://ricostacruz.com/nprogress/>
* Thinker-md :<http://git.oschina.net/benhail/thinker-md>
* jQuery Tags Input 1.3.6 : <http://xoxco.com/projects/code/tagsinput/>
* Bootstrap Chosen 1.0.3 :<https://github.com/haubek/bootstrap4c-chosen>
* toastr 2.1.1 :<http://www.toastrjs.com/>
* Spring Security 5.0.0.M2
* Thymeleaf Spring Security 3.0.2.RELEASE
* Apache Commons Lang 3.6
* Markdown parser for the JVM 0.16
* MongoDB 3.4.6
* Spring Data Mongodb 2.0.0.M4
* Embedded MongoDB 2.0.0
* IK Analysis for Elasticsearch 5.5.0
看視訊還是看書
從我個人來看,看視訊、看書是兩種非常不同的學習方式。視訊更加生動且易於理解。而書則更加全面且方便回顧。
如何選擇看視訊還是看書來學習,取決於個人學習習慣。當然,學習是不嫌多的,如果有充足的時間不妨書和視訊一起結合起來看。
老衛課程的優點就是,所有的視訊課程,都是會有相關配套的書籍提供的,以利於學員知識點的回顧。視訊、看書兩不誤,雙管齊下,老衛更懂你。
以下是老衛的課程,以及對應的書籍:
視訊課程 | 對應書籍 |
---|---|
基於Spring Boot的部落格系統實戰 | Spring Boot 企業級應用開發實戰 |
基於Spring Cloud的微服務實戰 | Spring Cloud 微服務架構開發實戰 |
相關文章
- 搭建程式碼環境
- virtualenvwrapper 建立虛擬環境(指定版本的python)APPPython
- 如何在Java程式碼中使用SAP雲平臺CloudFoundry環境的環境變數JavaCloud變數
- 多 PHP 版本共存的環境下安裝 Swoole 到指定版本PHP
- 如何利用LNMP環境安裝SMF論壇程式LNMP
- Docker環境搭建(Win版本)Docker
- spring boot 版本由 2 升級到 3 ,需要修改程式碼嗎? 也就是說spring boot 3 是否相容 spring boot 2 所寫的程式碼Spring Boot
- 程式碼稽核之搭建 SonarQube 環境
- CSM|敏捷團隊需要怎樣的工作環境?敏捷
- 十一、論jvisualvm使用的重要性LVM
- 論基礎理論知識的重要性
- 你知道python程式設計環境需要具備,哪些優秀的功能嗎?Python程式設計
- 論微信小程式安裝SSL證書的重要性微信小程式
- conda環境中更改cuda版本
- WIndows環境配置多版本JavaWindowsJava
- 書寫可維護程式碼的重要性
- mac配置自動化環境所需要的軟體Mac
- 架構師需要懂的環境配置標準化架構
- 打造一個好用的 Windows 程式設計環境 2.程式設計環境Windows程式設計
- 虛擬環境的jupter notebook 版本升級問題
- 構建你的Office 365開發環境 - 其他版本開發環境
- 從產品經理被打看你所處環境的危機
- 通過virtualenv安裝指定版本的python的虛擬環境Python
- [APUE] 程式環境
- 如何根據生產環境mysql版本選擇合適的percona xtrabackup版本MySql
- 在 React 程式碼中使用自動更新的 CRA 環境變數React變數
- spaCy (1)安裝和測試程式碼的執行 windows環境Windows
- (一)Linux環境的學習環境的搭建Linux
- JDK各版本環境變數配置JDK變數
- Python 版本及虛擬環境管理Python
- 【Linux】python版本控制和環境管理LinuxPython
- python版本管理(python環境隔離)Python
- python多版本與虛擬環境Python
- Windows環境下的Nginx環境搭建WindowsNginx
- 【Kafka】基於Windows環境的Kafka有關環境(scala+zookeeper+kafka+視覺化工具)搭建、以及使用.NET環境開發的案例程式碼與演示KafkaWindows視覺化
- Java環境下載、配置環境、編寫我的第一個Java程式Java
- 論伺服器託管的重要性伺服器
- 論IT運維自動化的重要性運維