一、目的
1.掌握Spring4怎样使用,以便将这个框架作为自己的一项技能。
2.掌握Spring官网是怎样介绍其产品的,在心中对Spring有最官方的、最直观的了解。在Spring的相关领域,能够知道怎么下载Spring、Spring相关的博客和问答在哪里能够找到、Spring的github相关信息等内容。
3.欣赏、学习Spring官网的设计风格,将Spring作为一种优雅艺术来广泛参与其中。
4.最终目的:成为Spring领域的专家(真正的对Spring方方面面无所不知)。

二、过程
1.浏览Spring的官网,按照页面的逻辑结构,记录一些重要内容。
2.在浏览页面的过程中,不可避免地遇到很多术语和陌生单词,将这些单词记录在特定的笔记本上,扩展英语知识。
3.网站中很多的东西是不可照搬的,在本地做索引和文件收藏。

比如,对于网站中的一些博客链接、git地址,可以记录在索引文件里面。例子:
SpringStackOverflow地址:
www.xxxx.com
SpringGitHub地址:
www.gitxxx.com
Spring开发人员Mike的博客:
mike.spring.com

对于一些文档手册、软件jar包,可以下载到本地的文件收藏中(主要是为了自己方便本地使用),例子:
/Guides
/Guides/springcore
/Guides/springjpa

4.对于一些额外技能,比如git工具的使用,可以添加到计划列表。计划列表的例子:
————————————————————————
计划1:进行Spring官网的研究
————————————————————————
在研究到问题列表时,计划列表可能增加了一项:
————————————————————————
计划1:进行Spring官网的研究
计划2:对Stack Overflow的问答模式的研究学习
————————————————————————
在后面准备安装的时候可能又增加了这些:
————————————————————————
计划1:进行Spring官网的研究
计划2:对Stack Overflow的问答模式的研究学习
计划3:什么是maven和gradle?
计划4:怎么从github检出分支?
计划5:git工具怎么使用
————————————————————————

注意:
1.你每遇到新的计划,都不应该立刻去投入到计划的学习中,因为这些遇到的问题往往都是非常复杂值得详细学习的,其学习量不亚于学习spring网站,比如学习git工具,你不能spring还没会就去研究git,结果两者都很难掌握,让你很烦躁。所以应该一步步地实现计划,将新内容添加到计划中。
2.每项遇到的东西都不可能是没有价值的,如上面提到的git、Stack Overflow,这些东西既然spring官网用到了,说明他一定是很重要的东西。一方面,你在此次学会他,以后就方便了,另一方面,这些工具也许你还没听过,但是这正好是个拓展能力的大好时机,不要丢弃它,否则你不知下次什么时候才能遇到它。
3.学习这些半路遇到的计划,也应该像现在学习Spring这样,按照这些步骤和方法。当你不断通过相关性来学习遇到的东西,逐渐地,你不知道的重要的内容会越来越少,而你掌握的东西越来越多。这比你自己通过别人的培训课程来胡乱学习新东西,或者是公司要求你研究什么你就学习什么,效果要好多了,你会越来越感兴趣也会越来越厉害。

三、计划
制定良好的计划是完成任务的重要基础。
1.你需要评估哪些内容是需要大量时间的,哪些内容是只需琐碎时间看一看的。然后将这些内容安排在不同时间。例:
————————————————————————————————————————————————————
我会把“浏览首页、查看页面关系、记录在此过程中遇到的生词)”这种琐碎工作放在实在无法认真学习和解决问题遇到瓶颈的时候,因为这些小问题没有技术含量,并且不会引起焦虑,这些都像是“体力活”,这正是一个已经疯了的人擅长的。你会在此过程中逐渐冷静下来。

我会把“认真阅读Spring都有哪些功能模块,每个模块的具体功能是什么”这种任务放在我心情较好、有大量时间的时候。比如周末。这种工作让自己有“很正式很认真很严肃”的感觉,此时也会高效率。
————————————————————————————————————————————————————

四、评估和实施
你不可能专门投入到这种学习过程中。就算你是在上学,有大把的时间,甚至你是在放暑假,有非常自由的整天的时间。你会因为各种外在原因和内在情绪,而使一天不能全心全意投入到学习中,你会效率很低、进度很慢。
所以,你应该对自己有所评估,对预计的效果有所估计,并且给予自己适当的奖励,以便能够获得学习之外的成就感,免得你失去信心、产生厌倦。你也应该将自己的成果有所展示,使自己觉得有所成就,通过与同业人员交流、在网络上分享等方式获得此项成就感。

总之,你得不断地想办法鼓励自己、诱惑自己。因为就算说出花儿来,学习也永远是世界上最枯燥的事情——越是知道的多就越是知道自己无知,懂得越多的人越会无名恐慌,从而否定自己。

