上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 28 下一页

2013年8月30日

技术人生:都是我的错

摘要: 我承认都是我的错,明明是可以写的更好,因为害怕风险而不敢重构,抑或是源于自己的懒惰。每份任务都可以做的更好,用心去做,应付就是浪费生命。行动起来,这就去修改! 阅读全文

posted @ 2013-08-30 11:13 幸福框架 阅读(151) 评论(0) 推荐(0) 编辑

2013年8月29日

Silverlight:《Pro Silverlight5》读书笔记 之 XAML

摘要: XAMLProperties and Events in XAMLSimple Properties and Type ConvertersTo bridge the gap between string values and nonstring properties, the XAML parser needs to perform a conversion. The conversion is performed by type converters, a basic piece of infrastructurethat’s borrowed from the full .NET Fra 阅读全文

posted @ 2013-08-29 14:20 幸福框架 阅读(525) 评论(0) 推荐(0) 编辑

2013年8月28日

DDD:四色原型中Role的 “六” 种实现方式

摘要: 背景一个实体在不同的上下文中具备不同的职责,如:产品在“生产完成上下文”中具备的一些职责,在“质检相关上下文”中具备另外一些职责。四色原型、DIC和“UML事物模式”在不同的维度阐述了这一情况,在代码层面到底该如何表达呢?本文给出了一些思路。六种实现方式因为:MI(Manufacture和QualityTesting)和Context(ManufactureContext、QualityTestingBeginningContext和QualityTestingCompletingContext)都是空实现且每种风格中的代码都一样,后面只给出跟PPT和Role相关的代码。第一种:未显式体现角色 阅读全文

posted @ 2013-08-28 08:15 幸福框架 阅读(3375) 评论(1) 推荐(1) 编辑

2013年8月27日

.NET:脏读、不可重复读和幻读测试

