庄子云:人生在世,如白驹过隙,突然而已。
咱们没有道家的飘渺,更没有庄子的哲思,陪伴咱们的是谷歌、百度,以及一个又一个流行的开源框架。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,新年快乐!