天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

語言真是不重要的嗎?談?wù)Z言的*層次*與技術(shù)的三六九等

  關(guān)注——或“專注”于多語言編程之后,老趙對于語言的關(guān)注也越來越多,對于語言在編程中所帶來的“美感”也有了越來越深的體會,還在博客的標題中加上“追求編程之美”。關(guān)注語言多了,關(guān)注純粹的編程實踐多了,自會有所比較,然后寫出了引人注目的《為啥老趙不喜歡Java*語言*》。這篇文章所得到的負面評論的確也和想象中差不多,大部分朋友的觀點是“語言不是關(guān)鍵”或類似說法,似乎對語言的討論和比較非常沒有必要。有個朋友說的更是直接:“在看到這些文章之前,我還是比較敬重老趙的,不過現(xiàn)在發(fā)現(xiàn)你也就這點高度”。老趙認為,這是對這方面的誤解,而有這種誤解無論是對于社區(qū)還是個人的發(fā)展都是沒有益處的,因此單獨開篇,討論一下這個問題1

  “高度”,是個多么“發(fā)人深省”的名詞,往往直接就將事物分了三六九等。封建社會將人認為三六九等即從“出身”或“行業(yè)”決定了一個人的社會地位高低,例如,即使是“戲子”或“工匠”等下等職業(yè),就算成就再高也被主流社會所排斥,大部分人依舊從心底里瞧不起那些人。不知道您對這樣的劃分有什么看法,老趙對此沒有看出任何科學性,也沒有任何好感。不過現(xiàn)在國內(nèi)“主流”觀點也在技術(shù)方向分了三六九等,例如以下便是一個典型:

  • 上等:系統(tǒng)架構(gòu)
  • 中等:框架設(shè)計
  • 下等:語言實現(xiàn)

  為了證明自己的“高度”,為了避免接下去討論的內(nèi)容把老趙“下等人”的老底給顯露出來,老趙先用一段話為自己披上“上等人”的外衣:

  “如果要實現(xiàn)一個‘高性能’、‘大并發(fā)’的網(wǎng)站,前端使用4層7層負載均衡,如果不用F5等商業(yè)產(chǎn)品可以先用Nginx等做反向代理。后臺實現(xiàn)要對系統(tǒng)作劃分,避免單點失敗,也可以作獨立優(yōu)化。系統(tǒng)之間可以用異步消息傳遞來降低耦合;系統(tǒng)中不采用二段式提交或分布式事務(wù),CAP原則中的“一致性”往往需要做出讓步,而采用‘最終一致’策略。數(shù)據(jù)存儲方面可以做橫向或縱向的劃分,或者構(gòu)建查詢表。合理使用Schemaless的設(shè)計方式或如何MemcacheDB或Tokyo CabiNET等Key-Value存儲方式可以帶來更好的伸縮性。除此之外,系統(tǒng)中還需要部署Memcached集群作為緩存。靜態(tài)文件可以使用Squid或Varnish作為緩存,避免所有IO都直接落到文件存儲上……”

  其實老趙只是把大腦皮層最表面的某些“知識”給傾倒出來一些,我不知道這些內(nèi)容給您感覺是什么,是不是會覺得很有“高度”。但是老趙覺得,這些東西看起來可能會“過癮”,但是卻毫無營養(yǎng)。其實所謂我們很多草根人士平時在談?wù)?ldquo;系統(tǒng)架構(gòu)”的時候,往往就是把各種產(chǎn)品,原理,實踐進行組合拼接,其實說起來和看著市場上產(chǎn)品報價然后攢出一臺電腦沒有本質(zhì)的區(qū)別。因此老趙現(xiàn)在看到這些東西已經(jīng)不太感冒了,目前一直在設(shè)法研究從某個細節(jié)方面真正有效地提高“某個參數(shù)”,而不是從一個非常高屋建瓴的方面對整體提出一個所謂的“指導(dǎo)”。

  不是每個人都有能力和條件成為鄧爺爺那樣偉大的改革開放總架構(gòu)師的。

  作為一個普通人,我們很容易對自己不太了解的東西產(chǎn)生一種崇敬之情。例如搞.NET編程的,往往會對“操作系統(tǒng)”,“線程調(diào)度”,“文件系統(tǒng)”,“匯編”等名詞望眼欲穿,覺得那些才是真正有“技術(shù)含量”的東西。其實每個人的工作都是建立在另一批人的抽象之上,然后再這個抽象上產(chǎn)生更多的價值,如果因此對自己產(chǎn)生懷疑,硬要分個高低貴賤三六九等,這估計可以算作一種“妄自菲薄”。而“語言”作為我們技術(shù)人員每天都會接觸的事物,似乎人人都會,人人都懂,談了再多也只是一種“低級”的問題。如果還在專注,還在比較,那么“你也只能算是這點高度了”。

  我們每個人從接受計算機教育的一開始似乎都會被告知一個正確的道理:“語言只是工具,重要的是能力與思想”。這句話本沒有錯,但是一句正確的話被強調(diào)過渡了可能也會成為一種錯誤。例如KISS原則的本意是要避免“過渡設(shè)計”,而老趙不止一次發(fā)現(xiàn)它已經(jīng)被某些朋友用作“不設(shè)計”的理由。語言之余技術(shù)人員,就好比兵器之于武林人士。強調(diào)“能力”好比強調(diào)“武功內(nèi)力”這不會有錯,但是根據(jù)老趙多年閱讀的沒有上百也有數(shù)十本武俠小說中,的確沒有發(fā)現(xiàn)武林人士對神兵利器的品評與追求體現(xiàn)出嗤之以鼻的態(tài)度。

  很多朋友認為,高手是不會介意語言的選擇,而語言也不會影響高手的能力。老趙并不同意這個看法。老趙同意“對于同樣的工具來說,能力決定了生產(chǎn)力”,卻不同意“有了能力,工具對于生產(chǎn)力的作用微不足道”。在TL上有朋友說了一句老趙認為非常有道理的話:有些武功也必須是有特定的兵器才能修煉的。如果只有匯編語言,那么大部分人都無法突破“子過程”這個抽象級別,更別說“面向?qū)ο?rdquo;了。因為“語言”往往會對“設(shè)計”有巨大影響,所以Linus會炮轟C++Anders HejlsbergJames Gosling會對語言設(shè)計中是否應(yīng)該有Checked Exception持不同意見。

  看大師爭論很過癮,那些總不會是“低層次”的爭論吧!

  “圖靈完備”已經(jīng)從理論上保證了語言的能力“足夠”表現(xiàn)出任何邏輯,但是世界上還是有各種各樣的語言層出不窮,在一個又一個地方放出不同光輝。而由于一般的“通用語言”在表現(xiàn)某個特定問題的時候會顯得比較“嘈雜(Noise)”,因此現(xiàn)在DSL的概念也愈發(fā)蓬勃了起來。老趙懷疑,高手的能力真能忽略語言的特性的不同,得到同樣高度的生產(chǎn)力嗎?如果真是這樣的話,老趙現(xiàn)在所追求的“混合編程”的意義又在哪里?老趙不知道Martin Fowler為什么會說“People may say that Ruby is less noisy than Java, or that external DSLs are less noisy than internal DSLs”。不過我懷疑小李探花手持天機棍2后是否還能在兵器譜上排名第三。

  誠然,高手超能力的作用無法被忽視,他們也可以用Java寫出流暢的API(fluent interface),正如jMock在為Java平臺帶來了一股清新的空氣。但是Moq使用C# 3.0中引入了Lambda表達式之后,從Rhino Mocks(與jMock的語法類似)手中搶走了大量的市場份額,迫使它也不得不使用Lambda表達式應(yīng)戰(zhàn)。同樣,即使C#的擴展方法特性可以在一定程度上改進單元測試的語義,如果您把它和Scala實現(xiàn)的specs,或者F#實現(xiàn)的FsUnit相較“Behavior-Driven Development”,高下立判。今后老趙也會給出自己在混合編程上的探索,您一定可以更明顯地發(fā)現(xiàn)不同語言在解決相同問題時產(chǎn)生的區(qū)別。

  “語言只是工具,重要的是能力與思想”。這句話本沒有錯,但是如果把它作為“輕視語言”的理由,認為“語言”是低層次的東西,那只能說是一種誤用了。

  最后,老趙再稍微談一下對另一個觀點的看法:“一個好的程序員應(yīng)該兼容并包,不該有門戶之見”。老趙舉雙手雙腳同意這個看法,這也是老趙推崇“混合編程”的原因。但是老趙認為這不代表不能“批評”一個語言,“兼容并包”講究的是“各取所長”而并非是“各護其短”。老趙不搞“平衡論”,不代表老趙有“門戶之見”,不是嗎?

  就用“門戶之見”來結(jié)束這篇文章吧:有錯誤的是“重語言而輕其他”,或者僅從語言來說明事物(例如通過語言來說明程序員能力高低,項目好壞等等)。而研究語言,比較語言,思考語言,談不上所謂層次淺,高度低——“層次”所指的是“怎么搞”,而不是“搞什么”。否則,不也是一種“門戶之見”嗎?

 

