日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[译文]过犹不及,别再在编程中高射炮打蚊子

發(fā)布時(shí)間:2023/12/2 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [译文]过犹不及,别再在编程中高射炮打蚊子 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

原文鏈接:Anyway,stop recommending bazookas to kill flies in programming.

眾成翻譯地址:過猶不及,別再在編程中高射炮打蚊子

譯者注:翻譯這篇吐槽的文章,主要是為了自省~日常工作中確實(shí)會(huì)犯類似的錯(cuò)誤,不單是解答別人的時(shí)候,自己選擇對(duì)應(yīng)工具時(shí),也是趨向于熟悉的而不是合適的。避免濫用框架與盲目引入類庫,與諸君共勉~


在編程的社區(qū)中,有些現(xiàn)象讓我感到十分困擾。(為了更好地闡述我的觀點(diǎn),)我將以 Vue 作為例子,盡管這同樣存在于其他編程領(lǐng)域之中。

首先,我們一起來看看問題的根源。

在編寫代碼時(shí),可能會(huì)遇到一些問題,自然想(前往社區(qū))尋求幫助。此時(shí),你會(huì)迫切地想得到問題的解決方案。然而,我對(duì)部分的問題回答者保留意見。他們鼓吹提問者切換工具、類庫或者整個(gè)框架,而不是根據(jù)實(shí)際情況提供一個(gè)恰到好處的解決方案

部分回答者不會(huì)嘗試去了解你所遇問題的背景。他們會(huì)建議你去用高射炮,盡管你只想殺的 bug 是只蚊子

這實(shí)在是答非所問!比如我在烤一個(gè)蛋糕時(shí),問你:

我正在烤一個(gè)蛋糕,烤箱應(yīng)該設(shè)置多少度呢?

我期待的答案是告訴我應(yīng)該設(shè)置什么溫度,然而回答卻并非如此:

別烤蛋糕了,你做過沙拉嗎?

在社區(qū)中類似的場(chǎng)景比較常見。我不是想指責(zé)什么,但這并不是一個(gè)好現(xiàn)象。我剛接觸編程時(shí),也經(jīng)常犯這個(gè)錯(cuò)誤。但之后我意識(shí)到這并不對(duì)。

我并不是說換一個(gè)工具就不能解決問題,我的意思是:需要了解問題的需求與背景

與其建議對(duì)方用自己正在用的,不如在了解背景之后,提供一個(gè)恰到好處的解決方案。不要因?yàn)槭煜つ稠?xiàng)技術(shù),就不斷慫恿他人使用。

那么,Vue 的社區(qū)有什么問題呢?

在 Vue 的社區(qū)中,無論是在 Facebook、論壇還是 Discord,只要涉及到處理 state 或者 SEO 的問題,回答者經(jīng)常在詢問提問者項(xiàng)目的規(guī)模之前,就給出一樣的回答。

提問者:我 Vue 的項(xiàng)目中碰到一點(diǎn) SEO 問題 […] 我該怎么辦呢?

回答者:你嘗試過 nuxt 嗎?

這并不是好的答案?如果提問者的項(xiàng)目中并未使用 nuxt,回答者首先應(yīng)該根據(jù)提問者的項(xiàng)目背景提供解決方案,而不是建議他直接去使用 nuxt。

不要誤會(huì),我喜歡 nuxt,nuxt的作者是法國(guó)人,而我一向法國(guó)兄弟的好哥們。我的觀點(diǎn)是:nuxt 并不是在 Vue 項(xiàng)目中解決 SEO 的唯一方案。

遷移到 nuxt 并不是一件簡(jiǎn)單的事情,nuxt 有自己的架構(gòu),如果和現(xiàn)在的架構(gòu)不兼容時(shí),遷移的成本并不低。

因此,告訴提問者:“用 nuxt 就好”,實(shí)在不是好的解決方案。這和只建議人們使用 prerender-spa-plugin 或其他工具是一樣的。

提問者:有兩個(gè)組件,我想讓他們共享狀態(tài),我該怎么做呢?

回答者:用 vuex 就好。

vuex 是兩個(gè)組件共享狀態(tài)的唯一方案嗎?顯然不是!

我也十分喜歡 vuex,我在項(xiàng)目中經(jīng)常使用它,但 vuex 在小的項(xiàng)目中,實(shí)在是大材小用。先了解背景與需求,再去回答對(duì)應(yīng)的問題!

在 Vue 中,要共享狀態(tài),至少有三種不同的解決方案:共享一個(gè)響應(yīng)式的對(duì)象、Event Bus、Vuex。 https://vuejs.org/v2/guide/state-management.html#Simple-State-Management-from-Scratch

除非是提問者要求的,不然在推薦一個(gè)新工具之前,應(yīng)該先去了解問題的背景。

雖然我十分喜歡 Vue,但如果有人問我:我在登錄頁中應(yīng)該使用什么呢?。我不會(huì)直接告訴他:使用Vue。我會(huì)先詢問他,在頁面中要實(shí)現(xiàn)什么功能。

以上只是冰山一角

這只是一點(diǎn)抱怨。我之前也經(jīng)常這么做,但我覺得這只是將自己喜歡的強(qiáng)加于對(duì)方,但并沒有解決提問者的問題

Have a nice day~編程是一件美好的事情。

最后:不少人在 reddit 上談?wù)?XY 問題。如果提問者一開始就使用了不合適的工具,那么推薦新的工具并沒有任何問題。我指的高射炮愛好者,是那些在不了解背景的情況下就直接推薦的人。

總結(jié)

以上是生活随笔為你收集整理的[译文]过犹不及,别再在编程中高射炮打蚊子的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。