- 浏览: 39251 次
- 性别:
- 来自: 北京
文章分类
最新评论
Object Modeling Strategies (II)
Str#1d. "Invest an Hour" Strategy // activities and model components
- Rather than philosophize endlessly, invest an hour in each of several different ways of modeling a particularly challenging area. Compare your results -- and decide which way to go (based upon actual results, rather than the outcome of a multiweek debate).
Str#1e. "Consider the Domain First, Artifacts After That" Strategy // activities and model components
- Build an object model with a domain expert first. Then add-in content that you can extract from artifacts (existing data models, source code, whatever).
- Reason why: you need the benefit of the former (fresh insights, new ideas) to help you grapple with the latter (what to include, what to exclude).
Str#1f. "Extract Useful Content From An Existing Data Model" Strategy // activities and model components
- Yes, it can be done.
- Best practice: build an initial object model with a domain expert first. Then use that model to help you filter out the classes and attributes (in an previous data model) that are no longer needed. Why: the added domain understanding will help you do a better job leaving unneeded things behind, rather than dragging everything from the past along with you once again.
- For the entities:
. List them. Delete correlation tables. Delete (or revise) names that do not fit the problem domain vocabulary (words that a domain expert uses and understands). Collapse supertypes-subtypes that do not express domain-based generalization-specialization.
- Then, when you work on attributes:
. List them. Delete (or revise) names that do not fit the problem domain vocabulary (words that a domain expert uses and understands). Delete flags, indicators, sequence numbers, and unique keys -- nearly all of which are simply leftover implementation mechanisms from a previous system.
发表评论
-
在Java中使用Oracle blob
2005-02-13 22:27 773Oracle中的lob (Large Object)可以存储非 ... -
java.util.StringTokenization
2005-02-13 22:29 641今天室友老七做数据库大作业,其中要实现一个功能,就是输入一个以 ... -
JBuilder 2005中的Servlet mapping
2005-02-13 22:30 697使用JB进行Servlet好像很方便的样子,但是servlet ... -
static与final变量
2005-08-04 12:27 743一、illegal forward refrence 前天写一 ... -
使用策略模式(Strategy)实现多关键字排序
2005-08-04 12:37 790“策略模式”的出现,是为了提供一套相互之间可灵活替换的算法, ... -
Alloy
2005-08-04 13:09 655Alloy look and feel(http:// ... -
IDEA
2005-08-04 13:11 922今天在TSS上看到IntelliJ的IDEA 5.0终于rel ... -
原型模式(Prototype)
2005-08-05 10:54 741一、概述 原型模式属于对象创建模式,通过给出一个原型对象来指明 ... -
IDEA破解过程
2005-08-05 19:11 1802开场白就不说了,直接切入正题吧。本破解的前提是安装了IDEA ... -
适配器模式(Adapter)
2005-08-06 19:39 618一、概述 类的适配器模式把被适配的类的API转换成为目标类的A ... -
A beginners guide to Dependency Injection [转载自TSS]
2005-08-08 22:30 816Scope This article presents a h ... -
Alloy破解过程
2005-08-09 15:42 8681package com.incors.plaf. ... -
接口与Object类的关系?
2005-08-19 13:53 1107今天凌晨coding的时候发现一个很有趣的现象。“Object ... -
缺省适配器模式(Default Adapter)
2005-09-06 12:01 777一、概述 当不需要全部实现适配器接口提供的方法时,可先设计一个 ... -
Object Modeling Strategies (I)
2005-09-08 10:12 589Activities and model components ... -
Joshua Bloch咏Tiger诗八首
2005-09-08 16:59 838“Ease of Development”是J2SE 1.5的 ... -
James Gosling
2005-09-14 22:01 769今天是Java China 2005的最后一天,下午没有去各个 ... -
Object Modeling Strategies (III)
2005-09-19 15:26 562Identifying system purpose and ... -
Tomcat 5.5.9 不支持switch(<enum>)?
2005-09-19 18:51 809ServiceExceptionType: package p ... -
“软件危机”时总结的坏的编程习惯——我们是否依旧守着古风?
2005-10-09 14:23 7291、乱用GOTO语句(上下跳转看起来非常方便) 2、大量使用 ...
相关推荐
In this third edition--the first revision in 13 years--readers can learn to apply object-oriented methods using new paradigms such as Java, the Unified Modeling Language (UML) 2.0, and .NET. ...
The stationary background object is described by the color feature,and the moving background object is represented by the color co-occurrence feature. Foreground objects are extracted by fusing the ...
The strategies outlined in this document—object-oriented modeling, object-based modeling, and functional-based modeling—provide flexible options depending on the specific needs and constraints of ...
"I found Real Time UML, Third Edition, to provide an ...Key strategies for object identification Defining object state behavior Representing and identifying threads Mechanistic design patterns
Part II describes the geometry processing portion of the graphics pipeline. The application delivers scene data to the pipeline in the form of geometric primitives. The pipeline processes the ...
Clojure is well suited to financial modeling as it is a functional programming language. Such languages help developers work with high-level mathematical abstractions without having to implement low-...
end J2EE development strategies that promote speed without compromising quality Understanding how your design-time decisions impact overall project schedules Building agile application architectures ...
Cover artificial intelligence-driven strategies to enable a robot to solve games or learn from an environment Generate synthetic data that looks real with generative modeling Become familiar with ...
covering topics from installation from source to designing tables using SQL Power Architect, as well as deciding replication and failover strategies. Who This Book Is For This book is for developers ...
This part delves deeper into mapping associations between entities in Hibernate, which is crucial for modeling complex relationships in your domain model. - **Mapping the Person Class**: Using a ...
basedonNIOshavebeentheobjectofresearchsincesomedecadesandtheimportanceofthissubject iswidelyrecognized.Inordertoapplyanaturedinspiredalgorithm,...
object manipulation in a fluidic environment. Chapter 5 discusses how state-of-theart mobile technologies may be integrated into human-in-the-loop cyber-physical systems and exploited to provide ...
Part II Advanced Adapter Engine Extended (AEX) 3 Configuring the System Landscape Directory 3.1 System Landscape Directory Components and Features 3.1.1 Landscape 3.1.2 Software Catalog 3.1.3 ...
Object-Oriented Programming . . . 147 Classes . . . . . . . . . . 147 Inheritance . . . . . . . 153 Writing Testbenches using SystemVerilog ix Polymorphism . . . . . 156 The Parallel Simulation ...