- Android插件化開發指南
- 包建強
- 1746字
- 2019-01-05 08:31:07
序三
聽說包豬豬的第二本書要出版了,很為他高興,作為一個旁觀者,眼見著本書由一個想法萌芽逐漸充實,頗有感觸。我腦海里就像過電影一般,浮現這幾個月中包豬豬的種種狀態:為解決一個bug而連續工作十幾個小時的苦悶,第二天一早起來靈感觸發迎刃而解的喜悅,一邊照顧父母一邊因書的進度被某一難題阻滯而焦灼……身邊的人會跟他說:“事情這么多,歇歇再寫吧,別讓自己太辛苦。”可是一個想快點跟業界分享自己想法和成果的程序員又怎會因瑣事耽擱?曾是微軟MVP的他,入行十幾年,仍然秉承著剛入行時的激情與熱忱,吭哧吭哧地調bug到凌晨,這本書或許是這個“內心有團火”的家伙希望送給讀者最好的禮物——智慧的分享與教學相長的領悟。
我是學中文和法律的,作為圈外人在本書前作序,多少有班門弄斧之嫌。如論代碼,各位讀者在自己的領域各有所長。不過我這種對技術一竅不通的人,竟在看一本技術書時捧腹大笑,足見本書的吸引力。比如說,書中調侃張勇和任玉剛是插件化領域的男喬峰女慕容,以至于我一直想親眼見一下這兩個人。比如說他在前言中拿娃娃開涮,連著感謝了霹靂嬌娃、趙越和Dinosaur,殊不知那卻是一個人,可能是為了看上去人多一些,以壯聲勢。
程序員的世界我不太懂,尤其是包豬豬,他經常做出一些令人啼笑皆非的事情。比如說,情人節他第一次給我送花,卻陰差陽錯地寄來了兩束。晚上的時候他跟我說,兩束花別浪費了,另一束花就快遞給鄧凡平吧——據說那也是Android行業內的一位大神,他因為伺候老婆坐月子而忘記準備情人節禮物了。于是,作為情人節只收別人禮物的我,在這一天,第一次給別人送禮物。
他做飯很好吃,有很多招牌菜。用他的話講,炒菜是設計模式中的裝飾器模式。比如說西紅柿炒雞蛋,放鍋里炒了幾分鐘后,加點糖,就是味道甜甜的西紅柿炒雞蛋,再加些鹽,就是酸甜可口的西紅柿炒雞蛋,也許還會再加些其他調料,但這道菜永遠都是西紅柿炒雞蛋,只是味道不同罷了。技術做到這一步已經接近于完美,但他后面的奇葩行為,卻顛覆了我對他的認知。
他研究做魚,第一天沒做好,第二天再買條魚繼續做,直到他認為完美。把鉆研計算機技術的執著用于烹飪,結果就是我一連吃了5天魚湯,上火,滿嘴都是泡。
第一次見包豬豬是在酒吧,一邊聽著不知道是哪里的古老而嘈雜的樂隊嘶吼,另一邊是他給我講關于五個海盜分贓的小故事。隱約記得故事是這樣的:“5個海盜搶到100個金幣,他們決定依次由A, B, C, D, E五個海盜來分,他們訂立了如下規則:當由A提分配方案時,剩下的海盜表決,如果B, C, D, E四人中有一半以上反對就把A扔下海,再由B分……如是這般,那么A海盜如何分,才能既保住性命又能獲得更多的金幣。”這是個有意思的小故事,輕松而又暗藏思維邏輯,我們可能有很多種解決方案,但是最優方案最后一定是“博弈與制衡”的平衡。此前,我一直以為程序員的世界充斥著代碼,那是一套擁有獨立計算機語言的系統,難以接近跟理解??墒前i豬有種能力將難以理解或者比較復雜的事情用一種有趣的方式表達出來,詼諧有趣、通俗易懂又能在嘻嘻哈哈的氛圍中有所感悟。
本書講插件化,從插件化的歷史講起,說了不少這行的人跟事,還有八卦。接下來由基礎知識開始講起,后來又介紹了插件化解決方案及周邊技術。文字所限,本書內容結構不贅述了,各位可以憑目錄了解。代碼方面我雖然讀不懂,不過并不影響看書的心情,這是本書頗為神奇的地方。沒有高深莫測的理論,沒有艱深難懂的詞匯,就像包豬豬站在我面前娓娓道來,舉一些他覺得有意思的例子,讓你覺得調皮又生動。對于對插件化不熟悉的讀者,可能本書提及的有些詞匯是新的,不太容易理解,感謝本書的編輯在成書過程中從旁指引,因而本書在前言部分增加了名詞解釋,并在各個章節多加了一些描述性的文字。
關于本書前言所提及未展開描述的部分,其實作者在寫作前已經預留了位置,但是在成書前兩天猶豫再三還是有所刪減,因為總覺得講得不透、不徹底是不好意思呈現給讀者看的。因此,我跟很多讀者一樣很期待包豬豬過段時間能將那些本書沒說透的東西再寫本書好好講一講。比如說Small,他半夜說夢話時經常念叨這個詞。
謹以此書獻給奮斗在一線的程序員們,作為家屬深刻了解程序員的辛酸,希望本書對讀者能夠有所啟發,運用到工作中可以提高效率,多一些休息時間陪伴家人、朋友,少一些熬夜加班、拼命趕工。
郭曼云,2018年6月于北京
- Vue.js 3.x+Element Plus前端開發實戰
- Core Data應用開發實踐指南
- Spring開發者的Quarkus實戰
- QTP自動化測試最佳實踐
- 軟件需求與可視化模型(微軟技術叢書)
- 中文版Revit 2018基礎培訓教程(全彩版)
- 百度SEO一本通
- 軟件測試面試突擊:為自己贏得一份測試工程師職位
- 中國軟件工程師:工作、生活與觀念
- 現代API:通往架構師之門
- 嵌入式軟件測試:方法、案例與模板詳解
- 軟件架構指標:度量軟件系統的性能和架構質量
- 測試開發實戰教程
- 構建移動網站與APP:ionic移動開發入門與實戰 (跨平臺移動開發叢書)
- 火災與逃生模擬仿真:PyroSim+Pathfinder中文教程與工程應用