精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Rails的讓人不堪的噩夢

開發(fā) 后端
在Rails開發(fā)中,你會發(fā)現(xiàn)一個讓人不堪忍受的小秘密;在我的職業(yè)生涯中,我見過的最亂的、最棘手的、最臭的代碼,都是在Ruby on Rails項目里找到的。

本文是從 Your Code is My Hell 這篇文章翻譯而來。

我最近的作為一個Rails程序員的經(jīng)歷可能并不常見。

我經(jīng)常被叫去維護一些已經(jīng)做好的Ruby/Rails項目,在力所能及的地方進行改進和完善。這樣,絕大部分我需要接手的項目在我出現(xiàn)前都已經(jīng)開發(fā)完成了。事實上,在我的記憶里,我只參與了一個商業(yè)性質(zhì)的格林菲爾德Ruby項目的開發(fā)。其它的,在我看來,都是“歷史遺物“,相當多的程序代碼在我之前都已經(jīng)出品了。(不包括個人和內(nèi)部項目)。

我知道,我的這種經(jīng)歷在Ruby和Rails程序員中并不常見。由于Ruby/Rails的高產(chǎn)和創(chuàng)業(yè)公司為主的用戶環(huán)境,大多數(shù)Ruby愛好者都是在這樣剛成立的公司里開發(fā)全新的項目。而我的工作更多的是基于最初的開發(fā)人員走后留下來的代碼。

Rails的讓人不堪的小秘密

在受雇寫Ruby程序之前,我也接手過一些歷史程序,它們有的歷史達數(shù)十年之久,代碼量數(shù)十萬行之多。你很容易在這么多代碼里找出寫的很爛的東西;有時候,這種爛代碼的數(shù)量多的讓人驚訝。

但是,在Rails開發(fā)中,你會發(fā)現(xiàn)一個讓人不堪忍受的小秘密;在我的職業(yè)生涯中,我見過的最亂的、最棘手的、最臭的代碼,都是在Ruby on Rails項目里找到的。我所見過的那些Rails項目,它們兩年下來積累的技術債務和廢棄物,跟一個10年之久的C/C++程序相比,會讓你覺得后者更干凈和優(yōu)雅。我說的并不是某個項目。我看到這種情況到處都是。

有時候我會想,這也顯示了這種語言的強大之處。如果在一個Rails應用里有500個錯誤,你可以不停的往里面添加代碼、再添加代碼、點擊“reload“,一直到它好用為止。從來都不需要寫測試或重構代碼。在很多語言和框架里,這種”補到它不漏為止“的開發(fā)方式顯而易見是行不通的。但Ruby on Rails卻提供了讓你這樣做的平臺。

不幸的是,作為它的直接后果,眾多我要處理的項目都可以被看作是一種應急產(chǎn)品。從某種角度來看,這種圖省事的做法的后果還是由開發(fā)團隊來承擔,你這樣做一天把它解決了,可引出的相關問題和不可預料的副作用,你花2周都解決不掉。

題外話:經(jīng)常的,最初的開發(fā)人員會在完成開發(fā)后轉移到新的項目上。同時會有新員工接手這些代碼。管理部門會抱怨,為什么這新接手的團隊修改問題時沒有老團隊迅速呢?而新團隊遇到的問題是,在他們能給這些遺留的代碼上添加新功能前,他們需要讓這些代碼具有更高的測試覆蓋率,有可能還需要把它們分離成更小的模塊;在商業(yè)層面,一個永久不變的聲音是:測試和重構就是拖延工期。看來這原創(chuàng)團隊都是比較明智的。

好了,牢騷發(fā)完了。

Rails的情況更為特殊!

Rails程序員有時候會顯得很傲慢和固執(zhí)。我不清楚這個判斷的可信度;我并沒有看到太多的人是這樣,但也許我跟這個社區(qū)太接近了,也許我本身也是傲慢和固執(zhí)的。

而我發(fā)現(xiàn)的卻是一種“Rails例外主義“。還記得第一次互聯(lián)網(wǎng)繁榮的時期嗎,當時有幾個經(jīng)濟學家跳出來說”不會的,這次不同,互聯(lián)網(wǎng)改變了游戲規(guī)則,市場會一直走高、走高“,本質(zhì)上我感覺很相似,有些人相信,Ruby on Rails開發(fā)是某種不同的東西,不需要跟其它類型的軟件項目一樣。

這有一些例子,讓你明白我究竟在說什么:

◆ “設計模式是Java上的東西。Ruby里只管寫你的代碼就是了。“

◆ “Ruby里拋出的警告都是無聊的,禁止掉就行了。“

◆ “的確沒有單元測試,而且對象隔離做起來很難,沒有人這樣做。“

◆ “到處打補丁對于其它語言來說是不贊成的,但Ruby沒問題。目前還沒有出現(xiàn)問題。”

◆ “像Demeter定律這樣的東西在Ruby里并不是這么重要。“

◆ “把方法分成私有和公有,這是變態(tài)控制,Ruby里不需要這樣做“

◆ “Java代碼里才會有代碼異味(code smell)。“

◆ “只有在大項目里才會有這樣的問題“(暗示這個項目永遠不會變大)

我還看到了很多項目和子系統(tǒng)例外主義者:“我知道一個類不應該搞的太大,但是對這個類是有意義的,它是為了把所有的東西放到一個地方“。

歡迎來到小人國

 

[[43751]]

 

事實上,Ruby on Rails項目確實有一點很例外:都是小項目。上周在James Gray在Lone Star Ruby Conf大會上有個極好主題,他提到的“巨型“項目有4萬多行代碼。這讓我微微一笑,因為我被雇來做的頭兩個項目分別有5萬行和7萬行。這看起來不少,但根據(jù)行業(yè)標準,它們很小。

造成這種現(xiàn)象的原因有不少。Ruby是一種比Java更富有表達性的語言,所以,從某種程度上說,Rails項目,在相同的情況下,總是比那些更講究的語言顯得更小。

而且,Rails程序員很喜歡接受把系統(tǒng)分割成很多很小的、相互聯(lián)系的小應用。但是經(jīng)驗告訴我們,這種策略是有問題的。

不,我想這導致Rails應用體格較小的最大的原因是,顯而易見的:這個框架還很年輕。這個領域里有大量不成熟的產(chǎn)品。一個Rails應用如果有3年的歷史,那就可以算是古老了。

我可以很有信心的說,這種情況不會一直持續(xù)下去。我們會看到越來越大的程序項目。我不需要鼓起勇氣就可以做下面的預言:很多項目將遭遇像Lisp, Smalltalk, C++, Java等語言曾經(jīng)遭遇過的相同的架構瓶頸。

你并不特殊

《programming literature from the 80s》這個作品讀起來非常的有趣。動態(tài),面向對象的系統(tǒng)引導了從“小規(guī)模“到”中等規(guī)模“的過度。聽起來耳熟,是吧?

每一次的革命都會堅稱這次是與眾不同的,不會造成上次革命后出現(xiàn)的政黨紛爭和官僚腐敗。起初你很容易被這些宣傳感染。每個人都很興奮,熱情的去幫助;這時出現(xiàn)的問題還比較小;然而這只是市場的大機器還沒有注意到這場運動。

事實上,你要解決的問題也許并不是你想像的那樣例外。你思想里的這種拜占庭模式只是遠古時代那些使用跟Ruby類似語言的人留下來的遺產(chǎn)。

不要驚慌

放松。我這里要說的并不是告訴你過去的幾年只是一場可愛的夢,Ruby實際上一直處在它應有的地位上。

Ruby仍然是一種奇妙的語言,它令人驚異的地方就是它在付出微小的約束代價下能輕松的接納大型系統(tǒng)的設計模式。注入依賴?兒戲。對象委托和組合?小菜一碟。跟你的錯覺正好相反,Ruby并不拒絕嚴謹?shù)脑O計模式和SOLID編程原則;Ruby能做到的事是讓它們更容易的表達出來。事實上,Ruby強大的富于表達的架構風格是讓很多人第一眼就喜歡上它的原因。

拜托:請在你告訴我Ruby和Rails不需要任何的約束之前,請跟那些仍然在維護你當初開發(fā)的Rails應用的兄弟們聊一聊。

原文:http://www.aqee.net/your-code-is-my-hell/

【編輯推薦】

  1. 谷歌宣布推出Dart編程新語言
  2. 2011下半年Web編程語言和腳本語言的就業(yè)趨勢
  3. 編程巨星成長的唯一秘訣
  4. 學習不同編程語言的重要性
  5. 每一門編程語言都是上輩子折翼的天使
責任編輯:陳貽新 來源: 外刊IT評論
相關推薦

2016-04-06 08:57:15

教材開發(fā)網(wǎng)站

2009-03-27 10:52:57

華為國際化爆笑

2009-08-14 09:19:15

Windows 7XP模式優(yōu)缺點

