本文目錄一覽:
北大青鳥java培訓:系統重構需要注意哪些問題?
當軟體工程師從事軟體開發時,在時間比較緊的情況下,通常需要讓軟體最先上線,然後在後期工作中慢慢重新配置和調整,以替換由於時間不足而留下的漏洞。
那麼在進行調整的過程中,有什麼需要了解呢?其中最重要的是心態、技巧和技術三個方面。
在學習電腦培訓的過程中,還需要掌握更多的問題。
一、關於心態在任何項目的實踐中,心態問題是最重要的,其次就是技術問題。
為什麼心態問題是最重要的呢?因為對於10年以上的舊功能模塊,最複雜的功能模塊實際上是業務邏輯,而不是技術實現。
因此,對於舊系統的重建,需要整理模塊中大規模累積的業務邏輯,這本身就為重構提供了無形的壓力。
與核心業務模塊相結合,較少的業務邏輯將導致在線收入減少,最終導致程序員的大量時間付出。
這一系列背景使得重構過程中的心理壓力變得更大。
重構項目的最佳方法是仔細澄清所有業務邏輯,然後使用思維來繪製圖片,這樣您就可以清楚地了解過去所有的業務邏輯。
清晰的業務邏輯,對於後續系統重新設計和編碼有很大的幫助,並且還是角色的決定性部分。
二、關於技巧重構的經驗和技巧遠比技術實力重要,因為經驗可以減少許多不必要的麻煩。
在我說出自己的想法之前,我想問一個問題:如果在重構的過程中遇到一個問題,進行處理會讓項目更好,但是不解決也沒有太大的影響,你會如何去做呢?在這種情景下,湖南湖南北大青鳥建議,最好是不做,在不影響重構的目標的情況下,能不做最好是不做,這並不是懶惰,而是你永遠不知道會有多大的坑在等著你。
三、關於技術技術是最後一步,但是並不是最重要的一步,至少在我進行重構的過程中,由於我的心態或缺乏技巧,我基本上能夠完成了60%的工作。
在我的項目中重構的技術能夠在不到10%的時間內完成。
重構技術實際上更多地是使用設計模式以簡潔的代碼呈現複雜的業務邏輯。
簡而言之,它是使用設計模式來承載複雜的業務邏輯並使編寫的代碼儘可能簡潔。
在進行重構需要更多測試,主要是對業務的深刻理解和對抽象思維的進一步使用。
如果業務是深入和抽象的,那麼可以選擇湖南北大青鳥進行學習設計模式。
如果是相反的話,就沒有辦法做到這一點。
北大青鳥java培訓:項目重構能夠學到哪些知識?
有些應用軟體或者是應用程序在經過長期的運行和使用之後是需要進行版本更替以及升級維護的,而其中重構就是一個比較常見的方法,今天我們就一起來了解一下,通過軟體重構我們能夠學到哪些內容。
了解流程先我們需要了解以前的系統是如何工作的。
從編譯、測試和部署開始,直到收到用戶請求,我們需要知道整個過程的工作原理。
因為這是一個核心的服務,而我剛剛來這裡一年,我真的不知道它是如何運作的,尤其是多年來整個系統添加了很多額外的功能和補丁,很難通過閱讀代碼來了解它。
所以,我們需要了解流程和規則,然後基於這些流程和規則構建新的流程和規則。
設計和討論我們之所以要重構這個服務,是因為當我們要添加新功能時,之前系統的代碼架構無法很好地擴展。
如果要在未來開發新功能會非常痛苦,因為我們不得不重構很多東西。
所以我們真正需要的是修復架構。
設計一個新的架構真的很難。
我們需要問自己很多問題,比如:「這樣做會怎樣?」、「為什麼要這樣?」、「為什麼不是這樣?」我們希望新架構能夠解決「未來」的問題,並提供向後兼容性。
為此,我們進行了大約一個月的討論,針對每個大功能進行了技術棧和流程方面的討論。
了解基礎在將流程和設計轉換為代碼時,我意識到我們必須對基礎有一個真正的了解。
一開始,我並沒有真正理解高階函數的工作原理。
在閱讀代碼時感到很困惑,怎麼總是一個函數接收一個函數作為參數然後再返回一個函數呢?不過要感謝谷歌,我現在終於明白了。
永遠不要忽略了測試在重新構建這個服務時,我們至少進行了三次測試,然後才發布到生產環境中:單元測試、集成測試和負載測試。
在所有這些類型的測試中,單元測試是很小的測試。
IT培訓發現有些人似乎低估了單元測試的重要性,因為它只是一個單元,一個小功能。
但是,在重建這個新服務時,我體會到了單元測試的重要性。
Java中重構是什麼意思?
java重構:指程序員對已有程序在盡量不改變介面的前提下,進行重新編寫代碼的工作,一般有以下幾方面:
1、去除已知bug。
2、提高程序運行效率。
3、增加新的功能。
重構舉例:(簡化代碼、提升效率)
重構前:
if(list != null list.size() 0){
for(int i = 0; i list.size(); i++){
//skip… }}
重構後
if(list != null){
for(int i = 0, len = list.size(); i len; i++){
//skip… }}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/186451.html