免费直播| TDD如何颠覆了我对开发的认知?
不知道大家最近是否感到,2019年“敏捷開發”四個字的出現頻率越來越高。在我的認知里,有果必有因。
5月初甲骨文裁員事件是風暴的開始,很多一線大廠,強如華為、騰訊、美團都準備做兩手打算——一方面減員增效,一方面做敏捷轉型,試圖通過輕量級的開發和適應性的計劃方法來應對市場變化。
一句話,對企業來講,成功的核心是能保持比對手更低的成本。
你工位旁的老王被裁員了,而你沒有,一定是你的效率比他高——分別給你倆3小時,你的項目成功交付,bug很少,他連個毛都沒做出來,你是老板,你怎么選?
如何在不景氣的時候保住飯碗,成為更高效、更有市場價值的開發者?
敏捷開發的關鍵是——「盡早交付,持續改進」。兩個關鍵詞,“盡早”說的是時間點——是叫你交付早。“持續”——則說的是一個狀態,以終為始、無始無終,翻譯過來叫996,讓白天也懂夜的黑,對吧。
讓我猜猜,如果你所在的企業不甘人后,開始自力更生落地敏捷,往往會選擇 Scrum 或 Kanban 這兩個方法論,白板立起來、小紙條貼起來、站會開起來,幾個動作一PUSH,就好像連上廁所都變得敏捷了不少——別傻了,我管這種行為叫開發界的COSPLAY。
打過地鼠嗎?你的產品上線后,就會像打地鼠一樣,1個bug消滅了,另外2個站了起來,一開始你會陷入混亂,然后會陷入對敏捷開發的恐懼,進而開始懷疑人性的真善美。
是「敏捷」的問題?還是人的問題?
如何保持良好設計?如何在有豬隊友頻繁修改代碼的情況下,還能保證代碼質量以及你內心深處的平和?
答案就在極限編程(eXtreme Programming)中。
?TDD(測試驅動開發)就是「極限編程」的核心實踐,就像鑰匙——擰動TDD,你就擰開了敏捷開發的大門。
作為TDD(測試驅動開發)的實踐者,我打算分享一下我在ThoughtWorks的工作經歷,講一講我是如何和TeamWorker一起,用TDD來提高效率,從而獲得了之后的晉升機會。
加入 ThoughtWorks 后的第一個項目,讓我顛覆了對 Android 開發的認知,讓我知道了什么叫「要聰明地工作,而不是努力地工作」。
我當下面臨的問題是——把基于 Windows CE 的某應用移植到 Android 系統上,使用 Robolectric 框架,①不需要真機,②也不需要模擬器,③在 JVM 上就能跑測試,要求在3 分鐘就能跑完 2000 多個測試用例。
題干講完了,我是這么干的:
????①明確并領取需求(用戶故事形式)
????②根據需求編寫測試代碼
????③編寫實現代碼
????④讓代碼通過測試
????⑤重構代碼保持整潔。
等所有測試都編寫并通過后,再把應用啟動,自動測試關鍵流程,最后搞定,打完收工。
聽著簡單,里邊有幾個關鍵點:
1.明確流程是為了讓我們一次只關注一個點,思維負擔更小。
2.牢記紅、綠、重構三原則:紅 - 關注需求;綠 - 關注實現;重構 - 關注代碼質量。
3.TDD 大法雖好,但難學。早在2003 年,前ThoughtWorks總監咨詢師熊節就為中國程序員翻譯且引進了《重構》一書,累計購買量達到20萬人,16 年過去,《重構 2》都出來了,但很多程序員還是連重構和重寫還傻傻分不清。TDD 需要具備扎實的基本功,這也是把很多初學者拒之門外的重要原因。
外行看熱鬧、內行看門道,想抓住機會提升自己,掌握能用于工作的TDD開發技巧,不妨先來聽一聽本周四晚7點的免費線上直播——《敏捷開發核心實踐 ?晉級大廠程序員必備技能》。
周四晚7點先參加免費直播,入門TDD,現場完成一個項目案例,了解敏捷開發核心實踐,這將是你零距離面對技術大牛、零基礎入門TDD的最好時機!
本周四晚19點直播,限時免費!
本周四晚19點直播,限時免費!
本周四晚19點直播,限時免費!
直播主題
《如何用測試驅動開發(TDD)提升你的編程效率》
直播大咖
熊節
前ThoughtWorks總監咨詢師
主導華為、貝爾敏捷開發轉型
《重構》譯者 《敏捷中國史話》作者
如何獲取直播地址?
免費名額有限
長按掃描海報二維碼
添加熊節老師助教,立即參加
第二波福利
5月24日,熊節與極客學院合作的《14天TDD深度實戰營》正式上線,14天項目制教學、3大核心項目、12個任務,致力于讓廣大開發者以更低成本入門TDD,獲得進階大廠程序員機會。
點擊閱讀原文
10秒了解TDD實戰營,搶99元低價名額
總結
以上是生活随笔為你收集整理的免费直播| TDD如何颠覆了我对开发的认知?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大神 20 年的专业数据分析心法全都在这
- 下一篇: Docker 安装 MySQL5.7