自己动手编写IOC框架(三)】的更多相关文章

博客创建了2年多了,一直没敢写点东西,怕技术不够误导了别人.2年多后的今天我已经很有信心能够为需要帮助的人做点微薄的贡献了.这是我第一次写博客,先自我介绍一下.本人网名泪滴,一个非常伤心的名字,生活中除了代码一无所有,平时喜欢看开源框架的源码,今天也为开源贡献一份自己的力量. 这次项目叫做IOC框架,是根据spring的IoC的使用风格使用自己的代码实现.项目的目的不是为了推销我的框架,只是为了让目前正在使用IoC和将要使用IoC的小伙伴们对IoC有一个全新的认识,相信泪滴,我不会浪费你们宝贵的…
终于到了激动人心的时刻了,首先感谢小伙伴们的阅读,如果能多点评论,多点探讨就更好了,没有交流让我觉得我写的东西只有标题有点价值,内容只是在浪费大家的时间.为了泪滴下周能写下一个框架orm,请小伙伴们能给点信心.前面3篇中介绍的大都是完成某一个层面的工具式的类,看起来就像是一盘散沙.原因就是缺少一个能够统管这盘散沙的头头,那么这篇内容将会以一个头头的角度告诉大家什么才叫化腐朽为神奇. 我们先回想下spring框架中是否会出现如下类似的代码呢? ApplicationContext context…
刚写博客浏览量第一天就有1000多人次,给了我很大的鼓舞决定熬夜再写一篇.对于前两篇来说无非就是使用dtd验证xml,然后解析xml,和IOC的核心还是差的很远,相信很多小伙伴们都感觉看得不过瘾了,这期我们就进入正题了. 先说说上期有个小伙伴提意见让我把IocUtil类使用反射不要用那么多if-else当时觉得很有道理,但是回来仔细想了下,一般数据类型还是要和其他类型分开不然没法处理,IocUtil代码再次贴上如果有高手觉得可以改动,可以再次给我意见,再次谢谢那位给意见的小伙伴. package…
万事开头难,上篇已经起了一个头,之后的事情相对就简单了.上次定义了框架所需的dtd也就是规定了xml中该怎么写,有哪些元素.并且我们也让dtd和xml绑定在了一起,使dtd对xml的格式进行校验,并且在DocumentHolder中提供了根据xml文件路径获取xml文件的Document对象.这次我们应该把重点转到从document对象中拿到我们所需要的标签Element元素了. 一步步来,我们有了document对象,我们接下来开始从document对象下手,顺便说下本框架项目采用分层思想,一…
My.Ioc 是作者开发的一款开源 IoC/DI 框架,下载地址在此处.它具有下面一些特点: 高效 在实现手段上,My.Ioc 通过使用泛型.缓存.动态生成代码.延迟注册.尽量使用抽象类而非接口等方式来提高框架的性能.如果您想进一步了解通过上面这些手段,我们能够获得怎样的性能,请看这篇文章. 便于扩展 在设计时,可扩展性是作者始终关注的问题之一.My.Ioc 也确实提供了良好的可扩展性.您可以通过以下方式实现扩展: 1. 自定义 Lifetime 实现. 2. 注册自定义 ObjectBuild…
对于一名Java开发人员,我相信没有人不知道 Spring 框架,而且也能够轻松就说出 Spring 的特性-- IOC.MVC.AOP.ORM(batis). 下面我想简单介绍一下我写的轻量级的 Spring 框架(swift-framework),并且进行核心逻辑的分析,和使用说明. 提示:以下有大量图片,可以在新页面查看图片. 目录: 自己动手写Spring框架--IOC.MVC -- 怎么使用 swift-framework 框架 -- 跟着 debug 走流程 自己动手写Spring框…
Spring中的IOC IoC全称是Inversion of Control,就是控制反转,他其实不是spring独有的特性或者说也不是java的特性,他是一种设计思想.而DI(Dependency Injection),即依赖注入就是Ioc的一种实现方式.关于Ioc和DI的具体定义和优缺点等大家可以自行查找资料了解一下,这里就不详细赘述,总之spring的IoC功能很大程度上便捷了我们的开发工作. 在实现我们的Ioc之前,我们先了解一下spring的依赖注入,在spring中依赖注入有三种方式…
前言:对于spring IOC概念不是很了解的朋友可以阅读我上一篇博客--轻松理解spring IOC(这两篇博客也是由于我的个人原因导致现在才发布,惭愧啊).通过这篇博客的理解之后,相信大家会对spring的IOC概念会有进一步的理解.接下来我先预览一下本例中java的类图关系. 解析:我们有一个Master接口,接口中定义了一个WalkDog()遛狗的方法,Hostess是对这个接口的具体实现.然后我们有一个Dog接口,接口中有一个bark()方法,Labuladuo和Taidi是对其的实现…
一.前言 1.基于OWIN的项目摆脱System.Web束缚脱颖而出,轻量级+跨平台,使得ASP.NET应用程序只需依赖这个抽象接口,不用关心所运行的Web服务器. 2.OWIN.dll介绍 使用反编译工具打开Owin.dll,你会发现类库中就只有一个IAppBuilder接口,所以说OWIN是针对.NET平台的开放Web接口. 3.Microsoft.Owin.dll Microsoft.Owin.dll是微软对Owin的具体实现,其中就包括我们今天的主题"中间件".下文将使用代码描…
到眼下位置.afinal开发框架也是用了好几个月了,还记得第一次使用凝视完毕控件的初始化和事件绑定的时候,当时的心情是多么的兴奋- -代码居然能够这样写!然后随着不断的学习,也慢慢的对IOC框架和注解反射等东西有了一点简单的了解.之前的一篇文章简单的介绍了一下Java的反射机制.今天的文章.就完毕一个简单的,基于IOC的小Demo.让大家慢慢的对IOC有一点简单的了解. 首先.什么是IOC呢? 控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来…