Soft_Job 板


LINE

参考下个人於 10年前所介绍的一本书:Object Models — Strategies, Patterns, and Applications http://www.kenming.idv.tw/ithome_a_cec_a_12_object_models_a_strate/ 其中所揭露的 Transaction Pattern,即为跨 Domain-nature 非常受用的分析技术,藉此得以捕捉系统的主结构。 底下是原个人的书评心得介绍。 一、直指企业核心的本质—交易样式: 本书主要的作者为 Peter Coad,最早研究所教科用书,有许多就是采用他的着作:“ Object Oriented Analysis、Design ”两本经典 OO 着作;不过软体人员对他仍很陌生 ,那麽说出 Borland Together,就会恍然大悟,原来就是他创立的公司研发的主力产品 (後被 Borland 花了两亿美金并购)。 先让读者了解一下,结构分析主要就是抓各领域的稳定元素来建构软体系统,而那往往就 是常在沟通的概念术语 (concept terminology)。在设计阶段一般是以 UML 类别图 (class diagram) 来呈现,而具体化在应用系统中的就是所谓的企业物件 (business object);与在资料库的表格 (table)。两者的差别主要在於企业物件尚需分析各个物件 所应负担的责任 (在程式语言则称之为 方法, method)。分析领域物件与明确分派物件的 责任,正是影响软体结构弹性度的主要关键。 有别於绝大部分 SA/SD 是透过需求访谈记录一个一个的抓“名词”,虽然是行之有年, 但那实在不是一种好方法,所抓出来的类别往往见树不见林,无法有效的将相关的类别关 连於一起。 Peter Coad 是直接直指领域核心,观察企业行为的本质源自於交易。交易为 商业利益交换的一种契约 (contract),是一种非常必要保存的事件 (event)记录,再由 此为中心,来串连其它相关类别包括 参与者 (actor),地点 (place),物品 (item),以 及所包含的交易细项 (line-item) 等。这种先抓主干,再抓枝叶的方式,正是相当着名 由 Peter Coad 所揭露的 “交易样式 (transaction pattern)”。 以最常见的订购系统来说好了,“订购(order)”就是核心的交易类别,再由其串连出来 ,就可以找出“订购细项(transaction lineitem)”、“客户(actor)”、“订购地点 (place)”、“商品项目(item)”等;再转分析另一个领域如保险业,“保险”绝对是一 个显而易见的交易类别,而“对保”则是与之有相关连後续的交易类别 (subsequent transaction class);好啦,如果是要分析一个运动彩券投注系统,要你马上抓出第一个 类别,应该就知道该怎麽抓吧? (投注, 派彩 均为该领域的核心类别) 二、不同层次,传不同层次的法: 我是从 amazon 购买 a4-size 的硬本精装版,本书可是有着四颗半星的高评价,读者对 之推崇甚高。封面为乐高玩具,甚是有趣,看起来其隐喻应该是意指软体的结构组成,就 如同乐高积木般,一个个地给聚合组装起来的。共有七个章节,前五章均为各自独立的案 例分析,後两章为策略与样式的整理列表。印刷很不错,字体大小恰当且清晰,也有很丰 富有趣的插图。不过内容可是相当艰深,没有充分的抽象与想像力,是不容易理解的。独 立阅读本书可说是非常吃力,我是建议能有几位同好们一起研读,甚至以角色扮演的方式 ,来思考所抓出来的类别,以及所赋予其责任的合理性与正确性。 本书的类别表示法均是采用作者自创的语法 (Coad Notation),它可说是自成一格,例如 多重性(multiplicity)就刚好是与 UML 类别图的表示法完全相反,所以一定要先阅读附 录的语法说明。再则从每个案例研讨的过程当中,作者总是会列出他在某个分析阶段时所 使用的策略或样式,并将之编号整理在後两个章节。这个相当的有参考价值,但不要直接 就是翻阅这些策略与样式列表,那可是相当的枯燥乏味,最好就是配合着这些案例的过程 说明,久而久之,你阅读起来才会习惯也比较能有感觉。 谁需要阅读本书呢? 我是觉得想立志当个真正的“软体人”是必备的。要知道,软体设 计大概可以分为三个层次;1.把系统“做”出来;2.让系统效能好一些;3.让系统更有弹 性,来顺应变化。 第一个只要有不错的实作能力,以及功能需求的分析能力即可;第二 个则需要有对平台的专业知识能力,能充分发挥系统的效能特性;第三个那可真的需要对 软体的“道”有着长期持续的信仰与热情方可。我是以为,若能进入到第三个层次,修练 该层次所传授的法,那绝对会是一种无以言语的喜乐。不过,现今国内软体产业重视速食 文化,大约只要求在前两个层次,第三个层次,旷时废日,不太容易短时间内有着显着的 实质回馈,因而坚持者甚少,殊为可惜。 ※ 引述《VisualStudio (2017)》之铭言: : 各位前辈好, : 小弟最近在工作上接触到 : 「Domain-driven design 领域驱动设计」的概念方法, : 有在网路上看了些介绍文章, : 也有找到满多相关书籍,很多是英文书, : 想请问大家有没有哪一本书比较推荐呢? : 或平常有使用到领域驱动设计吗? : https://i.imgur.com/CNvs61A.png -- FB社团:软体设计鲜思维 https://www.facebook.com/groups/softthinking/ --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.34.122.227
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1528789724.A.7F0.html
1F:推 VisualStudio: 感谢前辈分享 06/14 19:51







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping 或 站内搜寻

TOP