摘要: 单词的选择 对框架中标识符的名字来说,达到一目了然的效果很重要。标识符的名字应该能够清楚的表达每个成员是做什么,以及每个类型和参数代表什么。名字应该和应用场景、系统的逻辑组成或物理组成以及为人熟知的概念相对应,而不应该与技术或架构相对应。 要为标识符选择易于阅读的名字。 要更看重可读性,而不是简洁性 阅读全文
posted @ 2015-09-01 10:35 高效养猪倌 阅读(862) 评论(0) 推荐(0) 编辑
摘要: 虽然命名规范不是必须的,但在框架的开发过程中遵循一组一致的命名约定会对提高框架的可用性起到重大的作用。除了形式上一致外,框架中的每个元素的命名还易于理解,友好的传达了每个元素的功能。标识符的大小写规则 双驼峰(PascalCasing)约定被用于除了参数之外的所有标识符,它把标识符中每个单词的... 阅读全文
posted @ 2015-08-30 16:46 高效养猪倌 阅读(2184) 评论(2) 推荐(0) 编辑
摘要: 假设 今天天气不错,挺风和日丽的... 你心情很不错,给了老婆100.00,给了儿子100.00让他们自己去消费。 然后,你发现钱包空了,“卧槽,哥他妈就200块钱,都给出去了,还让不让人活了”,立马给儿子和老婆,打电话,只是电话里一直,“嘟,嘟,嘟...”。 然后,就没有然后了... 这都不是重点 阅读全文
posted @ 2015-06-17 15:52 高效养猪倌 阅读(1827) 评论(17) 推荐(8) 编辑
摘要: 配置文件 第一种 class SQLConfiguration : ConfigurationSection { [ConfigurationProperty("type", IsRequired = true)] ... 阅读全文
posted @ 2015-06-16 17:33 高效养猪倌 阅读(12355) 评论(5) 推荐(2) 编辑
摘要: 如何让你的代码在“同一时间”干着两件件事呢?比如说,在初始化加载配置的同时,UI界面能够响应用户的各种点击事件。而不置于卡死,特别是出现如下面这种情况的时候,对于用户来说是很崩溃的。 那么我们得用什么技术来避免这种问题呢?是的,异步编程。(当然引发程序卡死,不一定是没有用异步,也可能程序本身就有异常 阅读全文
posted @ 2015-06-02 11:55 高效养猪倌 阅读(1122) 评论(10) 推荐(3) 编辑
摘要: 最近一个项目中,因为服务端是用的java开发的,客户端是用的C#,由于通信部分采用到了3DES加密,所以做个记录,以备以后需要的时候直接用。 这是对方(java)的加密算法,和网上流传的代码也差不多(主密钥直接写死了,方便测试) 因为客户端只负责数据加密,所以我这里只写了加密的部分。由于java和C 阅读全文
posted @ 2015-06-01 11:22 高效养猪倌 阅读(1733) 评论(0) 推荐(0) 编辑
摘要: 什么是泛型 假设你有一个算法,代码如下: 现在,你的项目要增加对double类型的支持,So Easy!!!,你很聪明的拷贝了上面的代码,三下五除二,将int全都改成double 再然后你的代码又要增加对新的类型的支持,比如short,byte,string,float...,你已经无法忍受了不断的 阅读全文
posted @ 2015-05-27 14:52 高效养猪倌 阅读(1170) 评论(8) 推荐(3) 编辑
摘要: 如何将实例化具体类的代码从应用中抽离,或者封装起来,使他们不会干扰到应用的其他部分? 静态工厂方法 把具体实例化的过程封装了起来,这已经开始有了面向对象编程的意识了(虽然这里用的是静态方法)。 工厂方法模式 接着上面的例子,我们把动物种类进行抽象,不再让他通同switch判断,下面我们创建动物类的工 阅读全文
posted @ 2015-05-25 15:19 高效养猪倌 阅读(662) 评论(2) 推荐(0) 编辑
摘要: 知识点 类应该对扩展开放,对修改封闭。 案例 (本故事纯属虚构) 某日早上,流年刚把新开发的游戏项目提交给经理 (当然这还算不上个游戏),项目经理看了没几分钟,“这什么屌逼玩意?游戏角色都不带装备的!!! 玩家还玩个屁啊”; “那好吧,给角色加把武器?”我弱弱的回了句。 “你个2屌,加个武器就够了? 阅读全文
posted @ 2015-05-22 23:19 高效养猪倌 阅读(616) 评论(0) 推荐(0) 编辑
摘要: 知识点 使对象之间达到松耦合的效果。 观察者模式定义了对象之间一对多的关系。主题用一个共同的接口来更新观察者。 观察者和被观察者之间通过松耦合的方式结合,被观察者不用理会观察者的实现细节,只需要观察者实现了观察接口(即所谓的注册)。 示例代码 最后来调用测试一下: 小结 观察者模式定义了对象之间一对 阅读全文
posted @ 2015-05-22 06:54 高效养猪倌 阅读(585) 评论(0) 推荐(0) 编辑
摘要: 知识点 找出引用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。 针对接口编程,而不是实现编程。 多用组合,少用继承 示例 1 public interface FlyBehavior 2 { 3 void Fly(); 4 } 5 6 class FlyWithWings: 阅读全文
posted @ 2015-05-21 08:29 高效养猪倌 阅读(654) 评论(0) 推荐(1) 编辑
摘要: 今天在使用Nlog的时候,发现了一个之前没注意的问题。 以前,我的app配置文件都是这么写的,当然配置比较多的时候会改用xml。 如果<appSettings>节点中的内容很多的话,我自己有时候都分不清哪个是做什么的,可能朋友们会说,你加个注释不就行了。但是可不可以把一些相同的配置放在一起呢,就像上 阅读全文
posted @ 2015-05-14 17:25 高效养猪倌 阅读(10369) 评论(0) 推荐(0) 编辑
摘要: 我们知道在C#中,是可以将派生类的实例赋值给基类对象的。 这是没有什么问题的。下面我们做一些变动。 协变 Dog类不是继承Animal类么,为什么到这里就不能用了呢? 原来我们都忽略了一点,在这段代码中dogMarker和animalMarker变量的类型分别是Factory<Dog>和Factor 阅读全文
posted @ 2015-04-19 18:01 高效养猪倌 阅读(898) 评论(5) 推荐(3) 编辑
摘要: http://images.cnblogs.com/cnblogs_com/liunlls/676925/o_1108.21.jpg 阅读全文
posted @ 2015-04-11 10:58 高效养猪倌 阅读(554) 评论(4) 推荐(2) 编辑