java組合與復(fù)用 如何有效提高Java代碼的可重用性?
如何有效提高Java代碼的可重用性?大量結(jié)構(gòu)和功能相似的冗余代碼不僅增加了額外的維護(hù)成本,而且使代碼變得不規(guī)范。要提高代碼的可重復(fù)性,首先要強(qiáng)調(diào)代碼規(guī)范,如類名、方法名、變量名、換行符、代碼寬度等。代
如何有效提高Java代碼的可重用性?
大量結(jié)構(gòu)和功能相似的冗余代碼不僅增加了額外的維護(hù)成本,而且使代碼變得不規(guī)范。要提高代碼的可重復(fù)性,首先要強(qiáng)調(diào)代碼規(guī)范,如類名、方法名、變量名、換行符、代碼寬度等。代碼重用也是提高代碼質(zhì)量的重要手段。因此如何有效地提高代碼的可重用性,筆者總結(jié)了以下幾點(diǎn):
利用“繼承與封裝”這三個(gè)面向?qū)ο蟮奶攸c(diǎn),我們必須在開發(fā)過程中取得一定的進(jìn)步我們應(yīng)該重視封裝,封裝需要反復(fù)調(diào)用和放放放的代碼將其放入父類中,并在需要調(diào)用時(shí)繼承和使用,這樣代碼就不會(huì)重復(fù)編寫,整個(gè)代碼是規(guī)范的。
我們使用多態(tài)性將非基礎(chǔ)數(shù)據(jù)類型轉(zhuǎn)換為接口類型,并將所有形式的參數(shù)轉(zhuǎn)換為接口形式。更改后,參數(shù)可以是實(shí)現(xiàn)接口的所有類的對象,而不僅僅是由原始類創(chuàng)建的對象。因此,我們可以對可能存在的大量對象類型進(jìn)行操作,從而進(jìn)一步提高代碼的可用性和可重用性。
另外,在開發(fā)過程中要注意是否可以反復(fù)調(diào)用一個(gè)服務(wù)接口來實(shí)現(xiàn)功能操作,而不是為一個(gè)功能操作創(chuàng)建一個(gè)接口服務(wù),并將多個(gè)功能所需的服務(wù)接口提升到上級目錄,使這些函數(shù)可以使用接口服務(wù)的方法。
考慮到生成父類接口、shell代碼接口、反射工具等技術(shù),可以結(jié)合起來形成一個(gè)多類交互框架。技術(shù)框架要統(tǒng)一維護(hù)。它可以通過jar包進(jìn)行重用,可以通過多個(gè)項(xiàng)目進(jìn)行驗(yàn)證和調(diào)整,也可以同時(shí)與業(yè)務(wù)場景相結(jié)合。然后它可以(可能)提取和構(gòu)建平臺(tái)產(chǎn)品,以解決典型的業(yè)務(wù)場景。結(jié)合多平臺(tái)產(chǎn)品和延伸開發(fā),可以形成特定領(lǐng)域的技術(shù)解決方案。
寫JAVA后端代碼時(shí)邏輯混亂怎么辦?
后端代碼的復(fù)雜性通過分割和裁決來解決。首先,通過拆分項(xiàng)目,項(xiàng)目之間可以存在依賴關(guān)系,但必須是單向依賴而不是環(huán)依賴。如果存在環(huán),我們必須考慮將環(huán)依賴分解為單獨(dú)的項(xiàng)目來解決環(huán)依賴。
對于項(xiàng)目中的代碼,可以通過水平拆分和垂直拆分來降低復(fù)雜性。水平層分為控制器、服務(wù)、Dao和sqlmap,垂直層分為系統(tǒng)、biz1、biz2、Bizn,但在數(shù)據(jù)通暢連接中,水平拆分和垂直拆分相結(jié)合,如下圖所示:
通過這種分層方式,代碼層是分開的,結(jié)構(gòu)清晰。對于一些跨模塊調(diào)用的接口,如同一個(gè)數(shù)據(jù)表需要在不同的模塊中操作時(shí),可以將該接口作為公共接口升級到上層cxmodule,對于一些可重用的、相對獨(dú)立的功能,可以在cxmodule中定義一個(gè)干凈的接口,業(yè)務(wù)邏輯可以通過在模塊的功能模塊中實(shí)現(xiàn)接口來實(shí)現(xiàn),而不需要使用spring的事務(wù)管理機(jī)制,從而降低代碼的復(fù)雜度。
程序員所有代碼都一個(gè)一個(gè)自己敲出來的嗎?
從這個(gè)問題中,我們可以看到所有者沒有編寫過代碼,或者已經(jīng)編寫過代碼,但是很少。即使他做到了,也只是一個(gè)小系統(tǒng),他還沒有接觸過一個(gè)大系統(tǒng)
!這里我想說三點(diǎn):第一,99%的程序員是從模仿別人開始寫程序的!沒有人天生就有寫程序的能力。大多數(shù)人接觸的是其他人在木頭上寫程序。我可以向他們學(xué)習(xí)。以后,我的程序也可以在木頭上啟動(dòng)。這就是所謂的“不要說你了解別人的程序,你必須自己把它們敲出來?!钡诙笠?guī)模的系統(tǒng)是非常復(fù)雜的。模塊越多,功能就越強(qiáng)大,木的功能就越強(qiáng)大,它們之間有很多共同點(diǎn),也有很多可以重用的東西。例如,大型軟件和成熟公司都有公共資源庫,很多東西都可以為您使用。如果你什么都自己做,我想你什么都做不了。例如,通信中使用了許多rs-Rodley算法,這些算法既復(fù)雜又簡單,但無論多么簡單都不容易,你必須花時(shí)間去解決。在企業(yè)里,不是學(xué)校。它給你更多的時(shí)間去解決它!第三,限制!人不是萬能的,不可能什么都懂,但是,在你的項(xiàng)目中,你需要一個(gè)功能,但是你不能,沒關(guān)系,只要有現(xiàn)成的解決方案,你不懂,沒關(guān)系,可以實(shí)現(xiàn),至于你現(xiàn)在不懂,沒關(guān)系,公司要的是結(jié)果
怎樣快速看懂別人寫的java project?
讓我談?wù)勎业南敕ǎM隳芙o出一些意見
1。其他Pro編寫的Java應(yīng)該有必要的注釋,而不是全部注釋。例如,全局變量、方法的角色、類的角色等等。評論用Pro寫得越好,閱讀速度就越快。否則,你會(huì)發(fā)現(xiàn)它比天書更難
2。代碼風(fēng)格統(tǒng)一,編碼規(guī)范,代碼層次清晰,需要重寫的私有方法要編寫,以免代碼繁瑣,提高代碼的重用率,變量和方法的命名也需要注意
1。在閱讀代碼之前,先弄清楚pro項(xiàng)目的書,直到項(xiàng)目是關(guān)于什么,什么函數(shù)的
2。運(yùn)行這個(gè)項(xiàng)目,你必須自己運(yùn)行,沒有問題,然后你可以放心地閱讀代碼
3。最后,根據(jù)函數(shù)模塊,逐函數(shù)閱讀代碼(此時(shí),我們將在開始時(shí)知道編寫好代碼的重要性
??說下我的想法吧,希望大家能給點(diǎn)意見
先從寫Pro的地方說起
1、別人寫的Java Pro要有必要的注釋,不一定全部要有注釋,重點(diǎn)地方,例如:全局變量、方法的作用、類作用等等,注釋寫的越好的Pro,那么看的就會(huì)越快,否則,你會(huì)發(fā)現(xiàn)比天書還難
2、代碼有統(tǒng)一的風(fēng)格,編碼規(guī)范,代碼層次分明,改寫私有方法的需要寫上,盡量不要有累贅的代碼,提升代碼的復(fù)用率,變量和方法的取名也需要注意到
那么寫了一手好代碼后,接下來看代碼就非常輕松了
1、看代碼之前,先弄清楚Pro的項(xiàng)目書,直到項(xiàng)目大概干啥的,有哪些功能
2、跑項(xiàng)目,你得先自己跑一遍,沒問題,才會(huì)放心去看代碼了
3、最后,再根據(jù)功能模塊,來一個(gè)功能一個(gè)功能的去讀取代碼(這個(gè)時(shí)候就知道當(dāng)初寫一手好代碼的重要性了)
回答不好的地方忘指正~