优秀开源软件学习系列(一)——从零学习Spring4以及学习方法分享
一、目的
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以及学习方法分享的更多相关文章
- Windows系统下三十款优秀开源软件
Windows系统下三十款优秀开源软件 1.Firefox 官方网站:http://www.getfirefox.com/ 可替换Internet Explorer 功能特点:如果你还没有使用Fire ...
- php优秀框架codeigniter学习系列——CI_Output类的学习
这篇文章主要介绍CI核心框架工具类CI_Output. 根据CI文档自己的定义,这个类主要就是生成返回的页面给浏览器.以下选取类中的重点方法进行说明. __construct() 在构造函数中,主要确 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(1)|开篇]
今天我们来开一个新系列. 从零学习rustlang. 简单介绍下rustlang: Rust 是一门系统级编程语言,被设计为保证内存和线程安全,防止段错误产生.作为系统级编程语言,它的基本理念是 “零 ...
- JAVA开源软件的技术选型--开源软件诞生2
技术准备--第2篇 用日志记录“开源软件”的诞生 赤龙ERP开源地址,点亮星标,支持一下,万分感谢 码云:https://gitee.com/redragon/redragon-erp github: ...
- C#学习系列-文章导航
C#学习系列-.NET体系结构 C#学习系列-类与结构的区别 C#学习系列-String与string的区别 C#学习系列-抽象方法与虚拟方法的区别 C#学习系列-out与ref的区别 C#学习系列- ...
- MyBatis学习系列一之环境搭建
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 学习一个新的知识,首先做一个简单的例子使用一下,然后再逐步深入.MyBat ...
- SQL Server 学习系列之六
SQL Server 学习系列之六 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...
- SQL Server 学习系列之五
SQL Server 学习系列之五 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...
- SQL Sever 学习系列之三
SQL Sever 学习系列之三 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) 五.经理今天刚谈到with的用法(with的 ...
随机推荐
- 微信开发之获取jsapi_ticket
一.获取流程 1.获取 access_token 2.通过access_token换取 jsapi_ticket 3.签名算法 签名生成规则如下:参与签名的字段包括noncestr(随机字符串), 有 ...
- gulp实用配置(2)——中小项目
上一篇的gulp配置很简单,主要就是为了demo的查看和调试,这一篇则会相对详细一些,包括压缩合并打时间戳等. 在互联网环境比较好的城市,需要多人协作的,大一点的项目应该都用上了模块化(这里主要指co ...
- eclipse打开时提示:failed to create the java virtual machine
Eclipse打开时提示: failed to create the java virtual machine 原因:C盘空间不够 编辑删除 处理:1.用金山清理临时文件: 2.用金山手机卫士连接 ...
- xtrabackup备份mysql数据库的使用方法
xtrabackup是由percona提供的mysql备份工具,它是一款物理备份工具,通过连接数据库把数据库的数据备份出来.对于innodb存储引擎其支持全量备份和增量备份.对于myisam存储引擎只 ...
- Java语言的9个主要特性
Java作为时下很流行的一门编程语言,受到很多人的热爱,那么它有哪些特性呢?一起来看看吧. 1.Java语言是简单的 Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用.另 ...
- PHP运算符知识点
表达式 几乎所写的任何东西都是一个表达式,简单却最精确的定义一个表达式的方式就是"任何有值的东西". 算术运算符 Php中常用的有:+.-.*./.%(取模,得到余数) 左+ - ...
- CJOJ 1308 【HNOI 2002 】营业额统计 / CodeVS 1296 营业额统计(STL,二分)
CJOJ 1308 [HNOI 2002 ]营业额统计 / CodeVS 1296 营业额统计(STL,二分) Description Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一 ...
- Java基础语法<九> 接口与内部类
1 接口 interface implement 接口的所有方法自动地属于public.因此,在接口中声明方法时,不必提供关键字public. 接口可以包含多个方法,接口中可以定义常量.接口中的 ...
- SAN & vSAN & vSAN storage
SAN (storage area network ) 定义: Storage area network (SAN) is a network that primarily connects the ...
- Spring+SpringMVC+MyBatis集成学习笔记【一】
一,首先要清楚,SpringMVC其实就是Spring的一个组件 例如我们知道Spring中有类似于,AOP TX等等类似的组件,所以SpringMVC其实就是Spring的一个组件,是S ...