java后端開發(fā)需要掌握什么 公司網(wǎng)站后臺(tái)管理系統(tǒng)看到的代碼,什么樣的程序員才能寫得出來?
公司網(wǎng)站后臺(tái)管理系統(tǒng)看到的代碼,什么樣的程序員才能寫得出來?這是我那些不懂業(yè)務(wù)邏輯的同事的杰作。據(jù)我觀察,能寫這類代碼的是接觸式項(xiàng)目,而且大多數(shù)都是經(jīng)過訓(xùn)練的新手猿。他們花在電腦上的時(shí)間不長(zhǎng),但他們很
公司網(wǎng)站后臺(tái)管理系統(tǒng)看到的代碼,什么樣的程序員才能寫得出來?
這是我那些不懂業(yè)務(wù)邏輯的同事的杰作。據(jù)我觀察,能寫這類代碼的是接觸式項(xiàng)目,而且大多數(shù)都是經(jīng)過訓(xùn)練的新手猿。他們花在電腦上的時(shí)間不長(zhǎng),但他們很自信,覺得自己編程不那么容易,但其實(shí)他們寫的東西總是讓人驚訝,他們正常的工作狀態(tài)分為兩種,一種是看百度上的需求,百度貼出來,貼錯(cuò)后,報(bào)錯(cuò)就自己亂了,不好意思問別人,加班加點(diǎn),總是請(qǐng)同事幫忙解決,然后高高興興地回家,記筆記?怎么可能呢?相反,他們粘貼時(shí),會(huì)去請(qǐng)同事幫他們看問題、解決問題、玩問題,然后回家玩游戲。這實(shí)際上是一個(gè)對(duì)編程沒有極客意識(shí)的人。他們從不為了解決問題而日夜犯錯(cuò)誤。同樣,他們也無法享受解決問題帶來的興奮,我們走吧
寫JAVA后端代碼時(shí)邏輯混亂怎么辦?
后端代碼的復(fù)雜性通過分割和裁決來解決。首先,通過拆分項(xiàng)目,項(xiàng)目之間可以存在依賴關(guān)系,但必須是單向依賴而不是環(huán)依賴。如果存在環(huán),我們必須考慮將環(huán)依賴分解為單獨(dú)的項(xiàng)目來解決環(huán)依賴。
對(duì)于項(xiàng)目中的代碼,可以通過水平拆分和垂直拆分來降低復(fù)雜性。水平層分為控制器、服務(wù)、Dao和sqlmap,垂直層分為系統(tǒng)、biz1、biz2、Bizn,但在數(shù)據(jù)通暢連接中,水平拆分和垂直拆分相結(jié)合,如下圖所示:
通過這種分層方式,代碼層是分開的,結(jié)構(gòu)清晰。對(duì)于一些跨模塊調(diào)用的接口,如同一個(gè)數(shù)據(jù)表需要在不同的模塊中操作時(shí),可以將該接口作為公共接口升級(jí)到上層cxmodule,對(duì)于一些可重用的、相對(duì)獨(dú)立的功能,可以在cxmodule中定義一個(gè)干凈的接口,業(yè)務(wù)邏輯可以通過在模塊的功能模塊中實(shí)現(xiàn)接口來實(shí)現(xiàn),而不需要使用spring的事務(wù)管理機(jī)制,從而降低代碼的復(fù)雜度。