掐指一算,工做也快一年多了。2016这一年,忙忙碌碌,作了很多项目,也学了很多东西,回顾一下,继续向前。javascript
技术成就业务,业务成就事业。css
非科班出生,加入项目组的时候什么都不知道。除了懂一点C/C++ QT
,数据结构和算法以外,其余能够算是一无所知。因而一开始就被分配了一个开发IDE的活,磕磕碰碰把《Java核心编程 卷一》
啃了两遍,对Java Swing
的开发有了一些基本的了解,能够写一些简单的组件。因为IDE的主要业务是Android
方面的,因而啃了半本《Android编程权威指南》
。html
可是本身的兴趣点仍是在互联网,服务器方面。因而本身打算开始学一些互联网方面的东西。前端
那就从前端基础开始吧。java
w3上面的html
,css
,javascript
的基础教程看了一遍。基本算是有所了解node
以为w3
的javascript
讲的太浅显。linux
买了《javascirpt》权威指南
,把前面基础知识部分过了一遍。可是以为原型链,继承,闭包这一块仍是讲的不够深刻。模模糊糊的,这是不能容忍的git
因而又拜读了《JavaScript高级程序设计》
前面的基础部分。不愧是经典。原型链,继承这一块讲的很透彻。es6
学习下来,以为最费劲的仍是CSS
。这个后面再慢慢补充吧github
接下来就是前端框架了吧。项目组也在用AngularJs 1.x
,决定开始从Angular 1.x
开始吧。
w3上面的Angular.Js
的基础教程过了一遍。基本掌握。
接下来开始深刻。《AngularJS高级程序设计》
从头至尾过了一遍。
AngularJs
还真是很差理解,什么Factory
,Provider
,Service
不找几篇文章看看还真是不行啊。
一边学一边在项目中实践,也算是基本掌握了吧。
为了更加深刻学习 AngularJs
,找了一个开源项目angular-dashbaord-framework学习源码,并总结了一个架构文档。后面又找到了一本神书《how to build your own angular》
,该书总头开始指导你怎么构建本身的Angular
,好比$digest
时间循环,$scope
的实现等等。本身也按照书上面实现了一部分https://github.com/qeesung/my-angular,后面时间不够又转到其余知识点上去了。
在学习AngularJs
的时候也附带学习了Bootstrap
,Angular Meterial
等。后输出一篇文章CSS float nine rules,也被很多门户推荐。
前端搞了一部分了,接下来就是后端的东西了。
后端,后端,java web方面的SSH
太难啃,选个没那么笨重的吧。那就Nodejs
吧,最近也挺火的,并且本身也学习了js
语言方面的东西,趁热打铁,说来就来。
首先将http://www.runoob.com/nodejs/nodejs-tutorial.html的基础教程学习了一遍,知道是怎么回事
那就是深刻学习了,将朴灵的 《深刻浅出Nodejs》
从头至尾看了一遍,不得不说,这真是一本好书,原理讲的特别透彻,特别是第三章,那是看的高潮迭起啊。
原理了解了就来点实战的,过了一遍《Nodejs实战》
,connect
,express
,middleware
都算是基本能用了。
数据库还缺点,SQL
的基础知识过了一遍,《MongoDB权威指南》
也过了一遍。
在公司里面Nodejs
项目也实践了几个,对q
,bluebird
,mocha
,debug
,express
,gulp
,grunt
,yoeman
...这些经常使用的模块也用了几遍。
后本身也开发了一个Nodejs
库https://www.npmjs.com/package/rocketchat,用来将RocketChat
这个Slack
的开源替代产品的RestAPI
的Node封装,github
上面也收获了十颗star,几个fork星,https://github.com/qeesung/rocketchat-node。也算是一个不错的开端。
后面输出一遍文章nodejs 异步I/O和事件驱动,算是深刻理解Nodejs
原理了
运维这一块本身也不算是太熟悉,连一个基本的http服务器都起不来,也就是以前在学校搞Uboot
和Linux
驱动的时候搞过一段时间的Linux
,把《鸟哥Linux私房菜 基础篇》
学了一遍。该有的也都知道是怎么一回事。
要说运维,这段时间比价火的应该是Docker
了吧。在以前部署RocketChat
的时候不懂Docker
,同事两三行命令就跑起来的东西,我愣是搞了几个小时,又是装环境,又是配软件的。那就试试Docker
怎么样。
买了一本《第一本Docker书》
,从头开始,一边实践,一边看书,从头至尾过了一遍。基本没啥问题了。也都能使用了。
可是Docker
毕竟存在必定的缺陷,容器没法进行编排。这编排的工做仍是要找Kubernetes
,或者docker swarm
这种东西。因而买了一本《kubernetes权威指南》
,搞了三台linux
机器。一边看一边实践。POD
,Service
,滚动升级
也都实践了一遍。
接下来就是docker swarm
,不能不说,docker swarm
的用起来真是比k8s
简单很多,没有太多的复杂概念,看了看官方文档也基本会用了,概念这些的基本都是相通的。
后面又接触到openshift
,Heroku
,本身也都尝试一遍,将本身跌gohost
博客服务部署在了openshift
上面
...忽然发现docker composer
学忘记了,后面再补上。
要说虚拟机,那仍是要有Vagrant
,快速搭建一个开发测试环境仍是得靠他
官网上面的教程看了一遍,box
的添加删除,虚拟机的实例化基本都掌握了
部署服务,端口转发这些也算是都都操做过
Nginx
也不算是真正的学过,只能算是基本使用,作作反向代理和搭建静态文件服务器仍是能够的。
公司里面有一个相似阿里云的平台,每次申请下来的机器都要有配置好多东西,好比fish shell
,oh my fish
,tmux
,docker
等好多东西,浪费大量时间。决定学习Ansible
来provision
机器。
买了一本《奔跑吧Ansible》
,从头至尾过了一遍,就着Vagrant
实际操做了一遍,对task
,role
的定义
而后在公司内部本身搞了一个开源项目,用于快速配置linux开发环境,配置好IP地址和ssh key之后,执行一条命令,能将全部想要的软件配置全都设置好,好比proxy
,docker
,oh my fish
,oracle jdk
,maven
等等。
后面用到公司的实际项目中,在十八台linux
机器上部署几十余个微服务。
也搞了一段时间的后端的,发现最近React
也挺火的,也打算学习探索一下。在这里先膜拜一下阮一峰老师 ^_^
React
算是将ES6
发扬光大了,以前也听ES6
的各类溜,因而也打算深刻学习一下,找到阮一峰老师的ECMAScript 6 入门,和买了一本实体书,从头至尾过了一遍,对于协程那一块也是看的高潮迭起啊。
后面又胡乱学习了Python 3.4
的asyncio
和async/await
,也是溜溜溜。
将阮一峰老师的https://github.com/ruanyf/jstraining的基本教程看了一遍,对React
的基础学了一波,如何挂载,编写一个组件等等。
把官网教程看了一遍,掌握了有些细节。
可是毕竟React
只是一个View
库,MVC
里面的model
和controller
还须要其余框架来控制。
按照阮一峰老师的Flux 架构入门教程,入门了Flux
。
后又根据Redux 入门教程,和逛网教程,入门了Redux
。
后又按照官网试用了一下GraphQL
,fabebook
出品,真是好东西。
其余学习的东西就是《Head first 设计模式》
,和《Python基础教程》
和《Python核心编程》
的前几章,如今还在学习。
今年原本打算看完《计算机网络》
和《TCP/IP 卷一》
,《深刻理解Nginx:模块开发与架构解析》
的,惋惜才看了《计算机网络》
的前两章。这个目标必定今天必定要实现。
主要总结一些今年学习知识主要内容,周边内容的就直接略过。
html, css, js
w3 html, css,js 教程
《JavaScript权威指南》基础部分
《JavaScript高级程序设计》基础部分
《精通CSS:高级Web标准解决方案》
《CSS高效开发实战:CSS 三、LESS、SASS、Bootstrap、Foundation》
AngularJS
《AngularJS高级程序设计》
《How to build your won AngularJs》,手动实现项目my-angular
开源项目angular-dashboard-dashboard的学习
Nodejs
《深刻浅出Node.js》
《Node.js实战》
《MongoDB权威指南》
开发了Nodejs开源库rocketchat-node
开源库Grunt,Gulp,Yoeman,Express,Connect,Swagger...
React
阮一峰老师的《ECMAScript6 入门》
阮一峰老师的《React 入门实例教程》
阮一峰老师的《Flux 架构入门教程》
阮一峰老师的《Redux入门教程》
《GraphQL入门教程》
官网React教程
官网Redux教程
官网GraphQL教程
运维
《第一本Docker书》
《kubernetes权威指南》
docker swarm官网教程
《奔跑吧Ansible》
Nginx博客教程
Vagrant博客教程和官网教程
今年的主要计划目前是打算学习如下计算机网络方面的内容,Python
和Go
语言方面的内容。反正计划也会不断改变,先作个大体的规划。