基于mvc的項(xiàng)目實(shí)例 寫(xiě)JAVA后端代碼時(shí)邏輯混亂怎么辦?
寫(xiě)JAVA后端代碼時(shí)邏輯混亂怎么辦?后端代碼的復(fù)雜性是通過(guò)除法和規(guī)則來(lái)解決的。首先,通過(guò)拆分項(xiàng)目,項(xiàng)目之間可以存在依賴關(guān)系,但必須是單向依賴而不是環(huán)依賴。如果存在環(huán),我們必須考慮將環(huán)依賴分解為單獨(dú)的項(xiàng)
寫(xiě)JAVA后端代碼時(shí)邏輯混亂怎么辦?
后端代碼的復(fù)雜性是通過(guò)除法和規(guī)則來(lái)解決的。首先,通過(guò)拆分項(xiàng)目,項(xiàng)目之間可以存在依賴關(guān)系,但必須是單向依賴而不是環(huán)依賴。如果存在環(huán),我們必須考慮將環(huán)依賴分解為單獨(dú)的項(xiàng)目來(lái)解決環(huán)依賴。
對(duì)于項(xiàng)目中的代碼,可以通過(guò)水平拆分和垂直拆分來(lái)降低復(fù)雜性。水平層分為控制器、服務(wù)、Dao和sqlmap,垂直層分為系統(tǒng)、biz1、biz2、Bizn,但在數(shù)據(jù)通暢連接中,水平拆分和垂直拆分相結(jié)合,如下圖所示:
通過(guò)這種分層方式,代碼層是分開(kāi)的,結(jié)構(gòu)清晰。對(duì)于一些跨模塊調(diào)用的接口,如同一個(gè)數(shù)據(jù)表需要在不同的模塊中操作時(shí),可以將該接口作為公共接口升級(jí)到上層cxmodule,對(duì)于一些可重用的、相對(duì)獨(dú)立的功能,可以在cxmodule中定義一個(gè)干凈的接口,業(yè)務(wù)邏輯可以通過(guò)在模塊的功能模塊中實(shí)現(xiàn)接口來(lái)實(shí)現(xiàn),而不需要使用spring的事務(wù)管理機(jī)制,從而降低代碼的復(fù)雜度。
現(xiàn)在JAVA還火嗎?
開(kāi)火
首先,近年來(lái),java的追隨者大量出現(xiàn),但是你發(fā)現(xiàn)幾乎所有的互聯(lián)網(wǎng)公司都還缺java的工作崗位,因?yàn)槭袌?chǎng)供不應(yīng)求,因?yàn)榛ヂ?lián)網(wǎng)行業(yè)的創(chuàng)業(yè)潮等等,這使得這個(gè)行業(yè)似乎已經(jīng)接近飽和。然而,當(dāng)你進(jìn)入這個(gè)行業(yè),你會(huì)發(fā)現(xiàn)在各大招聘網(wǎng)站上,職位最多的技術(shù)是Java,你會(huì)發(fā)現(xiàn)以前的網(wǎng)站都是先出網(wǎng)頁(yè)版,再出應(yīng)用,但現(xiàn)在很多軟件先出應(yīng)用,甚至只出應(yīng)用,放棄了網(wǎng)絡(luò)市場(chǎng),因?yàn)殡S著智能手機(jī)的普及,你可以隨時(shí)隨地打開(kāi)應(yīng)用,方便快捷,而且作為一個(gè)免費(fèi)開(kāi)源的Android市場(chǎng),是Java開(kāi)發(fā)者的聚集地,市場(chǎng)人才非常稀缺(我們的團(tuán)隊(duì)現(xiàn)在有很多人才)很多Android HCS每天都在招聘和面試,PS:愛(ài)奇藝公司)
]另外,作為一種古老的開(kāi)發(fā)語(yǔ)言,Java的優(yōu)勢(shì)和特性不會(huì)一一重復(fù)。創(chuàng)意團(tuán)隊(duì)不斷更新迭代,各大公司(阿里巴巴、谷歌等)不斷在GitHub等平臺(tái)上投放開(kāi)源技術(shù)框架,形成完整的生態(tài)系統(tǒng),圈子只會(huì)越來(lái)越大。
來(lái)自一篇java開(kāi)發(fā)文章,像你一樣,你的系統(tǒng)有多大,你的技術(shù)有多強(qiáng)大
!從我們公司的角度來(lái)看,使用java開(kāi)發(fā)后臺(tái)服務(wù)使用了以下幾點(diǎn)
!2. 數(shù)據(jù)庫(kù)映射框架:mybatis
!3. 數(shù)據(jù)庫(kù)連接池:Druid
!4. 原木框架:slf4j
!5. 項(xiàng)目建設(shè)工具:Maven
!6. 版本控制工具:SVN和git
!7. 緩存:redis
!9. 工作流引擎:activiti
!10. 規(guī)則引擎:口水
!11. 微型服務(wù)容器:docker
!12、圖片、文件等上傳工具OSS
!14,原型視圖工具:Axure RP
!15. 后臺(tái)服務(wù)模擬訪問(wèn):郵遞員
!16,腳本:shell或Python
!17,語(yǔ)言:java8
!這些是工作中使用的后端技術(shù)??梢哉f(shuō)程序員是全能的!可能還有更多,有待繼續(xù)