<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>

          開發(fā)測試平臺難嗎?

          共 1878字,需瀏覽 4分鐘

           ·

          2022-08-27 12:37

          有挺長一段時(shí)間沒出來正兒八經(jīng)的分享干貨了,今天登錄后臺一看,關(guān)注人數(shù)居然沒掉還增了不少,這讓我有些慚愧,暗自覺得有必要抽空繼續(xù)寫作下去,給關(guān)注我的朋友們帶來一點(diǎn)價(jià)值。

          關(guān)于近況?

          來深圳有1年零8個(gè)月了。這期間一直在做著測試開發(fā)相關(guān)的工作,很感激又積累了一些大廠經(jīng)驗(yàn)(解釋下我還在的,沒有潤)。業(yè)內(nèi)的裁員消息此起彼伏,雖然不乏各種自媒體和XX平臺的焦慮話題熱炒,但確實(shí)感覺卷的又更厲害了,體驗(yàn)比之前差了一些,但大環(huán)境如此卻又好像無可奈何(聽說讀書可以破萬卷),做好當(dāng)下,以不變應(yīng)萬變。

          關(guān)于主題?
          以前我喜歡寫純技術(shù)主題的內(nèi)容,這種知識分享確實(shí)簡單明了,別人拿來就可以用,但是對于我來說總有技術(shù)話題枯竭的時(shí)候(其實(shí)是水平有限,江郎才盡,沒得寫了),所以后面可能會(huì)嘗試各種主題風(fēng)格,當(dāng)然核心還是測試開發(fā)相關(guān)技術(shù),只為了找到一個(gè)比較舒適的表達(dá)和分享方式(比如今天這種)。

          說點(diǎn)有價(jià)值的?

          之前在交流群里,聽到很多同學(xué)在問如何開發(fā)測試平臺,需要什么知識?開發(fā)測試平臺——曾經(jīng)這是很多業(yè)務(wù)線測試er心中難以逾越的技術(shù)高度,包括當(dāng)初我也是,可是隨著工程技能的提高(注意我說的是工程技能),發(fā)現(xiàn)這并不是很復(fù)雜的事情。

          為什么我用的是工程技能?而不是編程技能?

          后面接觸很多同事和圈內(nèi)人士才發(fā)現(xiàn),其實(shí)只要是這個(gè)行業(yè)內(nèi)大家的編程基礎(chǔ)都不算差,if - else - for - while 大家都懂,可是為什么實(shí)踐起來就犯難了呢?其實(shí)就是缺乏工程能力,不知道怎么去搭建工程、拆解模塊、分析程序業(yè)務(wù)……

          工程能力就好比房子的設(shè)計(jì)和搭框架結(jié)構(gòu)的能力,編程實(shí)現(xiàn)就好比給房子結(jié)構(gòu)里面添磚加瓦,總的來說工程能力是包含了一定的設(shè)計(jì)和架構(gòu)能力的,需要有全局的思維,不僅僅只是盯著編程實(shí)現(xiàn)。具體表現(xiàn)為解決下面幾個(gè)問題:

          1、技術(shù)如何選型?

          要實(shí)現(xiàn)這個(gè)功能或平臺之前,你得先確定用什么編程語言、用什么框架、用什么來存儲(chǔ)……?這就是技術(shù)選型,你需要結(jié)合你自身或團(tuán)隊(duì)的技術(shù)棧來選擇合適的語言和框架。

          2、業(yè)務(wù)模塊如何拆解?

          為啥要拆解,主要是兩方面考慮,一是用于業(yè)務(wù)分析,編程也要對應(yīng)具體的業(yè)務(wù)需求,如果不拆解分析,稍微復(fù)雜點(diǎn)的業(yè)務(wù),就容易導(dǎo)致邏輯不清、流程不明,實(shí)現(xiàn)全靠感覺,這樣功能的實(shí)現(xiàn)后不就是災(zāi)難嗎?二是用于團(tuán)隊(duì)開發(fā)模式,團(tuán)隊(duì)成員分工和工時(shí)評估都是基于這些。

          3、工程結(jié)構(gòu)如何搭建?

          前面準(zhǔn)備工作都完成了,現(xiàn)在要具體的實(shí)施了,工程結(jié)構(gòu)如何搭建呢?打開IDE,從創(chuàng)建項(xiàng)目開始,根據(jù)你的項(xiàng)目特點(diǎn)(比如web項(xiàng)目、純后臺項(xiàng)目、多平臺項(xiàng)目等)選擇不同的項(xiàng)目類型(通常IDE都會(huì)根據(jù)你的項(xiàng)目類型自動(dòng)給你生成項(xiàng)目結(jié)構(gòu))。

          各種語言各種項(xiàng)目模式,不過核心就只有一個(gè):前臺負(fù)責(zé)展示,后臺負(fù)責(zé)數(shù)據(jù)和計(jì)算。基于這個(gè)核心不管你什么花里胡哨的模式,都逃不過這個(gè)工程結(jié)構(gòu):
          common層:放一些通用方法、類,比如errors、常量等
          controller層:控制器層,放跟前臺交互的接口映射入口和路由
          service層:可以理解是controller的具體業(yè)務(wù)邏輯實(shí)現(xiàn)層,包含與dao層的數(shù)據(jù)交互
          dao層:數(shù)據(jù)層,包含models模型數(shù)據(jù)定義等,跟db或緩存之類的crud操作
          utils層:工具類,也可以放common里面

          4、基于結(jié)構(gòu)編碼實(shí)現(xiàn)

          前期編碼實(shí)現(xiàn)可以就按著結(jié)構(gòu)去寫就行了,即使有冗余代碼和結(jié)構(gòu)也沒關(guān)系,等你多實(shí)踐幾次熟練后,可以結(jié)合編程的設(shè)計(jì)理念(各種繼承、多態(tài)、聚合、封裝等)來優(yōu)化你的代碼。

          5、前后臺如何關(guān)聯(lián)?

          有些同學(xué)可能對前后臺是如何交互的還不太了解,那么你打開一個(gè)web頁面,按下F12顯示出開發(fā)者工具欄,再刷新下頁面在右側(cè)網(wǎng)絡(luò)tab可以看到各種請求,這些請求除去資源類,其他基本都是與后臺交互的http請求。
          目前最常見的就是前后臺分離的交互模式,前臺負(fù)責(zé)渲染和展示,后臺提供接口來實(shí)現(xiàn)數(shù)據(jù)和業(yè)務(wù)邏輯,前臺通過請求接口向后臺拉取數(shù)據(jù)。

          6、服務(wù)如何部署?

          前后臺服務(wù)都寫好了,web服務(wù)為例,這時(shí)候你發(fā)現(xiàn)請求的都是ip:端口的方式,對外使用還是不夠方便,這就還需要綁定域名,通過再啟動(dòng)一個(gè)nginx反向代理服務(wù)來綁定域名和前后臺服務(wù)的ip,這樣就能通過域名友好的訪問了。

          注:當(dāng)然上述幾個(gè)問題單獨(dú)拎出來每個(gè)都能寫一篇大長文,這里作為引入就點(diǎn)到為止,后續(xù)可以慢慢鋪開寫。

          瀏覽 66
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

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

          手機(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>
                  操碰100| 日本在线黄色视频 | 欧美A∨在线 | 日本在线视频一区二区三区三区 | 亚洲福利网站 |