前後端分離開發后的狀態處理

本文最后更新于:2023年3月16日 晚上

2016-11-28 星期一

十月廿九丙申年 【猴年】己亥月 甲寅日

宜 纳采 移徙 纳财 开市 交易

忌 开仓 造屋 造桥 祭祀

眾所周知,在如今,web開發已經沒有曾經那樣刀耕火種的了,效率也已經是提升了不是一星半點,可以說算是進入了「蒸汽時代」。

那麼,既然進入蒸汽時代了,是不是開發模式也有所改變了呢,答案是肯定的。現在很多都是前後端分離了。

要知道,在以前,也就是前後端沒有分離的時候,特別的耦合。出了問題,誰都不想解決,誰都不想去更改、修復,前端退給後端,後端推給前端,對了那時候還不叫前端,叫「切圖仔」,要做的就是切頁面,改交互效果,頂多有個什麼ajax請求什麼的,前端看不懂後端寫在velocity\jsp模板里的的後端邏輯,後端看不懂前端里的html標籤,甚至亂用標籤。這導致了開發效率極低,一旦出現問題那就開始扯皮~~;而且我感受是100%出問題。

那麼這和我今天要說的有什麼關聯呢?今天不是說在前后端分離的情況下開發麼?難道也有扯皮事件發生?

對!當然有側披事件發生,不僅僅是前端和後端扯皮,還有前端和前端之間的扯皮~~

先引入一個親身經歷吧,前景提示:是在前後端分離的情況下開發。

有一次在開發一堆按鈕:上線、下線、提交、保存、編輯、刪除……這些按鈕都是通過實際的狀態碼來決定顯示與否,並且不是根據一個狀態碼,是根據幾個狀態碼的集合來顯示的。

第一次,一個前端人員改了2次,最後QA測試出沒有完全覆蓋按鈕顯示規則;

第二次,是我來修改的,當然最後QA也是測試出沒有完全覆蓋按鈕顯示規則;

第三次,是另一個前端人員,改了第一次,還是被QA測試出沒有完全覆蓋顯示規則,是第二次更改時,他用注釋把所有的狀態集合列舉出來,才完成這一規則顯示的;

從上看出,其實問題出在前後端分離后,像這樣的狀態碼,(1,2,3)到第二個人甚至某些天后的自己或許都分辨不出來代表什麼,這一節出現了脫節,並且是間斷時間性的脫節。這樣其實並不好,對項目來自自身都不好。

經過一段時間的思考,其實也該總結總結應該怎麼解決,避免扯皮~~~

這裡給出最完整最有效的方案:

1.對於很多狀態碼,使用枚舉用一個json變量儲存起來;

2.要使用狀態碼來處理邏輯,只需要&& ||操作即可;

3.起名的json變量以及裡面的key值也要有一定意義;

為什麼使用有意義的json變量儲存而不是用注釋呢?

1.首先,注釋並不是有效程序的一部分,只是起到注釋作用,讓有意義的變量作為程序的一部分才是好的代碼,反正也得起變量名;

2.只有在實在是說不清楚的時候才使用注釋加以更加準確的說明;

在這樣的更改下再出問題的幾率就很小很小了,除非本身設計的邏輯就有問題;

今天的記錄就結束了,算不上什麼高大上的建議,只是一點經驗而已~~~


前後端分離開發后的狀態處理
https://seven3.site/js/前後端分離開發后的狀態處理/
作者
Seven3s
发布于
2016年11月28日
许可协议