日常開發中,提升技術的13個建議
來源:撿田螺的小男孩
前言
大家好,我是田螺。
日常開發中,都是在做業務需求,如何提升自己的技術呢?因此,本文田螺哥整理了提升技術的13個建議,小夥伴們,一起加油。
1. 打好基礎,深入學習語言特性
比如,對於Java
程式設計師來說,要了解Java
語言的基本概念和核心特性,包括物件導向程式設計、集合框架、異常處理、多執行緒等等。可以透過閱讀Java
的官方文件、教程、參考書籍或線上資源來學習。
如果最基本的基礎都不紮實,就不要談什麼提升技術啦。 比如說:
你知道 HashMap和ConcurrentHashMap
的區別嘛?在什麼時候使用 ConcurrentHashMap
?操作檔案的時候,你知道在 finally
塊中釋放資源嘛?你知道在哪些場景適合用泛型嘛?
因此,要提升自身技術,首先就是要把基礎打紮實。有些小夥伴說,上班沒時間學基礎呀,其實不是這樣的,基礎這玩意,每天地鐵上下班看看,下班後回到家再看看,週末在家看看,多點寫寫程式碼,一般一兩個月,你的基礎就很好啦。
又有些小夥伴說,如何提升Java基礎呢?有哪些教程推薦呢?可以:
閱讀Java相關書籍或教程,如Java程式設計思想、Java核心技術、Java虛擬機器、菜鳥教程等 閱讀Java部落格和社群參與討論:關注Java領域的部落格、論壇和社群,瞭解最新的技術動態和解決方案,與其他開發者交流。 多實踐,多敲程式碼:在B站找個Java基礎影片看,平時多實踐、多敲程式碼
2. 熟悉掌握常用的開發工具
工欲善其事,必先利其器. 所以一位好的程式設計師,往往編碼效率就更高。而提升編碼效率,一般要求熟悉並靈活應用工具.比如Eclipse、IntelliJ IDEA、Maven、Navicat
等。熟悉運用這些工具,可以提高開發效率。
我舉個例子,比如你熟悉掌握IntelliJ IDEA
的快捷鍵,三兩下就把實體類的setter和getter
方法生成了,而有些的程式設計師,還在一行一行慢慢敲。。
3. 日常工作中,總結你踩過的坑
優秀的程式設計師,之所以優秀,是因為他會總結踩過的坑,避免重蹈覆轍。所以,田螺哥建議你,日常開發中,如果你踩了哪些坑,就需要總結下來.茶餘飯後,再溫習溫習.
比如,你知道:
Redis分散式鎖使用,可能會有哪些坑嘛? 執行緒池使用有哪些坑? Java日期處理有哪些坑嘛? Arrays.asList
使用可能有哪些坑?
如果一時間忘記的話,可以看下我以前的這些文章:
細數執行緒池的10個坑 Redis分散式鎖的10個坑 Java日常開發的21個坑,你踩過幾個? 程式設計師必備:Java日期處理的十個坑
這些都是我工作總結出來的,也希望你們日常開發中,遇到哪些坑,都總結下來哈。
4.工作中,閱讀你們系統優秀的程式碼和設計文件
孔子說,三人行,必有我師。大家平時在看程式碼的時候,不要總吐槽著專案的爛程式碼。其實,可以多點關注寫得優秀的程式碼,然後看懂別人為什麼這些寫,仿造著來寫。
當然,一些好的設計文件也是:人家為什麼這麼設計,好處在哪裡,不足又在哪裡,如果是你來設計,你如何思考等等。把好的設計,讀懂後,記錄下來,變成自己的知識.
5.日常工作中,總結一些通用的技術方案.
在日常工作中呢,注意整理一些通用的技術方案。
比如冪等設計、分散式鎖如何設計、分散式事務設計、介面最佳化、限流設計、分庫分表設計、深分頁問題解決等等. 大家可以看下我之前的一些通用方案設計的文章哈:
後端思想篇:設計好介面的36個錦囊! 我們為什麼要分庫分表? 面試必備:聊聊分散式鎖的多種實現! 聊聊冪等設計 實戰!聊聊如何解決MySQL深分頁問題
當然,田螺哥也建議你,日常開發中,把自己遇到的一些通用設計方案總結下來,熟悉掌握這些通用技術方案。
6.參與技術討論,積極技術分享
參與技術討論和交流,可以有助於你與其他Java開發者分享經驗、解決問題和學習新知識。進行技術分享,可以加深自己的理解、建立專業聲譽、促進個人成長、為技術社群做貢獻等等。
比如你做需求遇到的一些難題,都可以跟有經驗的同事、或者技術leader討論討論。一些常見的難題,討論完可以記錄下來,然後做技術分享。
7. 主人翁意識,積極攻克專案的難題
作為一名開發工程師,具備主人翁意識並積極攻克專案的難題,是非常重要的。遇到專案中的比較棘手問題時,先不管是誰的問題,我們都要持有主人翁意識,積極主動地找到解決方案並採取行動。
而在找技術解決方案的過程,我們也就成長了。當攻克問題後,你也獲得領導的認可,好績效不遠了,一舉多得!
8. 思考專案中,哪些可以提升效率
日常開發中,幾乎大多數程式設計師都是在進行增刪改查。如何如何避免自己成為平凡的增刪改查程式設計師呢。
我覺得可以這樣做:平時工作中,思考專案中,有哪些可以提升的效率。包括熟悉開發工具、掌握適當的除錯技巧、熟悉常用框架、持續學習和關注技術發展等等。
比如:
好的的 debug
除錯技巧,可以讓你快速找到問題再比如一個外掛 easyyapi
可以一鍵讓你快速生成yapi
介面文件,而不用一個一個欄位手工敲介面文件。
當然,日常開發中,還有很多可以提升效率的技巧/工具,等待我們去發現。
9. 熟悉你的業務,讓自己不容易被替代
我們普通程式設計師,多數都是做業務的。一般工作個五年以上,水平差不了太多。如何避免自己被淘汰呢?我個人建議是,儘量做到熟悉你們做的業務,讓自己變得不容易被替代。
10. 多看看你的系統,可能存在哪些問題,如介面耗時、慢SQL等等
一般的系統,多多少少都有些問題。比如介面耗時過長、慢SQL、fullGC頻繁等等。
首先需要掌握這些技能,比如如何最佳化介面,如何最佳化慢SQL、fullGC如何排查等等。大家可以看下這幾篇文章哈:
實戰總結!18種介面最佳化方案的總結 盤點MySQL慢查詢的12個原因 SQL最佳化思路+經典案例分析 JAVA線上故障排查全家桶 線上服務的FGC問題排查,看這篇就夠了!
11. 學以致用,將理論知識應用到實際專案中
很多小夥伴說,看過很多計算機相關的書,閱讀過很多部落格,背了很多八股文,依然做不好一個系統。
我覺得,大家可以多點思考,把平時積累的東西,應用到實際專案中。背八股文不是沒用,你可以把它應用到實際開發中的。比如說,你看了田螺哥的文章,IO模型詳解
這個表面看起來就是一個常見的八股文知識點,工作中似乎沒用到。但是我在工作中,就用到這種類似的非同步思想:
比如發起一筆批次轉賬,但是批次轉賬處理比較耗時,這時候後端可以先告知前端轉賬提交成功,等到結果處理完,再通知前端結果即可。
再比如,你看完田螺哥的:MySQL索引15連問,抗住!,你是不是可以回頭看看,你的系統中,那些sql的索引加的是否合理呢?是不是可以思考一下如何最佳化,對吧。因此,就是要學以致用。
12. 閱讀一些優秀框架的原始碼,如spring、rockectMq等等
如果你有空餘的時間,就建議你看看一些最佳化框架的原始碼,比如spring、rockectMq
等等。
對於spring原始碼的話,可以按模組來呀,比如aop,控制反轉,spring事務
等,你先寫個demo
,然後debug
跟蹤流程,透過偵錯程式逐步跟蹤原始碼執行過程,觀察各個方法的呼叫關係和資料變化。最好是結合電子書一起,如(Spring原始碼深度解析
這本書一起)
優秀框架的原始碼,我們可以學習到很多編碼思想的,加油。
13. 多編碼,少偷懶,養成程式設計的好習慣
作為程式設計師,一定要多打程式碼,不要偷懶,程式碼敲多了,你就會了。還有就是,少點偷懶,堅持!努力!養成熱愛程式設計的好習慣。
總之,提升技術需要不斷學習、實踐、總結和積累經驗。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024420/viewspace-2952715/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- CSS開發過程中的20個快速提升技巧CSS
- [需求建議]前臺個人中心外掛開發需求建議。
- 日常 13
- HTTPS 證書有效期被提議縮短至13個月HTTP
- Java開發5年,如何繼續提升技術實力?Java
- golang開發:go併發的建議Golang
- 一個PHP開發者總結的九條建議PHP
- 不建議企業自行開發CRM的幾個理由
- [20210113]給PB開發人員的一個建議.txt
- 給PHP開發者的建議PHP
- 【建議】 暫提三種優化優化
- 開發日常
- [需求建議]強烈希望OneThink開發不要中斷
- 一個優秀的IT人,他平時是如何提升技術的
- [提問交流]建議OT下次升級涉及更新的檔案另打一個包
- 關於遊戲本地化的13條建議遊戲
- 我的wepy初始化模板和一個指南,歡迎提建議和意見
- 要點提煉|開發藝術之IPC
- 13個VSCode使用技巧,開啟高效的開發模式VSCode模式
- 成為最差開發者的10條建議
- [需求建議]分類單頁的一點建議 這算是實現快速開發吧
- 給Java開發初學者的10個學習建議,助你學習事半功倍!Java
- 給Java開發初學者的10個學習建議,助你學習事半功倍Java
- 企業必讀:引進低程式碼開發平臺的5個建議!
- [需求建議]外掛建議:建議出一個時間軸外掛
- [提問交流]建議:預載入自定義函式函式
- 如何提升技術團隊的情緒與效率
- 改善 Python 程式的 91 個建議Python
- 給2019前端的5個建議前端
- 從 0 開始構建知識圖譜的 5 個啟動建議
- Flutter小知識--外掛開發建議Flutter
- 前端開發最容易犯的13個JavaScript錯誤前端JavaScript
- 開發者熱議:微軟新提議或將“徹底”改變 JavaScript 和 TypeScript!微軟JavaScriptTypeScript
- 前後端高效協作開發的11條建議後端
- 2020年超休閒遊戲發行的七個建議遊戲
- Valve:在Steam平臺發行遊戲的五個建議遊戲
- Java 中的5個程式碼效能提升技巧,最高提升近10倍Java
- PHP 日常開發備忘PHP