作者prag222 (prag)
標題Re: [請益] 請問程式架構和資料結構的差異
時間Sun Jul 3 08:09:23 2022
※ 引述《serenitynice (cregryrm)》之銘言:
: 本人目前剛修完大一的程設,什麼design pattern和資料結構還不太熟悉
: 物件導向剛學會封裝、繼承、多型;
: 資料結構只有寫過linked list,tree那些還沒自己刻過
: 想問這兩個有什麼關聯嗎? 還是不同領域的
: 有重要性之分嗎?還是跟著學就好了
: 謝謝各位指教
安,小弟最近在複習資料結構
剛好看到了魔術方陣這題練習題
附上c#原始程式碼
https://github.com/prag222/MagicMatrix
你可以學我用物件導向的方式
把解題方法改成用物件導向的寫法改寫喔(重構?!其實兩個的主邏輯一樣!)
坦白說是蠻酷的
以下是我半夜爬起來玩一下XGP後趕工一下趕出來的
https://github.com/prag222/MagicMatrix-with-OOP-
小弟死新手,趕完工又繼續XGP
拜託不要拿小細節或clean code來嘴我
看到推文有人說OOP是X圾,不好用複雜
感覺蠻傷心的
其實好的OOP寫出來跟Open Source的感覺是差不多的
雖然可能看不太懂
但是好新增好修改好維護 擴充容易
符合SOLID的標準阿
業界的OOP可能寫法亂七八糟或是實際應用過於複雜
才會導致於有誤會的想法
貼出來的範例提供大家觀摩一下囉
感謝~~~~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 150.117.82.127 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1656806978.A.F02.html
1F:推 wulouise: 說xxx是垃圾的話都當垃圾不用理,oop fp存在都是有理由 07/03 09:12
2F:→ wulouise: oop效能可能遇到cache miss,導致dop/fp較好但那是底層 07/03 09:15
3F:推 ko27tye: 呃 沒惡意但我不覺得你有真正用到OOP 07/03 10:34
4F:→ a740125: ??? 07/03 13:41
5F:推 Hsins: OOP 跟 Open Source 之間好像沒什麼關聯性,另外不是所有 O 07/03 13:58
6F:→ Hsins: pen Source 的專案,程式碼品質就很優秀… 07/03 13:58
7F:推 strlen: 嘴OOP會亂的人 FP用起來也不會好到哪去啦 重點不在架構 程 07/03 14:44
8F:→ strlen: 式會不會亂 都是在人和團隊本身 人或團隊寫程式沒紀律喜歡 07/03 14:45
9F:→ strlen: 發揮「創意」 什麼架構都救不了你 07/03 14:45
10F:噓 clay030: 不是反串我再推回來 = = 07/03 14:46
11F:→ MoMoShota: 原來不是反串嗎 XDDD 07/03 17:23
12F:推 DrTech: 原文用意良好,舉例錯誤。你又不需要多個object 你幹嘛搞 07/03 18:02
13F:→ DrTech: 個OOP把事情複雜化。 07/03 18:02
14F:→ DrTech: 不需要OOP的功能,顧故意硬湊OOP,標準的舉例錯誤,難怪會 07/03 18:04
15F:→ DrTech: 被認為反串。 07/03 18:04
16F:→ DrTech: 現實工作中,就一堆這種人,OOP的確是中性的東西。但是, 07/03 18:11
17F:→ DrTech: 你又不需要OOP時,硬用,然後說OOP多好,就覺得很沒說服力 07/03 18:11
18F:→ DrTech: 。 07/03 18:11
19F:→ ripple0129: 2009就在soft_job的說自己新手XD 07/03 21:57
20F:→ ttss4092: 為了反串特地寫程式太累了吧 07/04 08:36
21F:推 luke72: oop寫起來跟open source差不多?那跟商用軟體比呢 07/04 10:22
22F:→ kurtsgm: 完全不懂oop跟open source有啥關聯 07/04 10:52
23F:→ shooter555: 跟open source感覺差不多是在指oop寫法容易有bug嗎 07/04 12:45
24F:→ shooter555: 這樣好像是貶意 07/04 12:46
25F:推 Nitricacid: 覺得 OOP 是垃圾的通常抽象思考能力不太好 知道這類 07/04 21:41
26F:→ Nitricacid: 人都產什麼 CODE 就不用計較太多了 07/04 21:41
27F:噓 kkes0001: 完全不懂oop跟open source有啥關聯 07/05 15:06
28F:→ superpandal: XD oop可以不會亂 但通常一堆專案(公司、開源)寫的都 07/06 18:41
29F:→ superpandal: 很隨性 架構也很恐怖 當然藉口多數是趕工 07/06 18:42
30F:→ superpandal: 傻瓜化的東西幾乎是沒有 debug還要追到底層然後發現 07/06 18:44
31F:→ superpandal: 被坑了 07/06 18:45
32F:→ superpandal: 不用oop也可以很好維護 也都不是必要的 07/06 18:49
33F:→ superpandal: 抽象能力? 機器沒在管你什麼抽象 要抽象到沒人懂也可 07/06 18:54
34F:→ superpandal: 以 07/06 18:55
35F:→ superpandal: 業界充斥一群愛把自己當機器 然後設一堆障礙搞後人 07/06 18:59
36F:→ alan3100: 不就不會oop硬寫oop 怪oop不好維護 WTF? 07/06 18:59
37F:→ superpandal: 後人解決不了就可以秀優越 後人可以解決但心情差抱怨 07/06 19:00
38F:→ superpandal: 下就說態度差 07/06 19:00
39F:→ superpandal: 樓上應該跟那些人講 我是會的 07/06 19:00
40F:→ superpandal: oop不可否認是可以寫的清爽簡潔動態的 07/06 19:24