2013-06-20 09:38:57

2025-10-11 04:15:00

2013-10-30 10:47:53

手機預裝軟件手機用戶

2024-12-12 16:43:44

2022-05-24 10:19:15

網(wǎng)絡中斷網(wǎng)絡

2022-06-10 13:02:48

皮膚結構機器人

2014-10-21 10:13:50

Android 5.0

2022-03-04 06:46:30

Python代碼

2015-08-25 08:55:14

優(yōu)秀代碼基因

2022-07-29 11:02:17

Web3NFT元宇宙

2021-03-26 06:36:50

安全軟件殺毒軟件免費安全軟件

2012-04-25 10:18:49

jQuery

2016-03-31 16:50:54

2022-03-04 09:43:18

UDP日志TCP

2020-10-28 21:00:38

RailsMVC命令

2010-12-30 12:15:47

wifiWi-Fi無線網(wǎng)絡

2020-07-21 09:18:26

USB存儲設備加密
點贊
收藏

51CTO技術棧公眾號

中文字幕av一区| 国产精品久久久久久久久免费樱桃| 欧美夫妻性生活xx| 国产不卡一二三| 自拍在线观看| 亚洲天堂2016| 久久另类ts人妖一区二区| 亚洲天堂手机版| 9国产精品视频| 久久精品国产91精品亚洲| 亚洲香蕉中文网| 成人亚洲免费| 亚洲色图官网| 青娱乐精品视频在线| 欧美理论电影在线观看| 白丝女仆被免费网站| 成人51免费| 91久久免费观看| 国产美女主播在线| 1pondo在线播放免费| 成人高清视频免费观看| 国产精品手机播放| 国产一国产二国产三| 久久免费大视频| 亚洲精品成a人在线观看| 99国产精品久久久久久| jk漫画禁漫成人入口| 亚洲精品成a人| 中国成人在线视频| 国产福利小视频在线| av在线不卡网| 国产成人女人毛片视频在线| 中文字幕一区二区三区波野结| 欧美91看片特黄aaaa| 欧美高清视频手机在在线| 亚洲成人a**站| 红桃视频一区二区三区免费| 69堂精品视频在线播放| 欧美性xxxx在线播放| 欧美这里只有精品| 天堂av最新在线| 亚洲视频一区在线| 在线视频一区观看| 欧美13一16娇小xxxx| 国产欧美视频一区二区三区| 欧美精品久久久| 亚洲日本中文字幕在线| av一区二区三区黑人| 国产精品一国产精品最新章节| av小说天堂网| 国产一级精品在线| 91久久夜色精品国产网站| 怡春院在线视频| 免费久久精品视频| 国产精品网站入口| 一级全黄裸体免费视频| 久久99精品国产麻豆不卡| 国产欧美一区二区三区久久人妖| 中文字幕 视频一区| 91av亚洲| 亚洲免费中文| 欧美在线激情网| 久久久久久少妇| 午夜亚洲一区| 国产精品xxxxx| 在线免费a视频| 国产综合色在线视频区| 91精品国产综合久久久久久蜜臀| 一级黄色片视频| 国产盗摄一区二区三区| 99视频在线| 亚洲欧美自偷自拍| 国产视频一区二区在线观看| 午夜精品一区二区在线观看| 四虎久久免费| 一区二区三区四区国产精品| 国产精品入口芒果| 亚洲女同志freevdieo| 在线观看网站黄不卡| www.精品在线| 午夜视频一区二区在线观看| 亚洲国产精品人久久电影| 97伦伦午夜电影理伦片| 99热在线成人| 午夜精品在线视频| 亚洲天堂五月天| 国产福利91精品一区| 麻豆91av| 黄av在线播放| 精品美女国产在线| 亚洲三级视频网站| jizz性欧美23| 一道本无吗dⅴd在线播放一区| 精品自拍偷拍视频| 国产精品久久777777毛茸茸| 国产精品一区二区性色av| 丰满人妻一区二区| 亚洲国产精品成人综合色在线婷婷 | 成人高潮aa毛片免费| 四虎亚洲精品| 日韩欧美成人精品| 亚洲天堂av一区二区| 欧美网色网址| 久久九九亚洲综合| youjizz在线视频| 国产精品一区一区| 日本亚洲导航| 9999精品成人免费毛片在线看| 欧美性生活一区| 在线观看免费视频黄| 日韩欧美一区免费| 日本久久91av| 人人妻人人玩人人澡人人爽| 亚洲欧美日韩电影| 成人午夜激情av| 欧美一区 二区| 九色成人免费视频| 中文字幕+乱码+中文乱码91| 91在线精品一区二区| 2021狠狠干| 本网站久久精品| 亚洲美女精品久久| 国产对白videos麻豆高潮| 国产一区二区伦理| 亚洲一卡二卡三卡四卡无卡网站在线看| caoporn视频在线| 6080日韩午夜伦伦午夜伦| 日韩视频在线观看免费视频| 国产精品久久久免费| a级国产乱理论片在线观看99| 国产一级免费在线观看| 午夜精品一区二区三区三上悠亚| 51自拍视频在线观看| 日韩一区三区| 国产精品露脸自拍| jizz亚洲| 欧美性极品少妇| 国产三级av在线播放| 国产欧美一级| 久久大片网站| 免费毛片b在线观看| 黄色在线免费观看网站| 色综合久久久久综合体桃花网| 国产十八熟妇av成人一区| 欧美日韩国产精品一区二区亚洲| 亚洲iv一区二区三区| 免费观看在线黄色网| 欧美日本一区二区在线观看| 成人三级视频在线观看| 理论电影国产精品| 亚洲亚洲精品三区日韩精品在线视频| 韩国成人在线| 中日韩美女免费视频网站在线观看| 日韩乱码一区二区三区| 中文字幕国产精品一区二区| 孩娇小videos精品| 色综合久久网| 成人观看高清在线观看免费| 看黄网站在线| 日韩三级免费观看| 日本熟女一区二区| 91毛片在线观看| 免费日韩视频在线观看| 国产aⅴ精品一区二区三区久久| 国产成人高清激情视频在线观看| 国产精品久久久久久久龚玥菲| 欧美亚洲精品一区| 三上悠亚在线观看视频| 国产精品一区二区三区四区| 国产一区二区三区乱码| 日本国产精品| 国产精品免费网站| 黄色免费在线看| 欧美大胆人体bbbb| 日韩乱码在线观看| 欧美高清一级片在线观看| 在线看免费毛片| 激情欧美亚洲| 天堂精品视频| 视频一区在线| 欧美中文字幕在线| 日本在线天堂| 精品国产乱码91久久久久久网站| 久久久精品福利| 国产精品久久久久一区二区三区 | 日本一道在线观看| 亚洲天堂日韩av| 国产欧美午夜| 午夜精品一区二区三区四区| 日本久久伊人| 国产成人精品综合| av网址在线播放| 国产视频久久久久| 99久久久国产精品无码免费| 欧美日韩免费看| 美女视频久久久| 91美女在线观看| 999这里有精品| 在线视频日韩| 亚洲激情免费视频| 欧美人与牛zoz0性行为| 粉嫩av免费一区二区三区| 欧美亚洲韩国| 欧美国产精品人人做人人爱| 国产福利在线视频| 亚洲成人性视频| ,一级淫片a看免费| 欧美日韩一区二区三区在线免费观看| 日韩欧美国产成人精品免费| 91浏览器在线视频| 粗大的内捧猛烈进出视频| 奇米一区二区三区| 老太脱裤子让老头玩xxxxx| 91久久夜色精品国产按摩| 欧美三日本三级少妇三99| 66精品视频在线观看| 成人激情在线播放| 素人啪啪色综合| 日本久久中文字幕| av岛国在线| 欧美另类极品videosbestfree| 国产高清一级毛片在线不卡| 亚洲精品美女久久久| 午夜老司机福利| 欧美一区二区三区视频在线| 国产九色91回来了| 色哟哟一区二区在线观看| 九九热在线视频播放| 亚洲一区免费在线观看| 多男操一女视频| 中文字幕亚洲电影| 嘿嘿视频在线观看| 国产欧美日韩综合精品一区二区 | 国产男女猛烈无遮挡| 在线精品视频小说1| 久久久久久久久久久久久av| 婷婷久久综合九色综合伊人色| 免费在线观看黄视频| 亚洲免费av高清| 亚洲欧美小视频| 亚洲免费观看在线视频| 蜜桃麻豆www久久国产精品| 你懂的在线看| 亚洲欧美日韩一区二区在线| 无码国产精品96久久久久| 亚洲电影免费观看| 日本高清视频在线| 日韩激情片免费| 日本a一级在线免费播放| 国产午夜精品麻豆| 国产系列在线观看| 中文字幕日韩在线播放| 2019中文字幕在线视频| 日韩视频精品在线| 国产网站在线免费观看| 久久国产精品久久国产精品| 亚洲男同gay网站| 久久久久久久色| 国产高潮在线| 日本精品免费观看| 成人精品三级| 91在线|亚洲| 91成人在线精品视频| 久久精品成人一区二区三区蜜臀| 亚洲婷婷影院| 亚洲国产综合自拍| 天天精品视频| 久久久久99精品成人片| 久久av在线| 欧美一级小视频| 岛国av在线一区| 亚洲熟妇一区二区三区| 国产精品免费aⅴ片在线观看| 99久久99久久精品国产| 亚洲成人777| 无码人妻黑人中文字幕| 欧美裸体一区二区三区| 性网爆门事件集合av| 亚洲免费精彩视频| 免费在线视频欧美| 国内精品久久久久久久| 成人日韩精品| 999国内精品视频在线| 日韩av影院| 伊人久久大香线蕉av一区| 国产精品成人一区二区网站软件| 中文字幕乱码人妻综合二区三区 | 毛茸茸free性熟hd| 国产日产欧产精品推荐色| 极品魔鬼身材女神啪啪精品| 精品国产成人在线| 一二区在线观看| 国产视频久久网| 中文字幕有码在线视频| 欧美在线国产精品| 国产美女视频一区二区| 欧美aaaaa喷水| 欧美福利一区| www.超碰com| 成人免费电影视频| 国产成人精品综合久久久| 成人在线免费电影| 欧美高清性猛交| 欧美日韩精品免费观看视欧美高清免费大片| 96国产粉嫩美女| 国产成人一区| 国产精品久久..4399| 久久精品国产一区二区三区免费看| 人妖粗暴刺激videos呻吟| 中文字幕日本不卡| 亚洲精品一区二三区| 亚洲国产精品悠悠久久琪琪 | 国产精品久久久久三级| 国产午夜视频在线| 538在线一区二区精品国产| 高清性色生活片在线观看| 国自在线精品视频| 视频一区视频二区欧美| 一本一本a久久| 美女国产一区| xxxx黄色片| 亚洲主播在线观看| 99精品视频免费看| 最好看的2019的中文字幕视频| 性欧美freesex顶级少妇| 成人免费91在线看| 亚洲一区二区三区| 99国产精品久久久久久| 国产精品免费看片| 在线观看国产黄| 一区二区三区四区精品| 校园春色亚洲色图| 欧美大陆一区二区| 夜夜嗨一区二区| 人体私拍套图hdxxxx| 亚洲一区二区三区视频在线 | 日韩福利视频在线观看| 国产经典三级在线| 91在线观看网站| 欧美一区综合| 中文字幕1区2区| 亚洲影院久久精品| 刘亦菲毛片一区二区三区| 欧美国产日韩在线| av成人资源网| 欧美又粗又长又爽做受| av一区二区不卡| 羞羞影院体验区| 亚洲免费视频网站| 亚洲第一二三四区| 色视频一区二区三区| 日韩成人dvd| 最新黄色av网址| 欧美一级欧美三级| eeuss鲁一区二区三区| 国产日韩三区| 天堂一区二区在线| 东京热无码av男人的天堂| 欧美女孩性生活视频| a黄色片在线观看| 国产精品国产一区二区| 99精品免费网| 亚洲一区 欧美| 制服视频三区第一页精品| 新版中文在线官网| 国产一区二区无遮挡| 性欧美长视频| 成人欧美一区二区三区在线| 亚洲高清999| 国产 福利 在线| 中文字幕+乱码+中文字幕一区| 国产精品高潮呻吟久久久| 久久久之久亚州精品露出| 网曝91综合精品门事件在线 | 精品在线一区二区| 久久久久亚洲av无码专区体验| 欧美精品一区在线观看| 写真福利精品福利在线观看| 在线精品亚洲一区二区| 懂色av一区二区夜夜嗨| 中文在线第一页| 精品国内亚洲在观看18黄| 风间由美性色一区二区三区四区| 成人免费观看视频在线观看| 国产精品无人区| 午夜老司机福利| 国产成人高清激情视频在线观看| 婷婷伊人综合| 这里只有精品在线观看视频| 欧美色综合网站| 99在线视频影院| 亚洲一区二区在线观| 成人av高清在线| 91 中文字幕| 日韩激情av在线免费观看| 国产欧美视频在线| 女人另类性混交zo| 亚洲一区二区四区蜜桃| 日本高清中文字幕在线| 欧美日韩免费观看一区|