国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

算法——讓你的代碼更具有可讀性

這篇具有很好參考價(jià)值的文章主要介紹了算法——讓你的代碼更具有可讀性。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

今天其實(shí)算一個(gè)小專欄(內(nèi)容參考《代碼大全2》)明天開(kāi)始更新具體的算法,這些算法我都會(huì)從力扣上找,語(yǔ)言的話暫時(shí)是c和c++還有c#的寫(xiě)法(不要過(guò)于專注于編程語(yǔ)言,語(yǔ)言只是工具,關(guān)鍵在于學(xué)習(xí)思維)

一、高質(zhì)量子函數(shù)

1.要有正當(dāng)理由

我們創(chuàng)建子程序的目的,就是讓主函數(shù)盡量簡(jiǎn)潔,復(fù)雜的部分放到子函數(shù)或者是一些需要反復(fù)調(diào)用的模塊

只有針對(duì)以上的兩種情況時(shí),我們才會(huì)構(gòu)造子函數(shù),對(duì)于過(guò)于簡(jiǎn)單而且調(diào)用較少的部分,就完全沒(méi)有必要了

所以創(chuàng)建子函數(shù)要有正當(dāng)理由

2.要有好的名字

什么是好名字

假如有一個(gè)函數(shù)命名為abc(),你覺(jué)得這個(gè)函數(shù)要實(shí)現(xiàn)的功能是什么呢?

只有讓人一目了然,能夠清晰的知道這個(gè)函數(shù)是要干什么,有什么作用比方說(shuō):add()函數(shù),一眼就知道這個(gè)是用來(lái)添加的(對(duì)于復(fù)雜程序可以加入一些賓語(yǔ)來(lái)讓函數(shù)名更加清晰 例如numadd)

3.要有合適長(zhǎng)度

這個(gè)長(zhǎng)度是指,子函數(shù)命名不要過(guò)于繁瑣,可以適當(dāng)擴(kuò)充使函數(shù)作用清晰的核心,永遠(yuǎn)是適當(dāng)。如果太長(zhǎng)不僅容易讓自己記混而且讓可讀性也受制

二、變量名的注意事項(xiàng)

1.命名

為變量命名時(shí)最重要的考慮事項(xiàng)是,該名字要完全、準(zhǔn)確地描述出該變量所代表的事物。

如果要表示當(dāng)前利率的變量最好命名為 rate或 interestRate,而不是簡(jiǎn)單的r或x。甚至是a、b、c

2.縮短變量的存活時(shí)間

如果該變量在第1行被第一次引用,在第25行被最后一次引用,那么它的存活時(shí)間就是25條語(yǔ)句。

縮短變量存活時(shí)間的個(gè)好處是使你能對(duì)自己的代碼有更準(zhǔn)確的認(rèn)識(shí)。

打個(gè)比方:如果一個(gè)變量在第10行賦值,卻要到第45行才再次使用它,那么于這兩個(gè)引用點(diǎn)之間的那一長(zhǎng)段距離就暗示說(shuō)該變量在第10行到第45行的范圍內(nèi)一直在使用。如果該變量是在第44行賦值,在第45行使用,那么不會(huì)有任何有關(guān)該變量使用的暗示產(chǎn)生,你在思考這個(gè)變量的時(shí)候也就能集中于更小范圍的代碼了。

三、進(jìn)行合理的縮進(jìn)處理

如果缺少了適當(dāng)?shù)目s進(jìn),對(duì)于下面代碼而言

# include<stdio.h>
int main()
{
int n, i, j;
printf("請(qǐng)輸入正方形的邊長(zhǎng):\n");
scanf("%d",&n);
for(i = 1;i<=n;i++){
for(j = 1;j<=n;j++){
if(i == 1||i == n)
{printf("* "); }
 else{
 if(j == 1 || j == n)
 {printf("* ");}
 else{
printf("  ");}}}
printf("\n");}
return 0;}

很難想象下面的代碼和上面的是同一個(gè)


