你好,歡迎進(jìn)入江蘇優(yōu)軟數(shù)字科技有限公司官網(wǎng)!
發(fā)布時(shí)間:2023-07-17
瀏覽次數(shù):0
明天小新就給大家分享一些提升編碼能力的應(yīng)用方法,學(xué)習(xí)并運(yùn)用到實(shí)踐中,你也可以成為一名熟練的編碼工人~
編輯
目前編輯器的種類繁多,人們不知道選擇哪種編輯器才能提高工作效率。
就我而言,我主要只使用代碼,而不是使用或使用 Xcode 的 iOS 所需的代碼。
這是由 開發(fā)的編輯器。 這是開發(fā)出來的,聽起來很棒! ! ! 幾乎所有語言都受支持,無數(shù)附加插件,AI代碼建議,漂亮的界面和藍(lán)色色調(diào)(不是文本,但......仍然是黑色)
過去,我只使用 Text(當(dāng)時(shí)不流行)。 大量的插件(下面討論)為我節(jié)省了大量手動(dòng)檢查和修復(fù)錯(cuò)誤、格式代碼、git 鏡頭、終端等的時(shí)間……因?yàn)槲也辉傩枰诰幋a時(shí)解決常見的小錯(cuò)誤。
如果您編寫 PHP,您一定會(huì)喜歡它。 如果你編輯它,你一定會(huì)喜歡它。 不用說,這個(gè)編輯器功能強(qiáng)大,而且只支持一種語言。 我是一名全棧開發(fā)人員,有 、HTML、PHP、React 經(jīng)驗(yàn)……我使用它是因?yàn)樗浅?qiáng)大,支持很多插件,尤其是手動(dòng)補(bǔ)全功能非常好。
一見鐘情
我花了最多的時(shí)間,也讓我最沮喪的是語法錯(cuò)誤,比如未聲明的變量/函數(shù)、空表針、缺少重音符號(hào)等等……隨著代碼的增長,一個(gè)人必須讀取數(shù)十個(gè)文件,很容易感到疲倦鼻子亂了,腦子亂了,開始用顫抖的雙手敲下每一行代碼,這樣就很容易粗心犯錯(cuò)。
使用時(shí),這個(gè)插件可以幫助查找錯(cuò)誤、檢測句型和格式化代碼,從而減少編碼漏洞,并使代碼在按照當(dāng)前標(biāo)準(zhǔn)格式化時(shí)看起來更好。還支持許多其他大佬:、React、Vue 等。
尤其是和and結(jié)合起來,這個(gè)搭配堪稱完美。 可以立即檢測代碼輸入,以查看是否存在錯(cuò)誤或語法問題,并提供有關(guān)如何使用函數(shù)和變量以獲得最佳結(jié)果的建議。 還有手動(dòng)格式代碼,您一定會(huì)喜歡的。
不僅如此,還可以用于低級(jí)代碼,我更喜歡,因?yàn)樗梢灾С皱e(cuò)誤檢查并提供最佳代碼建議。
最佳目錄結(jié)構(gòu)
我最近開始“接受”并告訴自己一件事:
不要從一開始就嘗試優(yōu)化項(xiàng)目結(jié)構(gòu)
過去,當(dāng)啟動(dòng)一個(gè)項(xiàng)目時(shí),無論大小,我都會(huì)花很多時(shí)間選擇最佳的項(xiàng)目結(jié)構(gòu)。 我在微軟上閱讀了各種“文件夾結(jié)構(gòu)的最佳實(shí)踐”、“代碼結(jié)構(gòu)...”,但仍然想知道這個(gè)結(jié)構(gòu)是否是最好的,我應(yīng)該選擇這個(gè)編碼框架嗎? 這是特別耗時(shí)的。
但我也意識(shí)到,雖然我嘗試使用其他良好的結(jié)構(gòu),但幾天后代碼看起來就像一坨屎。 由于我的系統(tǒng)思維不好,所以不管原來的代碼有多漂亮,最后還是出了問題。
從一開始就不要過多考慮選擇哪種架構(gòu)以及如何組織它。 選擇一個(gè)方向或者一個(gè)庫、一個(gè)框架,然后開始研究,邊走邊改進(jìn),這樣會(huì)更好、更實(shí)用。
如果您對(duì)結(jié)構(gòu)良好的項(xiàng)目感興趣,我正在分享一個(gè)名為我讀過很多文檔并發(fā)現(xiàn)它們結(jié)構(gòu)非常好的框架(非常相似,盡管我不太喜歡它)
當(dāng)您認(rèn)為您的代碼“損壞”時(shí),請(qǐng)使用 .log
我很確定 .log 是我在編譯時(shí)最常用的。 這樣做的主要目的是看看感興趣的數(shù)據(jù)是否真實(shí)。
就我個(gè)人而言,我覺得編程離不開數(shù)據(jù),無論你使用什么語言,所以如果你聽到任何令人不安的代碼,看起來不正確,你應(yīng)該使用.log來確認(rèn)。
也有很多人覺得調(diào)試器應(yīng)該看起來更專業(yè)一些。 還支持將“調(diào)試”放入代碼行中以獲得更好的洞察力。 其實(shí)這對(duì)我個(gè)人來說是沒有必要的,.log會(huì)注意到代碼中的哪一行,使用.log越快越方便。 我還在 上發(fā)現(xiàn)了一些世界著名的編碼專家一直在使用 .log
還需要注意的是,.log完成后,刪除前請(qǐng)檢查所有內(nèi)容,不要放到git上。 會(huì)讓人失望,看著就心痛(就像我一樣)
審查
在編碼過程中,往往需要繁瑣、復(fù)雜的代碼。 我們擔(dān)心,當(dāng)我們很久以后再次閱讀這段代碼時(shí),我們可能不知道這段代碼是做什么的。 或者懷著一顆人道主義的心,希望以后讀到這段代碼的人能夠明白這段代碼的作用。
就我個(gè)人而言,我發(fā)現(xiàn)撰寫評(píng)論確實(shí)很有幫助,尤其是當(dāng)項(xiàng)目涉及很多人時(shí)。 而且sublime text 3 js代碼格式化,我們也不想每次看不懂的時(shí)候就去問寫代碼的同學(xué),而這個(gè)同學(xué)在修復(fù)測試人員安排的大量錯(cuò)誤時(shí)也疏忽大意。 而如果代碼本身能夠被解釋,那么以后看到代碼的人就能立即認(rèn)出它,這樣就可以節(jié)省時(shí)間。
然而,評(píng)論也必須看起來合理且舒適。 沒有必要對(duì)所有內(nèi)容進(jìn)行評(píng)論。 這有時(shí)會(huì)使代碼難以閱讀并且耳朵不舒服。
在編寫代碼時(shí),我選擇易于理解的變量/函數(shù)名稱,并且不要讓長類/函數(shù)處理太多內(nèi)容。 相反,我會(huì)將其拆分為較小的類/函數(shù)(但不要太多,拆分必須合理,并且不會(huì)再次引起耳痛)。 在需要的地方進(jìn)行評(píng)論并練習(xí)編寫“自我解釋”的代碼。 只要閱讀它就知道它的作用。
使用ES6、7、8、9標(biāo)準(zhǔn)
它是一種快速發(fā)展的語言,添加了許多強(qiáng)大的功能/庫。 據(jù)我所知,每年人們也會(huì)發(fā)布一個(gè)標(biāo)準(zhǔn),稱為ES。 這些標(biāo)準(zhǔn)中的每一個(gè)都包含開箱即用的新功能。
20156(ES6)
20167 (ES7)
20158(ES8)
20159 (ES9)
·(ES10)
·...
為此,如果您利用 ECMA 的強(qiáng)大功能,代碼將比僅使用傳統(tǒng)的 for 和 if、while 循環(huán)看起來更好、更優(yōu)化、更酷??(因?yàn)楸疚牡淖髡咛蓯哿耍?/p>
以下是我在編碼時(shí)最常用的一些函數(shù)/運(yùn)算符:
跳過 / 直接進(jìn)入 Async/Await
/
編碼的缺點(diǎn)是我們必須大量使用 API。 當(dāng)前端或第三方調(diào)用API獲取數(shù)據(jù)并顯示時(shí),需要進(jìn)行以下操作:
如果您只想在成功檢索用戶列表后調(diào)用另一個(gè)API,通常需要執(zhí)行以下操作:
當(dāng)您想要順序調(diào)用一系列 API 時(shí),就會(huì)發(fā)生不好的事情。 當(dāng)項(xiàng)目規(guī)模擴(kuò)大并處理越來越復(fù)雜的請(qǐng)求時(shí),您會(huì)看到以下情況:
異步/等待是救星
自 ES6(2015)以來,引入了 async/await 作為/替換來處理異步操作。 async/await 的用處是幫助編寫看起來同步的異步代碼,它逐行運(yùn)行并且看起來非常干凈。
里面的代碼可以使用async/await重畫:
有一些注意事項(xiàng):
Await 總是出現(xiàn)在 async 之后
使用try/catch捕獲異步函數(shù)中的錯(cuò)誤處理操作
wait 的本質(zhì)是等待返回值,因此使用過多的 wait 有時(shí)會(huì)減慢應(yīng)用程序的速度。
使用 async/await 代替常規(guī)/的另一個(gè)用途是使用 try/catch 可以檢測 async/await 錯(cuò)誤。 將捕獲 try/而不僅僅是 async/await 中的所有其他錯(cuò)誤
使用增強(qiáng)的代碼質(zhì)量
故事開始了……
我首先用 C 編程,然后用 Java 編程。 這種語言功能強(qiáng)大,需要非常嚴(yán)格的代碼,需要數(shù)據(jù)類型(字符串、布爾值……)或訪問規(guī)范(公共、私有、受保護(hù)……)的清晰完整的定義。 這天我很無聊的跑代碼,因?yàn)槲也恢浪枪械倪€是私有的,什么數(shù)據(jù)類型,所以我就一直跑到報(bào)錯(cuò)為止。
后來開始用(或者PHP,),不管數(shù)據(jù)類型,都大大簡化了。 只需聲明要使用的變量:
讓x=
測試='這是測試'
=[1,2,3,4,5]
這也是我從一開始就喜歡JS的一個(gè)激勵(lì),因?yàn)榫湫秃堋白杂伞?,沒有那么混亂,而且代碼看起來干凈漂亮。 而生活并不像一場夢(mèng)。 漸漸地,我意識(shí)到,當(dāng)一個(gè)項(xiàng)目有很多人寫代碼,然后重新閱讀代碼時(shí)。 真的很郁悶。 由于我不知道這個(gè)變量是什么,這個(gè)函數(shù)會(huì)返回什么類型的數(shù)據(jù)? ……
const?var1?=?db.column1
const?var2?=?db.column2
const?var3?=?db.column3
const?var4?=?db.column4
那么我們現(xiàn)在應(yīng)該做什么呢? ? 實(shí)際上使用.log
const?var1?=?db.column1
console.log(var1)//->string
const?var2?=?db.column2
console.log(var2)//->boolean(true?/?false)
const?var3?=?db.column3
console.log(var3)//-?>?number
const?var4?=?db.column4
console.log(var4)//->array
這只是浪費(fèi)時(shí)間,而且我以后不太可能再回來寫代碼,但新的代碼讀者也不會(huì)理解。 之后,我或其他讀者必須做幾十個(gè).log語句才能理解,這段代碼是用來做什么的?
解決了這個(gè)問題
在我看來,是的“升級(jí)版”。 如今,代碼將具有明確定義的類型(字符串、布爾值、數(shù)字等)、可訪問的訪問器函數(shù)(公共、私有)……以及許多其他內(nèi)容。 編譯后的代碼將被編譯為正常,因此可以照常運(yùn)行,不需要特殊的腳本或其他工具。 看一些例子:
我五年前就聽說過它,但一直不喜歡它,也不想使用它,因?yàn)槲揖褪窍矚g自由。有時(shí)我想嘗試一下,但我的鼻子很敏感,每次看到亂七八糟的東西,我的耳朵變得更敏感
然而,不久前,我決定改用這個(gè),因?yàn)槲以陂喿x舊代碼或其他人的代碼時(shí)遇到了我提到的嘔吐問題。 而且,開發(fā)者社區(qū)傾向于使用它sublime text 3 js代碼格式化,并且它經(jīng)過了很好的審查。
目前,深受開發(fā)商歡迎。 庫或框架(React 或 Vue)重視對(duì) . 對(duì)于那些不知道的人:Vue3 絕對(duì)是 100% 重繪。 同時(shí),對(duì)于開發(fā)來說,您不必?fù)?dān)心質(zhì)量和支持問題。
CI/CD - 代碼 -> 測試 -> 部署
手動(dòng)測試
聽我說完,你正在做的項(xiàng)目遲早會(huì)失敗。 應(yīng)對(duì)的最好辦法就是邊走邊改進(jìn),總是花20%的時(shí)間來改進(jìn)。 唯一可以確定的方法是在不產(chǎn)生錯(cuò)誤(或最少錯(cuò)誤)的情況下進(jìn)行改進(jìn),或者編寫測試。
你知道,甚至可以在編碼之前編寫測試( 推薦這些方法)
CI/CD——持續(xù)測試和部署
CI/CD(持續(xù)集成/持續(xù)集成),這是當(dāng)前的趨勢(shì),這些技術(shù)有助于手動(dòng)持續(xù)編譯代碼、測試和部署。
事實(shí)上,幾乎所有 CI/CD 工具都已經(jīng)集成到 . 所以不用擔(dān)心,您只需在設(shè)置后推送代碼即可。 平臺(tái)(、、桶)負(fù)責(zé)剩下的事情。
我希望讀完本文后,您能夠?qū)W習(xí)并找到提高編碼技能的方法。
-END-
如有侵權(quán)請(qǐng)聯(lián)系刪除!
Copyright ? 2023 江蘇優(yōu)軟數(shù)字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服務(wù)提供商
13262879759
微信二維碼