Re: [問題] 為什麼可以有這麼多bug?
原文吃掉
小弟不才
只是個廢柴軟體工程師
其實這問題沒有這麼難理解
很多公司在小時候只是隨意做做設計
可能當初沒想到會做到這麼大
所以在很多地方都會做的很粗糙
軟體工程有很重要的兩個核心觀念
重複使用性(reusability) 多重繼承性(multiple inheritance)
簡單來說就是一段程式碼重複使用
正常來說有規模的軟體公司都會遵照這兩個概念
畢竟一樣的功能卻寫好幾段程式碼會造成你的程式肥大
(雖然神魔本來就很肥了)
那神魔究竟錯在哪了呢?
回到一開始的草創期粗糙
當一個功能重複使用或被繼承的時候
最底層的那個功能(原始碼)如果防護沒有做好
多方引用 就會造成可能A物件動到B物件的東西
舉例來說你飲料放冰箱被室友偷喝 然後你打開冰箱就崩潰了
或是A物件用完了沒有移除他 造成你RAM爆開
可以想像成出門忘了關冷氣 電費就爆了
一般來說閃退就是這個原因
最後我想說的是神魔其實有在改善他們的程式碼
他們開始試著用軟體工程的思維來寫程式
看看希臘二技能的某個效果
其實我一直很納悶只轉個幾顆是有屁用 為什麼不全轉
但後來再仔細看看是不是哪裡似曾相似?
https://i.imgur.com/pk4CljE.png
我猜現在很多技能改成 I II III 敘述
其實就是分別把這些弄成單一物件 然後大家互相引用
這樣方便玩家閱讀 也方便自己內部工程師了解同事們有做了哪些東西
以後要用的時候就可以直接引用(照抄)
對 然後可能某個功能底層防護沒做好就爆了
比如最近的夏瑪西跟雪未來就是類似的東西
那你可能會問為什麼有些技能明明一樣
有時候A出事 B卻沒事
因為這是兩個不同的人寫的 B不知道有這A功能 所以就自己寫了一個
以前bug沒這麼嚴重反而是因為每個人只要負責自己的
自己的爆了就爆了 不會影響其他人 爆了我就修好我自己的
但也因此造成程式會很肥
大概4john
但我最不能理解的是為什麼都沒有SOP驗證...
因為軟體公司至少發布版本前都要經過基本的SOP確認...
為什麼神魔沒有 我就不知道了
--
https://i.imgur.com/SNtREeN.jpg https://i.imgur.com/ha2iHAQ.png
https://i.imgur.com/gir9v4q.png https://i.imgur.com/BdczzrL.png
--
有驗證啊 廣大的玩家幫他們
優質好文 推
我有問題 工程師都抽幾隻夏娃
全世界開發都只管自己寫的吧,根本沒co-work
一堆低能PG遇到問題只會先怪網路有沒有問題、硬體不夠?
其實不是合作問題 而是正常來說都會去引用 因為當功能越來越複雜的時候為了趕時間就不可能全部自己來 會去看看底層是不是有人做過類似的事情就直接拿來用 比如說"心轉自身"這件事情 不可能每次遇到就重寫一次 是看 "喔喔~這邊有一個心轉自身的程式碼/物件我複製/引用起來" 以往可能是直接複製來的居多然後稍作修改 越做越大之後變成要用引用的來增加程式碼的可讀性
影響
改了
是 所以有些討論都會提到某技能的基底是哪個技能
時至今日,看起來資料結構/程式架構有問題
我的意思就這樣阿
所以我才覺得很莫名奇妙
並不是改改圖片改數值 沒有這麼簡單
你的意思應該差很多吧... 並不是改改數值改改圖片就好了 就講個常見的例子 某A功能要讀取B圖片 建立了B圖片的指標 然而今天又多了某C功能 他發現A有讀取這B圖片的功能 於是就引用了 但A功能當初可能寫死 他用完圖片後為了怕B圖片站記憶體 就刪除了B圖片的指標 結果平行方面的C功能要抓這B圖片時就爆開了 這問題就在於C功能沒有做好防護抓不到B要怎麼辦 那當然可能一開始C跟A都相安無事 然後時間久了又多了DEFG功能一路繼承引用 然後某個功能碰到了就爆了
※ 編輯: ricky469rick (123.192.69.188 臺灣), 07/28/2020 12:51:20就是改引用的物件 代碼 文字 不是嗎?
就是以前的技術債 慢慢的開始引爆了
yes
神魔的測試規劃很詭異 說不定根本不重視 一堆驗證一下就能
出來的低級bug
推~神魔程式碼其實很多都是新手才會犯的低級錯誤
像變身系統會重複判定的bug...實在是..=_=a
專業推
寫過大程式就知道出 bug 難免,尤其神魔這種疊床架屋的
系統。 但是連當次新增的腳色bug都抓不出來就真的是MH
的鍋
真的是這樣 我們公司自己的產品也是因為久了結構慢慢撐不住 但至少新版本丟給客戶前會經過驗證機台SOP流程跑過 把大問題都先擋下來 客戶拿到後頂多發生些小問題再修正 至於神魔這種直接把滿是肉眼可見的問題版本丟出來...
※ 編輯: ricky469rick (123.192.69.188 臺灣), 07/28/2020 14:27:36中資!
身為同行 說的沒錯 推
系統早期建構的複雜度、工程師自身的經驗、註解完整度
還有工程師人員流動程度還有PM廢物程度(誤) 都會影響
bug 出現機會,偏偏看起來MH都很糟
MH開了測試服…測出了BUG一樣開給玩家享受…
同行推
MH的問題是每次改版都像是沒測試過就丟出來的樣子
因為他不是軟體公司
專業推 MH的資結要好好重新審視啦
本來預計3-5年就要收的遊戲,只是夢醒了,門關了,只能
小心不讓塔倒了
其實就是技術債欠太多...MH也不打算處理 放給它爛
原原po繼續刷存
MH的測試服就是玩家,馬的
推優文
可憐PG要幫前人除蟲
你 是不是厲害的小海豹??
MH沒想到可以撐七年吧xddddddddd
這個現在要處理可能整個系統要打掉重練才有辦法XD
這種線上遊戲 更新的東西越疊越多情況下 後面出BUG的狀況
只會越來越嚴重而已
沒想到能撐7年+1,之前大概想炒短線一波收,結果誤打誤
撞走到今天還拿了好幾次他媽的金賞XDD
還真的是誤打誤撞...MH之後自製的遊戲沒一個成功的
十萬個為什麼的提交答案還會消失 懶的回答了
91
Re: [討論] 對岸的軟體工程師分享一下現在中國公司工作的狀況好了, 程式碼 build 都沒過,是絕對不能回家的,你會害很多人被扣錢。 首先程式碼 commit到分支前,都要設定好jenkins 使用 git push 程式碼到 repository 的分支時, 會觸發CICD流程,大致會執行以下流程:3
[情報] 『1800 神魔特別報告』神魔工程師阿力山情報來源網址: 大家好我是『神魔改革行動部』的神魔工程師阿力山大。歡迎大家觀看『1800 神魔特別 報告』。22
Re: [閒聊] AI與遊戲美術從業者的困境訪談回一下程式的部分, 身為一個寫過iOS Objective-C、碩論寫了Unity C#、前陣子被架去寫網頁javascript, 最近在開始接觸Python,非資工本科的不專業前軟體工程師,這樣應該能講講。 → lbowlbow: 要等到ai能debug才會被取代。寫出code不難,沒bug才難 03/30 09:12 推 guogu: chatgpt可以把錯誤資訊丟回去讓他修阿 只是會有越修越多 03/30 09:1515
Re: [請益] 為什麼功能很容易出現BUG?寫程式其實很像在做料理,身為一個工程師, 可能會遇到的情境大概是這樣: 今天客戶抓了隻龍蝦,只給一句話我要吃龍蝦, 你們是專業的交由你們來料理, 於是經過一番處理後清蒸龍蝦上桌了,X
[情報] 1800 神魔特別報告 遊戲測試部情報來源網址: 懶人包 正在重構底層程式碼 大家好!我是『神魔改革行動部』中的測試部負責人蜜瓜包,感謝大家再次觀看『1800 神魔特別報告』。今天由我回應大家關注的問題。 ==================================7
Re: [問卦] 為啥java會在python之前紅JAVA這東西之前真的不知道紅什麼意思的 完全物件導向 使用每個功能 都要宣告物件出來 然後呼叫簡單的內容 也要一串程式碼 又臭又長3
Re: [新聞] 反對擴大排黑 柯文哲:乾脆犯個小罪,全假設從軟體工程中 SOLID 的角度來看 柯說的正好符合其中的 S - 單一職責原則 在寫 code 時 為什麼要一直注意這些有的沒的的原則與設計模式? 目的就是為了讓 code 在乾淨整潔效率與可讀性中取得一個可以接受的平衡- 你需要的是Git就好了 Git原本是整合多個工程師一起寫程式時 快速Debug和研發程式的工具軟體(版本 主幹 分支) 只是侷限於本端 GitHub的功能雖然也有上述的內容 不過他是遠端數據庫
- 機型名稱:iPhone 14 Pro 512GB 系統版本:16.1.1 問題描述: 想請問聽寫功能無法邊語音輸入邊打字 (如圖)