• 2016年学习计划


    1 重复读了两本经典的前端书籍:《Javascript高级程序设计》、《CSS权威指南》,基础知识得到了巩固

    02 换了一个工作,经过一轮业务开发,进入框架组,开始全站基础框架开发

    03 工作中逐渐接手框架核心业务,面向对象思维,框架思维,设计思想逐渐得到熏陶

    04 研究webapp模式的框架,接触并解决移动端各种各样难题,如300ms延迟,点透、层级管理、兼容性,渲染问题......

    05 源码学习,包括:zepto、Backbone、underscore、requireJS、Fastclick、IScroll......

    06 公司业务产生井喷效应,业务快速发展,全站CSS文件三易其手,框架庞大化、复杂化,公司架构变化,由无线框架组转战公司框架组

    07 框架积重难返,要做优化不易,思考之前所学,由工作总结出轻量级webapp框架blade,并再上做大量优化

    08 框架变慢,维护成本变高,团队开始框架升级,将blade的优化成果重新回归框架

    09 开始全站优化,与几位老大哥优化框架,框架尺寸下降1/3,框架结构清晰

    10 开始全站样式迁移,分拆CSS入各个UI,引入shadow dom技术,梳理全站样式,样式文件尺寸下降一半

    11 过程中写了接近200篇博客;然后接触了很多高手,如Aaron、OD、左盟主、周文斌、结衣等

    所以,在接近两年的时间里,我觉得我勉强能算得上优秀的前端技术人员了,我的第一个计划算是实现了吧?温故而知新,于是第二轮的计划也要开始了

    后两年计划,成为一个合格的架构师,所以15年的计划是:

    ① 全站优化整理总结

    ② web components研究

    ③ 正则、nodejs

    ④ 架构思想、文档水平学习提升

    ⑤ webapp框架再研究,pad方案、seo方案研究

    ⑥ 移动端调试工具研究

    ⑦ 深化重构思想、深化面向对象思想、深化工程思维

    ⑧ 扩大视野

    第三个阶段当然是读源码了,一定要读源码,而且必须好好读!!!这里尤其推荐读自己熟悉并且不太包含思想的源码

    比如我上个星期看了下backbone就搞得莫名其妙的,原因是没有用过,这里推荐几个库:

    Zepto

    zepto与jquery类似,说白了就是借鉴,但是zepto很是轻便,读起来轻松,但是首次读若是没有半个月的话基本就是没读(不考虑神人)

    因为工作后很少专门有时间去读源码,读的时候要细细的读,看不懂的地方就反复看,慢慢的就全部清晰了

    zepto读完后,整个js的水平会看似上升一大截,这个时候再加紧来点经验就稳稳的前端入门了

    underscore

    第二个推荐的库是underscore,这个库比zepto还要简单,建议好好读下,务必读明白,不要不懂装懂

    Fastclick

    若是有移动端编程经验的朋友,建议好好的读下这个库,写的非常不错,完了后会让你对移动端的事件兼容有深入的理解

    iScroll

    与Fastclick类似的库

    初级程序员读以上几个库就差不多了,而且建议花一到两个月详细的研究一个库,并且将里面的思想用于项目中去,这样才能真正的吸收

    读源码不是看热闹,看热闹会一问三不知

    自己学习前段也接近一年了 但是效率比较低,希望通过这些计划来 一步步加强自己的学习。

    1.看书是最好的途径 不在多 在于精反复阅读 JavaScript高级程序设计 和 css揭秘(最新出版的css秘籍)

    2.由于自己反复了学习原生js的知识  但是缺少实践。所以加强js的练习。

    3.jquery是自己最常使用的 库。通过jquery库来实践出更多的功能 一来更加熟练使用jquery  二来增加自己的编程感觉

    4.开始仔细学习h5 的新知识 当然最主要的还是js的能力 所以阅读几个js源码。 underscore zepto  fastclick backbone 反复仔细的研究 对提升你的js很有帮助

    高手行列(取自叶小钗叶老师的博客)

    以上几个阶段结束后,就可以去外面看看自己的斤两了,真的做到以上的朋友,基本是面几个有几个了,真正的瓶颈就出现在大公司了

    这个时候又到了另外一个阶段:

    ① 深度-细节点

    ② 广度-知识面

    以细节点来说,真正的高手一个javascript事件机制就可以问的多数人哑口无言:

    ① javascript绑定事件的方式

    ② javascript事件对象

    ③ 自定义事件

    ④ 如何触发自定义事件

    ⑤ zepto/jquery事件机制

    ⑥ 解决移动端300ms延迟

    ⑦ ios android事件差异

    ⑧ 事件冒泡/捕获机制以及鬼点击

    ⑨ javascript事件底层实现......

    以CSS来说,一个position就够了

    ① Position的各种属性值

    ② 行内元素块级元素

    ③ 行高问题

    ④ fixed在移动端的问题

    ⑤ 由fixed引导至viewport

    ⑥ 缩放等等问题......

    所以,javascript真正的高手对这些把握是很细的,不是全部都会,但不可能全部都不会。这里可能会有朋友提出学院派以及实干派的想法

    其实我的道友Aaron就是真正的实干派,完全白手起家,他就肯定知道这些问题,至少七七八八

    所以深度一定要有,而且是慢慢积累的,不信看正美那700篇博客吧,有了深度再提广度,不然你的广度就不值钱

    深度完了就是广度,光有深度还不够还得有广度,广度代表业务能力,代表工作水平

    ① nodejs

    ② 打包工具

    ③ H5嵌入APP

    ④ 移动端调试工具(如何在手机console,如何在页面上调试手机程序)

    ⑤ 压缩工具

    ⑥ 项目管理工具(git/svn)

    ⑦ 各种开源框架

    这些都是广度的体现,优秀的人不只是知识稳固,而且还能推动团队使用新技术,带给团队不一样的感觉

    前端知识点繁杂,绝不止局外人看见的那么点

    若是你发现各个大公司想去就去,offer拿到手软了,那么恭喜你,你成为了中级程序员了!!!!

  • 相关阅读:
    ubuntu下安装maven
    159.Longest Substring with At Most Two Distinct Characters
    156.Binary Tree Upside Down
    155.Min Stack
    154.Find Minimum in Rotated Sorted Array II
    153.Find Minimum in Rotated Sorted Array
    152.Maximum Product Subarray
    151.Reverse Words in a String
    150.Evaluate Reverse Polish Notation
    149.Max Points on a Line
  • 原文地址:https://www.cnblogs.com/syomm/p/5549948.html
Copyright © 2020-2023  润新知