2018年過去了,自己也畢業半年了,2018年自己也學到了一些東西,當然也欠缺好多東西。畢業半年了,自己在實際工作中更多的是做一些基本的CRUD,沒有什么特別復雜性的工作,但是也學到了很多東西。更多的是增強了自己的思維邏輯能力,在寫代碼的時候可以想到各種可能出現的異常情況,也接觸了很多的工具包的使用。
現在回顧一下自己2018年學到的東西以及2019年計划學習的東西。
18年看了兩本書,《深入理解Java虛擬機》與《Java多線程編程核心技術》。也學習了一些常用的框架以及工具類,比如說redis、消息隊列(非常淺顯)、SSH、SSM等的使用。
《深入理解Java虛擬機》自己理解的大概有7成左右吧,對JVM內存結構、垃圾回收機制等有了一定的認識,同時對class文件結構以及類加載器的雙親委派模型等也有了一定的認識;對JDK下常見的性能分析工具也有了一定的認識。后面的並發編程部分講的比較淺顯也就沒有細看,只能說有點印象。
《Java多線程編程核心技術》,作者是高洪岩。這本書在閱讀的時候是結合《Java並發編程實戰》一起看的,前一本書代碼比較詳細,對初步了解多線程有很大的幫助,后一本書講的比較深入,而且講了許多深入的東西。這兩本書閱讀完之后對多線程有了深刻的認識,這兩本書閱讀的比較詳細,代碼也是一個一個自己敲出來的,所以就印象深刻。對synchronized同步、Lock同步有了深刻的認識,對多線程的使用也有了了解,對線程池的使用更加熟練,也接觸了一些像柵欄、閉鎖等知識。總之,這兩本書結合起來對多線程的使用應該是足夠了,可以解決一些常見的問題,也可以自己編寫一些常用的多線程代碼。不過項目中一般都是線程池的使用,在線程池的使用時要注意並發原子類型的使用,像AtomicInteger等,以及其原理CAS,同時對並發同步容器類以及AQS(抽象同步序列器)有了一定的認識。這兩本書確實是受益匪淺。
接下來是2019年的計划。首先我列出了自己在BOSS直聘上看到的大多數的技術要求:
dubbo學習(RPC框架),zookeper,消息中間件,springcloud,netty Spring,SpringMVC,Mybatis struts2/hibernate mysql/oracle/SqlServer/ 熟悉Hadoop技術線,可熟練使用ES查詢語法和Hive、Spark、Hbase、MapReduce; SVN/Git/Maven/Ant Kafka、zookeeper、memcached、Redis、RabbitMQ、RocketMQ、activemq docker 服務器相關: tomcat/jboss/weblogic/jetty
熟悉linux平台 , 熟悉至少一種腳本語言(shell/python)
有Spark、Hadoop、Storm等技術經驗者優先;
了解Hadoop/HBASE、Redis等nosql數據庫。
FastDFS分布式文件系統、Elasticsearch
自己也有好多只是聽過沒有研究過,比如dubbo、zookeper、kafka、mq、springcloud、docker、ElasticSearch相關知識以及hadoop相關知識體系。在今年會學習上面的相關知識。這些分布式的知識在現在的開發中確實太常見了,打開BOSS直聘隨便一搜都會要求這些。
下面是一些BOSS上提及但是不是那么重要的知識,這些可以在之后學習:springData、JPA。
19年自己計划閱讀的書籍有下面兩本: Spring源碼解析 \ 設計模式。
19年自己計划完成的幾個小練習,將教務系統轉為springboot項目、電廠項目實現集群部署(主要研究session共享的幾種方式)、webview+FrameWork7實現安卓應用和IOS應用的開發(前提是先買一個ios的手機)。
19計划開發一個小型的安卓端app應用,至於軟件的作用還沒想清楚。。。。。。。
===移動端開發相關知識:===
第一種開發思路:(這個簡單)
H5+學習網站:http://www.hcoder.net/course/info_212.html http://www.html5plus.org/doc/zh_cn/webview.html
安卓開發相關:(HBuilder開發工具建立app項目,mui框架-此框架可以打開手機的操作,發布apk也可以用HBuilder----可以做一個二維碼制作一個下載apk的鏈接)
學習網站 h5+,HBuilder,mui學習網站 http://ask.dcloud.net.cn/docs/#//ask.dcloud.net.cn/article/610
mui 最接近原生APP體驗的高性能前端框架,如果想要開發安卓應用可以采用這種方式實現。這個完全可以用於開發手機App, 與java交互的時候可以采用JSON交互,自帶的ajax請求支持跨域。http://dev.dcloud.net.cn/mui/ui/
h5+結合mui開發 安卓移動端開發:h5+(或者mui,mui是對h5+的包裝)。h5+使得 js 可以調用各種瀏覽器無法實現或實現不佳的系統能力,設備能力如攝像頭、陀螺儀、文件系統等,業務能力如上傳下載、二維碼、地圖、支付、語音輸入、消息推送等。
(注意這種開發只能嵌入app中,如果直接瀏覽器中訪問是不能操作手機軟件的,因為沒有權限)
第二種開發思路:
webview+Framework7開發移動端應用。
這里記錄幾個常用網站:
易百學習網站(前后都有,包括thymeleaf):https://www.yiibai.com/