摘要: 背景昨天才发现如果一条数据被A事务修改但是未提交,B事务如果采用“读已提交”或更严格的隔离级别读取改数据,会导致锁等待,考虑到数据库默认的隔离级别是“读已提交”,在嵌套事务 + 子事务中有复杂的SQL查询,很可能会出现死锁,后面会给出嵌套事务导致死锁的示例。先来看看:脏读、不可重复读和幻读。脏读原因当B事务在A事务修改和提交之间读取被A事务修改的数据时,且B事务,采用了“读未提交”隔离级别。重现和避免测试代码 1 public static void 脏读测试() 2 { 3 Console.WriteLine("\n**********... 阅读全文

posted @ 2013-08-27 09:23 幸福框架 阅读(4835) 评论(3) 推荐(3) 编辑

2013年8月26日

AIR:使用 HTML + Javascript 开发桌面应用

摘要: 背景断断续续用Winform和WPF开发过一些小工具,始终不得其法门,在玩Flex的时候就接触过AIR,最近发现可以用HTML + Javascript开发AIR应用,本文就尝试一下(Hello,World)。什么是AIR?AIR本质上是一个浏览器(Webkit),这个浏览器可以从本机加载静态资源文件,可以受限的访问本机资源。环境准备AIR SDK下载:Adobe AIR SDK。注意:解压后记着设置Path环境变量。运行效果开发过程目录结构应用程序描述符官方教程:http://help.adobe.com/en_US/air/build/WS5b3ccc516d4fbf351e63e3d11 阅读全文

posted @ 2013-08-26 08:55 幸福框架 阅读(7793) 评论(9) 推荐(2) 编辑

2013年8月25日

Silverlight:《Pro Silverlight5》读书笔记 之 Layout

摘要: LayoutThe Layout ContainersThe Panel BackgroundBy default, the Background of a layout panel is set to a null reference, which is equivalent to this:1 When your panel has a null background, any content underneath will show through (similar to if you set a fully transparent background color). However, 阅读全文

posted @ 2013-08-25 14:21 幸福框架 阅读(326) 评论(0) 推荐(0) 编辑

2013年8月24日

设计原则:什么样的情况下需要引入父类?

摘要: 背景什么样的情况下需要引入父类?这就是今天的话题,也是对昨天的文章(设计原则:不要为了复用而使用继承)的一个补充。让我们站在抽象的角度思考这个问题,下面两幅图片是我们讨论的上下文。设计1设计2为什么引入了两个父类(Base2和Base3)?为了复用实现面对这个问题,我可能给出的一种回答是:A和B为了复用方法(行为)或数据(状态),如果我接受这个答案,那么如何应对“B和C之间的复用”,很多语言都是单实现继承的,这说明复用实现不是继承的本质原因,我对这个答案不够满意,继续思考。为了引入抽象如果我给出的答案是:为了引入抽象,这个答案本身就够抽象了,估计会被很多人批评(期望被批评),先让我简单的解释一 阅读全文

posted @ 2013-08-24 17:53 幸福框架 阅读(1134) 评论(3) 推荐(2) 编辑

2013年8月23日

设计原则:不要为了复用而使用继承

摘要: 背景今天上午和以为朋友聊了一个设计问题:如何消除仓库相关的单据的Repository中的重复逻辑?如:入库单Repository和出库单Repository之间的重复。可以有很多方式消除重复,在不同级别消除重复,如:继承、组合、掺入、帮助类、帮助方法。本文只说出我的观点:不要为了复用而使用继承。为什么要得出这个结论:在单实现继承模型下,你复用了一个基类的实现,就不能复用其它基类的实现了,接口继承 + 扩展类型(Mixin)可以很好的解决这个问题。设计的演化下面我会演示:待重构的重复代码-》用继承消除重复-》用扩展类(Mixin)消除重复-》Ruby的鸭子类型 + Mixin的实现(元编程可以更 阅读全文

posted @ 2013-08-23 13:11 幸福框架 阅读(3500) 评论(13) 推荐(3) 编辑

2013年8月22日

Ruby:字符集和编码学习总结

摘要: 背景Ruby直到1.9版本才很好的支持了多字节编码,本文简单总结了今天学习的关于Ruby编码方面的知识。字符串可以使用不同的编码在.NET中字符串的编码是一致的,Ruby允许字符串有不同的编码,当时我就在想:如果两个不同编码的字符串相加会出现什么结果?测试程序 1 # coding: utf-8 2 3 str_utf8 = "hi 段" 4 puts str_utf8.size # 4 5 puts str_utf8.bytesize # 6 6 puts str_utf8 ... 阅读全文

posted @ 2013-08-22 23:59 幸福框架 阅读(9329) 评论(0) 推荐(2) 编辑

2013年8月21日

.NET:字符集和编码学习总结

摘要: 背景一直没有深入的学习字符集和编码的知识(现在也没有深入),今天查阅了一些资料,弄明白了一些事情,本文就简单记录一下。字符集和编码字符集是指一些符号组成的集合,编码是对指定字符集如何表示为字节的一种规则,一个字符集可以由多种编码。参考文章:http://www.cnblogs.com/skynet/archive/2011/05/03/2035105.html。.NET支持多少种编码?默认编码是什么?测试程序1 public static void 打印所有编码规则总数()2 {3 Console.WriteLine(string.For... 阅读全文

posted @ 2013-08-21 23:10 幸福框架 阅读(2830) 评论(4) 推荐(5) 编辑

2013年8月20日

Ruby:Sublime中开发Ruby需要注意的Encoding事项

摘要: 背景最近在用Sublime作为开发环境学习Ruby,本文就记录一下Ruby和Sublime在编码方面的问题。Sublime相关默认的文件存储编码:UTF8Sublime文件默认存储编码为UTF8,我们几乎不用修改这个选项。默认的输出控制台编码:UTF8在按快捷键【Control + B】执行代码的时候,所有输出都会被Python(Sublime是用Python开发的)接收,然后输出到控制台,输出的字符串编码必须是UTF8编码。修改默认的输出控制台编码注意:开发Ruby是不用修改这个文件的。第一步:找到D:\Program Files\Sublime Text 2\Pristine Packag 阅读全文

posted @ 2013-08-20 23:57 幸福框架 阅读(4169) 评论(0) 推荐(1) 编辑

2013年8月19日

.NET:遇到并发问题,什么样的情况下需要自动重试?

摘要: 背景多用户系统会出现并发问题,应对并发问题的两种方式是“悲观锁”和“乐观锁”,多数情况下都会采用“乐观锁”,这引发了一个问题,如果检查出乐观并发异常如何重试?是让最终用户手工重试?还是让系统自动重试?如何做出这个决策?本文就给我的一点想法。想法虽小,记下来不容易忘。何时选择:让最终用户手工重试如果并发修改涉及的数据是用户直接参与修改的,就让用户手工重试。注:因为用户重试一般是另外一个独立的请求,编程上比较容易处理,服务器只需要抛出并发异常即可。何时选择:让系统自动重试如果并发修改涉及的数据不是用户直接参与修改的,就让系统自动重试。注:因为自动重试是在一个独立的请求,编程上需要注意一个问题:自动 阅读全文

posted @ 2013-08-19 18:07 幸福框架 阅读(1752) 评论(2) 推荐(4) 编辑

2013年8月18日

博客美化测试

摘要: 一级标题二级标题三级标题四级标题内容1 var x = 1;2 var y = 2;3 Console.WriteLine(x + y);美化用的CSS 1 #cb_post_title_url 2 { 3 display: block; 4 margin-bottom: 20px; 5 border-bottom: 3px solid #567286; 6 padding: 15px 0px; 7 font-family :"微软雅黑"; 8 font-size: 18px; 9 color: black... 阅读全文

posted @ 2013-08-18 09:35 幸福框架 阅读(556) 评论(1) 推荐(0) 编辑

2013年8月17日

PHP:面向对象学习笔记,重点模拟Mixin(掺入)

摘要: 背景相对于Python、Node和Ruby来说PHP算是一门容易学习和使用的语言,因为这个特点也使其成为WEB开发领域的佼佼者,本文记录一下我对PHP面向对象部分的学习笔记。先来一个复杂的例子:Mixin(掺入)Ruby和Python可以用非常漂亮的语法支持掺入,PHP能实现吗?让我们试试吧。参考其他语言的掺入示例可以查看这篇文章:设计原则:请重新审视“多重继承”,找机会拥抱一下“掺入(Mixin)”。PHP5.4提供的有Traits机制可以方便的模拟掺入,下面的示例是采用5.3版本的机制模拟出来的。期望的最终效果 1 class Playable 2 { 3 public funct... 阅读全文

posted @ 2013-08-17 09:48 幸福框架 阅读(2504) 评论(1) 推荐(0) 编辑

2013年8月16日

Python:开发Sublime插件,方便PHP开发

摘要: 背景最近在学习PHP,开发环境选择了Sublime2,开发过程发现执行PHP程序非常不方便,需要自己在浏览器中输入路径以进行调试,这点不如Dreamweaver好使,好在Sublime可以支持插件,自己开发也非常简单。Sublime插件开发:Open In Browser最终的目标是使用快捷将当前编辑的php页面显示在浏览器中,让我们一步一步来。第一步:【Tools->New Plugin...】 1 import sublime, sublime_plugin 2 import webbrowser 3 4 url_map = { 5 'E:\\Coding\\HappyStu 阅读全文

posted @ 2013-08-16 09:03 幸福框架 阅读(4468) 评论(5) 推荐(3) 编辑

2013年8月15日

Python:高级主题之(属性取值和赋值过程、属性描述符、装饰器)

摘要: 背景学习了Javascript才知道原来属性的取值和赋值操作访问的“位置”可能不同、还有词法作用域这个东西,这也是我学习任何一门语言会注意的两个知识点,Python的作用域和Javascript几乎一致,这里就不做解释,本文重点介绍一下三个概念:属性取值和赋值过程属性描述符装饰器本文最好会利用这些知识介绍:如何实现自定义的@staticmethod和@classmethod。属性取值和赋值过程一切皆是对象,类型也是对象。对象包含一个__class__属性指向其所属类型。对象包含一个__dict__属性指向其所包含的成员(属性和方法)。取值过程(下面是伪代码) 1 __getattribute_ 阅读全文

posted @ 2013-08-15 17:57 幸福框架 阅读(8929) 评论(4) 推荐(8) 编辑

Python:Python学习总结

摘要: 背景PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#、@、@@也好不到哪里(OO人员最该学习的一门语言)。Python应该是写起来最舒服的动态语言了,一下是一些读书笔记,最后会介绍一下高级的用法:Mixin、Open Class、Meta Programming和AOP。文中有些地方是用2.7开发的,如果您安装的是3.x,有几点需要注意:print "xxx" 要换成 print("xxx")__metaclass__ = type 删除掉。类型和表达式部分你好,世界!1 # coding=utf-82 3 阅读全文

posted @ 2013-08-15 09:05 幸福框架 阅读(76555) 评论(59) 推荐(95) 编辑

2013年8月14日

ASP.NET MVC:会导致锁定的会话

摘要: 背景一直没有意识到会话的访问会导致会话锁定,现在想想这样设计是非常合理的,不过某些情况下这样会导致同一个会话的并发访问非常低(只能串行化),好在MS提供了机制让我们控制这种锁。测试A页面:缓存写入页面1 public partial class Session_Lock_Test : System.Web.UI.Page2 {3 protected void Page_Load(object sender, EventArgs e)4 {5 this.Session["Data"] = DateTime.Now;6 7 ... 阅读全文

posted @ 2013-08-14 08:39 幸福框架 阅读(3216) 评论(6) 推荐(4) 编辑

2013年8月13日

技术人生:节奏很重要

摘要: 人生是一个马拉松,不可着急,保持节奏即可。找准目标,享受过程,消费结果,然后重新找目标。准备Coding一辈子。 阅读全文

posted @ 2013-08-13 21:39 幸福框架 阅读(234) 评论(0) 推荐(0) 编辑

2013年8月12日

PHP:执行模型和内存模型

摘要: 背景对于任何一种语言,了解其执行模型和内存模型都是有意义的,本文中的内容不见得正确,请多批评。执行模型每个请求都是一个独立的PHP进程,两个请求之间会完全隔离,会话和Cookie是通过其他机制在多个请求之间实现数据共享,像静态变量和全局属性这些会在每个请求中重新初始化。示例1 ';6 ?>结果2 //无论刷新多少次请求,结果都是2。内存模型基本规则以下是PHP的内存管理规则:默认按值传递。必须显式的声明按引用传递。对象类型的值是对象的地址。1 $symbol = value;其中:symbo是符号,存放在符号表中(全局符号表或活动符号表),value是符号引用的值。1 $symb 阅读全文

posted @ 2013-08-12 21:34 幸福框架 阅读(4887) 评论(7) 推荐(1) 编辑

上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 28 下一页

导航

我要啦免费统计