<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          千萬(wàn)別直接敲代碼!

          共 1647字,需瀏覽 4分鐘

           ·

          2022-03-18 18:04

          大家好,我是魚皮,今天給大家分享一個(gè)開發(fā)小經(jīng)驗(yàn)。

          很多沒有實(shí)際工作過的同學(xué),可能都會(huì)認(rèn)為程序員的工作只有寫代碼 + 和產(chǎn)品經(jīng)理 “拉扯”,也會(huì)習(xí)慣性地用代碼量來(lái)評(píng)價(jià)一個(gè)程序員的工作強(qiáng)度和等級(jí),以為碼字如飛、每月能寫個(gè)幾萬(wàn)行代碼的程序員就是大佬。

          我以前也是這么認(rèn)為的,直到我正式進(jìn)入企業(yè)工作,才發(fā)現(xiàn)真的不是這么一回事兒!高端的同學(xué)總是用最簡(jiǎn)短精妙的代碼來(lái)解決問題。包括我認(rèn)識(shí)的很多高職級(jí)大佬(被外界稱為 “架構(gòu)師”),他們的平均代碼量都很少、甚至有些已經(jīng)完全不寫代碼了。

          那他們的工作都是干啥呢?

          其中最常見的工作就是 設(shè)計(jì) ,這里的設(shè)計(jì)不是指 draw a picture 畫畫設(shè)計(jì)稿,而是根據(jù)真實(shí)的業(yè)務(wù)需求去設(shè)計(jì)系統(tǒng)的整體架構(gòu)、或者設(shè)計(jì)需求的解決方案、設(shè)計(jì)整個(gè)系統(tǒng)的劃分、資源的協(xié)調(diào)調(diào)度等。

          通過這點(diǎn),也側(cè)面反映出了設(shè)計(jì)的重要性,代碼只是把我們的思想、我們的設(shè)計(jì)表述出來(lái)的一種介質(zhì)(或者說是工具)罷了。

          也許我們的工作沒有達(dá)到架構(gòu)師的高度,但在我們做需求的過程時(shí),一定進(jìn)行設(shè)計(jì):先理清楚業(yè)務(wù)邏輯,想好怎么寫代碼,再根據(jù)設(shè)計(jì)去具體寫代碼實(shí)現(xiàn)(類似翻譯的過程)。

          我剛進(jìn)騰訊實(shí)習(xí)的時(shí)候,導(dǎo)師給我安排了一個(gè)很大的工作 —— 重構(gòu)老系統(tǒng)為新框架。我當(dāng)時(shí)覺得很簡(jiǎn)單,不就是把框架 A 換成框架 B 么?業(yè)務(wù)邏輯基本都不用動(dòng),分分鐘搞定好吧!于是在排期的時(shí)候信誓旦旦地跟我導(dǎo)師說:3 天完成。

          我導(dǎo)師只是笑了笑:年輕人不要太自信!慢慢來(lái)吧。

          結(jié)果你猜怎么著?那個(gè)需求我做了整整一個(gè)多月。。。就是因?yàn)闆]有設(shè)計(jì)好怎么去做、也沒有調(diào)研框架 A、框架 B 的差異性,直接上手去換框架、寫代碼,導(dǎo)致到處都是報(bào)錯(cuò),甚至影響了業(yè)務(wù)邏輯。

          還有幾次,我以為需求很簡(jiǎn)單,想都沒想就去寫代碼了,結(jié)果在寫代碼的過程中發(fā)現(xiàn)了大問題,就像走迷宮走到了死胡同一樣無(wú)力回天。如果先做好設(shè)計(jì),有了清晰的路線和規(guī)劃,再去寫代碼,出現(xiàn)延期、返工的概率就會(huì)大大降低。

          所以設(shè)計(jì)有多重要就不言而喻了。

          那應(yīng)該怎么做設(shè)計(jì)呢?設(shè)計(jì)分為很多種,比如系統(tǒng)設(shè)計(jì)、架構(gòu)設(shè)計(jì)、詳細(xì)設(shè)計(jì)等。每個(gè)展開去說都能扯個(gè)幾萬(wàn)字,這里我就挑 詳細(xì)設(shè)計(jì) 小講一下。

          所謂詳細(xì)設(shè)計(jì),顧名思義,就是很詳細(xì)的設(shè)計(jì)。

          比如業(yè)務(wù)流程具體是怎樣的、有哪些步驟?某個(gè)算法具體怎么實(shí)現(xiàn)等?

          正好上周在 星球 中直播帶大家做項(xiàng)目,需求是開發(fā)一個(gè)用戶注冊(cè)功能的后臺(tái)。我就拿這個(gè)注冊(cè)功能的詳細(xì)設(shè)計(jì)來(lái)舉例子吧,如圖:

          注冊(cè)功能設(shè)計(jì)

          從上到下看一遍你會(huì)發(fā)現(xiàn),一個(gè)小小的注冊(cè)功能竟然有那么多要考慮的地方,各種各樣的校驗(yàn)。如果你不做設(shè)計(jì)、直接上手寫代碼,那么會(huì)不會(huì)漏掉一些校驗(yàn)、搞錯(cuò)關(guān)鍵步驟,導(dǎo)致整個(gè)系統(tǒng)出問題呢?后面發(fā)現(xiàn)問題再去改代碼,可就麻煩多了(要反復(fù)上線)。

          所以在開發(fā)需求、尤其是包含復(fù)雜業(yè)務(wù)邏輯的需求時(shí),不要想當(dāng)然,直接去寫代碼了。而是可以像我上面舉的例子一樣先設(shè)計(jì)一下、想清楚怎么寫代碼,再去按照設(shè)計(jì)寫代碼就很簡(jiǎn)單了~

          經(jīng)常有同學(xué)問我怎么提高業(yè)務(wù)思維、為什么我看到很多系統(tǒng)都能很快地想到實(shí)現(xiàn)方案,其實(shí)就是因?yàn)槠綍r(shí)做任何需求的時(shí)候,我都會(huì)思考、在心里做設(shè)計(jì)。我也強(qiáng)烈建議大家這么做,腦袋越用越靈嘛。

          所以我也會(huì)在星球直播帶大家做項(xiàng)目過程中多帶大家分析問題、思考和設(shè)計(jì)方案,而不止是寫代碼本身,相信這樣會(huì)給大家?guī)?lái)更大的幫助。



          以上就是本期分享,最后也歡迎大家加入魚皮的 編程學(xué)習(xí)圈子 ,和近 4000 名小伙伴們一起交流學(xué)習(xí),向魚皮等大廠同學(xué) 1 對(duì) 1 提問、跟著魚皮直播做項(xiàng)目、領(lǐng)取大量編程資源等。

          現(xiàn)在加入限時(shí)優(yōu)惠 60 元 ,歡迎想一起學(xué)習(xí)進(jìn)步的小伙伴~


          往期推薦

          學(xué)弟找我來(lái)報(bào)喜了!

          魚皮分享編程資源匯總

          總結(jié)一下 MySQL 性能優(yōu)化

          這才叫 API 接口設(shè)計(jì)!

          別人看源碼,那我也要看!

          瀏覽 50
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  操人网站| 国产成人在线视频播放 | 日韩美黄色黄色网 | 韩国操逼网 | 青娱乐在线观看网址 |