注1:這篇文章的內(nèi)容原本屬于《老趙看“偽專業(yè)”》一文,但是在寫作過程中發(fā)現(xiàn)這一塊可能是誤解最深,也最難以被人識破的觀念,因此單獨成文,想把這個問題說明清楚。

注2:在白曉生“兵器譜”排名中,“天機棍”排名第一,而“小李飛刀”李尋歡排第三。

 

it知識庫語言真是不重要的嗎?談?wù)Z言的*層次*與技術(shù)的三六九等,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美成人中文字幕在线视频 | 国产精品涩涩涩视频网站 | 亚洲涩福利高清在线 | 手机在线免费观看毛片 | 国产亚洲精品久久久久 | 日本亚洲中文字幕无码区 | 亚洲午夜精品久久久久久抢 | 99人精品福利在线观看 | 国产AV精品白浆一区二 | 一本久道久久综合狠狠躁AV | 国产精品97久久久久久AV色戒 | 黄页免费观看 | 国产精品99精品无码视亚 | 欧美日韩高清一区二区三区 | 酒色.com | 欧美人成人亚洲专区中文字幕 | 久久re亚洲在线视频 | 国产在线观看黄 | 亚洲欧美免费无码专区 | 国产露脸无码A区久久蘑菇 国产露脸无码A区久久 | 久久久久国产一级毛片高清片 | 性xxx免费视频 | 亚洲欧美高清在线精品一区 | 国产精品一区二区AV白丝在线 | 亚洲人成无码久久久AAA片 | 色欲AV亚洲永久无码精品麻豆 | 在线日韩欧美一区二区三区 | FREE17一18外女破 | 国产成年网站v片在线观看 国产成年人在线观看 | 免费看黄软件 | 国产色精品VR一区二区 | 成人无码在线超碰视频 | 20岁中国男同志china1069 20岁αsrian男同志免费 | 99久久99久久久99精品齐 | 女人高潮了拔出来了她什么感觉 | 99久久国产露脸精品国产吴梦梦 | 特黄AAAAAAA片免费视频 | 樱花动漫成人隐藏入口 | 久热久热精品在线观看 | 99视频偷窥在线精品国自产拍 | 女性爽爽影院免费观看 |