第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何設(shè)計(jì)合理的service?

如何設(shè)計(jì)合理的service?

不負(fù)相思意 2019-04-19 16:13:00
今天碰到一個(gè)bug,最后發(fā)現(xiàn)原因應(yīng)該就是service的設(shè)計(jì)不當(dāng)(另一個(gè)提問)那么我們應(yīng)該如何設(shè)計(jì)合理的service?有哪些要注意的?什么才是好的service?有哪些的例子可以參考?
查看完整描述

2 回答

?
千萬里不及你

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊

你的問題的本質(zhì),是兩個(gè)“主語”(只是在你的案例中恰好都是service而已)的各自一個(gè)“行為”(do1和do2)含有了完全相同的一個(gè)“行動(dòng)效果”(修改p.s的值)。
沖突不在于service,而在于行動(dòng)效果冗余。
試想一下,換一個(gè)案例,其中只有一個(gè)主語,兩個(gè)行為(do1和do2)都是它的,那么問題也是等價(jià)的。
兩個(gè)行為有重疊的行動(dòng)效果,實(shí)在太常見的了。
關(guān)鍵在于,你怎樣界定,哪種重疊是滿足需求的?哪種是錯(cuò)誤、不合理的?
舉一個(gè)滿足需求的例子:
需求是:p是一個(gè)鼠標(biāo)懸停的tips(界面組件)。先根據(jù)鼠標(biāo)坐標(biāo),賦值p.top為一個(gè)值。隨后,計(jì)算tips是否超出了窗口邊緣。如果是,則計(jì)算tips的top的最大值(因?yàn)榇翱诖笮】赡軙?huì)被改變,所以需要計(jì)算),然后賦值p.top為該最大值。p.left同理。
這是我做網(wǎng)頁前端開發(fā)時(shí)遇到過的需求。
你的解決辦法,大概可以解決你的那一個(gè)具體案例,但換成別的情況可能就又不對癥了。
在我看來,關(guān)鍵在于,一個(gè)行為的源頭(往往是事件)所導(dǎo)致一連串行動(dòng)效果,其中要避免出現(xiàn)重疊;除非需求要求必要的重疊。
這“一連串”的“串法”,是設(shè)計(jì)上要想清楚的。你已經(jīng)在朝這個(gè)方向努力了,只是關(guān)注點(diǎn)稍有偏離。
至于串的過程中的對象(主語/賓語)是不是service、是何種service,倒是沒有關(guān)系。
                            
查看完整回答
反對 回復(fù) 2019-04-19
  • 2 回答
  • 0 關(guān)注
  • 391 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)