写博客是个好习惯

    不记得上一次写博客是什么时候了。平常工作忙的像狗,周末有时也加班,空余时间太少。这周妹纸出差,难得清静。

    这一年工作节奏还是蛮快的,参与开发5、6个系统,也学了做了不少东西,有技术性强的,也有边缘性的活,有前端、DB,也有框架、算法,还有线程、缓存、GC。搞技术的还是得总结一下自己学到的东西,拿出来晒晒,一来温故知新,二来也给后面遇到问题的人有个参考。

    在这里先列个提纲出来,后面详细分章节。

 前端

    刚入职其实就被拉进去做前端了,哪里需要就去哪里。在工作中不会有太多时间让你彻底的学习,对于我这个前端小白,除了了解最基础的js、css语法,知道一些现成流行的框架能干啥以外,最好的方式就是在chrome上"右键另存为",或者右键"审查元素",然后自己玩。这样写下来几个页面+controller,基本就能上手了。后来项目中又有很多页面工作,渐渐的形成了自己前端的代码风格,能迅速构思页面基本布局,使用哪些插件。前端就是js(Jquery)+css(bootstrap)+各种插件(分页、文件上传、拖拽),会用api,会基本的页面布局,就够了。在项目中学习是最好的方式,这点也是我觉得工作和学校最大的不同。

DB

    再牛B的系统也离不开增删改查。目前在开发过程中只实际使用过批量插入、覆盖索引优化分页、selectforupdate、SSD等小点优化。像分库分表、读写分离这等专业性比较强的暂未涉足。

框架(设计)

    大调用量的系统非常强调稳定性,比如系统查询请求频繁可以采用近端缓存模式;系统间调用频繁但调用结果不用立刻给到调用方:服务异步化。平台的热部署能力:groovy、javascript脚本适应灵活多变的业务需求。固定的处理逻辑:轻量级的链式处理逻辑。

Java

     多线程(ThreadPool、ThreadLocal、concurrentXX),垃圾回收(CMS),缓存(Guava),日志(Log4J)。

算法应用

    HMM语义识别(DP),多串匹配(AC自动机),规则解析(后缀表达式)。能在繁重的业务需求中找到一些优化的应用点,还是蛮有成就感。

工具

    Mockito、eclemma、JMeter、DUMP等。

猜你喜欢

转载自yzmduncan.iteye.com/blog/2222597