OOAD 板


LINE

乱入 :o ※ 引述《Schelfaniel (Schelfaniel)》之铭言: : 当然很多地方是用 Copy/Paste 硬写的 @@ : 但这样的程式,竟然也撑了 30 年了,也算很厉害了, : 碰过一堆需求变更调整的 ( 上线之後修改 ), : 也就是它是在程式一面运作,仍然一面修改的情形之下。 : 物件导向这方面最麻烦,很容易牵一发而动全身, : 要改一个东西,要连带改一堆东西,加上现代化的架构, : 有时还要改一堆 xml,让那些写 COBOL 的人,反而过来说, : 不就改一点点就好了,怎麽会这麽麻烦。 关於这一段,之前有个经验,让我不禁开始思考抽象化究竟该到什麽程度? 以往我理所当然是先找出相同的问题,然後一次解决,最後套用到每个地方。 意思是,绝对不会有地方是 copy & paste 出来。(部份例外先不讨论...) 但是这样却碰到一个问题... 是我之前从来没想过的。 终归一句话就是,需求改变了。 但应付需求的改变,本来就是一个需要解决的问题,而不是禁止需求的改变。 本来是一样的地方,现在需要变得不一样了。结果开始牵一发而动全身, non-programmer 的介入,一修改,结果一边对了另一边就烂了。 接着就开始谴责我怎麽写得这麽没弹性... orz 是说,如果当初是 copy & paste, 确实就可以让他随便改而不影响他处。 问题是我怎麽知道原本一样的後来需要不一样了? 现在要改不一样,等於是增加例外,这跟架构有关,不能随便乱调的。 当然一边砍掉,另一边 copy & paste 过来,这样也是可以。 只是我实在不太能接受这样乱搞 :s 目前还没什麽好想法,可能还是要看其他人的使用习惯而配合... : 其实我觉得像 JVM 或是微软 CLR,提供一堆让程式师选择语言, : 算是比较能够符合个人喜好,又能够团队运作的模式, : 毕竟,程式设计师有时需要的不只是技术或管理, : 而是动力和热诚,让程式设计师本身处於自己舒适的环境之下开发, : 而不要绑手绑脚,限东限西,要你乾坤大挪移也不能用, : 降龙十八掌也不能用,这样出去必定功力下降,士气下滑嘛。 CLR 我不确定是什麽,像 JVM 这样确实是有不少好处,但 .NET 的话, 例如 F#, 我就不觉得会是一个很好的方向,比较像是为了广告, 募集其他领域的人加入 .NET, 最後投靠 C#, end of the story. 会这样说是因为之前测试 C++/CLI, 我发现微软新加进去的东西, 跟原本 C++ template 根本就难以配合。用了 template, 无法用 .NET lib, 反之用了 .NET lib, 难以使用 template. 两者几乎接近互斥,让我试不下去,因为原本的东西都不能用.... 也过了很多年啦。或许有改善了也说不定? F# 也是差不多的情况。之前翻了一下书,发现如果需要呼叫 .NET, 一样会陷入 OO 那套,想 functional programming? 似乎搭不太起来。 那我想用 .NET, 何不用比较顺的 C#? 我想用 functional programming, 为什麽不选 OCaml, Haskell, 或是 Clojure, Scala? 另一方面,程式跟程式间的沟通,必然会需要如此高的相依性吗? 为什麽不能用某种协定(protocol)?Unix philosophy: 1. Write programs that do one thing and do it well. 2. Write programs to work together. 3. Write programs to handle text streams, because that is a universal interface. 当然有些时候是不能选择的。只是我觉得,要尽量把想写出巨兽程式的 慾望丢掉。向往巨兽也不是说有什麽不好,只是我觉得现在巨兽已经太多了... 想多呼吸一点新鲜空气。 == 本篇跟 OO 没什麽关系 @@ -- By Gamers, For Gamers - from the past Interplay --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.135.28.18
1F:推 sunneo :推牵一发动全身... Orz 原先设计好的interface都得 07/12 16:46
2F:→ sunneo :大改(应该说部份流程需要特制) 07/12 16:47
3F:→ sunneo :我後来做法是让invoked method至少有个Object参数 07/12 16:48
4F:→ sunneo :那麽在需要特制的block就可以传入自定义的实体进行 07/12 16:49
5F:→ sunneo :额外的操作,在原先的method只有转接的作用 07/12 16:49







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灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP