欧美日韩激情_美女国产一区_国产精品久久久久影院日本_69xxx在线

函數要多小才夠好——談小函數之道

2023-08-24    分類: 網站建設

百度權重查詢 站長交易 友情鏈接交換 網站監控 服務器監控 seo監控

“設計的函數往往比較小,而過大函數的設計往往烏煙瘴氣,或者存在很大的優化空間。”

也許你認為討論函數的大小沒有需要,原因是函數設計的本質是內聚,它的大小只是它的體現形式。而上面的原因有需要讓我們討論一下函數的大小問題。

我對函數的核心思路:我提出代碼好小處理單元的概念:一個基本操作(賦值,比較等),一個函數調用(包括調用后判斷返回值進行判斷)都看成一個好小處理單元。那么,一個函數,好小處理單元合理的個數范圍在7以內。假如超過了7,你就要考慮把他們拆分成多個函數了(為什么是7?人同時能夠處理的信息不超過7個)。

好小數目沒有限制,即便是只有1個,也有存在的需要。

在下面的情況下我會將函數拆分為更小的函數:

1、一眼不能夠看到函數所有的代碼。

假如函數過長,無法一眼看到一個函數所有的代碼,我會毫不猶豫的拆分。我不想讓讀者去翻屏,也不想讓讀者前顧后盼,顧此失彼。漂亮的函數應該讓讀者一眼就知道他在做什么以及怎么做的。

2、局部變量過多。

假如局部變量超過七個,我會考慮拆分函數。變量過多意味著我要記錄太多的狀況,這會加重我大腦的負擔,同時要考慮太多的東西。這也同時意味著我可能沒有對函數功能進行深入的思考。

3、太多的縮進。

太多的縮進意味著太多的嵌套,要么是循環,要么是判斷,都會導致復雜的邏輯。

4、假如你在使用ctrl+c和ctrl+v

那你寫的代碼不夠拽(DRY,Don’t Repeat Yourself)。這個時候,你要把你復制的部分拆分為新的函數。

5、不處于統一抽象條理。

舉例,有一個初始化函數,需要初始化配置數據,套接字,數據庫連接,通道狀況。

void init()

{

Config_init();

Socket_init();

Db_init();

int i = 0;

For (i = 0;i < max_chn_num;i++)//初始化所有通道 {

G_user_chn[i].status = status_init;

……

}

}

上個函數中對所有通道的初始化一塊代碼就和其他的不處于一個抽象條理,我們應該將它封裝起來:

void chn_init()

{

int i = 0;

for (i = 0;i < max_chn_num;i++)//初始化所有通道 {

G_user_chn[i].status =status_init;

……

}

}

函數好小可以有多小,它存在的意義

我見過的好優異的函數:

int max(int a, intb)

{

return a> b?a:b;

}

這個函數很小,只有一行,但是他存在的意義在于:在函數的調用點,我們一眼就知道是獲取a和b中的好大值,而不是分析a > b?a:b的邏輯。這樣可以節省程序員的腦力成本,從而達到一個目的:漂亮的函數應該讓讀者一眼就知道他在做什么以及怎么做的。

小函數的好大障礙:性能

對于程序員新手,小函數的好大障礙在于沒有經驗體味不到小函數的優勢,沒有經驗拆分大函數為更小的函數。

對于有一定經驗的程序員,小函數的好大障礙也許是對性能的憂慮。

對于性能,切記,不要過早優化。我們一般認為的程序的,一般并不是程序的:我們需要工具來確定真正的所在,20%的代碼耗費了80%的性能,優化之前首先要找到那20%的代碼。函數調用會產生資源和性能的損耗,但是這是不是程序的性能?消費的性能占總體的性能百分比為多少?這一切在代碼編寫時并不清楚,所以,我的觀點是寧可選擇簡短的函數來獲得清晰簡單的設計,以便在項目后期能夠更快,更好的進行性能優化。

