首页
学习
活动
专区
工具
TVP
发布

哲学驱动设计

专栏作者
187
文章
191747
阅读量
52
订阅数
绑定子类的泛型基类,反模式?
    这次总结一个个人认为的反模式:“绑定子类的泛型层基类”,这个模式在一些著名的框架中也见到过,如果CSLA、BlogEngine。我自己在原来的写的框架中,也用到过。     当然了,个人认为是反模式,各们同仁并不一定这样认为,仁者见仁,智者见智了。不过我好几次都是受尽折磨,所以决定写出来给大家分享下心得。 模式介绍     “层基类”是MF提出的一个基本模式,详见:《Layer Supertype》。这种模式在经典的层次型架构设计的实现中,是极其重要的。我相信,大家一般在做三层架构时,不可能不给出基
用户1172223
2018-01-29
9650
12月反思 - 组内设计评审会议
现象     这个月我的工作任务中,有一项是重构OEA框架中的AutoUI部分。这个任务在月初时计划在一个月内完成,包括问题分析、设计新的结构、编写设计文档、开展设计评审、代码实现。原计划半天到一天的评审会议,最后花费了大概一天半的时间。接下来,我就评审会议中出现的问题进行一下总结。     本次AutoUI设计是我到公司以来,觉得最有挑战的一次工作。     会议之前,我和组内的人员进行了多次沟通,了解他们的需求:我们的AutoUI框架当前有些什么问题?当界面需求被提出后,我们对它的完成情况怎么样?
用户1172223
2018-01-29
5080
性能优化总结(四):预加载的设计
    本节说一下数据的预加载。这节的内容与SQL没什么关系。主要说的是在 GIX4项目 中,我们是如何设计符合需求的预加载类库的。内容如下: 什么是预加载,为什么要用它? 我们所需要的API 一个简单的例子 什么是预加载?     预加载其实就是在真正开始使用数据之前,先异步把数据加载好,等到需要使用时,就可以直接使用之前加载好的数据。这时,由于数据已经加载完成,而不用等待漫长的加载过程,所以程序的速度得到一个明显的提升。     那么,什么时候需要使用它呢?我觉得,主要是这种情况:当我们可以预知
用户1172223
2018-01-26
1.1K0
技术讨论总结:客户化、缓存
    最近,GIX4项目需要开展客户化工作。同时,下一期sprint中,客户还要求大幅度提升产品的性能。针对所存在的问题,开发人员决定开一系列的技术讨论会。     我总结了目前遇到的和可能遇到的问题: 客户化: 实体类客户化         各客户对同一产品表现出的需求,要求实体类在一定程序上各不相同。这就需要领域模型做到可以客户化。 界面客户化         需求不同,界面自然也需要客户化。这是一般性需求。 性能: 实体类优化         目前系统使用的是基于CSLA对象模型的实体类。由于
用户1172223
2018-01-26
4950
重构一个繁琐的数据结构
    在GIX4项目的开发过程中,遇到一个比较复杂的数据结构。复杂,是因为它有许多限制条件。我的工作是在现有系统中,添加新的功能,并在过程中重构部分旧代码。 约束及需求     以下约束是系统中已经存在的必要的约束,不可绕开这些约束而进行代码的开发。 1.项目中,有许多的实体类,都含有一种多叉树的关系和逻辑。 2.这些实体的树型关系,在运行时,只有键的关系,而没有对应的实体引用关系。     由于GIX4是数据分析软件,数据量比较大。建立关系需要的时间比较久,所以服务器端只负责给数据。这样客户端得到的
用户1172223
2018-01-26
7510
没有更多了
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档