天天看點

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

說明

周末刷了一下視訊 – 程式設計的未來,1942年出生的Bob大叔,1個小時20分鐘全程手舞足蹈的講解了程式設計的曆史和未來。講述了程式員的曆史1945年第一台計算機開始,隻有一位程式員,到目前為止全球程式員數無勝數。新語言如雨後春筍般爆發,以後的未來是增強版的靈活開發 + 重拾極客專業精神。整場演講解析:程式員為啥是從以前的高門檻數學家,到程式設計沒有門檻的年輕人;為啥需要靈活開發;為啥靈活開發失效,重拾極客精神。

Bob大叔原名Robert C. Martin 。1970年開始從事程式設計工作(18歲),靈活的鼻祖,著著名書籍有《靈活軟體開發 原則、模式與實踐》、《架構整潔之道》。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

youtube視訊連結如下:

“Uncle” Bob Martin - “The Future of Programming”

刀跟火種的年代

1945第一台計算機,1位數程式員

毫無疑問這就是計算機之父Turing圖靈。他是數學家,科學家。那個時候程式員要求可真高。

  1. 用二進制程式設計
  2. 操作整數的加,和邏輯否操作
  3. 發明子函數
  4. 發明棧
  5. 發明浮點數
    程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1953年發明Fortran語言,那個時代都是手寫在紙上。程式員寫好程式,交給計算機硬體廠商去給硬體編碼,程式員是不能碰到計算機的。有時候僅僅是因為一個标點符号,程式就敗下陣來。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

函數式程式設計的鼻祖Lisp,經過幾十年的風風雨雨,發現函數式程式設計正在流行。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1965年,計算機裝置租用一個月$2,500 (相對于現在$20k).

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1965年,程式員的數量在數十萬(100, 000)。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1945年隻有一位程式員圖靈,到1965年有數十萬程式員。Bob大叔那個時候13歲。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1965年的程式員不一定是數學家,TA們是經驗豐富的行業專家,非常自律,專業。是以,基本上都是30多歲到50多數的多年工作者。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

上帝說要有光 – 面向對象

1966年Ole-Johan Dahl, Kristen Dygard 發明了面向對象。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1968年Edsger Dijkstra 發明Goto跳轉邏輯

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

Unix之父Ken Thompson(坐着的科學家),C語言之父Dennis Ritchie(站着的科學家,也是Unix開發者)

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1970年銷售的計算機PDP8s, 售價$50, 000

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1970年程式員數量達到百萬級别

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1970年以後,成千上萬的年輕程式員加入,TA們的特點是特别年輕,并且基本上都是男性。比如Bob大叔,那個時候18歲,一個月的工資都可以買車,當然美國汽車也就幾千塊錢。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

程式媛從1985年以後,就像程式猿那麼增長,反而往下走的趨勢。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

1985年的程式員還是比較專業,自律,不需要項目經理去監督。程式員知道怎麼管理時間,溝通,一起工作。程式員知道截止時間,和按時教父。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

門檻降低,機器性能快速發展

IBM開發出虛拟記憶體系統,NASA Apollo登月,資料結構,函數,面向對象普及。Unix系統出現,進階語言普及。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

大量的雄性程式員已經失控,需要項目經理貼身安排進度。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

2001年靈活宣言

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

靈活開發宣言,背景中有Bob大叔。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

靈活開發紀律

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

極限程式設計

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

沒有靈活開發,程式會越來越難維護。沒有可追溯機制,是以持續內建CI, CD持續釋出出現。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

圖靈,自律才能創新。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

2010年以後 – 程式員失控

Scrum的美好願望

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

過渡的流程化,程式員的技能受限。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

程式員反叛。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

一個高效的有紀律的商業,加上沒有紀律的程式員團隊,會快速産生垃圾。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

項目經理的真實場景

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

靈活的未來2016

靈活開發如果少了技術的最佳實踐,那就是假的靈活。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

解決之道:靈活必須成長,重拾極客精神,最佳實踐。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

文化依賴于我們,需要有同理心。

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

程式是不可控的,人是可控的

程式設計的未來 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming說明刀跟火種的年代上帝說要有光 – 面向對象門檻降低,機器性能快速發展2010年以後 – 程式員失控靈活的未來2016程式是不可控的,人是可控的Objective-C的興起-- 完全是意外

Objective-C的興起-- 完全是意外

Objective-C 在80年代都處于無人問津的語言,那個時候喬布斯建立了Nextstep電腦公司(銷售基本無人問津),就收購了Objective-C。最後喬布斯又被請回Apple,Apple收購了Nextstep,才把Objective-C擺正了位置。

是以語言是哪個會流行,完全是意外。

繼續閱讀