书籍进度

本书目前已经开始发行 beta 版,完成进度约 70%。
(我希望这本书不要超过 200 页,目前看起来应该没问题。)

简介

本书内容是关于 .NET 相依性注入(dependency injection;简称 DI)的相关议题。透过本书,您将会了解:

  • 什么是 DI、它有什么优点、何时使用 DI、以及可能碰到的陷阱。
  • 如何运用 DI 应付容易变动的软体需求,设计出更弹性、更好维护的程式码。
  • 与 DI 有关的设计模式。
  • DI 于 .NET 应用程式中的实务应用,包括 ASP.NET MVC、ASP.NET Web API 等等(本书第五章还深入剖析了 Web API 的管线架构)。
  • 如何使用 DI 容器(例如 Unity)来协助开发宽松耦合的应用程式。

本书的范例皆以 C# 撰写,读者无须具备任何 DI 背景知识。

本書目录

请注意:本书仍在 beta 阶段,这表示内容还会持续更新(已经购买的朋友会收到更新通知,并下载新版本)。

试阅章节

您可至本书主页https://leanpub.com/dinet-s)免费下载试阅章节,如下图所示。

主页除了下载试阅章节,另外还提供了订阅出版通知以及读者意见回馈的功能。

试阅章节只提供 PDF 档案。购买此书的读者则可下载 PDF、给平板用的 EPUB 档案、以及给 Kindle 用的 MOBI 档案。

如何购买

先到 leanpub.com 注册一个使用者账号,然后利用此账号来买书。

请注意:注册账号时填写的 e-mail 必须是有效的!这很重要,因为往后的书籍改版通知讯息都会发送到这个 e-mail 地址。

接着,请至本书网址在线购买:https://leanpub.com/dinet-s

目前有折扣活动至八月底,直接点这个连结即可折抵美金 $2.0 元:https://leanpub.com/dinet-s/c/sY5ktjGqRpMv

底下是結帳頁面(恕我偷懒,直接使用繁体中文版的截图):

Leanpub 平台有提供读者 45 天的鉴赏期。购买之后,45 天内如果后悔,可利用平台本身的功能来退还书籍与书款。所以,那个[Buy Now]按钮请放心地点下去吧! ^_^

最后,如果是信用卡付款,就在网页下方接着填入相关资料,如下图:

如果是 PayPal 付款,您有两个选择:

  1. 直接使用您的 PayPal 账户来结账。
  2. 或者,若您其实没有 PayPal 帐户,那么PayPal 结账功能本身也提供信用卡付款的功能。但请注意,PayPal 结账页面的信用卡付款功能页面中的 e-mail 字段必须填写有效的 e-mail 地址!

更新通知

订购此书时,只要有输入 e-mail 地址,将来有新版本发布时,您就会收到更新通知和下载连结。

下载范例程式与补充资料

本书的完整范例程式与相关补充资料都放在 github 网站上。网址如下:
https://github.com/huanlin/di-book-support

 
 

