1 回答
TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊
歸根結(jié)底是你的能力不夠、對(duì)這個(gè)語言不熟悉,而不是這個(gè)語言本身,bug是不可避免的,如何在設(shè)計(jì)階段通過合理的設(shè)計(jì)和約定來避免bug,以及出現(xiàn)bug后怎么高效定位、解決bug,并從中吸取教訓(xùn),是一個(gè)程序員應(yīng)該具備的最基本的素養(yǎng),如果你根本就不了解語言的特點(diǎn),不知道怎么提高運(yùn)行效率,實(shí)現(xiàn)前沒有好好設(shè)計(jì)模型,隨心所欲瞎逼寫一通;今天定義了一個(gè)數(shù)據(jù)類型,明天又按另一種類型寫;今天這個(gè)函數(shù)是這個(gè)作用,明天就變那個(gè)作用了;全局變量滿地跑,變量名abcd排著用,自帶混淆,那你換什么語言寫都是一堆bug。動(dòng)態(tài)語言還好,你還能運(yùn)行起來,靜態(tài)語言你連編譯都編譯不出來,到時(shí)候你還得發(fā)個(gè)問題問:除了C++,能換一種能編譯出來的語言嗎?
另外推薦你在熟悉了語言特性之后再遷移到typescript,包含靜態(tài)類型檢查,但不是說就不會(huì)有bug。
不知道你有沒有看到,我把底下的回復(fù)貼上來
會(huì)有這樣的想法說明你的能力不足,需要多看別人的或者框架的代碼,學(xué)習(xí)別人的思路,學(xué)習(xí)框架的設(shè)計(jì)思路。
有bug可以接受,但低級(jí)bug多了(單個(gè)頁面中兩三個(gè)低級(jí)bug就可以毀掉用戶體驗(yàn)),欠缺考慮的地方多了就會(huì)讓人覺得你們太過馬虎。要達(dá)到各方面盡可能周全的考慮,可以通過抽象和模塊化實(shí)現(xiàn),各種框架就是幫程序員干這種事的。此外,確定單點(diǎn)/單個(gè)模塊無明顯bug后再將其整合進(jìn)其父模塊。
不妨在實(shí)現(xiàn)前通過畫程序框圖/結(jié)構(gòu)圖/數(shù)據(jù)流圖/狀態(tài)機(jī),然后根據(jù)此設(shè)計(jì)實(shí)現(xiàn)。實(shí)現(xiàn)時(shí)一定要寫注釋,不要求每一句都要注釋,之前每個(gè)函數(shù),每個(gè)模塊都要有注釋標(biāo)明其作用,復(fù)雜的模塊最好還要標(biāo)明其思路,單句可讀性差的騷操作也要注釋。
你排斥的不是js和bug,是這份工作。
回答你的評(píng)論:直接搜索即可。這些東西是軟件工程里的概念,小工程可有可無,大工程一般還是要借助這些東西,當(dāng)然如果你小工程都做得很頭疼了也可以用這些東西幫助你開發(fā)。
舉個(gè)開發(fā)方法的例子(實(shí)際有前人總結(jié)的若干軟件開發(fā)模型):
添加回答
舉報(bào)
