莊子雲:人生在世,如白駒過隙,突然而已。
咱們沒有道家的飄渺,更沒有莊子的哲思,陪伴咱們的是谷歌、百度,以及一個又一個流行的開源框架。nginx
沒遇上辭舊迎新,就在這春節前夕,感慨一下逝去的2018
吧!web
「汶川地震都十年了。」算法
「是啊!整整十年了。」小程序
那時,我還在上小學,我還寫了信,捐了款以支援災區,爲他們加油打氣,告訴他們:同胞一直在大家身邊,請不要放棄但願!微信小程序
bilibili、愛奇藝、拼多多也都相繼上市。努力,一切皆有可能。瀏覽器
抖音愈來愈火,已趕超Facebook
成爲全球最火社交APP
。從最初騰訊提出泛娛樂概念開始,我就在思考,將來多是泛娛樂時代。可是抖音的成功,我以爲我錯了。微信
在抖音上,我也見識到了令我歎爲觀止的建築——騰訊大廈。假想着,咱們什麼時候也會如何輝煌?擁有一座本身的大廈呢?數據結構
寒冬季,互聯網中止社招,而且大規模裁人。爲咱們敲響了警鐘,如何在互聯網時代生存下去?如何提升我的競爭力?多線程
還記得年初本身定下的目標:架構
Spring
$q
目標完成狀況
年初時,初學AngularJS
與SpringBoot
,對什麼IOC
、上下文什麼的一點都不懂,可是自從暑假時編寫了一個Hibernate
攔截器時,@Autowired
失效了,本身手動從上下文中獲取須要的Bean
,我以爲我實現了第一條。
第二條就很簡單了,這學期學了Java
,學習了多線程Thread
類與Runnable
接口,Spring
中就更簡單了,@Async
註解標註該方法爲異步方法,SpringBoot
就新建一個線程去運行,無需手動管理。
關於$q
,本身以前研究了好幾回也沒研究明白,最後看潘老師的視頻教程才明白,$q
是一個簡化咱們建立Promise
的一個服務。
第四點沒作到,感受之後也作不到,躺在牀上就想看看微博,刷刷知乎。
上面的小logo
是用 Shields.io 生成的,Github
上特別流行用這個小logo
放在README
裏。
一年中,經歷了兩個學期,兩次大實驗。
理解了面向對象,學會了切面對面向對象的補充,學會了Spring
的核心,IOC
與AOP
。
學會了AngularJS
,入門了Angular
,學會了與之相似的微信小程序。
最大的收穫就是講解的能力有所提高,同時也更穩了。
第一次大實驗,採用ThinkPHP
開發,比較着急的,內心沒底,一組六人,我一我的寫,他們五個寫文檔,畫圖,最終統一審覈一下,獲得了滿意的成績。但這是一次失敗的實驗,他們什麼都沒學到。
第二次大實驗,採用SpringBoot
與AngularJS
進行開發,此係統比上一個複雜得多,但內心有數,特別的穩,四我的,八個上午確定能完成。
一步步從頭給他們講解怎麼設計ER
圖?Git
怎麼用?如何使用Spring Data JPA
替代課上學的select
語句?grunt
怎麼用,模板怎麼抄?nginx
是啥,爲啥要用nginx
?怎麼啓動後臺,爲何他們都用Servlet + Tomcat
,而咱們只須要一行命令就起來了?收穫巨大,這是很是成功的一次實驗。
新年了,一塊兒來展望一下2019
吧!
下學期有移動開發的實驗,感受之後實際開發也會用到這門技術,下學期好好學學,可是架構要從新設計。
同窗寫過參賽的Android
應用,我下下來用,卡得不行。鑑於我對我手機還有些自信,至少玩個QQ
、微信、支付寶啥的都不卡,我以爲是編碼的問題。
看了幾篇關於移動APP
性能的文章,移動端的技術選型與架構設計十分主要。
移動端技術主要有三類:
Web
跨平臺(React Native
、Vue Native
、Apache Cordova
),一套代碼,全部平臺(包括手機web
端)都出來了,但性能略次於原生。
Flutter
跨平臺,採用Dart
語言構建佈局,沒有React Native
等強大,至關於用Dart
進行佈局,邏輯仍是Java
代碼,性能很好(Dart
的引擎是用C++
實現的)。Made By Google
2019
年的計劃之一,就是採用Data-Binding + Fragmentation
框架,在移動應用開發的實驗中實現單Activity
+多Fragment
架構。至少寫出來的東西能在我手機上流暢運行。
Spring
官網的圖,當今時代,Spring
一統天下。
Spring Boot
:構建一切Spring Cloud
:協調一切Spring Cloud Data Flow
:鏈接一切2019
年計劃之二,就是入門Spring Cloud
。
以前還沒以爲數據結構中那些個時間複雜度、空間複雜度啥的有用,但自從上次給潘佳琦講解數據去重的時候,考慮了一下時間複雜度,忽然以爲算法真的很重要。
最簡單的實現,兩層for
循環,可是想到了有Map
,這可就是線性的時間複雜度。
注意,使用自帶的數據結構爲何比咱們手寫要好,咱們去打印一下JavaScript
中的Map
。
Native Code
:是瀏覽器開發者使用C
或C++
編寫的原生代碼。想一想,一樣一個for
循環,用JavaScript
寫和用C++
寫性能差多少,能用原生的實現,就不本身寫。
2019
年的計劃之三,就是學習一下比較流行的算法,以備開發時提升效率。
2019
年的計劃之四,鍛鍊身體!
2019,新年快樂!