工作中的糾結——區分於底層OR介面

來源:互聯網
上載者:User

在使用模板引擎時,遇到了一個糾結的問題,現需要分析一下。

在介面完全一樣的情況下,所需的變數,也就是put到標記語言中的內容不一樣
時,是選擇重寫介面,還是選擇在底層進行邏輯區分?
情境假設
:有27個介面,平均每個介面需要裝載4個小介面,也就是4個
panel。有8種panel。

當然對於愛好偏向介面的我來說,
重寫介面是最好、最快速的選擇。可是從對產品負責的方面考慮,讓我們來假設下不同選擇的結果!

首先介面不需要重寫,可以節約介面十分之三
的工作量(重寫介面只需粘貼複製,修改範本語言標記)。在此假設108(=27*4)個頁面,美工,css,瀏覽器差異為2個人日,108介面工作量為8
個人日,去處重複的100(=(108/8-1)*8)個頁面,也就是只需3個人日,節約了7個人日。
介面不重寫,唯一能確定put的內容到底該
是什麼值時需要根據你開啟頁面的瞬間,通過servlet傳遞的參數來進行區別。那麼在底層,就需要很多的if...else...。在此有平均有4種類
型,每種類型有27個判別情況。也就是需要108次判別。即使你使用了設計模式,代碼看起來可能簡介,易於重構,可是到底層,還是一樣的
if...else...。效能上面肯定存在一定的影響。這樣姑且不說,節約的7個人日中至少有5個人日又被if...else..折磨殆盡,工作量上基
本是一樣的。因此可見,重寫模板是最好的選擇。

產生此問題的原因
歸結於整個系統的key不夠靈活抽象,如果key根據4種
類型,27個情況,按照組合的方式進行定義,那麼杯具就不會產生,同樣的模板,只需要4次判別即可,也就是節約了重寫模板的7個人日和底層
if...else...的5個人日,加起來共節約了11個人日(哇哢哢)。可惜木已成舟,我們需要的不是去責備和哀怨,只能尋找最適合的辦法去解決它。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.