我每天重複寫這個API,沒有一次請求狀態碼是200

本博客 貓叔的博客,轉載請申明出處

我是一個普通的比你還普通的代碼撰寫人員,甚至不敢號稱是程序員,我每天起牀都接到這樣一個任務,我需要去完成一個API,一個普通的API,我可以不用寫文檔、不用寫註釋、不用準備思維導圖......

我不知道是誰給我下的命令,不知道是這個API是要給誰調用,不知道要服務於什麼,這一切都需要我去設想。

我的腦袋經常把這件事情給遺忘,生活與工作的各種事情,即使是刷刷手機訊息都可能會排在這件事情的前面,但是每日醒來我還是會意識到這樣的一個任務。

我開始去完成這個模糊的API任務,畢竟很多人都能寫出一個漂亮的API。

在我這邊完成的過程中,我遇到了第一個難題:我要選擇什麼語言?

Image

上了www.tiobe.com,查看了世界排行,發現我所比較熟悉的Java暫時還是第一,不過看到各種自己完全不熟悉的語言,還是感覺壓力山大。

問了幾個比較厲害的朋友,他們也各有說辭,都推薦他們所認可的語言,我像是一灘水,他們就像各種器皿,希望我能進入他們的空間一般。

好吧,爲了這個API我選擇進入Java這個器皿中。

如果可以的話,或許是我不自量力,我更希望進入一個我真心喜歡的器皿中,GC也好、指針也罷,我需要的就存在,我不需要的請給我隱藏,我看到過一個厲害的人,他就自己創造了一門語言。

接下來,我發現我還需要選擇數據存儲相關的,厲害的人都叫他們數據庫,那些人可以輕易的說出什麼是關係型數據庫、什麼是非關係型數據庫,業務邏輯強的時候可以選擇MySQL,搜索量大的時候你就加索引,如果有興趣搭建搜索引擎,你甚至可以使用ElasticSearch;而Mongo DB則適合分佈式文件存儲,對,還有HBase面向列的存儲,他們其中還有一些是開源的,如果你能去貢獻一點代碼,我想這也足夠你吹捧一段時間。

Image

我是一個老實人,我踏踏實實的選擇了MySQL,畢竟我的這個API究竟要用在什麼業務,我也不清楚。

聽說有多數據源,可以根據業務來動態切換數據源,我想這種好東西,還是有人能幫我寫好就行了。

我沒有什麼項目經驗,不知道接下來的步驟對不對,希望大家可以不要鄙視我,畢竟現在什麼職場都有鄙視鏈了,我是一個靦腆且自尊心強的人,你說一句我可能會想很久。

我覺得需要去選擇一個框架,但是漸漸的,我發現這是一個套路,一個越來越深的套路,我選擇了Java、MySQL,那麼我需要選擇的框架就需要是Java寫的快速搭建Web的框架,而且我需要數據映射框架也是對應能接通Java和MySQL的。

我開始有種被綁手綁腳的感覺,Spring、SpringMVC、SpringBoot、SpringCloud、Spring Data JPA、MyBatis、Hibernate等等。

我不情願的選擇了可以讓我快速完成這個任務的大衆系列:SpringBoot+JPA。

原來jpa其實底層也是Hibernate,難怪有些東西,用起來比較熟悉,我希望接下來沒有選擇了,可是我還是太大意了。

我不知道我需要繼續完成什麼了。

我很傳統的構建了dao、service、controller等包,並針對這個API構建了對應的類,可是構建這些東西,其實IDEA都幫我做好了,我不知道我要寫什麼...

我陷入了沉思...一天、兩天、一個月、一年...十年...

Image

在經過生活與職場沖刷後,我在某個夜裏有夢到了有這樣的一件事情沒有做完,我立馬起身,將桌上的菸灰缸清理了一下,放到一側,然後重新點了一支雙喜,打開IDEA,將十年前放在GitHub上的項目clone下來。

深吸一口煙,“呼········”

我想我想清楚這個API的完整路徑了。

 https://life/meaning?who=myself   **GET**

很抱歉,說到這裏,本文終了。

我不能和你說我的業務實現寫了什麼,而那段代碼我也沒有push到GitHub上,因爲我覺得任何一個讀者寫出來的都將比我珍貴。

再和你說一點祕密,在我完成API請求路徑後,我在往後的十年、二十年都在不斷的修改業務實現的代碼,我甚至加入了MQ、Netty等等。

但是我在夢中卻一直請求不成功,從來沒有看到一次200。

我可以和你說得再明白一點,所有人的請求結果都是一樣的,但是每個人的實現業務都是不一樣的,甚至你選擇了C、C#、PHP、Python。

但是,結果都是一樣的,即使你認爲是最完美的代碼了。

結果都是...

Just Do it!

Image

這是我臨終時最後一次運行代碼看到的結果,併成爲了我的墓誌銘,我是一個普通的代碼撰寫者,你不需要知道我是誰,我只是作者筆下的虛無幻想,但是請你認清,你是誰!?

公衆號:Java貓說

學習交流羣:728698035

現架構設計(碼農)兼創業技術顧問,不羈平庸,熱愛開源,雜談程序人生與不定期乾貨。

Image Text

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章