20190421 工作週記錄-反思

前言

時間過得好快,工作了也快一年了。感覺自己進步了不少,但是又覺得自己還是渣渣。

正文

一方面,在代碼上,自己會對自己有所要求。會去做封裝,抽象共性。也會注重代碼的可讀性,及時寫好註釋、注意命名。會把新學到的東西用到項目上,像springboot框架、lombok插件、aop技術、yml格式、durid連接池等。會去思考日誌要怎麼記錄後期維護時才能更快的定位問題。

另一方面,自己也願意花時間去學習、思考。去向項目經理詢問爲什麼這個模塊或者說這個服務要用Java語言寫而不用php做(公司主要是用php),而不是一味接受。接觸流媒體時,自己也會去看很多資料文章,會去思考不同實現的區別,如通過調用命令行執行推流轉流和通過JavaCV實現推流轉流的區別、優缺點,儘管還是看的很暈。會去了解接口交互時的https、簽名驗籤、加密解密技術。會去了解抓包工具並運用也去思考裏面爲什麼可以破解https加密。會去了解一些nginx知識。會去了解linux操作。

列了這麼多自認爲的優點,感覺自己一年來確實是進步了不少的。可是還是會覺得自己很弱。

尤爲嚴重的一點是缺少對項目整體的認識,暫且不說整個項目的每個模塊,就我自己負責的那塊,我都沒吃透。比方說我主要負責的etc模塊。主要做的就是與相應省份的etc公司對接接口,然後封裝一層提供給前端調用。早些時候我更多的是管好自己的一畝三分田——確保接口能正常調用就OK了。後來慢慢有去了解業務,瞭解充值圈存的業務。可是最近發現自己還是沒有很好的把接口給串起來。或者說是不知道前端是怎麼處理的,或者說我作爲接口提供方自己也沒能把接口調用流程給畫出來。有時會出現一問三不知的情況,這個參數可以傳哪些值?emm,我看下先,等會告訴你。這個參數怎麼獲取的?emm,我看下先,等會告訴你。有時自己都會懷疑自己是不是真的有用心在工作。

自己總結就是缺少對整體的認識,準確的說就是不知道處理流程。也許是因爲有項目經理的存在吧,因此很多東西都是項目經理做了,以至於很多東西我都不知道,或者說沒有考慮到。

像上次做的江西etc小程序的充值圈存,前端用開發者工具是可以直接通過http的方式訪問接口的,因此我們在測試階段的時候是通過ip+8080端口進行訪問的,我也以爲到時線上版本也是這種訪問方式。但是,原來在小程序中進行訪問,得通過https的方式,這是因爲微信小程序要求必須配置域名不能使用ip。項目經理直接讓管理服務器的同事在服務器上配置https證書,配置nginx轉發,配置域名訪問,我只是隱約有聽到要將http改成https,可是我這邊卻什麼都不用改。因此如果不去追問,不去思考,就什麼都不知道。一段時間後,我突然發現前端同事是通過域名方式訪問我的接口程序的,並且不是訪問8080端口,一下子就很懷疑。原因就是因爲我什麼都不知道。因爲我不瞭解小程序端訪問接口的這些限制要求。

最近在做的項目的負責人是部門的大佬,他帶人的方式與其他項目經理不同,按照他的說法他可以什麼都自己做,但是他更願意作爲一個協助者來協助我們、推進我們,讓我們自己主動去處理問題。因此他更多的是在負責推進、在一旁指導。更多的是讓我們自己去溝通去處理問題。這次做的是百度智能小程序的一個在線申辦卡的功能。也是類似的問題,前期跟前端調試的時候是沒問題的,後來由於大佬要在手機端看效果,於是前端發現有問題,無法通過ip訪問,發現接口調不通。於是他改成了域名訪問,但是由於她不太懂後端這塊,因此當她發現改成域名訪問時也訪問不成功時,她也束手無策。於是她智能簡單的跟大佬說明:接口訪問不了。因此大佬就艾特我什麼原因。我說可能是因爲小程序得通過域名訪問吧。大佬說了一句話,讓我印象很深刻:“小程序都需要域名訪問的,你們做小程序的時候都不去關注的?”

一下子我也明白自己的問題了,只知道自己這一塊,其他的什麼都不知道,瞭解的東西太侷限了。即時我是負責提供接口,但是我也是有必要去了解小程序開發的相關東西。例如服務器域名配置,例如前端通過小程序可以調用的前開放接口有哪些。

再舉個真實的例子。有整體宏觀的瞭解,就會知道之前的一些模塊中前端提出的一些要求並不合理:前端說傳code給我要我返回openId,下次要獲取支付請求數據時纔可以把openId傳給我。看過文檔後,才知道並不應該把openId和session_key返回給前端的,而是應該返回一個登錄態,而在服務器中把登錄態和openId和session_key進行綁定,存儲起來。以後要獲取支付請求數據,前端把登錄態字段帶上,而我在接口中通過登錄態找到對應的openId和session_key。根據微信開發文檔,這纔是正確的做法。可是,由於我對小程序開發瞭解的太少,文檔又沒怎麼看,因此被前端牽着走,導致自己缺少思考,導致接口設計的不太合理,儘管沒有出現問題。

這個是自己目前的一個明顯的短板之一吧。不知道大家會不會也有類似的問題。可能是因爲有項目經理的存在,幫我們擋掉了很多問題,導致我們太過侷限,這點其實不太好。當然,主要還是需要自己多去了解多去提問多去思考吧。

當然,自己還有其他不少的問題,像業務、分佈式、數據庫優化、技術細節、模塊設計等,都還有所欠缺。

最後

這是近期遇到的問題引發的一些反思,其實感覺自己還是進步挺多的,儘管弱點也是很明顯。也感慨做一個程序員要學的東西真的好多好多。

就這樣吧接下來繼續加油,大家共勉!

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