12 2013 档案

摘要:web Service 三种基本元素: SOAP 、WSDL 、UDDI什么是SOAP: XML+HTTP 基本的Web Service平台 SOAP 简易对象访问协议 ,是一宗用于发送消息的格式,独立于平台,独立于语言,基于XML什么是WSDL: WSDL是基于XML的用于描述Web Service以及如何访问Web Service的语言 WSDL 网络服务描述语言,使用XML编写什么是UDDI: UDDI是一种目录服务 UDDI指通用的描述、发现以及整合,用于存储有关Web Service的信息的目录,由WSDL描述的网络服务接口目录,精SOAP进行通讯 阅读全文
posted @ 2013-12-31 10:04 遥远的守望 阅读(236) 评论(0) 推荐(0) 编辑
摘要:TDD的三个阶段红灯、绿灯、重构 :明确了实施TDD所要遵循的工作流 (需求--->测试-->代码[重构])红灯阶段: 为不存在的代码编写测试绿灯阶段: 仅编写适量的代码以通过测试重构阶段: 重构代码,考虑其可维护性、可读性或代码整体质量 重构测试,对测试进行维护,保持其整洁性 阅读全文
posted @ 2013-12-30 17:32 遥远的守望 阅读(289) 评论(0) 推荐(0) 编辑
摘要:OOP 封装 继承 多态SOLID SRP 单一职责 Single Responsibility Principle OCP 开放封闭 Open/Close Principle LSP 里氏替换 Liskov Substitution Principle ISP 接口分离 Interface Segregation Principle DIP 依赖倒置 Dependency Inversion Principle 阅读全文
posted @ 2013-12-30 17:19 遥远的守望 阅读(128) 评论(0) 推荐(0) 编辑
摘要:用多态替换条件 3中交通工具public class Car : Vehicle{ public int AmountOfFuelNeededToFillTank() { return 12; }}public class Airplane : Vehicle{ public int AmountOfFuelNeededToFillLeftFuelTank() { return 3; } public int AmountOfFuelNeededToFillRightFuelTank() { retur... 阅读全文
posted @ 2013-12-27 15:40 遥远的守望 阅读(183) 评论(0) 推荐(0) 编辑
摘要:封装字段public class Widget{ private object _internalWidgetState; public string _widgetModelNumber;}将成员变量封装在一个字段中public class Widget{ private object _internalWidgetState; public string ModelNumber {get; private set;}} 阅读全文
posted @ 2013-12-27 15:07 遥远的守望 阅读(193) 评论(0) 推荐(0) 编辑
摘要:重命名变量、字段、方法和类public double GetValue(int a,int b){ var answer=(a*a)*b*p; return answer;}同一方法,采用合适的名称命名变量:public double GetVolumeOfACylinder(int radius,int height){ var volumeofACylinder=(radius*radius)*height*Pi; return volumeofACylinder;} 阅读全文
posted @ 2013-12-27 15:02 遥远的守望 阅读(144) 评论(0) 推荐(0) 编辑
摘要:Try/Catch 块过多public Customer GetCustomer(string customerId){ try { var command = new SqlCommand(); var reader = command.ExecuteReader(); var customer = new Customer(); while(reader) { customer.customerId=customerId; customer.CustomerNam... 阅读全文
posted @ 2013-12-27 14:45 遥远的守望 阅读(282) 评论(0) 推荐(0) 编辑
摘要:析取方法public string PlaceOrderForWidgets(int quantity,string customerNumber){ var invoice=new Invoice { InvoiceNumber=Guid.NewGuid().ToString(), TotalPrice=PricePerWidget*quantity, Quantity=quantity }; var customer=_customerService.GetCustomer(customerNumber); invoice.CustomerN... 阅读全文
posted @ 2013-12-27 14:28 遥远的守望 阅读(217) 评论(0) 推荐(0) 编辑
摘要:析取类或接口 将一个类分割为更小、针对性更强的类;从中析取出一系列更精细的接口public class InvoiceService{ public string CreateInvoice(Invoice invoice){...} public string ProcessPayment(Invoice invoice,double amount){...} public double GetAmountOwed(Invoice invoice){...} public double GetTotalAmountInvoiceLastFY(Customer cus... 阅读全文
posted @ 2013-12-27 11:19 遥远的守望 阅读(251) 评论(0) 推荐(0) 编辑
摘要:MSDN, 我告诉你http://msdn.itellyou.cn/挺给力的...windows系列的基本都能找到... 阅读全文
posted @ 2013-12-27 10:00 遥远的守望 阅读(132) 评论(0) 推荐(0) 编辑
摘要:Visual Studio 常用快捷键剪切行 Ctrl+X 习惯当删除来用...格式化文档 Ctrl+E Ctrl+D智能感知 Crtl+J注释 Ctrl+K Ctrl+C当前行上面插入空行 Ctrl+Enter当前行下面插入空行 Ctrl+Shift+Enter插入外侧代码段 Ctrl+K Ctrl+S折叠/展开当前方法 Ctrl+M Ctrl+M折叠所有方法 Ctrl+M Ctrl+O展开所有方法 Ctrl+M Ctrl+L 阅读全文
posted @ 2013-12-25 16:39 遥远的守望 阅读(139) 评论(0) 推荐(0) 编辑
摘要:处理多并发访问的方法是加锁。锁分为两种 悲观锁 和 乐观锁 。悲观锁:假定其他用户企图访问或改变你正在处理的对象,在你看书处理这个对象之前就将该对象锁定,并且直到你提交所有操作之后才释放锁。加锁的时间会很长,会限制其他用户的访问。乐观锁:直到你将提交所有操作时才将该对象锁定,加锁时间相对短,但是如果两个用户都该对象进行操作,一旦一个用户提交操作,那么另一个用户就无进行提交操作,因为原来读取的对象已经发生改变,就不得不重新读取该对象。乐观锁大多是基于版本控制实现的 阅读全文
posted @ 2013-12-25 11:56 遥远的守望 阅读(135) 评论(0) 推荐(0) 编辑
摘要:希望能坚持下来... --hc 阅读全文
posted @ 2013-12-24 20:59 遥远的守望 阅读(59) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示