# include<stdio.h>
int main()
{
    int n, i, j;
    printf("請(qǐng)輸入正方形的邊長(zhǎng):\n");
    scanf("%d",&n);
    
    for(i = 1;i<=n;i++)
    {
        for(j = 1;j<=n;j++)
        {
            if(i == 1||i == n)
            {
                printf("* "); 
            }
            else
            {
                if(j == 1 || j == n)
                {
                    printf("* ");
                }
                else
                {
                    printf("  ");
                }
            }
        }
        printf("\n");
    }
    
    return 0;
}
  1. 對(duì)于內(nèi)部的嵌套盡量放到下一級(jí)(擴(kuò)大縮進(jìn))

  2. 對(duì)于不同的部分要有合適的留白行來(lái)進(jìn)行區(qū)分

END文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-806550.html

到了這里,關(guān)于算法——讓你的代碼更具有可讀性的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 代碼可讀性藝術(shù)在Andorid中的體現(xiàn)

    前言 最近接手的一些項(xiàng)目,不同的人編碼風(fēng)格迥異,類里的變量、方法的定義穿插,注釋極為稀少,更有一些變量和方法的命名非常近似,例如表示播放隊(duì)列的\\\"playQueue\\\"和表示歌單的\\\"playList\\\",wtf? 這不是一個(gè)意思嗎?一些回調(diào)的時(shí)機(jī)也不能直觀的看出來(lái),通常需要debug調(diào)試多次;multi proj

    2024年02月03日
    瀏覽(19)
  • 提高代碼可讀性和可維護(hù)性的命名建議

    當(dāng)進(jìn)行接口自動(dòng)化測(cè)試時(shí),良好的命名可以提高代碼的可讀性和可維護(hù)性。以下是一些常用的命名建議: 變量和函數(shù)命名: 使用具有描述性的名稱,清晰地表達(dá)變量或函數(shù)的用途和含義。 使用小寫(xiě)字母和下劃線來(lái)分隔單詞,例如? login_url 、 send_request 。 避免使用單個(gè)字符或

    2024年02月10日
    瀏覽(44)
  • 50個(gè)簡(jiǎn)潔的提示提高代碼可讀性和效率(0-10)

    這篇文章整理了50個(gè)簡(jiǎn)潔的提示,可以提高您的代碼可讀性和效率。這些提示來(lái)自個(gè)人項(xiàng)目、徹底的代碼審查和與資深開(kāi)發(fā)人員的啟發(fā)性討論。 無(wú)論您是新手還是經(jīng)驗(yàn)豐富的開(kāi)發(fā)人員,這篇文章都應(yīng)該能夠幫助您學(xué)到一些東西。 這個(gè)列表包括常見(jiàn)的Python模式、核心概念和最佳

    2024年02月10日
    瀏覽(19)
  • 編寫(xiě)魅力十足的代碼:優(yōu)化可讀性、維護(hù)性和性能的關(guān)鍵

    本篇匯總了平時(shí)在工作開(kāi)發(fā)中常遇到的業(yè)務(wù)邏輯的優(yōu)雅寫(xiě)法,也匯總了自己還是新人時(shí),拿到一個(gè)業(yè)務(wù)不知道怎么下手的痛點(diǎn),依稀記得那時(shí)候總感覺(jué)自己寫(xiě)的代碼不規(guī)范。 寫(xiě)完之后,感覺(jué)還是美好的,又學(xué)到東西了。 采用簡(jiǎn)潔的語(yǔ)法和結(jié)構(gòu),遵循一致的命名規(guī)范,具有良

    2024年02月10日
    瀏覽(21)
  • 炫技亮點(diǎn) 使用Optional類優(yōu)化代碼,提升可讀性和簡(jiǎn)化空值處理

    在日常的軟件開(kāi)發(fā)中,我們經(jīng)常需要處理可能為空的值,例如 從數(shù)據(jù)庫(kù)查詢數(shù)據(jù) 、 調(diào)用外部接口獲取數(shù)據(jù) 、 從配置文件讀取配置項(xiàng) 等。傳統(tǒng)的處理方式往往需要使用 繁瑣的空值判斷和異常處理 代碼,使得代碼變得冗長(zhǎng)和難以理解。為了解決這個(gè)問(wèn)題,Java 8 引入了 Optio

    2024年02月13日
    瀏覽(39)
  • chatgpt賦能python:Python如何分行——提高代碼可讀性和效率的必備技能

    分行,即將一行長(zhǎng)代碼分為多行,使得代碼更加易讀、易維護(hù)、易修改。 Python作為一門(mén)高級(jí)編程語(yǔ)言,具有簡(jiǎn)潔、易讀、高效的特點(diǎn)。但在實(shí)際編程過(guò)程中,難免會(huì)遇到較長(zhǎng)的代碼行,導(dǎo)致代碼可讀性下降,不利于程序員的開(kāi)發(fā)和維護(hù)。因此,Python中分行技術(shù)就顯得尤為重要

    2024年02月08日
    瀏覽(32)
  • 如何修改min.js或者壓縮后的js,以便提高代碼的可讀性。

    前端的js上線的時(shí)候一般會(huì)使用打包工具處理(webpack,gulp,ugly.js 等)。這樣做有幾點(diǎn)作用。 可以壓縮空間,提高頁(yè)面響應(yīng)速度 一定程度上可以保護(hù)自己的代碼安全,防止別人清晰看懂邏輯或者拷貝代碼。 提高別人閱讀自己代碼的門(mén)檻 可前端開(kāi)發(fā)工作中多多少少,會(huì)需要看

    2024年02月11日
    瀏覽(17)
  • 【Spring MVC】獲取 @RequsetBody 標(biāo)識(shí)的對(duì)象,使用適配器模式增加代碼可讀性

    【Spring MVC】獲取 @RequsetBody 標(biāo)識(shí)的對(duì)象,使用適配器模式增加代碼可讀性

    一個(gè)技術(shù)需求引發(fā)的思考和實(shí)踐: 思考 用 AOP 把校驗(yàn)代碼 實(shí)踐 用 Spring MVC 的 RequestBodyAdvice 做AOP邏輯 繼承 RequestBodyAdviceAdapter 實(shí)現(xiàn)自己的 適配器 用自己的適配器讓代碼可讀性增加 熟悉 Spring MVC 、Java 反射的一些實(shí)踐 本文內(nèi)容 澄清一個(gè)AOP校驗(yàn)JSON內(nèi)容的思路 復(fù)習(xí)適配器模式

    2024年02月10日
    瀏覽(24)
  • 設(shè)計(jì)模式之策略模式:讓你的代碼靈活應(yīng)對(duì)不同的算法

    作為一個(gè)程序員,我們經(jīng)常會(huì)面臨著在不同的情況下選擇不同的算法來(lái)解決問(wèn)題的需求。這種情況下,策略模式是一個(gè)非常有用的設(shè)計(jì)模式。在本文中,我將向你介紹策略模式的概念、結(jié)構(gòu)以及如何應(yīng)用這個(gè)模式來(lái)使你的代碼更靈活。 策略模式是一種行為型設(shè)計(jì)模式,它允許

    2024年02月08日
    瀏覽(13)
  • 3 個(gè)可以使你的 Python 代碼更優(yōu)雅、可讀、直觀和易于維護(hù)的工具

    3 個(gè)可以使你的 Python 代碼更優(yōu)雅、可讀、直觀和易于維護(hù)的工具

    Python 提供了一組獨(dú)特的工具和語(yǔ)言特性來(lái)使你的代碼更加優(yōu)雅、可讀和直觀。 為正確的問(wèn)題選擇合適的工具,你的代碼將更易于維護(hù)。 粉絲福利!私信回復(fù)【01】有基礎(chǔ)教程一套 讓我們創(chuàng)建一個(gè) Money 類來(lái)示例: 如下所示: 現(xiàn)在我們可以以非常直觀的方式使用這個(gè)類: 例如

    2023年04月11日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包