許多人都在質疑我上面列舉的max函數的實例,假如說他在運行期間調用次數不大,則對性能的影響基本可以忽略,而獲得的可讀性,清晰性這極具價值;反過來,假如他的調用次數是否重大,以致成為了性能的,則完全可以在程序編寫完成后,很快的用其他的方法優化。程序的不會許多。

關于函數調用產生的性能消費,我會抽時間測試一下,看到底占用多少。

好后的建議:

在對新員工培訓的過程中,發現程序員新手一般對函數的大小不夠敏感。所以,我建議你可以多嘗試編寫10行左右(甚至更小)的函數,慢慢你會發現小函數原來具有大威力。

文章來源:常高偉的博客

名稱欄目:函數要多小才夠好——談小函數之道
URL鏈接:http://m.kartarina.com/news18/278218.html

成都網站建設公司_創新互聯,為您提供全網營銷推廣網站設計公司云服務器微信小程序域名注冊品牌網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司
欧美日韩激情_美女国产一区_国产精品久久久久影院日本_69xxx在线
奇米影视一区二区三区| 国产传媒欧美日韩成人| 精品国产青草久久久久福利| 欧美在线播放高清精品| 成人国产电影网| 风间由美一区二区三区在线观看 | 国产无一区二区| 久久综合中文字幕| 国产三级久久久| 国产欧美日本一区二区三区| 亚洲国产精品av| 亚洲日本在线天堂| 亚洲一区二区三区中文字幕| 青青国产91久久久久久| 五月婷婷激情综合| 日韩中文字幕1| 久久精品理论片| 成人美女视频在线观看18| 国产91丝袜在线播放| 一本色道亚洲精品aⅴ| 在线日韩一区二区| 欧美电影免费观看高清完整版 | 中文字幕精品综合| 日韩一区在线免费观看| 亚洲制服丝袜av| 日本欧洲一区二区| 国产一区二区三区电影在线观看| 成人免费视频播放| 欧美日韩免费高清一区色橹橹 | 日韩一级视频免费观看在线| 亚洲欧洲综合另类在线| 午夜免费久久看| 国产乱码精品一区二区三区av| 国产91精品免费| 欧美乱妇23p| 久久精品人人做人人爽人人| 亚洲精品一二三| 寂寞少妇一区二区三区| 一本色道久久综合狠狠躁的推荐| 91精品国产综合久久精品图片| 久久久99精品久久| 亚洲成人动漫av| 处破女av一区二区| 欧美精品亚洲一区二区在线播放| 国产午夜精品久久| 免费在线观看视频一区| 色综合久久99| 国产欧美日韩亚州综合| 调教+趴+乳夹+国产+精品| 成人黄页毛片网站| 久久亚洲欧美国产精品乐播 | 国产一本一道久久香蕉| 欧美日韩一区二区不卡| 国产精品美女久久久久高潮| 免费在线欧美视频| 欧美日韩国产一二三| 亚洲国产成人一区二区三区| 91久久线看在观草草青青| 精品区一区二区| 亚洲一区二区三区视频在线| 99久久精品免费看国产| 久久精品人人爽人人爽| 免费成人结看片| 欧美日韩视频一区二区| 亚洲在线中文字幕| 91一区二区在线观看| 国产欧美综合色| 国产传媒日韩欧美成人| 日韩欧美亚洲国产精品字幕久久久 | 高清在线成人网| 欧美videos大乳护士334| 丝袜美腿亚洲色图| 欧美久久免费观看| 亚洲超碰精品一区二区| 欧美午夜一区二区三区免费大片| 亚洲免费在线观看视频| 91原创在线视频| 亚洲欧美激情小说另类| 日本久久精品电影| 亚洲一二三专区| 欧美日韩一区在线| 蜜臀久久99精品久久久久宅男 | 韩国av一区二区三区在线观看| 欧美一区二区在线不卡| 男人的天堂亚洲一区| 日韩精品一区二区在线| 国产一区二区日韩精品| 欧美国产一区二区| 成人av网址在线| 亚洲欧美日韩系列| 欧美性色黄大片手机版| 国产v日产∨综合v精品视频| 国产精品欧美一区二区三区| 不卡欧美aaaaa| 亚洲精品国产视频| 777亚洲妇女| 国产一区二区看久久| 国产精品久久久久久久久久免费看| 不卡一区二区中文字幕| 亚洲另类中文字| 欧美日本一区二区| 狠狠色丁香婷婷综合久久片| 国产欧美一区二区三区沐欲| 色诱视频网站一区| 美女视频免费一区| 中文字幕一区免费在线观看| 欧美视频一区二区在线观看| 国内外成人在线| 自拍偷在线精品自拍偷无码专区 | 国产在线精品一区二区三区不卡| 欧美激情在线免费观看| 91麻豆国产福利精品| 日韩国产精品久久| 中文av一区二区| 欧美综合视频在线观看| 国产在线播放一区| 亚洲国产精品久久久久秋霞影院 | 亚洲精品欧美综合四区| 日韩久久久久久| 91女厕偷拍女厕偷拍高清| 青青草国产精品97视觉盛宴 | 欧美日韩亚洲综合在线 | 欧美日韩极品在线观看一区| 国产电影一区二区三区| 同产精品九九九| 国产精品欧美一区喷水| 精品少妇一区二区三区在线播放| 91在线丨porny丨国产| 国内久久精品视频| 日本视频一区二区三区| 亚洲视频一区在线观看| 久久久蜜桃精品| 欧美精品三级日韩久久| av中文字幕亚洲| 国产精品亚洲一区二区三区在线 | 最新中文字幕一区二区三区| 日韩欧美一区电影| 欧美日韩在线播放三区四区| 色婷婷综合久色| 不卡视频免费播放| 国产白丝精品91爽爽久久| 久久er精品视频| 肉丝袜脚交视频一区二区| 一区二区三区免费在线观看| 国产日本欧洲亚洲| 久久精品夜夜夜夜久久| 精品久久久网站| 欧美电影免费观看高清完整版在| 8v天堂国产在线一区二区| 欧美另类变人与禽xxxxx| 欧美性猛交xxxx乱大交退制版 | 成人av在线播放网站| 国产精品69毛片高清亚洲| 精品制服美女久久| 狠狠色丁香久久婷婷综| 老司机午夜精品| 久久精品国产在热久久| 免费欧美在线视频| 久久99国产精品成人| 精品一二三四区| 国产美女视频一区| 国产精品亚洲午夜一区二区三区| 国产伦精一区二区三区| 国产精品18久久久久| 粉嫩一区二区三区在线看| 大桥未久av一区二区三区中文| 国产大片一区二区| 99久久精品免费| 欧美在线一区二区三区| 欧美日韩国产不卡| 欧美zozozo| 欧美激情在线看| 亚洲天堂久久久久久久| 亚洲在线免费播放| 免费观看一级欧美片| 国产乱码精品一区二区三区av| 盗摄精品av一区二区三区| 一本一本大道香蕉久在线精品 | 天堂一区二区在线| 国内精品伊人久久久久av影院 | 日本sm残虐另类| 国产精品夜夜爽| 91久久精品一区二区| 欧美电影免费观看高清完整版在 | 日本 国产 欧美色综合| 国内精品第一页| 色94色欧美sute亚洲线路一久 | 日韩成人免费电影| 国内精品嫩模私拍在线| 91麻豆免费观看| 欧美一区二区免费视频| 亚洲图片另类小说| 久久国产综合精品| 色一区在线观看| 久久综合九色综合97_久久久| 亚洲日本丝袜连裤袜办公室| 久热成人在线视频| 欧美日韩综合在线| 国产日韩欧美精品电影三级在线| 午夜精品免费在线|