.NET 相依性注入的更多相关文章

  1. TDD学习笔记【四】--- 如何隔离相依性 - 基本的可测试性

    前言 相信许多读者都听过「可测试性」,甚至被它搞的要死要活的,还觉得根本是莫名其妙,徒劳无功.今天这篇文章,主要要讲的是对象的相依性,以及对象之间直接相依,会带来什么问题.为了避免发生因相依性而导致设 ...

  2. TDD学习笔记【五】一隔绝相依性的方式与特性

    前言 在上一篇文章中,提到了如何通过 IoC 的设计,以及 Stub Object 的方式,来独立测试目标对象. 这一篇文章,则要说明有哪些设计对象的方式,可以让测试或需求变更时,更容易转换. 并说明 ...

  3. Spring.net 学习IOC------属性注入

    我们就完成我们的第一个spring.net学习IOC的"hello world!". 1> 我们新建一个C# 的控制台项目名为Spring,然后引入Spring.Core.d ...

  4. spring4-2-bean配置-2-属性注入细节

    配置 bean,本章节中主要介绍蓝色文字部分. 配置形式:基于 XML 文件的方式:基于注解的方式 Bean 的配置方式:通过全类名(反射).通过工厂方法(静态工厂方法 & 实例工厂方法).F ...

  5. spring-属性注入(外部bean方式)

    xml的配置如下<bean id="userService" class="com.spring5.service.UserService"> &l ...

  6. [書訊]《.NET 依賴注入》 (2014-12-08 更新)

    书 名:.NET 依赖注入 页 数:235 格 式:PDF.EPUB.MOBI难易度:中阶至进阶出版日期:2014 年 12 月 8 日ISBN:9789574320684 简介 本书内容是关于 .N ...

  7. ASP.NET Web API Controller 是怎么建成的

    先看ASP.NET Web API 讯息管线: 註:为了避免图片太大以至于超过版面,上图中的「HTTP 讯息处理程序」区块省略了 HttpRoutingDispatcher 处理路由分派的部分.「控制 ...

  8. Spring 中设置依赖注入

    package com.ysq.vo; public class User { private int uid; private String uname; private String pwd; p ...

  9. 关于MySQL注入漏洞到获取webshell

    关于PHP网站报错性注入拿shell的方法,定位到报错在某个字段上的利用方式: 条件1: 爆出了网站的物理路径 条件2:MySQL具有into outfile权限 SQL语句为: 假如字段为2: un ...

随机推荐

  1. atitit.为什么技术的选择方法java超过.net有前途

    atitit.为什么技术的选择方法java超过.net有前途 #----有没有法律依据不同的铜需求... 通常有开发效率,需要在稳定性.. 笔者 老哇爪 Attilax 艾龙,  EMAIL:1466 ...

  2. 飞天熊猫游戏源代码android文本

    这款游戏是前一段时间完毕的一个项目,飞行熊猫游戏源代码android版.飞行熊猫基于cocos2d游戏引擎开发.包含了谷歌admob广告支持,没有不论什么版权问题.大家能够自由改动和上传应用商店. 1 ...

  3. 彩色图像上执行Mean Shift迭代搜索目标 ,维加权直方图 + 巴氏系数 + Mean Shift迭代

    今天要给大家分享的是: 在彩色图像上进行Mean Shift迭代搜索目标 二维加权直方图+巴氏系数+Mean Shift迭代 关于 加权直方图.巴氏系数.Mean Shift迭代 这三者之间的关系请大 ...

  4. linux awk命令详细使用方法

    简单介绍 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部 ...

  5. Oracle 11g XE 是 Oracle 数据库的免费版本

    Oracle 11g XE 是 Oracle 数据库的免费版本,支持标准版的大部分功能,11g XE 提供 Windows 和 Linux 版本. 做为免费的 Oracle 数据库版本,XE 的限制是 ...

  6. Putty是一个专业的SSH连接客户端

    http://www.putty.ws/PuTTY-LinuxVPS Putty是一个专业的SSH连接客户端,当然可以用来连接Linux操作系统的VPS.下文是Putty连接工具的使用方法与详细教程, ...

  7. SQL Server编程系列(2):SMO常用对象的有关操作

    原文:SQL Server编程系列(2):SMO常用对象的有关操作 在上一篇周公简单讲述了SMO的一些基本概念,实际上SMO体系结构远不止周公在上一篇中讲述的那么简单,下图是MSDN上给出的一个完整的 ...

  8. 【足迹C++primer】47、Moving Objects(1)

    Moving Objects(1) * 功能:Moving Objects * 时间:2014年7月17日08:46:45 * 作者:cutter_point */ #include<iostr ...

  9. (c#)SKYPE API项目总结(一)

    原文:(c#)SKYPE API项目总结(一) 这个项目的需求:SKYPE软件文字聊天同步翻译,并将翻译后的内容会发送给对方,将对方发给自己的话翻译成自己语种.功能见图:               ...

  10. SDUT 1124-飞跃荒野(三维BFS)

    飞跃原野 Time Limit: 5000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描写叙述 勇敢的法里奥出色的完毕了任务之后.正在迅速地向自己的基地撤退.但因为 ...