怎么做代碼 什么樣的代碼叫好代碼?
什么樣的代碼叫好代碼?好的代碼,滿足兩個(gè)條件:能達(dá)到預(yù)期效果,容易理解。代碼的不同不在于功能能否實(shí)現(xiàn),而主要在于實(shí)現(xiàn)的質(zhì)量。有些代碼雖然實(shí)現(xiàn)了效果,但另一個(gè)程序員看不懂,無(wú)法維護(hù),也是壞代碼。現(xiàn)在在軟
什么樣的代碼叫好代碼?
好的代碼,滿足兩個(gè)條件:能達(dá)到預(yù)期效果,容易理解。
代碼的不同不在于功能能否實(shí)現(xiàn),而主要在于實(shí)現(xiàn)的質(zhì)量。
有些代碼雖然實(shí)現(xiàn)了效果,但另一個(gè)程序員看不懂,無(wú)法維護(hù),也是壞代碼。
現(xiàn)在在軟件行業(yè),程序員加班是很常見(jiàn)的。疲勞將不可避免地影響代碼的質(zhì)量。
他們大多急于達(dá)到職能要求,完成領(lǐng)導(dǎo)安排的任務(wù),只以完成為目標(biāo)。
這種不考慮長(zhǎng)遠(yuǎn)的工作方式在短時(shí)間內(nèi)實(shí)現(xiàn)了目標(biāo),但從長(zhǎng)遠(yuǎn)來(lái)看是個(gè)大問(wèn)題。
一旦程序員離開(kāi),新來(lái)的人需要很長(zhǎng)時(shí)間才能接手。項(xiàng)目的可擴(kuò)展性和穩(wěn)定性沒(méi)有保證。
尤其是一些外行領(lǐng)導(dǎo)只知道如何為上級(jí)做貢獻(xiàn),不能科學(xué)安排時(shí)間。
功能需求一經(jīng)更改就立即更改,新功能即將出現(xiàn)。因此,工程設(shè)計(jì)不斷調(diào)整,整體建筑穩(wěn)定性受損。
整個(gè)行業(yè)還沒(méi)有意識(shí)到代碼質(zhì)量的重要性,也沒(méi)有對(duì)代碼的敬畏。它只著眼于現(xiàn)在而忽視了長(zhǎng)遠(yuǎn)。
只有行業(yè)人員達(dá)到飽和,淘汰不合格的程序員和產(chǎn)品經(jīng)理,好的代碼才能形成趨勢(shì)。
計(jì)算機(jī)哪個(gè)編程好?
我想如果你只是玩,現(xiàn)在網(wǎng)上有那么多的資料,如果你看了每種語(yǔ)言5分鐘的介紹,你就做不到了。我認(rèn)為哪種語(yǔ)言容易學(xué)并不重要。不管怎樣,只是玩而已。
如果你說(shuō)你想在編程領(lǐng)域工作,那么你要學(xué)的是一個(gè)錯(cuò)誤的命題。我個(gè)人認(rèn)為一個(gè)師范生在大學(xué)時(shí)至少應(yīng)該接觸過(guò)四種語(yǔ)言,否則他會(huì)不好意思說(shuō)他學(xué)的是計(jì)算機(jī)。當(dāng)然,這涉及到另一個(gè)命題,比如先學(xué)什么語(yǔ)言。雖然一個(gè)國(guó)外的編程初學(xué)者網(wǎng)站推薦JavaScript作為學(xué)習(xí)的第一語(yǔ)言,但我個(gè)人認(rèn)為它在中國(guó)不太可行,因?yàn)橥鈬?guó)人相對(duì)比較笨,因?yàn)樗麄冊(cè)趯W(xué)習(xí)JavaScript的時(shí)候不會(huì)考慮將來(lái)能不能賺錢(qián),他們也沒(méi)有中國(guó)人那么在乎。所以學(xué)習(xí)可能更好。中國(guó)第一網(wǎng)。
不必編譯通用軟件。傳統(tǒng)軟件可能有更多的C/C,但并不意味著它是好的。大部分只是歷史遺留下來(lái)的問(wèn)題。也就是說(shuō),QQ發(fā)展這么多年了,突然換語(yǔ)言太麻煩了。所以你不必?fù)?dān)心普通軟件是由什么組成的。您可以看到eclipse、XMIND和其他著名的軟件甚至都是由Java構(gòu)成的,盡管我認(rèn)為Java根本不適合編寫(xiě)桌面軟件。我是說(shuō),不要太擔(dān)心這個(gè)。沒(méi)有最好的東西。就像微軟在使用。Net寫(xiě)網(wǎng)站,Google用Python寫(xiě)網(wǎng)站,Oracle用java寫(xiě)網(wǎng)站。你認(rèn)為誰(shuí)愚蠢?你的智商比微軟和谷歌的工程師高嗎?所以,如果你認(rèn)為自己只是在玩編程,那也沒(méi)關(guān)系。雖然我對(duì)汽車(chē)了解不多,但可以把它想象成奇瑞有五只手,最低配置是QQ。。
雖然我沒(méi)有寫(xiě)太多的代碼,但我以前讀過(guò)一段,想和大家分享,哈哈
!一個(gè)程序員接錯(cuò)了代碼,程序員看了代碼很頭疼,因?yàn)闆](méi)有注釋行,然后偷偷地罵:這個(gè)程序是誰(shuí)寫(xiě)的?沒(méi)有筆記。我必須把結(jié)構(gòu)分成不同的層次。越想越委屈。但看著它,他覺(jué)得代碼越來(lái)越熟悉了。是的,這個(gè)節(jié)目是他寫(xiě)的。哈哈
!因此,必要的注釋對(duì)于代碼是非常必要的。如果你想到那個(gè)程序員,你甚至認(rèn)不出你寫(xiě)的程序。另一個(gè)程序員接手不是更有效嗎?
雖然我寫(xiě)的代碼不多,但我偶爾會(huì)修改站點(diǎn)構(gòu)建系統(tǒng)上的一些模板文件。帶注釋的代碼組織得非常好??雌饋?lái)不僅賞心悅目,而且更容易找到錯(cuò)誤的代碼。我認(rèn)為對(duì)于編寫(xiě)程序的人來(lái)說(shuō),要高效地編寫(xiě)代碼,必要的注釋是必不可少的
如何高效的寫(xiě)代碼呢?
感謝您的邀請(qǐng)。作為一個(gè)代碼農(nóng)場(chǎng)主10多年來(lái),我看到了太多美麗的代碼。
我經(jīng)常使用的Java、swift和JavaScript更是數(shù)不勝數(shù),但總的來(lái)說(shuō),我最喜歡的漂亮代碼有以下特點(diǎn):
:可讀性強(qiáng),包括有意義的命名、清晰的邏輯、適當(dāng)?shù)淖⑨尩?/p>
函數(shù)應(yīng)該簡(jiǎn)短,只做一件事;不要寫(xiě)重復(fù)的代碼;不要寫(xiě)無(wú)用的代碼。
:每個(gè)類只做一件(類)事情。不管它是什么樣的類,它只做一件(類)事情。(面向?qū)ο蟮谋举|(zhì))
斯威夫特強(qiáng)烈推薦斯坦福大學(xué)白胡子教授講授的課程,該課程口語(yǔ)流利,代碼編寫(xiě)精美。
JavaScript更是如此。作為世界上最流行的語(yǔ)言,GitHub上的許多明星項(xiàng)目都很好,所以我不會(huì)一一列出。