Re: [討論] 一段想重構的程式碼

看板Soft_Job作者時間12年前 (2013/07/24 18:12), 編輯推噓1(106)
留言7則, 2人參與, 最新討論串2/10 (看更多)
※ 引述《tyc5116 (累人啊....)》之銘言: : 如題,因為不知道適合PO在哪個板問,看來看去好像這裡比較適合的樣子 : 如果不妥我再轉板 : 我在接手別人的程式後,發現他架構有需要重構的地方 : 程式分了數個小模組(a和b都是一個模組) : class a{ : void func(); : ... : }; : class b{ : void func(); : ... : ; : ... : 其中每個模組的func程式碼都是一樣的 : 所以我想說就再拉出一個介面,並實作這個func,a和b都繼承這個介面 : 這樣這段重覆的程式碼就可以省掉了 : 因為改成這樣的方式變動有點大,所以尊重一下主管,跟主管說一聲,看能不能這樣改 : 但是主管卻說,程式內有很多個thread,若以這樣的方式來寫,可能在同一時間 : 會有很多地方都會執行到func,造成debug的不易,不然就還要再類別內加個屬性, 抱歉,不是很懂 這個重構方法跟 thread 有什麼關係 thread 會不會有問題,應該是看實體,而不是看程式碼 也就是不同 thread 存取同一個實體,才會有問題 目前想不到會讓 thread 不安全的例子,我個人會傾向重構 : 用來辨別目前執行func的是哪一個模組,雖然說目前是將同樣的func : 寫在各別的模組內,但是這樣在debug時會比較容易作區分,然後他不贊成我改@@ 另外也不懂,為什麼debug時會比較容易作區分? 我個人的傾向,除非造成 debug 很大的影響,否則不該複製 如果對 debug 只有小影響,那應該是要另外去想其它較好的 debug 方式 : 我對這個理由其實不太認同的,我是覺得加個屬性作為區分即可 : 然後程式都會跑到相同的地方,debug應該會變的更容易才對阿!! : 不知道大家的看法如何? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.46

07/24 18:26, , 1F
這跟 thread safe 沒有關係,這講的是 breakpoint 會不會
07/24 18:26, 1F

07/24 18:27, , 2F
被干擾。在multi-thread 的情況下如果對 func 設 breakpoint
07/24 18:27, 2F

07/24 18:28, , 3F
會所有模組都被打中,不過這也是很好解決的,設
07/24 18:28, 3F

07/24 18:28, , 4F
conditional breakpoint 就行了。
07/24 18:28, 4F

07/24 18:29, , 5F
從我的角度來看,假設原 po 講的是完全一樣的話,我會選擇
07/24 18:29, 5F

07/24 18:29, , 6F
下手,然後"測試"。
07/24 18:29, 6F

07/24 18:44, , 7F
要看他 func 內部在做啥比較準
07/24 18:44, 7F
文章代碼(AID): #1HxwYGsp (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1HxwYGsp (Soft_Job)