-
1 # 西門秦
-
2 # 飛哥v001
1.比較簡單也是比較熟知的:像字串拼接,用StringBuffer/StringBuilder之類的,用的多了基本也都知道了。
2.多考慮程式碼的複用,寫模組的時候,多考慮下程式碼的複用,有不少程式碼在多個地方可用時,寫在公用的類裡面或者寫個工具類。
3.在一個業務邏輯裡面,一條資料只查一次,多個方法間的呼叫,可以相互傳遞。
4.學會最佳化sql,一條執行效率慢的sql在業務量大的時候,會拖垮資料庫。
5.學會非同步。(其實很多時候,不影響實際業務的操作,可以放到非同步裡面,最佳化客戶體驗。)
6.學會使用執行緒。用執行緒處理大批次的操作是個不錯的選擇,可以減少不少時間。
7.減少變數的重複計算。就像迴圈裡面:for(int i = 0;i < list.size(); i ++),每次迴圈都需要呼叫list.size()方法,可以在迴圈前,用一個int接收,然後使用int值迴圈。
8.使用請求時記得關閉連線,釋放資源。例如http請求,io流等。
9.善於使用快取。
10.養成一個寫完程式碼之後按ctrl+shift+o的習慣。
11.從資料庫查出來的資料與常量比較時,把常量放前面,主要是為了避免資料出錯導致的空指標異常。
12.將一些常用的方法或轉換寫成工具類,如:時間格式的轉換,json的轉換,http請求,Property的讀取等。
13.在資料量大時,多用用搜索。
-
3 # 復員
通俗的講設計思想就像指引方向得燈光,方向和目的地確認後,至於你是採用何種方式去實現那就是程式碼表達方式的確定了,你是騎車,開車,做飛機,還是飛船,每種程式碼表達的形式不一樣,但方向和目的地得設計思想是不會改變,除非專案流產失敗放棄了,程式碼就是垃圾幾許無用。
-
4 # 使用者100576153217
通俗的講設計思想就像指引方向得燈光,方向和目的地確認後,至於你是採用何種方式去實現那就是程式碼表達方式的確定了,你是騎車,開車,做飛機,還是飛船,每種程式碼表達的形式不一樣,但方向和目的地得設計思想是不會改變,除非專案流產失敗放棄了,程式碼就是垃圾幾許無用。
-
5 # 前沿資料分析
在網際網路或者傳統的軟體公司,所謂的設計思想只要就是指的是系統架構如何更符合業務的需要以及開發人員的快速開發!
至於程式碼質量最佳化,當然是指已有系統或者已有程式碼進行優化了。這裡又分為兩種情況:1、程式碼效能最佳化。隨著資料量的增長,可能會出現需要執行慢或者卡頓的情況,那麼就需要最佳化程式碼和演算法了,達到提高效能和處理速度。2、業務邏輯最佳化。隨著業務的不斷變化,原來的程式碼已經不符合要求了,那麼需要對程式碼進行優化了,這個步驟需要業務與技術人員的充分溝通了。另外,如果大一點的公司,會有程式碼review的崗位,但這個也是少數公司才有,其他一般的公司幾乎沒有程式碼review,畢竟這是要花錢的。
總的來說,設計思想很重要,這裡既有技術總監的架構設計思想,也有開發人員的設計思想。架構設計得好,不但安全,開發人員也省事!所有開發人員都要對自己的程式碼負責,不斷提升自己的技術水平,降低返工率!這樣某一天你也能具備比較好的水平,無論升職還是開發水平都是有益處的!
回覆列表
如何理解最佳化設計方法與傳統設計方法的異同點
推薦內容
如何理解最佳化設計方法與傳統設計方法的異同點
最佳答案
現代設計方法與傳統設計方法區別
(1)直覺設計階段 古代的設計是一種直覺設計。當時人們或是從自然現象中直接得到啟示,或是全憑人的直觀感覺來設計製作工具。設計方案存在於手工藝人頭腦之中,無法記錄表達,產品也是比較簡單的。直覺設計階段在人類歷史中經歷了一個很長的時期,17世紀以前基本都屬於這一階段。
(2)經驗設計階段 隨著生產的發展,單個手工藝人的經驗或其頭腦中的構思已很難滿足這些要求。於是,手工藝人聯合起來,互相協作。一部分經驗豐富的手工藝人將自己的經驗或構思用圖紙表達出來,然後根據圖紙組織生產。圖紙的出現,即可使具有豐富經驗的手工藝人透過圖紙將其經驗或構思記錄下來,傳與他人,便於用圖紙對產品進行分析、改進和提高,推動設計工作向前發展;還可滿足更多的人同時參加同一產品的生產活動,滿足社會對產品的需求及提高生產率的要求。因此,利用圖紙進行設計,使人類設計活動由直覺設計階段進入到經驗設計階段。
(3)半理論半經驗設計階段 20世紀以來,由於科學和技術的發展與進步,設計的基礎理論研究和實驗研究得到加強,隨著理論研究的深入、實驗資料及設計經驗的積累,已形成了一套半經驗半理論的設計方法。這種方法以理論計算和長期設計實踐而形成的經驗、公式、圖表、設計手冊等作為設計的依據,透過經驗公式、近似係數或類比等方法進行設計。依據這套方法進行機電產品設計,稱為傳統設計。所謂“傳統”是指這套設計方法已延用了很長時間,直到現在仍被廣泛地採用著。傳統設計又稱常規設計。
(3)現代設計階段 近30年來,由於科學和技術迅速發展,對客觀世界的認識不斷深入,設計工作所需的理論基礎和手段有了很大進步,特別是電子計算機技術的發展及應用,對設計工作產生了革命性的突變,為設計工作提供了實現設計自動或和精密計算的條件。例如CAD技術能得出所需要的設計計算結果資料、生產圖紙和數字化模型,一體化的CAD/CAM技術更可直接輸出加工零件的數控程式碼程式,直接加工出所需要的零件,從而使人類設計工作步入現代設計階段。此外,步入現代設計階段的另一個特點就是,對產品的設計已不是僅考慮產品本身,並且還要考慮對系統和環境的影響;不僅要考慮技術領域,還要考慮經濟、社會效益;不僅考慮當前,還需考慮長遠發展。例如,汽車設計,不僅要考慮汽車本身的有關技術問題,還需考慮使用者的安全、舒適、操作方便等。此外,還需考慮汽車的燃料供應和汙染、車輛存放、道路發展等問題。
傳統設計是以經驗總結為基礎,運用長期設計實踐和理論計算而形成的經驗、公式、圖表、設計手冊等作為設計的依據,透過經驗公式、近似係數或類比等方法進行設計。傳
統設計在長期運用中得到不斷完善和提高,是符合當代技術水平的有效設計方法。分析傳統的設計過程,可以看出傳統設計的每一個環節都是依靠設計者用手工方式來完成的。首先憑藉設計者直接的或間接的經驗,透過類比分析或經驗公式來確定方案,由於方案的擬定很大程度上取決於設計人員的個人經驗,即使同時擬定幾個方案,也難於獲得最優方案。由於分析計算受人工計算條件的限制,只能用靜態的、近似的方法,參考資料偏重於經驗的概括和總結,往往忽略了一些難解或非主要的因素,因而造成設計結果的近似性較大,有時不符合客觀實際。此外,資訊處理、經驗或知識的儲存和重複使用方面還沒有一個理想的有效方法,解算和繪圖也多用手工完成,這不僅影響設計速度和設計質量的提高,也難以做到精確和最佳化的效果。傳統設計對技術與經濟、技術與美學也未能做到很好的統一,使設計帶有一定的侷限性。這些都是有待於進一步改進和完善之處。
總之,傳統設計方法是一種以靜態分析、近似計算、經驗設計、手工勞動為特徵的設計方法。顯然隨著現代科學技術的飛速發展、生產技術的需要和市場的激烈競爭以及先進設計手段的出現,這種傳統設計方法已難以滿足當今時代的要求,從而迫使設計領域不斷研究和發展新的設計方法和技術。
現代設計是過去長期的傳統設計活動的延伸和發展,是傳統設計的深入、豐富和完善。隨著設計實踐經驗的積累,設計理論的發展以及科學技術的進步,特別是計算機技術的高速發展,設計工作包括機械產品的設計過程產生了質的飛躍。為區別過去常用的傳統設計理論與方法,人們把這些新興理論與方法稱為現代設計。“現代設計技術”就是以滿足市場產品的質量、效能、時間、成本、價格綜合效益最有為目的,以計算機輔助設計技術為主體,以知識為依託,以多種科學方法及技術為手段,研究、改進、創造產品活動過程所用到的技術群體的總稱。
現代設計不僅指設計方法的更新,也包含了新技術的引入和產品的創新。目前現代設計方法所指的新興理論與方法主要包括最佳化設計、可靠性設計、設計方法學、計算機輔助設計、動態設計、有限元法、工業藝術造型設計、人機工程、並行工程、價值工程、反求工程設計、模組化設計、相似性設計、虛擬設計、疲勞設計、三次設計、摩擦學設計、綠色設計等。
現代設計與傳統設計的關係如下。
①繼承關係。現代設計是過去長期的傳統設計活動的延伸和發展,它繼承了傳統設計的精華,克服了傳統設計的一些不足。
②共存於突破的關係。設計方法的發展,都有著時序性、繼承性,兩種方法在一定時間內還會共存。當前的現代設計方法正處在發展之中,可以預見,隨著科學技術的進步必將有
新的突破。
傳統設計以經驗、試湊、靜態、定性分析、手工勞動為特徵,導致設計週期長,設計質量差,設計費用高,產品缺乏競爭力。隨著現代科學技術的發展,機械產品設計領域中相繼出現了一系列新型理論與方法。這些新興理論與方法統稱為現代設計方法。
現代設計主要有下列特點。
(1) 系統性 現代設計方法是邏輯的、系統的設計方法。目前有兩種體系:一種是
德國倡導的設計方法學,用從抽象到具體的發散的思維方法,以“功能—原理
—結構”框架為模型的橫向變異和縱向綜合,用計算機構造多種方案,評價決
策選出最優方案。另一種是美國倡導的創造性設計學,在知識、手段和方法不
充分的條件下,運用創造技法,充分發揮想象,進行辯證思維,形成新的構思
和設計。
傳統設計方法是經驗、類比的設計方法,用收斂性的思維方法,過早地進入具
體方案,對功能原理的分析既不充分又不繫統,不強調創新,也很難得到最優
方案。
(2) 社會性 現代設計將產品設計擴充套件到整個產品生命週期,發展了“面向X”技
術,即在設計過程中同時考慮製造、維修、成本、包裝、運輸、回收、質量等
因素。在現代設計開發新產品的整個過程中,從產品的概念形成到報廢處理的
全壽命週期中的所有問題,都要以面向社會、面向市場為主導思想考慮解決。
設計過程中的功能分析、原理方案確定、結構方案確定、造型方案確定,都要
隨時按市場經濟規律進行儘可能定量的市場分析、經濟分析、價值分析。現代
設計要求,以並行工程方法指導企業生產管理體制的改革和新產品設計工作,
以相似性設計、模組化設計來更好地滿足廣泛的變化的社會需求,以反求工程
技術消化、應用國際先進技術,以摩擦學設計方法來提高機械效率,已三次設
計方法來有效地提高產品效能價格比。
傳統設計是由技術主管指導設計,設計過程中多為單純注意技術性,設計
產品試製後才進行經濟分析、成本核算,很少考慮社會問題。
(3) 創造性 現代設計強調激勵創造衝動,突出創新意識,力主抽象的設計構思,
擴充套件發散的設計思維、多種可行的創新方案,廣泛深入地評價決策,集體運用
創造技法,搜尋創新工藝試驗,不斷要求最優方案。傳統設計一般是封閉收斂
的設計思維,陷入思維定勢,過早地進入定型實體結構,採用經驗類比和直接
主官的評價決策。
(4) 宜人性 現代設計強調產品內在質量的實用性,外觀形體的美觀性、藝術性和
時代性,在保證產品物質功能的前提下,儘量使使用者產生新穎舒暢等精神感受。他要求從人的生理和心理特徵出發,透過功能分析、介面安排和系統綜合,滿足人一機一環境等之間的協調關係,發揮系統潛力,提高效率。工業藝術造型設計和人機工程提高了產品的精神功能,不斷滿足宜人性要求。傳統設計往往強調產品的物質功能,忽視或不全面考慮精神功能,而僅憑經驗或自發地考慮人一機一環境之間的關係,強調訓練使用者來適應機器的要求。
(5) 最最佳化 現代設計重視綜合整合,在效能、技術、經濟、製造工藝、使用、環
境、可持續發展等各種約束條件之下,在廣泛的學科領域之間,透過計算機以高效率綜合整合為最新科技成果,尋求最優方案和引數。它利用最佳化設計、人工神經網路演算法和工程遺傳演算法等求出各種工作條件下的最優解。傳統設計屬於自然最佳化,在設計—評定—再設計的迴圈中,憑藉設計人員的有限知識、經驗和判斷力選取較好方案,因而受任何效率的限制,難以對多變數系統在廣泛影響因素下進行定量最佳化。
(6) 動態化 現代設計在靜態分析的基礎上,考慮生產中實際存在的多種變化量
(如產品工作可靠性問題中的考慮載荷譜、負載率等隨機變數)的影響,進行動態特性的最最佳化,根據機率論和統計學方法,針對載荷、應力等因素的離散性,用各種運算方法進行可靠性設計,對一些複雜的工程分析問題還可用有限元法、邊界元法等數值解法得到滿意的結果。傳統設計以靜態分析和少變數為主。如機械學中將載荷、應力等因素做集中處理,由此考慮安全係數,這與實際工況相差較遠。
(7) 設計過程智慧化 這是指藉助於人工智慧和專家系統技術,由計算機完成一部
分原來必須由設計者進行的創造性工作。現代設計認為,各種生物在自己的某些領域裡具有極高的水平。仿生學研究如何模仿生物的某些高水平的能力。由於生物中人的只能最高,人能透過知識和資訊的獲取、推理和運用,解決極複雜的問題。在已被認識的人的思維規律的基礎上,在智慧工程理論的指導下,以計算機為主模仿人的職能活動,能夠設計出高度智慧化的產品和系統。傳統設計區域性上自發地運用某些仿生規律,但這很難達到高度智慧化的要求。
(8) 設計手段的計算機化和數字化 計算機在設計中的應用已從早期的輔助分析、
計算機繪圖,發展到現在的最佳化設計、並行設計、三維建模、設計過程管理、設計製造一體化、模擬和虛擬製造等。特別是網路和資料庫技術的應用,加速!