五、总结
那么,计划就是这些。在写这文章的时候,我也是刚打算进行这种尝试。这也正是我文中提过的:要不断鼓励自己,通过分享等方式。祝大家学习愉快。

优秀开源软件学习系列(一)——从零学习Spring4以及学习方法分享的更多相关文章

  1. Windows系统下三十款优秀开源软件

    Windows系统下三十款优秀开源软件 1.Firefox 官方网站:http://www.getfirefox.com/ 可替换Internet Explorer 功能特点:如果你还没有使用Fire ...

  2. php优秀框架codeigniter学习系列——CI_Output类的学习

    这篇文章主要介绍CI核心框架工具类CI_Output. 根据CI文档自己的定义,这个类主要就是生成返回的页面给浏览器.以下选取类中的重点方法进行说明. __construct() 在构造函数中,主要确 ...

  3. [易学易懂系列|rustlang语言|零基础|快速入门|(1)|开篇]

    今天我们来开一个新系列. 从零学习rustlang. 简单介绍下rustlang: Rust 是一门系统级编程语言,被设计为保证内存和线程安全,防止段错误产生.作为系统级编程语言,它的基本理念是 “零 ...

  4. JAVA开源软件的技术选型--开源软件诞生2

    技术准备--第2篇 用日志记录“开源软件”的诞生 赤龙ERP开源地址,点亮星标,支持一下,万分感谢 码云:https://gitee.com/redragon/redragon-erp github: ...

  5. C#学习系列-文章导航

    C#学习系列-.NET体系结构 C#学习系列-类与结构的区别 C#学习系列-String与string的区别 C#学习系列-抽象方法与虚拟方法的区别 C#学习系列-out与ref的区别 C#学习系列- ...

  6. MyBatis学习系列一之环境搭建

    目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 学习一个新的知识,首先做一个简单的例子使用一下,然后再逐步深入.MyBat ...

  7. SQL Server 学习系列之六

    SQL Server 学习系列之六 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...

  8. SQL Server 学习系列之五

    SQL Server 学习系列之五 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...

  9. SQL Sever 学习系列之三

    SQL Sever 学习系列之三 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题)         五.经理今天刚谈到with的用法(with的 ...

随机推荐

  1. mysql基础之yum安装mysql5.7.18

    2017-04-19 一.实验环境 centos7_x64 由于centos7的yum源里默认使用了mariadb替代了mysql,所有我们还得先配置一下yum源.当然mariadb和mysql是兼容 ...

  2. javascript面向对象个人理解

    1. javascript面向对象特性:抽象性,封装性,继承性: 2. js中的对象:键值对的集合:比如说{key:value} 3.抽象性:用一个对象描述一个数据,需要抽取这个对象的核心数据:两个必 ...

  3. 《JavaScript高级程序设计》 -- 基本概念(一)

    之前看过好几遍<JavaScript高级程序设计>这一书,但是始终没有完完整整的看过一遍.从现在开始我会把它完整的啃一遍,每章节都记录笔记,自己的心得,加油! 由于前三章的内容比较简单,因 ...

  4. 虚拟机Linux系统下配置网络

    虚拟机上安装Redhat9.0后是没有网络的,而本来的Windows系统是可以上网的,此时想在Redhat上网就需要在Linux系统上配置网络,以下是笔者自己配置的一点心得. 1.电脑本机系统打开网络 ...

  5. STK卫星工具箱下载

    简介 STK的全称是Satellite Tool Kit(卫星工具箱),STK/Pro 9.0最新出品,完整版,是由Analytical Graphics公司开发的一款在航天工业领域中处于绝对领先地位 ...

  6. Java 9 揭秘(16. 虚拟机栈遍历)

    Tips 做一个终身学习的人. 在本章中,主要介绍以下内容: 什么是虚拟机栈(JVM Stack)和栈帧(Stack Frame) 如何在JDK 9之前遍历一个线程的栈 在JDK 9中如何使用Stac ...

  7. (转)Memcached 在windows下的java使用

    Memcached 在windows下的java使用   研究这个东东主要是为了解决在教务管理中选课系统的大并发情况下数据库频繁读写造成速度慢的问题,但要使用WEB服务器的内存,是不是可靠还需要验证, ...

  8. 初学安卓开发随笔之 Intent 用法

    首先,对于安卓开发,目前世界上流行的是使用的是Android studio 2.0 .(hh 学着来呗 书上说用这个,,) 今后就定一个计划 每天更新一个Android 随笔,增强一下自控力吧!!! ...

  9. cesium根据经纬度计算距离

    var startLatitude = 36;var startLongitude = 120; var endLatitude=34; var endLongitude=121; var start ...

  10. js常用内置对象及方法

    在js中万物皆对象:字符串,数组,数值,函数...... 内置对象都有自己的属性和方法,访问方法如下: 对象名.属性名称: 对象名.方法名称 1.Array数组对象 unshift( )    数组开 ...