成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

特殊的反 for-if 編程模式

開發(fā) 開發(fā)工具
本文介紹的是被作者稱作反for-if編程模式的反模式,也就是人們所說的”我們賣給你整個座位,但你需要的只是一個邊。”這是一個特殊的反for-case模式。下文將詳細介紹。
 本文是從 Introducing the for-if anti-pattern 這篇文章翻譯而來。

這些年來,我看到過大量的反編程模式。我感覺應(yīng)該向大家分享一些。

今天,我要介紹的是被我稱作反for-if編程模式的反模式,也就是人們所說的”我們賣給你整個座位,但你需要的只是一個邊。”
這是一個特殊的反for-case模式,其中所有的情況中只有一次會是null。

  1. for (int i = 0; i < 100; i++) { 
  2.   if (i == 42) { do_something(i); } 

這種情況可以簡單的寫成

  1. do_something(42); 

這個反for-if模式可以表現(xiàn)成各種各樣的形式。比如:

  1. foreach (string filename in Directory.GetFiles(".")) 
  2.     if (filename.Equals("desktop.ini", StringComparison.OrdinalIgnoreCase)) 
  3.     { 
  4.         return new StreamReader(filename); 
  5.     } 

它是在一個目錄里遍歷查找一個指定文件,如果找到了,就返回文件的數(shù)據(jù)流。這段代碼的一種不是那么折騰的寫法是

  1. if (File.Exists("desktop.ini")) 
  2.     return new StreamReader("desktop.ini"); 

請注意,兩個版本的代碼片段具有相同的競爭條件:如果這個desktop.ini本來是存在的,但在你創(chuàng)建Stream­Reader之前被刪掉了,你就會得到一個File­Not­Found­Exception錯誤。

再舉一個例子:

  1. foreach (object o in hashtable.Keys) 
  2.     if (o == "target"return hashtable["target"]; 

等同于

  1. return hashtable["target"]; 

我猜測這些家伙不喜歡在圖書館里通過書名找一本書,因為他們的做法是如此的繁瑣:

他們來到圖書館里員面前說,“把你所有的書都給我,”然后他們拿著裝滿了上千本書的籃子,坐到墻角里自言自語:

“不是,這本書的書名不對”,

“不是,這本也不是”,

“標(biāo)題還是不對。”

“這本書呢?”

”不是,也不是這本。“

”老天,我要這樣一本一本翻到什么時候…“

原文鏈接:http://www.aqee.net/introducing-the-for-if-anti-pattern/

【編輯推薦】

  1. 你從未聽說過的一種編程方式
  2. 回顧過去一年中編程語言領(lǐng)域的起起落落
  3. 編程更像是在寫作
  4. 2012紐約市長新年計劃:學(xué)習(xí)編程
  5. 十種可能改變IT行業(yè)走向的編程語言
責(zé)任編輯:林師授 來源: 外刊IT評論
相關(guān)推薦

2014-07-30 10:08:13

Python反模式

2011-05-24 09:30:26

Findbugs

2021-10-29 05:53:51

前端測試開發(fā)代碼

2023-10-30 18:59:38

REST API開發(fā)

2020-09-14 08:30:44

Kubernetes容器

2023-09-13 11:58:17

云原生反模式

2021-01-11 05:37:54

倉儲模式接口

2012-01-17 13:41:34

JavaSwing

2015-09-22 10:56:13

Java反模式

2015-10-10 11:23:17

Java常量反模式

2021-04-20 22:09:13

Python編程語言

2024-04-24 13:45:00

2016-08-04 14:41:21

架構(gòu)java服務(wù)端開發(fā)

2017-09-29 10:49:30

2022-11-03 15:36:44

事件響應(yīng)反模式系統(tǒng)

2010-12-02 10:30:09

Apache Hado反模式Map Reduce

2023-12-22 14:27:30

2013-04-01 15:25:41

異步編程異步EMP

2021-10-13 07:48:23

Options模式編程

2010-09-13 09:18:22

JavaScript模塊模式
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 亚洲电影成人 | 色综合视频 | 天堂中文在线播放 | 一区二区三区av | www.狠狠操 | 激情91 | 亚洲精品国产精品国自产在线 | 天堂网色 | av资源在线看 | 国产成人一区二区三区 | 综合久久av | 国产精品毛片一区二区三区 | 激情久久av一区av二区av三区 | 日本特黄特色aaa大片免费 | 2022精品国偷自产免费观看 | 四虎影音 | 美女视频一区二区三区 | 丝袜美腿一区二区三区动态图 | 激情五月婷婷丁香 | 欧美午夜精品 | 欧美视频网 | 中文字幕在线三区 | 在线免费观看a级片 | 日日操日日干 | 国产欧美精品一区二区三区 | 亚洲精品乱码久久久久久蜜桃91 | 成人激情视频免费在线观看 | 国产乱码精品一区二区三区忘忧草 | 91久久久久 | 成人在线免费电影 | 黄色免费看 | 欧美一级免费看 | 国产高清视频在线观看播放 | 美女拍拍拍网站 | 天天躁日日躁狠狠躁白人 | 能看的av网站 | 91xxx在线观看 | 国产精品久久久久久久久免费相片 | 午夜视频一区二区三区 | 日韩欧美国产不卡 | av片免费 |