狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

我開發了世界上最流行的數據庫SQLite,并把100%的股份送給了老婆!

admin
2024年11月8日 21:47 本文熱度 468

世界上使用最廣泛的軟件是哪個?


Windows ? Android?  Office ?


都不對!


答案是 SQLite !



你可能沒聽說過它,但是它就在你身邊的:


  • 每一臺智能手機中(Android 和iOS)

  • 每一臺Mac電腦中

  • 每一臺Windows 10 電腦中

  • 每一個主要的瀏覽器中(Chrome, Firefox, Safari)

  • 大部分的機頂盒當中

  • 每個PHP和Python安裝目錄中

  • 很多流行的桌面應用(微信、QQ、 DropBox、 Skype、 iMessage、WhatsApp、 Adobe Acrobat Reader....)

  • ......


不信的話可以在電腦中搜索一下 “*.db”,看看能發現多少個。


這個流行的軟件,就是我, Richard Hipp開發的。



每個流行的軟件都是為了解決一個痛點問題,SQLite也不例外。


故事要從2000年說起,當時我在為美國海軍的一個驅逐艦開發軟件,這個軟件要對船上所有的閥門進行管理和操作。



當時,美國海軍使用的是IBM的Informix數據庫,我寫的軟件需要通過網絡訪問它來讀取數據。


但是有時候Informix所在的服務器會掛掉,閥門管理軟件就會報錯:不能連接到服務器!



海軍對我的冤枉不算什么,但是驅逐艦是要上戰場的,打仗時如果受到損害網絡不通怎么辦?難道我的軟件就不能用了嗎?



當時紐特·金里奇和比爾·克林頓正在“打架”,所以所有政府合同都暫停執行,所以我失業了幾個月。


沒事可干, 我決定把這個嵌入式數據引擎給寫出來。


市面上的數據庫基本上都是Client-Server架構的, 它的特點是這樣:



但是我想寫的嵌入式數據庫則是進程內通信,直接從本地硬盤中讀取文件,非常快



換句話說,每個程序都可以擁有一個本地的數據庫。


可是我并不是一個數據庫專家, 只是在大學中學過一個數據庫課程而已。


沒辦法,我只好去圖書館中借書,學習。



開發軟件肯定要選一門編程語言,我選擇偉大的C語言!



確定了語言,我開始做一些重要的系統設計,首先是如何存儲數據。



其次是應用程序如何訪問SQLite



當我在實現SQL層的時候,需要閱讀SQL標準,我發現SQL標準太繁雜了。



萬般無奈之下,我只好去看PostGres的文檔,作為處理SQL語句的參考。


最終的結果是, SQLite和Postgres的命令行有點像



SQLite 第一版本很快寫出來了,但是具有諷刺意味是,造船廠居然不用,他們還堅持使用Informix!


那就開源吧!我把它放到一個網站上,滿心期望引起世界的關注。


一年過去了,事情的發展往往不能如愿。



平心而論,SQLite第一個版本并不是真正的關系型數據庫,而是一個Hashing-based 數據庫。


我決定重寫,實現B+ Tree存儲引擎



2001年,911事件發生不久, SQLite v2 問世了。


很快,我接到了手機巨頭摩托羅拉的電話



我沒有想到,開源也能賺錢,這一單生意, 我賺了8萬美元。


隨后, 巨無霸AOL也拋來了橄欖枝。



2005年,當時的手機老大諾基亞也來了, 他們也想為手機找個數據庫。


他們很謹慎,找了10個數據庫做橫向對比測評,最后SQLite輕松勝出。



SQLite被用的越來越多,發展勢頭越來越好。


只不過SQLite的開發者主要是我,這讓客戶有點擔心。



而我的SQLite , Bus Factor 等于1 !怪不得客戶著急了。


為了保證SQLite能長期的發展下去,需要更多業界人士參與SQLite開發, 客戶希望我建立一個SQLite聯盟。


在Mozilla 基金會的負責人米切爾·貝克的幫助下,Mozilla、 Symbian、Adobe成為了聯盟的初始成員。



SQLite 重新進入了發展的快車道,2005年,一個叫Android的東西向我拋來了橄欖枝。


這玩意兒可編程性、可調試性非常強,并且操作系統很容易更新,每天都可以更新幾次。


Android最早期的原型機是這樣的。



我意識到這是個爆炸性的東西, 但是出于保密協議,我沒法通知諾基亞和摩托羅拉它們。


它們將被智能手機無情地碾壓。


這時候我的SQLite數據庫已經很火爆了,我的軟件咨詢公司不得不雇傭了幾個人來做技術支持。



我對自己的代碼非常自信, 天真地四處吹噓SQLite沒有任何嚴重Bug,但是當它發布到海量的移動設備上時,潛藏的Bug出現了。


這對我的自尊心造成了很大的傷害,我決心把SQLite的質量提上去。達到航空電子設備的質量!


而航空電子設備的質量至少要實現MC/DC這個苛刻的標準 !



我開始編寫測試,達到100%的MC/DC , 這花了我一年的時間,每周60個小時!這真是非常、非常、非常艱難的工作。



實際上,想達到95%的覆蓋率并不是特別難,但是剩下的5%實在是太難了。


艱苦的付出獲得了極為豐厚的回報, 從那以后,Android再也不找我麻煩了。



我付出了艱苦的努力,讓SQLite成了世界上最流行的數據庫。


這一切都很難,但是和說服Ginger G. Wyrick 嫁給我相比,SQLite不算什么。


Ginger 是一個音樂家和作家,美麗又才華橫溢。


?


我很愛她,一結婚就把公司名稱變成了 Hipp, Wyrick & Company, 并且把公司所有的股份送給了她。


這個公司只有兩個人,她是CEO 和COO, 而我,則是唯一的程序員。


最后,總結一下SQLite為什么能成功吧。


首先,它是一個可靠的、穩定的數據庫,對事務的支持,讓它在應用崩潰時也不會丟失任何數據。這比你自己操作XML,JSON等文件要可靠得多。


其次,它可以輕松地嵌入到任何語言寫的系統中。


最后,它開箱即用,非常簡單!


全文完,覺得不錯的話點個或者在看吧!


本文作者

劉欣著有暢銷書《碼農翻身》《半小時漫畫計算機》,前IBM架構師,領導過多個企業應用架構設計和開發工作;洞察技術本質,擅長用故事去講解復雜技術。


該文章在 2024/11/11 14:46:59 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved