[閒聊]遊戲開發者抱怨現在程式碼誇張膨脹「可能有99%的內容都是垃
遊戲開發者Cliffski抱怨現在程式碼誇張膨脹「可能有99%的內容都是垃圾」
作為一名從事獨立遊戲設計和程式業務的開發者,克裡夫斯基(Cliffski)在一篇文章中吐槽道 —— 這年頭的「程式碼膨脹」,已經到了令人髮指的地步。
他以自己常使用的一個雲端備份服務為例來說明,這個由某個大公司提供的雲端備份工具,基本上提供的服務就是指向本地端硬碟上的一個資料夾,然後把內容複製到一個遠端伺服器上。而上傳到伺服器時,大公司可能需要做一些與資料庫管理有關的事情,例如給這一堆上傳的檔案分配一個名稱,並驗證誰下載了它。
「這是一家大公司,所以他們有大的程式,而且可能經常被駭客攻擊,所以需要一些安全保障,也需要一些驗證,以確保在我上傳和他們接收檔之間沒有被篡改過。我明白這一點。」他表示。「但基本上這個程度的目的就是列舉一些文件,讀取它們,上傳它們,然後關閉連接,並提供一個日誌檔,說明是否成功,如果不成功,出了什麼問題。事實上,我自己也從頭開始寫過這樣的程式碼,使用wininet API和伺服器上的php與MySQL資料庫對話。與企業級的東西相比,我的東西可能沒有那麼強大,但它確實可以做到。」
不過他表示,今天他所使用的這個大公司提供的上傳工具,檔案大小共有230MB,裡頭有2700個不同的檔案,就為了管理這個過程。
他表示這說明了現在的應用程式,已經超越了「臃腫」可以形容的程度,程式檔案的膨脹已經變成「完全的、徹底的、明顯的荒謬和瘋狂」。
一個普通的程式設計師都可以編寫一個同樣功能的程式,它的程式碼量小到只有這個應用程式的 1/20,足以將文件安全、快速地上傳到伺服器。甚至可以是一個單獨的 .exe 可執行文件,無需成百上千的動態鏈接庫(DLL)。
不僅可行,而且簡單、可靠、高效、易於調試。只需稍微努力那麼一下,它就會起到切實的作用。
那麼,現在的程式碼為什麼會變得這麼大而臃腫呢?
「我見過不少程式員在幹這種爛活,我知曉這種情況是怎麼發生的。」他表示,越來越多程式設計師不去研究通過底層的高效程式碼來完成工作,且許多人甚至從未寫過所謂的好程式碼。很多人往往就是引用DLL函示庫,需要什麼就去找什麼。
「我可以斷言,在你的電腦中許多應用程式,99.9%的程式碼是絕對無用的,甚至從來沒有被執行過。它只是在那裡,在一套多達65個檔案的DLL函示庫中,這只是因為某個程式設計師想做一些微不足道的事情,比如保存一個點陣圖,但他們不想從底層來寫這個程式,所以他們導入了一整桶臃腫的垃圾來實現它。」
舉個例子,當年一個僅 64Kb 的《Elite》遊戲,就包含了龐大的星系、3D 太空戰鬥、職業發展系統、交易、以及數千顆可供探索的行星。
誠然,現如今電腦速度已經快到可以忽略程式的臃腫。但是在你使用電腦時,正在懷疑自己到底有沒有點下去按鈕的這半秒鐘時間裡,頻率動輒數 GHz 的處理器世界裡,早已過去了數十億年。我們浪費了個人計算機 99% 的算力和能耗,就為了這些垃圾程式。
想像一下,在你急著想要在檔案總管中快速搜尋某個檔案的時候,工作管理員卻在那搞一堆廢話,如果你查一下後台,竟有102 個程序在忙碌著,天知道他們在幹什麼!
或許正因如此,我們才在幾乎沒有幹任何事情的情況下,你發現你去年才買的機器,今年就「老了」。
你甚至需要每年都換一部新手機、新電視,以執行那些臃腫不堪的串流媒體 App —— 只
因為它們依賴執行的程式碼是如此糟糕!
他表示他非常懷唸過去程式的黃金時代,程式員們對記憶體和 CPU 的限制瞭如指掌。如今,我們已經被迫生活在了一個效率極其低下、但浪費又如此誇張的泥潭裡。
--
確實
確實
給錢啊 時限跟薪水就訂在那邊 幹嘛自己寫底層
要有以前那種超多限制的環境才有研究這些程式的必要阿
所以你敢刪掉99%的代碼嗎
確實
他去大公司工作就知道了,獨立開發都把事情想得很簡單
確實 你行你上
幹嘛自己造已經有的輪子....
對 我就廢 寫個小程式要引用幾百M的.NET框架
不用自己造輪子 但是使用輪子也該用得更聰明一點吧
可能還是要踏出門一下
那麼肝 自己重寫又沒比較多薪水 幹嘛自找麻煩
嫌肝太新鮮?
如果是接手前人的會留一堆垃圾很正常 因為根本看不懂
包括那個寫的人...
無解啦,就問你接手上一個的碼,你願意全部重寫只為
加一個功能,還是直接外掛一個省事?
不知道寫程式的AI會不會執著於#magic
這就是最典型的沒事幹嘛去造輪子的問題
輪子別人造的 隨便改以後維護很麻煩 但裡面又塞了一堆
如果他是工程師寫了三十年程式 那我可以理解他說的 但現在高
硬體夠強軟體就隨便寫,功能對就可以了
階語言就是叫你直接用別人的輪子 就算那輪子很胖
一部分是空間成本低 所以膨脹頂多讓玩家增加下載時間
一個爛的工程師可以製造三個工作機會.jpg
好像js也是這樣欸
而大公司可能有自己常用的輪子組
錢
我覺得這個人真的把問題想得太簡單 一堆DLL放在那邊就
是為了相容性跟可攜性
你哪天灌個東西就因為少個DLL或是兩個互相衝突 結果導
東西穩穩能動就好 重造出事還要扛責任
致你要花幾天的時間在那邊Debug 最後解法還超級簡單
"與企業級的東西相比,我的東西可能沒有那麼強大,
那你就會寧願留多一點空間放這些DLL了
但它確實可以做到。" <--- 所以他想表達啥?
Techbang呵呵連程式設計師的名字都寫錯
如果目標平台有足夠空間 當然是開發效率>>>程式精簡
現在容量就跟不用錢一樣,哪個消費者在乎大小?只有
switch 版遊戲會加減瘦身吧?然後瘦完載day1修正檔
他好像在說"我做的小項目程式可以比較精簡"的廢話
簡單說 就是因為現在不怕容量不夠
確實
完全理解,我在前公司曾經砍掉系統一半的code再重寫了
1/6去取代,結果網站速度比以前快了10倍有
所以把程式精簡這一步優先度就很低
獨立遊戲開發者 難怪說的出這種話==
有效能需求的時候自然會有人去profiling
自己寫的和接手四五個人碰過的程式就不一樣,講什麼幹話
要在影響效能重大才有理由做 通常都只是佔容量而已沒差
然後呢 接手別人寫的程式是怎麼回事應該知道吧
原來是獨立遊戲開發者講的,難怪
「研究通過底層的高效程式碼來完成工作」這幹話都講得出
你拿過來的東西 要加一個功能 你難道要重新把別人
寫好的東西完全review一遍嗎
團體分工時 當然要選擇肥但很容易看懂的寫法比較輕鬆...
他的意思可能是你能自己造輪子 但有現成的可以用,只是那
哪有這美國時間.. 完整看一遍跟重新開發有啥兩樣
個現成的上面有超複雜無意義的花紋這樣 自己造就能只保留
前人的成果就擺在那 沒什麼事情當然是能不動就不動阿
輪子的功能不需要那堆裝飾
我反而會去注意奇怪的遊戲容量膨脹問題
現在CI/CD可能都比他那個高效重要多了
大公司的程式一堆都是長久pass下來的 你想改還不一定給你
改勒 動了出事誰負責==
能正常運作的就不要去動它 大型專案的工程師定律
雀食
要改就要改一整套完整的 然後還要測試結果沒變
而且很多時候你光要理解某部分某些東西為什麼那樣做都會
有困難了
自吹順便踩大公司
你一個人能完成那你就自己做啊..
簡單說 比起要多繞10分鐘才能回家 找新路的那個出錯成本
同意啊 現在一堆實作就是一大串dependencies 但他舉
獨立遊戲開發不用趕時程商業工具要阿,一個月要我重寫?
自己寫小程式有差不多功能的例子很尷尬==
記得是新德軍總部系列出現時我注意到高達50G
這對於以技術宅起家的id soft而言 臃腫真的是很奇怪
不一定更划算就是 站在第一次探路的立場上會想找新路
說的是正論,但市面上已有造好的輪子,通常就是直接利用了
我他媽才不做輪子 ,我他媽就給你裝輪子 不管大小用途就
給你他媽的裝爆
問題是去追求他所說的那些東西 遊戲公司也不會賺更多錢啊
他舉那例子...痾 一個有工作經驗的人講話像個學生
不過外行人也不在乎就是 甚至記者以為越大越好的也有
他是獨立開發者 如果沒有在大公司當碼農就不會理解
工作經驗不是問題阿 他長期在獨立環境的話這樣想很正常
然而理論上只要他的程式部分有跟任何人合作過
會講出這種話的人,真的想叫他多出去接觸人,別宅在家
理論上應該就能體會到寫程式碼不是這樣
商場最沒價值就是他認為自己很厲害的地方 縮空間沒用
遊戲的話佔空間的絕對不是程式碼啦
不是我要說 就算是我自己寫的 一個月前寫的都看不懂
客戶不在乎你寫得多美多小,好玩好用才是他們要的
有別人的輪子可以用 幹嘛自己造一個輪子
我自己就貢獻了很多QQ
何況是不知道幾個人用多少年寫好的東西
作為工程師我認同啦 reduce code size & performance
合理
我還花時間去研究怎麼優化他們喔
遊戲程式不是在那邊比較誰的檔案較小誰優秀
我甚至覺得只要有deliver on-time壓力的工程師都不會講
出他這種幹話
確實是工程師技術力的考驗 問題是專案是要賣錢的 = =
這就是理想跟現實的差別
上頭只管何時開發好 整天壓時程
用嘴巴說我也知道降低容量 優化很重要阿
現在也不是一塊卡帶只能塞64KB還700MB的時代了 太鑽研這
所以才有這張圖在諷刺阿
一個月前寫的都看不懂 <--- 這就誇張了吧XD
有這種想法是好事啦 遺憾的是很多場合都不在乎
阿程式碼就不是用嘴巴說一說就會優化好的阿
個反而弄錯重點浪費開發進度也不好
嘛 誇張化了啦 但如果你這個月寫了很多奇怪東西
給錢給時間再來討論有沒有這個技術
一看就是沒上過班的勝利組 工作事情有夠多 為了一個小
功能從頭去寫底層出bug誰要修?當然直接抓現有穩定的來
用啊 誰管他99%功能會不會用到(笑
就成本問題啊,容量那麼便宜成本低,為什麼要找個成本很
高的方式來做?
突然有人問你上個月寫的這怎麼寫的 是要回想一番的
尤其是如果你用了啥剛領會的技巧
但code review的時候,PR裡面別人看不懂的通常會要你寫
說真的啦程式庫就算佔也沒多少 影片圖片隨便是幾十倍大小
對不起,我就爛
一段註解解釋一下吧?
我是不認同這種幹話啦 做硬體的真的是能不動就不動 code
能沿用就沿用 你要改 要時間 要人力 啊資源砸下去又出包
不能work直接死去
果然是獨立開發者,科
所以寫註解很重要 而且要寫人話
這個不要求的話 以後誰碰到這段誰就要倒楣了
雀食
八卦是台灣的硬體公司連code review這件事也沒啥在做XD
我知道他想講什麼,但是在 Windows 上面追求這個好像
因為要求寫document更是天方夜譚,而且很榮耀out-dated
很常見的就是註解有寫 然後自己覺得寫得清楚
不太對啊 XD
沒那個美國時間
所以code review 的時候 能要求寫作文就要寫下去
市場上沒這個需求,哪有白痴花錢請人做這個
然後自己幾個月回來看 這誰寫的外星語言
老實講膨脹正常吧 現在都要寫一堆加密的東西
不管軟硬這些話都幹話阿 不然用框架幹啥 也不少用不到阿
以前我還多少覺得連test function在幹嘛都要寫得鉅細靡遺
好煩,碰過一次要解其他人的bug就懂那好處
是阿 你不寫註解 那個test就沒有人會去用
最後一句才是重點,一堆文組學幾句就以為行
傻傻的 dll庫未來擴充 改功能 抓bug都好用 傻子才重寫
所以靠腰的敢刪嗎 我看是不敢吧
所以硬體效能永遠不會供過於求,因為現在軟體工作者只
會弄的愈來愈肥
註釋寫太多就回到重構的老問題了:與其寫一堆註釋,幹嘛
不寫得更易讀呢,然後繼續loop
然後程式沒註解的話還真有可能過幾天就會忘了為何要加
那行就變成所謂的看不懂了 當然會知道這行會幹嘛 但是
為何要在這時做? 有時可能是客戶提出的 也可能是為了
避免觸發其他bug 忘了真的很常見www
與其寫一堆註釋,幹嘛不寫得更易讀 <--不衝突啊
軟體工作者也是知道現在普遍硬體都可以才敢這樣做好嗎
就算是易讀的程式 還是要寫註解阿XD
因為這一段功能你知道 不代表你知道為啥要在這裡
大致上分個段落 每個段落開頭寫一下這段落處理啥
老人臭好重的發言 現在用高階語言開發不就為了用低
廉的人力快速產生穩定成品搶佔市場 還拿自己 side p
roject 來比...
現在的一堆精美網頁20年前可能只是卡死大家電腦
但重構沒有產出又容易出想不到的bug,開發期提出常會被
往後延~
我真的覺得說反正要重構幹嘛寫註解這種話很.....
每行都插註解反而看起來很累
超級認同,隨便寫一寫。反正玩家硬碟很大
寫註解至少每行節省你幾秒的時間在想他在幹嘛
我本來也很認真寫註解 但客戶一天改三次需求 我改完CODE
沒時間改註解啦 ㄍㄋㄇ
很多東西重構完還是洋洋灑灑一大篇 最後還不是要註解
確實
台灣一堆公司根本沒有訂過規範 反正能動就好
寫註解就是一件「我為人人 人人為我」的事情
懷疑他沒跟人合作過
這問題從COM開始就想解決了 到今天也沒有個答案
但是重複造輪子不符合開發成本,那就轉嫁去使用者的硬體ㄅ
不過現在IDE比以前也強很多 有時候確實可以自己看程式碼
去了解程式在幹嘛
開會說瀑布敏捷 然後都只拿對主管有利下屬有害的點混合
4 每個docker image 都是GB起跳
想少寫點註解的話 至少命名要認真想...
每次這種人這種專案到最後都一個比一個肥大
太有效率不就沒事做了?
管他 能動能交給老闆才是最重要的^ ^b
基本上都是時間長短的隕石
從單一功能變套件 套件與套件相依 太肥的套件被抱怨
自信點,把遊戲去掉
現在不是還流行啥敏捷開發嗎 我聽朋友說幾乎天天都要開會
決定方向 這種快速變化的開發模式是要怎麼讓你在那邊慢慢
刻==
三拍子的華爾滋一直這樣舞動下去
除非之後不維護 不然不寫註解只是會婊到自己 當然外包
丟出去能跑就好 時間到了就沒關係的倒是沒差XD
還是要隕石開發 有點忘了
每個人都寫python結果就是這樣啊
自已寫?智障嗎?公司又不會多給你錢來鼓勵這種行為
其實也沒啥不能刻就是 看用途
三小啊 這關python啥事XD
這根python 不python 無關啊 c/c++的世界也一樣
因為成本最高的是維護不是效能和容量啊,效能現在的
硬體能解決,硬碟也比以前便宜很多,但維護不好,死
了就是死了,bug遇到就完蛋了
python:馬的關我屁事
auto config 跑十五分鐘的我都見識過了
敏捷開發根本被用成流星雨開發 比隕石開發還刺激XD
軟體功能就是一層一層堆上去的
以前硬體資源比工程師肝貴才錙銖必較 現在別自找麻煩
一個功能一個模組背後牽扯的相依性就是那麼多
哪裡確實?留言的有多少是工程師
Python可能因為又強又可愛所以吸引很多比較不拘小節(?)
的人寫些鳥程式,但鳥程式不是因為python造成的啊XD
不過這例子很不好 因為顯然套件不只處理上傳這件事情
[閒聊] 卡比開發:容量夠小也是背景品質指標之一
推文一整排都工程師沒錯啊
現在開發中比起用容量小的寫法 程式碼乾淨、debug&後續
更新方便更重要吧 而且內文也很奇怪 我用的都是兩三年前
的一般等級手機電腦 也不覺得容量不夠(一些遊戲跑的比
朋友讀iphone卡啦)
大家是來上班不是改善公司的好嗎
搞不好裡面有vpn 相關的事情 版本控制相關的事情
硬體的進步只是給遊戲開發商在優化工作上偷懶
推文裡應該八九成都工程師喔wwww
現代連driver開發都沒有很講究這個了
我是看一些c++教程開場幾章就強調這點的啦...我自己也就
學些皮毛
聽起來我們很快就要安撫機魂了
應該說這問題從dos時代就開始吵了
C++現在我覺得也滿尬的 C++11之後的程式碼長得好醜
要加一個功能,要選擇全部重寫還是直接掛上去,是人
都選後者
我已經全面改用go lang了
但是當效能很重要的時候 還是多半在使用C++
就像水電師傅去客戶家 一定材料工具開小發財全帶滿
但是這語言本來事static-typed,後來為了迎合現代語言
因為下班時間還沒到
你永遠不知道客戶會突然多出什麼需求 跑回去拿不就尷尬
的開發效率,又引入了 auto 和 lambda function
上面的東西看用grpc 還是看接fastcgi
優化偷懶? 你現在功能還沒寫完 新需求就會一直壓過來了
媽的不同理念的設計同時存在一個語言裡面 就變得好醜==
你就知道2K為什麼會這麼大坨了
人類是有極限的
c++已經發瘋了
size 靠compiler 比較優化比較實在吧
付薪水的老闆 會給工程師空檔排優化項目? 時間是要花錢的
聽起來像慣老闆講的幹話
他講的研究優化底層效率那個要給專門的team做
對啊 Java c#各取所需 c++卻沒完沒了的塞新的典範
真的聽聽就好
嫌程式太大可以用Os下去編
確實
是的 底層最佳化是一個部門的事
前提是你有 source code
用os下去編是啥意思 不懂
gcc的optimize flag啦
他是說 -Os cflags/cxxflags
呃 那請真的要知道optimization level的細節再說
還有真的在意也許該考慮LLVM…
你行你上,糞扣製造機永不停止
現在工具類的桌面App 隨便破百MB,是框架的鍋
那些 Electron apps 有機會變小嗎 XD
事實啊
增加的容量對現在的設備來說根本還好 反倒是一旦增加
了新東西卻沒dll可以debug才糟糕
裝個 skype vscode slack 我們就有三份 browser 了
這問題要問node 與 npm wwww
Clang跟gcc各有優缺啦 不一定
不過vscode是好東西
一個寫程式的最不想做的事情就是去讀別人的程式碼
Electron 沒救吧 js套件就那樣 親爹都想重寫個語言來
改這塊..
不對吧 我還蠻喜歡讀code 的
沒用啊 莫忘maven 與 gradle
以前 mozilla 就幹過 xulrunner,只是效率太爛沒人想用
跨平台除了Tauri ,Electron/Flutter 每個App都難瘦生
如果讀的程式碼邏輯清晰註解簡明扼要是沒問題啦
但遇到那種註解不寫然後又充滿個人邏輯風格的就很想死
註解是參考用的而已啦
論過期的註解跟沒註解哪個比較毒(ry
沒辦法 功力不夠 常常遇到看不懂前一個人在幹什麼的事
其實html5剛出現的時候真的很多人認為使用者介面描述
大一統要來了
不是公司不付薪水給你做這個,是會把資金砸在重刻輪子
這種智障事的公司早就倒了
感覺本串內人人都是碼農 我不是就是了
然後我們迎來了node , webpack, ecmascript的地獄
註解真的很重要 尤其是和硬體相關的code.....
有些人的註解和ptt廢文沒什麼兩樣...
大家都不同領域的碼農吧XD
你被逼著去幫人家抓Bug 對面還要理不理 你要生啃他code
不是邏輯死去就是國文死去
你就會知道註解根本跟救命稻草一樣...
硬體的註解通常應該拉出去寫成wiki
硬體的確實該去看spec 而不是寫在註解
留在程式碼內到最後還是都會被忘記 然後在一堆 branch
翻
spec寫很爛 HW說喔我都跟xxx講過了啊 你問他就好
QAQ
這種事情在前公司幹過太多次了…
明明是他的code 結果xxx說你有看到bug你可以自己修啊
那該花時間整理的就是spec
然後上面的人急著要跟客戶交Sample 你真的會想撞牆
這還好 open source 的專案拉下來甚至沒人給你問
不同領域的碼農共同的痛 > 遇到 bug 結果沒任何資訊
只能靠通靈
遇到過一次就會寧願所有人都跟著大部隊走不要自幹才
不會像這篇的講這種幹話
你去GitHub 看到一堆人問一樣的問題然後問你為何不幫
改
open source的東西你要拿來用 milestone本來就會拉長點
前面要讓你確認過基本功能都正常才行
改了為何不發PR 那才叫白眼翻不完…
老的碼農比較值錢就是他比較會通靈啊(X)
對 就是通靈 久了就變通靈王了
一個程式精簡了但執行跟精簡前一樣,你覺得老闆看得出來嗎
這個比較像學生剛到業界有點臭屁以為自己寫的最好用
珍惜生命,遠離windows開發,你就不會有這麼多DLL
我才剛從ansible 的地獄中擺脫出來 telnet 判斷prompt
的regex 有誤
就想當然耳的小功能 檢查 相容 通用 容錯 都省略來寫
同樣是輪子,根據GNU做出來的輪子就是比較輕
怎麼辦 上週三要demo 我週二在重寫那個python module
等到以後遇到問題 才知道這邊要加判斷 要多檢查甚麼
有時是時間問題,要你短時間就弄出來,從基礎建根本不夠時
間
算了吧 gnu..算了吧
在那些裝置上要怎麼相容處理 然後原本簡單的程式就開始肥
等你有團隊經驗就會知道自幹的程式生命週期都很短
雀食 你去刪刪看 看他還會不會正常運作
有時還要跟上新協定 新環境 又要回去改
我還不如規定全部都用posix 相容的system call然後去
他媽的圖形使用者介面 不會用cli 就滾出公司
不會用vim 直接扣薪水
確實
掩護後台的挖礦軟體?
linux 的so地獄是少到哪裡去
沒有碼農不會CLI吧 如果有那連碼農都稱不上
abi 的坑是少到哪去
那聘你你有什麼好方法管理大型團隊嗎xd
我只管過十人團隊*2 真不知道更大要怎麼辦
也許那根本就不該從工程師角度思考了…
有時間壓力誰會從頭造輪子 又不是沒期限
現在都是什麼要你三個月小改版,一年更一大版
沒錯啊 但我就喜歡寫垃圾 哈哈
效能優化不是第一的話 開發成本能省則省
事實上就是做不到 我現在一台ubuntu desktop 一台mbp
還是用vscode 加上eclipse 加上visual studio (.net
core)做事…
看那 node modules 為什麼總是那麼肥大就知道為什麼了
自己愛刻輪子沒人管你啊
對啊說穿了就是把開發成本轉嫁給客戶的硬體效能
能用幾個畢業生就弄好的程式 我幹嘛派老鳥幫你搞優化
問題是從頭造輪子真的能用之後註定再肥大一次
用輪子跟造輪子的錢一樣的話誰要造輪子
你覺得只有上傳檔案 只是因為你只用到上傳檔案…
現在網路也不是撥接速度 也不是CD安裝
硬碟也很便宜 編譯出來檔案多大不是重點了
反而是 CPU、GPU 這方面的優化比較重要
比你厲害的大神都幫你把輪子弄好了 自己刻除非你夠閒
我不懂程式,但這個世界不就這樣嗎,演化也是從現有的東
西去改去加,能解決問題就照著用,加不上去或是崩潰了再
來想辦法
解決不了的問題所以才抱怨吧
以前會覺得 100MB 很大,現在來說根本超小
搞不好那個套件要處理vpn 要處理CDN, 有p2p的概念 有
介接各種雲服務的api
這是很多菜鳥工程師的特徵 想太少 覺得世界很單純 全
世界都是笨蛋
我用python加上flask上傳檔案五行就寫完了 為何要這
麼肥大
但事實上只是菜而已 這種我看了數十次了
主要還是有其他更佔空間的東西吧
確實
通篇廢話
以前是輪子佔整體成本30% 那就會需要讓他改良
現在這輪子根本佔不了什麼成本 特地浪費時間改這個幹嘛
對 借來整個工具箱你只用到8號扳手 然後怪工具箱肥大
就是因為懂太少了 …
當小說寫碼字阿,寫越多別人看不懂就來問你了
怪工具箱太肥大這比喻不錯 難道運作不用帶工具箱嗎
遊戲會肥大占最重還是美術相關啦 高畫質影片 高解析材
質 圖片 3D模型等
講白了就是獨立環境做久了沒有在一般公司行號跟別人合作專
案才會有這種想法
這就是標準的半桶水,只懂自己的部分
個人時間多 沒有專案時程跟團隊維護壓力
應該把他丟去別的部門看看
第一天看技術債? www
薪水跟接手的人啊
通篇廢話,程式再臃腫也跟速度無關
自己實作輪子 完全無視scalability和maintainability
搞不好還會自己留下安全漏洞沒人知道
引入第三方日後發現還可以版本升級
這才叫進步好嗎 那點容量又不值錢
你要反反組譯的話就得加一堆垃圾code進去啊
時間成本>>>人力、硬體
刪了出事誰負責 反正炸彈不要在我身上爆就好
我不敢刪
所以這個大聲叫囂著要每個人自己造輪子才比較像沒寫過
程式的人吧? 你這麼行你自己造一個輪子給大家用啊 就
看看你的輪子最後能不能取代你看不爽的輪子阿?
來臺灣輪班就會懂了
講得東西合理 我也是站在他這一派 但是我認為這只是開發
上的選擇而沒有孰是孰非
傻傻的 這樣才能創造軟體工程師的就業機會啊
系統太簡單 一堆人要失業了 還好軟體大神前輩們都有想
到 故意設計地很複雜 養活廣大工程師們
大家都馬附加上去,反正只要沒問題就好了,還是一直goto
一直爽
老闆:雇個門房吧 主管:買一個警衛公司好了
確實
不要說遊戲公司,一些銀行或是政府的案子 code都又臭又
長
政府跟銀行更不敢亂動啊
不懂技術債的成本與可怕,跟從小地方做起,就會變以上推
文
敢說人家99%垃圾但自己做得出人家的1%嗎?
樓上通常做得到才敢大聲啦
給多少錢做多少事
低階都自己寫案子時間是要拉到多長
鍵盤程式設計師出動
這串釣出好多軟體工程師XD
亂講!
技術債台高築
硬體的發展導致程式設計師不受限制
大聲的通常是吹牛吧。
為何推文一堆人站在如何當個稱職社畜的角度在思考 而非
這樣是對是錯
幹真的
以前不把模組分出獨立dll會被質疑是不是不會
現在是DLL分出來被用質疑不懂底層,太苦了我
我可以兩秒加上去又不會出錯的事,我幹嘛多花時間改
好底層再去測試半天?
停在過去大概寫十年開發個小軟體的時代?
新手也不敢刪以前的 code 吧?沒事我去動它幹嘛 假如
這個功能突然客戶又要了勒?
看運作裝置啦,現在pc上面記憶體和硬碟空間像不要錢似,你程
式就算再肥能肥到1TB?幾百MB的程式,使用者都不在意了,因為
現在1tb的硬體不到兩千塊,新電腦幾乎都是1tb硬碟了根本沒人
在意那點空間了
如果每個程式都從底層開發,自然短小精悍。但開發週期長
幾倍,我們能擁有的應用就少了。硬體增強後用來增加應用
,這也合理
你寫效能再好,但要花一星期,同樣功能套一堆組件不用一小時
完成,是我也算後者,誰有那個時間和你計較那點不重要的空間
不喜歡人家做好的量產車就閉門造車啊 成本時間自負就ok
除非你的運作裝置只有不到100MB flash,這才要想辦法減法
原作者經歷查一下就有了吧 除了自己成立獨立開發以外
在三家遊戲公司工作過 其中兩家還算有名 一家是開發
過神鬼寓言(Fable)系列的Lionhead 另一家是開發Sims
系列的Maxis 從1997年開發遊戲至今 今年52歲
Python vs C
問題是時間啊,而且大量安全性的patch,重刻少上一個就變
安全性問題要花多少時間去查去修
技術債堆疊出來的巨獸 其實真的不少是垃圾
管那麼多,現在功能寫得出來比較重要好嗎==
可以用就不要動 壞了你要修??
我好奇他是因為不會團隊溝通才變成獨立工作的==
大公司搶市場拼發售 外加工作人員流動率搞 誰給你時間慢
慢鑽研 多出來的上班時間你要幫老闆付嗎==?
很多之所以累積成技術債是因為一開始不需做那麼大規模啊
客戶要新功能當然從現有架構直接加上去 誰跟你每次都打
掉重寫啊 久而久之累積成巨獸也是難免 只要不出bug就好
同意
想得美 你也要看看老闆會壓你的時間完成專案 還是會
跟客戶延期讓你慢慢刻底層
自己重造輪子或許比較快,但會爆胎
所以更新修正你要出錢嗎..
一堆推文的都在大公司被磨的滑不溜手,看不起理想派
講白了就是現在硬體成本太低 寫的好不好就沒人在乎了
他沒有經歷過flash開發時代吧
沒什麼,因為現在寫程式的都是低能兒,搞一堆垃圾騙吃騙
喝,就這樣而已。
IoC、微服務拼起來就是容易肥大 但造輪子有比較好?
跟技術債有點差別吧 可維護性跟精簡程度不必然有關
理想需要時間實現 現實是專案跟客戶不會給你時間
而且他太小看資安了吧
更別說還有團隊問題
確實 但省事
我是不覺得他砍掉99%能重建回來啦 一個商業軟體少說
數十甚至數百人在弄 中間一定有交接的部分 每個人cod
ing style也不同 跟自己精心打造每個零件每個介面是
完全不同的管理方式
放心,客戶跟老闆會好好的「教育」你
...會覺得垃圾根本二流吧 那垃圾不知省多少時間
我以前經理可以code review 完全不加新功能就跟你耗
一個月 案子多的時候他就被火了 現實就是你龜毛的點
很常不是客戶在乎的地方
那些你覺得臃腫程式就是巨人的肩膀
市場只需要五萬的工程師才是效率最大
前人做的瑞士刀就確實堪用啊 從頭打新刀你要學做刀耶
不能賺錢的才是垃圾
數碼寶貝
確實
你行你上
確實,但老闆願意給多少時間讓工程師重新造輪子?
一堆人一看到用別人的輪子就說是技術債 覺得有問題你
自己去重造一個更好的輪子給大家用阿?
就這種底層的東西也被說成是技術債 到底是有什麼問題?
抄來抄去在改成自己想要的.裡面一堆不需要的也懶的刪
笑死,獨立開發有遇過多部門引用嗎,是開公司不是你自
己玩欸
客戶的需求只要量產車就能搞定 你就不用自作聰明幫他搞
手工車 他也不會因此感謝你 以後別人接手也不一定會修
那位遊戲開發工程師要不要自己打造一個遊戲引擎?畢竟拿
別人的來用也不是全部method都會用到吧
無奈啊
微服務有其需求存在,但不適用在遊戲客戶端場景
笑了 舉c++來說 你現在要用一個map, std就幫你做好了,你
只需要其中幾個function ,難不成你還要花時間k一個只有你
專用但效率根本打不贏std::map的東西出來嗎?老闆第一個叫
你滾吧
因為一堆文組轉寫程式?
商業產品就是講成本講效率的, 還在推給老闆不給錢給時
間做蠢事的, 怎麼不先考慮自己願不願意花一百倍的錢買
跟文不文組哪有相關 自己獨立開發或自己寫爽的要
這樣弄當然沒差 現實是公司跟客戶哪來的時間給你
在那邊這樣玩 更別說大型專案是多人團隊合作 誰
有那心力陪你 這樣弄只是變相的在搞自己人而已
功能一樣只有少吃一些空間的軟體
都美工檔案吧
多雲才會說文組寫程式的問題 去把文章看完再推文
幹話
現在的路寬到可以開現成坦克車,在那邊說自組一台腳踏
車多省空間多美好,別人很難體會吧
確實 但是其實跟遊戲沒什麼關係XDDD
不過這時代的問題是,反正電腦很快跑得動,隨便寫就好
確實
這種問題超級常見的 加上時程壓下來 垃圾code就一堆
跟遊戲也不會沒關係啦, 遊戲開發就是時程成本壓最緊的
一堆智障不優化 只會加機器 怎麼解
計劃性汰舊
大家都知道的事 可以自己又寫不出來 加減用
價格一超過60鎂, 馬上一堆人發飆
Unity包一個空的apk就12mb 問題是有多少公司敢棄用
養人去做一個自己要的遊戲引擎
然後這引擎還要能輕鬆跨平台
有一個經測試很圓的輪子 你還要自己造一個不知道耐不
耐操的?
自己寫library裡有的功能才是浪費生命
不要說遊戲引擎了, 現在最賺的手遊很多就只換皮而已
自己刻輪子不是說自己刻好就好了欸,要維護要測試什麼都
要,我平常也喜歡自己造,但這個人根本不懂軟體工程?
花個十年寫新引擎, 拿個畫質效果落後十年的成品誰要買
這也是為什麼這幾年雲端服務開始崛起 你拿顧機房人員
不到一成薪水的錢 有專業公司幫你顧機房+資安
為什麼還要自己建機房
你自己造了個輪子可以動,不代表直接改裝到其他車子上
都相容,人家肥大的輪子至少不會出錯
遊戲現在也往雲端化趨勢 再怎麼笨重也影響用戶端不大了
確實
效能跟容量根本不是問題 自己造輪子寫底層的除了浪費生命
以外 最大的問題是你自己造的輪子沒有經過長時間的驗證跟
測試 比起有成千上萬的開發者在使用的lib 有誰敢說自己的
輪子更穩定更沒bug
對 那些都是人類智慧的結晶 經過千錘百鍊不斷進化的= =
會說出這種幹話八成很難跟其他人合作或是很難在大公司生
存 難怪是獨立工作者
我連他是不是獨立開發者都很懷疑了 獨立開發者做東西
都沒時間了 還有空去嫌東嫌西?
確實 de 一個bug 跑十個出來
看他的獨立遊戲公司開發過12款遊戲了啊
不要重新發明輪子aka
節省開發時間更重要吧
不同意的大概沒寫多久程式或是本身就是製造垃圾程式的=
=
你全凝縮在一起,可用性和維護會更大災難
你行你上阿
這傢伙有沒有跟其他人合作溝通過啊
這種議題不意外地討論到最後就是互相鄙視而已 XD
自幹自爽 維護和後續要擴充會恨死這種人
由儉入奢易,由奢入儉難 完畢。
應該可以改編一個我寫程式原則就是引用到爆的梗 程式碼怎
麼胖炸 我他媽怎麼知道
硬體進步的必然趨勢吧
人類的結晶怎麼能說垃圾
新人都會嘴程式很多垃圾怎樣 但常常改到掛點
現在就拼速度 有寫好沒問題就直接拿來用 除非真的要開發
完全新的
wow改那個底層16格包就不知道耗了多久
開發的重點是賣產品賺錢,不是花很多時間在不能賺錢的地方
很真實
問題是你要確保接你工作的人是否有同樣的能力維護
之前就有人優化gta5開啟速度太慢,原來是跑了幾億次迴
圈,優化後被官方採用還給他獎金
真的說到我心坎裡…
這篇文就第一個例子比較差而已 有些人急著嘴人菜 二
流 沒跟人合作過XD 作者就是自己刻引擎的geek啊
通篇舉例都是在講編譯後的大小 完全不是現今優化重點
GTA5和傲嬌模擬器的經典負面教材 都是CPU GPU的負優化
和大小沒關 也是影響最大的
gta5那個是一個迴圈能搞定的事情用到雙層迴圈
這已經不是軟體開發問題了
傲嬌模擬器component沒有precache, 很多高成本的都放在
每個tick (update() 去跑才會悲劇
gta5不光迴圈 還有不懂得利用hashmap 而是大量if else
這些才是真正最糟糕的 編譯後去計較40mb 80mb意義不大
GTA5應該不是用lib或是自己刻輪子的問題了
軟體業的鄙視鍊在這串表露無遺
又或者如樓上幾樓所說 是工程師本身coding能力的問題 如
果是這樣等級的工程師 那自己造輪子就更加悲劇 不如用lib
其實這年代早就不是自幹的年代了 如果有在看open source
我是覺得爛的工程師乖乖用別人的輪子沒問題 但是等老到
一定程度的時候 都該有個自己造超屌輪子的夢想
的一些熱門專案/framework/library 很多都是幾百甚至上千
contributor 更不用講回報bug的user有多少
單人自幹就算你是天才也有極限
還是那句話 最重要的是你的輪子有多少人幫你驗證過
GTA那問題有點類似比較兩個物件陣列重複元素,暴力法O(n^
2),hashmap O(n).。 遊戲初始n還很小還覺得無所謂,到面
後遊戲內容一多就爆炸了。
買4個輪子,卻送來一整台車的概念。
對 這篇文章其實比較像是在講你只需要一顆輪胎 卻把車
商的所有車都買了的概念
用套的快很多啊 誰那麼努力寫底層
https://i.imgur.com/mVwLyv8.jpeg 笑死,要不是別家手遊公
司太爛我為啥要當米衛兵。
重點是在開發的效率 不是在執行的效率啊 這是商業行為
所以這年頭大家才盡可能地做開源 你想要改掉人家的legacy
你就clone下來自己改最快了
但實際上摩爾定律還活著 你花時間去改絕對不會有意義的
確實 一堆RD喊不懂底層 真的頗呵 寫出來就是一堆垃圾
然後系統慢怪作業系統 怪硬體 呵呵
不用dll要造輪子造到什麼時候 公司要release
不用dll,功能全都自己刻,很精簡很好看沒錯啦
開發時程慢,擴充和維護搞死人
XD 不是啊 這篇留言有些論點不覺得很矛盾嗎? 「這些RD就
是爛,只會call人家寫好的lib,為啥不自己寫底層」
啊RD爛你還叫他自己刻輪子 不怕翻車?
框架/lib沒辦法提高code的上限 但可以很有效的提升下限
永遠有更聰明的人可以幹出比lib更好的輪子 但99%的RD自幹
出來的東西不會比人家弄好千錘百鍊的東西更穩定
你各位如果期望手上玩到的遊戲都是那1%的天才寫出來的 那
可能要多等一倍的時間加上多一倍的新台幣
相較之下我是不介意硬碟空間多個三倍五倍啦....
有差嗎 它也確實能動就好了 你看看python不就這樣壯
大嗎
Linux當初也是能動就樂勝GNU Mach
等到輪子造好 市場早就拱手讓人了
DLL不就模組化概念嗎 一個壞掉馬上就能知道問題在哪
真的 終於有人提出來
大型軟體鄙視鏈現場
達人跟社畜的思考方式本來就不同
容量又不是主要考量的點,穩定可運行最重要,運行效率
其次,容量更是沒差。程式一直崩潰閃退;載入優化前花
十分鐘但優化後可變一分鐘;容量上百G優化後變10G,自
己想看看重要不就很清楚了
確實coder氾濫卻沒什麼programmer
確實 但你能怎麼改變?
只會說嘴,付錢優化啊
以前就是都在自幹才會程式一堆bug 又容易掛掉呀
推
確實
大公司開發的產品系統架構要有彈性阿 通通寫死當然可以
很小但不易擴充阿 不過架構怎麼寫都是case by case啦沒
有一定
笑死 這是真的
錢 屁話
正常啊,WINDOWS 的更新也是這樣
行政程序也差不多是類似的設計
工程師花一堆時間精簡了程式碼會加薪嗎?
二八法則同樣適用
讓我想到 photoshop 早期用 HDD 跑到現在用 SSD 跑開啟
都一定要等快十秒
雀食 問題我是程式逃兵 現在逍遙自在
為了快那不到半秒的時間重寫一個 到底是高效率還是低效率
幹誰要寫底層,老人臭語言
我連dll都要看半天了還去寫lib 有人也還沒出來腦子要先溢
血了
啊就拿多少錢辦多少事啊
現實中在一堆人輪流接手狀態下,重寫根本不可能
要花的心力遠大於效力,把問題推給用戶端讓他們用
自己的設備客服就好
因為這樣最省時
確實 但是調整成本過高 效益又很差 最後就是繼續放在那
有函式庫了 除非很追求執行效率,還要自己造輪子嗎
這完全是菜鳥發言
遵循框架是為了統一開發語言降低溝通成本,功能與
安全是需求,別混為一談,而需求會決定採用什麼框
架來解決問題,獨立開發者我好棒,我能寫高效代碼
但別人看不懂的思維,才是一直重造輪子的原因
大家都會抱怨動態連結垃圾庫,就算放手也沒人願意改XD
確實
1開發時間,2測試問題
你用現成的庫既省時間而且測試人員也不用再重新驗證
爆
[紐約時報] 原神:在日本擅長的領域中擊敗日本以下是GOOGLE機翻+手動修飾 內文如有錯漏屬正常狀況 在日本擅長的領域中擊敗日本:來自中國的沉重打擊 Genshin Impact 是日本奇幻角色扮演遊戲的近乎完美再現,已經賺了數十億美元,並在爆
[輕小] 一手包辦公司系統的我被開除了嗎?1 (捏作者: scotttomlee (星野夢美は俺の嫁!) 看板: LightNovel 標題: [感想] 一手包辦公司系統的我被開除了嗎?1 (捏 時間: Sun May 29 16:33:36 2022 BLOG版58
[請益] 大家有遇過程式碼被抄襲的情況嗎?朋友沒發文權限代為轉發 大家好,小弟的公司最近遇到程式碼被一家同業抄襲 (產品名稱:樂樂團購訂單管理系統), 我們原本上架一個 Google Chrome Extension 是給訂購用戶使用的, 所以沒有開放搜尋,41
[問卦] 為何mobile程式在IT毫無價值資工系的專題指導教授跟我們班上說 資工系畢業的出來別做像什麼手機程式如iOS/Android之類的行業 做那種只會顯得自己沒出息,大材小用 那種既沒有技術性也沒有價值可言的東西,現在這個時代連小學生都會做 而且他也特別強調32
[閒聊] 中國遊戲的程式碼有寫得比較好嗎常常看到中國網友吐槽 某某遊戲的程式代碼是一坨屎山 又想到最具中國代表性的原神好像也沒什麼大包 中國遊戲的程式碼真的有寫的比較好? 有沒有西洽13
Re: [問卦] C++可以啟發孩子的程式天份嗎?那要看你怎麼定義程式天份 如果是講演算法跟資料結構 用C或Python下去操比較快 如果是講計算機結構 一樣也是用C跟OS下去操 國中時 C++是我第一門接觸的語言 那個時候要做遊戲的難度不低12
[問卦] 正在面對程式碼寫程式的人有感情嗎?最近看到馬斯克收購推特的新聞 馬斯克說推特上面機器人太多 嗯然後得到原本推特的回應是說: 你亞斯伯格症 看得像在鬥嘴一樣還滿有趣的8
[Vtub] 在風真x拉普新Cover裡出現的程式碼在這首新Cover中,在副歌的時候越聽越眼熟 試著查了一下發現,的確是Linux kernel的程式碼 內容是2012年Spotify的fork分支5
[情報] 駭客開始利用Nvidia程式碼簽章散布惡意程駭客開始利用Nvidia程式碼簽章散布惡意程式 文/陳曉莉 | 2022-03-07發表 Nvidia在今年的2月23日遭到駭客入侵,LAPSUS$ 駭客宣稱自Nvidia系統上盜走了1TB的資 料,包括驅動程式、韌體或其它技術資料等,除了7.1萬名Nvidia員工資料已在網路上流 竄之外,駭客也公布了兩個Nvidia的程式碼簽章憑證,而且很快就遭到惡意程式的濫用,
爆
[閒聊] 男弱女強(物理)的男性向作品67
[Vtub] 比彩虹社還要強的下水餃公司:NEXAS58
[法米通] 《瑪利歐賽車8 DX》等任天堂遊戲霸榜!57
[蔚藍] 為什麼要說那樣的話55
[閒聊] Jump新連載《極東死靈法師》1話51
[扁掉] 八寶備仁 雪女立繪45
[討論] 現在買PS5我有什麼可以爽?47
[閒聊] 曾經的大招變得很廉價的案例?46
[妮姬] 關於利弗林(29、30章雷)44
[閒聊] 身高不到170的男生你可以嗎?74
[Vtub] 白玖ウタノ 10萬訂閱耐久38
[五等分] 可能會出五胞胎跟風太郎蜜月的動畫40
[妮姬] 想要開始認真玩,麻煩版上大大指點37
[討論] 男子高中生都這麼無聊的嗎?36
[閒聊] 看的懂JOJO 看不懂咒術 是我的問題嗎36
[24春] 迷宮飯17瞇瞇眼開眼總是特別煽情36
[閒聊] 人造人是不是本性沒這麼壞32
[閒聊] 遊戲王鬼故事 #遊戯王怖い話爆
[閒聊] 恐怖電影《小美人魚》海報釋出30
[閒聊] 尤蓓爾:我們開始約會了29
[閒聊] 你會喊龜派氣功還是龜派氣功波29
[推薦] 求推薦懸疑類/戀愛番/想哭番!!28
[24春] 迷宮飯 17 大場面27
[問題] 這遊戲是啥啊26
[SEED] 其實福田才是財團B的最佳銷售員吧34
[Vtub] gura hololive meet宣傳23
[閒聊] 有禿頭困擾的角色?23
[情報] FF7Re看得到愛麗絲內褲23
[MyGO] 祥子可以把MyGO五人告到關到死嗎?22
[問題] 女性聲優都會一起洗澡? (聲優廣播雷