• 技术的学习


      刚看到其他人的技术学习心得,在此做些分享会加上自己的一些看法:

      学习新知识的两方面:整体结构和细节,就像书的目录与具体内容,得先了解整体有哪些内容,然后再去学习每节的内容,避免深入细节而迷失学习的方向。

      整体结构:就像是接口,抽象类是做什么的,不用深入实现,看出整个骨架,分离出核心部分,在以后哪种场景下能用上。细节:这时就得了解里面的原理,不断实践,不断重构。

      第一步应该是找到这些主要的类和接口,找出主要的调用过程,清楚这个过程.这样,差不多就明白这个软件/库是怎么工作的了.第二步,是看这些主要类,接口的继承/实现,这样可以了解这个软件/库可以做什么,怎么扩展.这样,一个数M代码量的东东,可以在2~3天的时间里把它弄清楚。对主要流程的掌握和对层次的掌握是第一位的。第一头就扎进这些细节,那就完了。

       以问题导向,案例为基础的学习,不要拘泥于语言,要学习能学习到的最好的东东。比如,性能的关键在调度,这时候可以看看资源调度模式,hibernate算是把资源调度玩到了极致。基于事件的调度(如.net中的web cache),进程调度,线程调度,工作流,这些都算是行为调度,要是把这些东东融会贯通,掌握每一种实现的优点缺点。那么软件设计中所有和时间、并发、资源相关的东东都不在话下了。行为调度可以看看.net 中的cache实现,找一个工作流软件看看,找找几个线程框架看看,看看几个典型操作系统的进程调度机制。

      找一个较稳定的的案例学习,如:pertshop架构,包括其业务、构架,了解有哪些业务模块后再从小模块分析起,多看源码,看其怎么实现此功能的。

      同样的问题,多研究几种解决方案,分析它们的优缺点。

      

  • 相关阅读:
    页面返回劫持js代码
    js向input赋值
    JavaScript中统计Textarea字数并提示还能输入的字符
    dedecms 列表页调用文章列表时对有无缩略图进行判断调用
    常用mate标签-常用mate标签
    dedecms修改arc.listview.class.php实现列表页支持mip
    extend简单用法
    splice从数组中删除指定定数据
    递归【输入一个日期】返回【前12个月每月最后一天】
    三步把asp.net core 3.1应用部署到centos7
  • 原文地址:https://www.cnblogs.com/zhangs1986/p/3576412.html
Copyright © 2020-2023  润新知