12 2009 档案

摘要:今天和同事一起讨论了CQRS(Command Query Responsibility Segregation),过程中,我产生了一些疑问,先记录在这里,以后有解决方案了再说。:) http://blog.jteam.nl/2009/12/21/rethinking-architecture-with-cqrs/ 以下是讨论正文: 发件人: 1B-2-12 胡庆访; 发送时间: 2009年12月31日 12:36收件人: 1B-2-14 穆洪星;3D-1-02 周金根抄送: 1B-2-05 李智; 1B-2-13 孟伟斯主题: 答复: 使用CQRS重新考虑架构 CQRS其实是说在使用DDD的 阅读全文
posted @ 2009-12-31 12:52 BloodyAngel 阅读(1834) 评论(1) 推荐(0) 编辑
摘要:(以下内容转自:个人管理 - 学习的心态) 软区域 印度有一个寓言故事:一个人想步行穿过大陆,但道路布满了荆棘,这时候他有两种选择:铺一条路,征服大自然,或者,准备一双草鞋。 硬区域要求有一个合作的空间让自己正常工作,对应故事的铺路 软区域心平气和的对待事情,适应它并学会使用它,对应故事的草鞋   每个人都想成为架构师、CTO,但是你的工作要求、周围环境、领导者等都有可能是你不能现在选择的,这... 阅读全文
posted @ 2009-12-28 20:27 BloodyAngel 阅读(530) 评论(0) 推荐(0) 编辑
摘要:我不会IL,也不想学IL,所以为了测试Lambda表达式编译的原理,只能使用调试进行试验来认识: 第一种情况,当Lambda表达式没有用到函数外的变量时:class MyClass2{ public Action TestLambda() { Action action = () => { Console.WriteLine(DateTime.Now); }; return action; } public static void Test() { MyClass2 c2 ... 阅读全文
posted @ 2009-12-25 14:15 BloodyAngel 阅读(541) 评论(0) 推荐(0) 编辑
摘要:*职称:《软件架构师》。*英语:6级听力轻松听。一份听力试题,可以做到80分以上。*框架:完善591jj、591jz中框架,发布一个正式版。*学习并完全掌握项目所用框架,精通所用到的技术。另外,还要学习VS2010.=================================================20110103 总结架构师职称对于今年中的最大的任务,中间确实花了不少时间。今年总共有大概10个月的时间为这个目标的完成做准备,但是只有四个月左右的时间在努力冲刺这个目标,其它的时间就利用得不是很好了,比较懒散、不高效。11月的时候已经参加了考试,自我感觉一般偏上:上午试题出了些小失 阅读全文
posted @ 2009-12-24 14:49 BloodyAngel 阅读(933) 评论(4) 推荐(1) 编辑
摘要:预期读者 1. 初学者。 2. 想复习的人。 3. 原来学习并发觉得太复杂,没搞清楚,想以更简单的方式学习的人。 4. 懒得总结的人。 下面,我就以一个比较简单的方式来总结,和你们分享。:)目标 并发控制要做的是协调并发事务的执行,保证数据完整不受破坏,同时避免用户得到不正确的数据。主要目标有以下两个: 1. 保证事务的特性:ACID(Automicity,Consistency,Isolatio... 阅读全文
posted @ 2009-12-22 23:33 BloodyAngel 阅读(2353) 评论(2) 推荐(1) 编辑
摘要:我原来在"这篇总结"中总结过一种的思维方式:TT(Tree-Thinking)。(嘿嘿,程序员嘛,喜欢用本行的术语(Tree)来解释一些现象。)一直以来,我都认为TT思维是很正确的,是比较不错的思维模式。这种方法可以用来考虑很多的事情了。 不过最近发现,事情并不是那么简单。这种TT的结构化思想虽然好 阅读全文
posted @ 2009-12-22 19:24 BloodyAngel 阅读(2279) 评论(3) 推荐(0) 编辑
摘要:预期读者 1. 初学者。 2. 懒得总结的人。:) 3. 想大致了解WPF框架主要类的功能的人。 前言 学习WPF也有段时间了,今天把学到的东西整理一下,主要还是学自MSDN。 下面,我就WPF中最重要的继承线上的几个类列一下,并归纳下它们的功能和使用场景: Object(托管代码) 首当其冲的,自然是System.Object类了。这里主要想说的是,WPF的大部分代码都是使用托管代码编写... 阅读全文
posted @ 2009-12-18 21:09 BloodyAngel 阅读(5859) 评论(3) 推荐(3) 编辑
摘要:方法一:*以各种方式了解这个框架产生的原因,及其主要解决的问题。1%*观察其主要外部接口(这里的外部接口是指公有类型)的使用场景,理解它的核心概念。5%*做些简单实例10% 简单的例子来一边实践一边学习,使用一些时间,主要目的是在过程中加深对核心概念的理解。*把里面比较重要的类列举出来,说明它们都是干什么用的。(比较重要,前期这样直接了解其抽象概念比较符合实际,不要过早深入。)1%*较熟悉框架以后,开始学习它的架构及架构思想。3%*分子系统,深入了解细节。看子系统时,可以先把外部接口都过一遍。或者,可以使用方法二进行学习。other%方法二:(此法不满足螺旋上升的理论,因为不可用于过大的框架。 阅读全文
posted @ 2009-12-18 15:14 BloodyAngel 阅读(4437) 评论(1) 推荐(0) 编辑
摘要:The SortedList<TKey, TValue> generic class is a binary search tree with O(log n) retrieval, where n is the number of elements in the dictionary. In this, it is similar to the SortedDictionary<... 阅读全文
posted @ 2009-12-18 13:40 BloodyAngel 阅读(371) 评论(0) 推荐(0) 编辑
摘要:前言 这里主要说一个使用using躲过异常的小技巧。 我原来就遇到过类似的问题好几次了,也没想到办法,直接有一天,调试得实在受不了了,才认真想了以下的解决方案。 问题 原来的代码是这样的: public abstract class Command : RoutedUICommand{ private bool _isExecuting = false; public void Execu... 阅读全文
posted @ 2009-12-17 20:32 BloodyAngel 阅读(3604) 评论(23) 推荐(3) 编辑
摘要:我们做程序员的,每天都有很多事情要做。拿我来说吧,很多事情要做:要工作、要看书、看别人写的文章、研究源码、写写代码、陪陪女友、打打游戏、看看电影……你肯定也会面对这些多而乱的事情吧,那你是不是也会象我一样,一头乱麻呢?如果是,那你就是我分享的对象了。 :) 我以前一直做事都是随意而为,没什么规划,感 阅读全文
posted @ 2009-12-16 20:21 BloodyAngel 阅读(7053) 评论(49) 推荐(14) 编辑
摘要:老爸:1955 10月30老妈:1964 7月初5妹妹:1989 4月23丹丹:8月17我:正月24写这备忘。加入日程…… 阅读全文
posted @ 2009-12-15 22:03 BloodyAngel 阅读(319) 评论(1) 推荐(0) 编辑
摘要:读写锁是进程同步中经常使用的锁。 在System.Core中ReaderWriterLockSlim类比较好用,它是基于写优先策略的。它还支持从读锁升级到写锁,称为Upgradable Mode. 简单测试代码如下:private static void Test(){ ReaderWriterLockSlim locker = new ReaderWriterLockSlim(); Parame... 阅读全文
posted @ 2009-12-15 16:50 BloodyAngel 阅读(623) 评论(0) 推荐(0) 编辑
摘要:上面是我为GIX4项目所想的RolePermission。 这是OpenExpressApp框架中使用的方法:http://www.cnblogs.com/zhoujg/archive/2009/12/12/1622331.html 阅读全文
posted @ 2009-12-15 09:59 BloodyAngel 阅读(325) 评论(0) 推荐(0) 编辑
摘要:private static void OldMethod(BusinessObjectInfo parentBOInfo){ IList<BusinessObjectsPropertyInfo> bosPropertyInfo = parentBOInfo.BOsPropertyInfos; if ((bosPropertyInfo.Count == 1) && (n... 阅读全文
posted @ 2009-12-15 09:18 BloodyAngel 阅读(467) 评论(0) 推荐(0) 编辑
摘要:在使用OpenExpressApp框架的GIX4项目中,对象的懒加载按照对象的性质不同,分为以下两种方式:根对象类: Get方法:获取根对象,并附带上第一级的子对象属性。 GetLazy方法:获取没有子对象属性的根对象。只在简单列表显示时使用。懒加载的思想在这里的体现,比较特殊,大致是这样的:当点击列表中某个对象A时,会使用Get方法获取一个新的对象B,并把它的值全部赋于A,这样,A就在被点击的时... 阅读全文
posted @ 2009-12-11 18:56 BloodyAngel 阅读(307) 评论(2) 推荐(0) 编辑
摘要:满足设计规范的设计。 满足代码规范的代码。(规范就是需要统一) 阅读全文
posted @ 2009-12-10 12:27 BloodyAngel 阅读(310) 评论(4) 推荐(0) 编辑
摘要:原理:封装 封装是基于抽象的。抽象度的提取,就是在为它们做职责划分。 推论:(以下层次为推论级别)单一职责、接口明确。高内聚、低耦合、少依赖。 方法:API中尽量不要给出没有必要使用的类、接口、方法。 阅读全文
posted @ 2009-12-10 12:24 BloodyAngel 阅读(288) 评论(1) 推荐(0) 编辑
摘要:一直很苦恼…… 最近这几天用了WindowsMobile的日历约会,感觉好些事情,已经可以从我的脑子里面滚出去了。另外,今天周哥和大家分享了他的GTD经验之后,再加上我原来对事情的分类和排序思想,觉得确确实实是应该有有一套自己的GTD模式。(周哥的文章:个人管理 - 认识无压工作GTD) 大脑是用来思考的,不是用来记事情的。深有感触! 这件事,现在已经成为了我的主要矛盾,是比别的要重要多了。... 阅读全文
posted @ 2009-12-09 19:40 BloodyAngel 阅读(1871) 评论(9) 推荐(0) 编辑
摘要:这写得蛮易懂:http://www.cnblogs.com/holly/archive/2009/04/24/1443213.html 阅读全文
posted @ 2009-12-07 17:45 BloodyAngel 阅读(247) 评论(0) 推荐(0) 编辑
摘要:前言 这游戏跟《兔子跳铃铛》一样,也是在大学的时候写的。不过前者使用的是C++,而这个则是在大三上学期的时候用JAVA,在J2ME平台上开发出来的。代码不多,当时使用了不到三天时间,但是却感觉比兔子的游戏好多了。 我就写过这两个游戏,感觉玩起来还不错,所以都写出来和大家分享一下。代码在最后。:) 效 阅读全文
posted @ 2009-12-07 00:30 BloodyAngel 阅读(4083) 评论(11) 推荐(3) 编辑
摘要:前言 好几年没有写C++代码了,今天朋友问起一个C++的问题,我是怎么也想不起答案来了。哈哈。所以现在把原来在大二时候写过的一个C++游戏先写下来,要不然以后估计都会忘记得一干二净啦…… 效果 打开游戏,先是一个闪屏: 然后是游戏主界面: 游戏开始后,一只被我减过肥的小兔子蹲在“烂”草坪上: 时间仓 阅读全文
posted @ 2009-12-05 20:13 BloodyAngel 阅读(3677) 评论(6) 推荐(1) 编辑
摘要:System.Collections.Generic.List is a generic collection designed for performance not inheritance and, therefore, does not contain any virtual members. The following generic collections are designed fo... 阅读全文
posted @ 2009-12-04 20:18 BloodyAngel 阅读(540) 评论(0) 推荐(0) 编辑
摘要:最近感觉操作是越来越快了。ShortCut、Cmd、PowerShell、Code Snippets…… 今天早上做着做着,居然有想吐的感觉,跟一开始打CS一样。晕!!! 阅读全文
posted @ 2009-12-04 10:49 BloodyAngel 阅读(247) 评论(1) 推荐(0) 编辑
摘要:在GIX4项目的开发过程中,遇到一个比较复杂的数据结构。复杂,是因为它有许多限制条件。我的工作是在现有系统中,添加新的功能,并在过程中重构部分旧代码。 约束及需求 以下约束是系统中已经存在的必要的约束,不可绕开这些约束而进行代码的开发。 1.项目中,有许多的实体类,都含有一种多叉树的关系和逻辑。 2.这些实体的树型关系,在运行时,只有键的关系,而没有对应的实体引用关系。 由于GIX4是数据分析... 阅读全文
posted @ 2009-12-02 16:34 BloodyAngel 阅读(2107) 评论(5) 推荐(3) 编辑
摘要:以前老是从设计和逻辑的角度去考虑事件,今天换了一个比较低的角度来看待它,突然感觉也很好: “如果你所编写的框架/类库中的某处,需要客户程序插入特定的代码,那么,这里可能需要一个事件。” (一般情况下不是可能,是应该,嘿嘿。) 阅读全文
posted @ 2009-12-02 11:24 BloodyAngel 阅读(327) 评论(3) 推荐(0) 编辑
摘要:逻辑优先,就是指在写一段程序的时候,占据你大脑的应该是程序的逻辑,而不是程序本身。 虽然我们是向着这个方向发展,但是完全做到这点却是不容易的。 这要求编程语言本身完全符合人类的思维(语法),编写简单、迅速。 要求开发人员绝对熟悉编程环境,包括:操作系统、编程语言、IDE等…… 看似简单,其实不然…… 阅读全文
posted @ 2009-12-02 10:29 BloodyAngel 阅读(442) 评论(5) 推荐(0) 编辑
摘要:写递归方法的时候,重中之重,就是这个方法的定义一定要在所有代码之前规定好。 这个接口的定义在这里起了关键性的作用。 阅读全文
posted @ 2009-12-02 10:11 BloodyAngel 阅读(328) 评论(0) 推荐(0) 编辑

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