写在前面:

  话说这天小迦罗在和哑圣观察者聊天时,哑圣谈到自己比较喜欢吃羊,这时候小迦罗说自己的爸爸也喜欢吃,就给哑圣老师讲了他小时候在春天里放羊的故事还有参观Spring的事情。(后面以此抛砖引玉可以展开Spring和设计模式的关系)

  在迦娃小的时候,迦娃的爸爸喜欢吃羊肉,就在家里养了几只羊, 迦娃便成了放羊娃。说是放羊娃,但其实他只放过一个春天的时间。在放羊的日子里,迦娃发现,只要头羊去哪里吃草,众羊就跟着去。他觉得这个现象很有趣,就管他叫羊群理论。眼看周围的孩子都已经上学了。迦父迦母也觉得迦娃已经过了愉快的童年,且学习能力挺强,是该进学校进行学习了。往后的日子无论是寻找养羊,放羊,圈养羊,杀羊,处理杀后的羊都要自己干,迦父没有那么多时间,就打算不再自己养羊了。(这里隐喻在没有 Spring以前,程序员们要自己new 对象,自己管理对象依赖。)

  正巧,迦父有一位朋友一直在从事养羊的工作。这位朋友告诉父亲,在孔孟的故乡济宁那里最新建立的超级养羊基地,我这里有两张门票,你们可以去观察。迦父便带了迦罗去参观这座超级基地-地。想必各位看官已经猜到了,这座基地就叫做Spring。呵,来参观的人还真不少。

Tip:时间线定位在2222年,此时的学校已经变革(6岁上小学一年级迦娃已经算晚,义务教育也从基础的12年压缩到了6年,也就是说在21世纪初期花费12年才能上完高中,现在只需要6年。在22世纪的早20年里,知识的爆炸已经远远超越自人类起源到21世纪结束的所有总和,这个时候,大家的职务分工更加精细,加上小孩子都变的非常聪明,所以基础教育着力发现孩子的兴趣所在,然后在这一个点上进行长足培养。)

第二卷 Spring羊群理论的更多相关文章

  1. 第二卷 第一章 伪IOC容器--羊墅

    写在前面: Spring自诞生起,就被人称作“万能胶”,核心服务就是解耦 ,随着Spring5的出现,已经形成一个生态,被人称作spring全家桶,而且逐步在去serlvet化,去tomcat化,大有 ...

  2. QML 从入门到放弃 第二卷

    第二卷如何更快速的放弃,注重的是C++和QML的交互 <1>记事本.. (1) 先测试下不在QML创建C++对象,仅仅在main.cpp添加一个属性函数供调用. 注意只使用槽函数来做到. ...

  3. 第二个spring

    由于第一个spring已经完成,我们现在进去第二个spring! 陈志棚:成绩的统筹 李天麟:界面音乐 徐侃:代码算法   plan好布局,分配任务,控制时间!

  4. Spring学习指南-第二章-Spring框架基础(完)

    第二章 Spring框架基础 面向接口编程的设计方法 ​ 在上一章中,我们看到了一个依赖于其他类的POJO类包含了对其依赖项的具体类的引用.例如,FixedDepositController 类包含 ...

  5. Spring AOP 理论

    一.AOP AOP 产生的背景 “存在即合理”,任何一种理论或技术的产生,必然有它的原因.了解它产生的背景.为了解决的问题有助于我们更好地把握AOP的概念. 软件开发一直在寻求一种高效开发.护展.维护 ...

  6. c++学习书籍推荐《C++编程思想第二卷》下载

    百度云及其他网盘下载地址:点我 编辑推荐 <C++编程思想>(第2卷)是惟一一本如此清晰地阐述如何重新思考以面向对象方法构造程序的书籍.<C++编程思想>(第2卷)介绍实用的编 ...

  7. spring——IOC理论

    这里主要是对于IOC理论提出的一个认识 dao接口 public interface Fruit { String getFruit(); } dao接口的实现类 public class Fruit ...

  8. 第二章 spring

    一.Bean作用域 spring容器创建的时候,会将所有配置的bean对象创建出来,默认bean都是单例的.代码通过getBean()方法从容器获取指定的bean实例,容器首先会调用Bean类的无参构 ...

  9. [翻译]Spring框架参考文档(V4.3.3)-第二章Spring框架介绍 2.1 2.2 翻译--2.3待继续

    英文链接:http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/overview.ht ...

随机推荐

  1. Heap Partition ZOJ - 3963(贪心)

    ZOJ - 3963 贪心做一下就好了 反正别用memset #include <iostream> #include <cstdio> #include <sstrea ...

  2. placeholder中文字添加换行方法

    需求: 文本域内的提示文字两行显示 解决方案: 表示回车 表示换行 <textarea id="textarea" maxlength="22" plac ...

  3. 集合源码分析[3]-ArrayList 源码分析

    历史文章: Collection 源码分析 AbstractList 源码分析 介绍 ArrayList是一个数组队列,相当于动态数组,与Java的数组对比,他的容量可以动态改变. 继承关系 Arra ...

  4. 小白月赛13 小A的柱状图 (单调栈)

    链接:https://ac.nowcoder.com/acm/contest/549/H来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...

  5. 查看macOS下正在使用的zsh

    使用dscl . -read /Users/$USER UserShell查看 如果你的结果是/bin/zsh,又恰巧用brew安装了zsh的话,那么你可能就白安装了 将brew安装的zsh添加到/e ...

  6. python第十一天

    今日内容 1. 函数的参数 2. 函数对象 -- 函数名  * * * *重点! 3. 函数 的嵌套调用 1. 形参与实参: 函数介绍: 1.1  函数为什么要有参数: 因为内部的函数体需要外部的数据 ...

  7. pandas的读写

    import as pd import numpy as np import matplotlib.pyplot as plt #df.to_excel('C:Users/history/Deskto ...

  8. android studio 报红解决

    /Users/houzhibin/gradle/wrapper/dists/gradle-4.1-all/bzyivzo6n839fup2jbap0tjew/gradle-4.1-all.zip

  9. SQL Server数据库中表的查

    DataSet 数据集 DataAdapter 数据适配器,DataSet对象与实际数据源之间的桥梁,自动开闭数据库连接,省略Open.Close.填充数据集,需要用到Fill方法. using Sy ...

  10. Linux,Ubuntu,Mint 环境下 navicat 乱码问题

    1. 官方下载好以后,进入目录 执行 ./start_navicat  可以启动软件. 2. 如果有乱码,首先,使用编辑器打开 start_navicat ,比如 vim start_navicat ...