大廠新來的實習生,連Json都不知道都不知道,給喬戈裡震驚了。。。
喬戈裡,一名在北漂的大廠程式設計師,在這裡記錄下來喬戈裡從校招進入大廠以來的點點滴滴。
事情
起因
如圖所示,發生在這周的一個工作日,當時這份介面文件評審完成了(PS:在大廠開發需要開發寫介面文件,然後由高 T去評審介面文件,文件沒問題了,然後前端和後端開發按照介面文件進行開發),然後需要根據評審意見進行修改,由於某些原因,這份介面文件的開發工作需要交接給新來的實習生進行開發,所以喬戈裡就讓實習生完成接下來的修改工作和開發工作。
修改介面文件過程
修改的地方不多,一個是加一個分頁效果,另外一個是給返回結果裡面增加一些欄位,我理解工作量也不多。
給返回結果裡面增加一些欄位 ,我想的結果應該是下面這樣:
{
"data":{
"A1":{
"A1":[
"A1-1",
"A1-2"
],
"current":""
}
}
}
其中, data.A1.A1
是個 list
,裡面是包括 data.A1.A1
所有取值情況,data.A1.current
欄位是代表data.A1.A1
當前被使用者選中了哪個欄位。
但是萬萬沒想到,實習生把修改完的介面文件給我,我看到的是這個樣子的結果:
{ "data":{ "A1":{ "A1": {A1-1,A1-2} , "new":null } } }
我問了實習生,你這個可以在json 線上解析網址
解析成json
嗎?實習生回我,json是什麼東西啊?
喬戈裡當時就???
好吧,json
不知道就不知道吧,但這個為了實現分頁效果的修改也是槽點滿滿。
我期待的結果是下面這樣:
{
"page":{
"pageNo":1,
"pageSize":10,
"totalCount":1
}
}
結果實習生只加了一個 page:1
這樣的欄位,我問你這樣可以實現分頁效果嗎?只展示第幾頁,不展示每頁展示多少嗎?
處理過程
最後我看他這樣呀,修改完不知道啥時候,我就把介面文件的修改工作親自改完了。
反思大廠招人標準
(圖片)看到這裡,大家估計都會新生疑問,我靠,這麼菜怎麼進的百度啊?。其實當時發完朋友圈,就一堆人在下面評論問我了,(PS:想窺探我朋友圈一手訊息的,可以加我哈已經有我好友就不用加了哈,目前人數還沒到上限, 複製 QGLNB12342 新增即可)
這裡和大家說一下大廠招實習生看中什麼,其實大家可以從網上看看大廠的面經就知道了:
- 基礎紮實,計算機基礎:作業系統、資料庫、資料結構、計算機網路、設計模組、Java 基礎集合 Spring這些得會
- 手寫演算法題可以徒手把《劍指 offer》上面的每道題10分鐘內寫出來
- 有個能說的專案
- 學歷尚可,學歷不行只能找人內推,比如找喬戈裡內推。
所以你看,面試的時候也不會去讓你徒手寫個json
啊,不會json並不影響你通過面試。
關於上面這些進入大廠必備的東西,喬戈裡之前在準備面試的時候總結了一份資料,如下圖所示
已經幫助很多粉絲朋友拿到網際網路公司的 offer,最近一位讀者朋友說她拿到了百度的22K+12W 簽字費 offer。
需要的在我的公眾好 程式設計師喬戈裡 後臺回覆 888 獲取這份大廠面試寶典。
介面文件
關於實習生的事情,雖然我自己親手改了介面文件,但想著以後如果有寫介面文件的事,也不能老是我親自動手啊,於是我在雙11的夜晚,整理了一些資料發給了實習生。
別問為什麼雙11晚上不陪女朋友過節,喬戈裡但凡有個女朋友,至於大晚上給一個大老爺們發這些資料嗎?
https://juejin.im/entry/6844903426350907400
需要我整理的這些介面文件資料的,可以在喬戈裡的公眾好:程式設計師喬戈裡 後臺回覆 介面文件 獲取。
介面的命名規範
介面的 url 中比較重要的點就是路徑了我覺得:
路徑又稱"終點"(endpoint),表示API的具體網址。
在RESTful架構中,每個網址代表一種資源(resource),所以網址中不能有動詞,只能有名詞,而且所用的名詞往往與資料庫的表格名對應。一般來說,資料庫中的表都是同種記錄的"集合"(collection),所以API中的名詞也應該使用複數。
舉例來說,有一個API提供動物園(zoo)的資訊,還包括各種動物
你如果想定位到某個動物園下的某種動物,那你的 url:
zooID換成對應的動物園 ID,animals換成對應的動物。
https://api.example.com/v1/zoos/2/animals/pig
就代表2號動物園的 pig。
介面的增刪改查
比如你新建一個配置並進行儲存,那麼應該使用 post 方法,然後再進行編輯應該使用 put 方法。
雖然你使用 post 也可以在後端實現修改編輯的功能,甚至你可以使用 post 使用 get 方法,但是其實是不符合規範,大廠還是很注重規範。
翻頁的設計
每個公司可能前端的翻頁都有預設那一套,最好是和前端提前對齊再去設計介面文件,別一個介面文件一種翻頁方式,給前端和後端都增加不少工作量。
對齊
文件如果更改完了,記得和大家對齊介面文件
最後
喬戈裡原創不易,覺得有幫助的,希望人才們轉發、點贊、在看支援一波。