日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

谈谈技术规范的制定

發(fā)布時間:2024/1/17 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 谈谈技术规范的制定 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>

談?wù)劶夹g(shù)規(guī)范的制定

幾乎所有的技術(shù)企業(yè)都會重視技術(shù)規(guī)范,但這些規(guī)范起到的實質(zhì)作用就好比“請保持室內(nèi)衛(wèi)生,不準亂團垃圾,禁止隨地吐痰”。

筆者工作15年,這是15年經(jīng)歷了很多,也在不同的公司任職過。幾乎每到一家公司都會遇到各種規(guī)范,隨著職業(yè)發(fā)展最后我也成為了規(guī)范的制定者,也曾經(jīng)主持制定過開發(fā)規(guī)范,運維規(guī)范,測試規(guī)范等等。

我做過很多規(guī)范,文檔無數(shù),技術(shù)人員根本不會去看,通過開會向下傳達,開會的人根本沒有心思理會你的規(guī)范,規(guī)范執(zhí)行阻力是很大的,效果也差。

終于有一天我意識問題的存在,開始反思,企業(yè)是否需要制定這些規(guī)范。我發(fā)現(xiàn)這與現(xiàn)環(huán)境有很大關(guān)系,與企業(yè)文化有很大關(guān)系。http://netkiller.github.io/

有些強制的規(guī)范可以通過一些技術(shù)手段,避免出現(xiàn)。不會出現(xiàn)也就無需規(guī)范!

故事一

例如下面一個小故事,公司某部因為將開發(fā)數(shù)月的代碼丟失了,導(dǎo)致測試無法進行,領(lǐng)導(dǎo)打發(fā)雷霆,某管理層制定了下面的規(guī)范,大意為。

  • 定期備份機制
  • 代碼注釋要求
  • 代碼訪問需要更高層的批準
  • 詳細的部署文檔 等等
  • 我認為源碼管理主要有兩種手段,技術(shù)手段與管理手段。

    我先談?wù)劰芾硎侄?#xff1a; 例如通常通過規(guī)章制度,責任追究等等手段,要求員工達到規(guī)范標準,但通常執(zhí)行力都會打折,無法達到預(yù)期,人的不穩(wěn)定性因素太多。往往發(fā)現(xiàn)員工沒有按照規(guī)范操作為時已晚,將該員工辭退也無法挽回公司的損失。http://netkiller.github.io/

    就如公司規(guī)章制度寫的清清楚楚,要求員工提交代碼到版本庫,但各種原因沒有被執(zhí)行,當代碼丟失,從上至下追究責任,公司的損失無法挽回。 在舉一個例子,運維工作要求備份數(shù)據(jù),A員工負責備份,B 員工負責檢查A員工的備份,結(jié)果兩年以后出事了,需要恢復(fù)數(shù)據(jù),發(fā)現(xiàn)A沒有備份,而B在一年前就再沒有檢查A的工作。起初前一年還是按流程備份,后來A發(fā)現(xiàn)B不再嚴格檢查工作,備份工作逐漸減少,最后停止了備份,一直相安無事,直到事發(fā)。

    所以我主張技術(shù)手段: 例如源碼如果發(fā)布到線上,必須經(jīng)過版本庫,只能使用自動部署,不允許程序員私自將代碼交給運維手工部署。另外發(fā)布代碼的同事,可以不提供生產(chǎn)服務(wù)器登陸權(quán)限,他只能通過工具發(fā)布代碼。 部署流程如下: 源碼(程序員) 提交到development 分支UAT階段 ----> 合并到 testing 分支Beta階段(主管合并,程序員沒有權(quán)限)------> master 分支(主管合并) -----> 自動部署系統(tǒng)(運維) ----> 生產(chǎn)服務(wù)器。 這樣通過技術(shù)手段防止了代碼因員工離職,硬盤損壞等等原因,導(dǎo)致代碼丟失的可能。 代碼發(fā)布者也無需對照部署文檔,手動登陸服務(wù)器逐條按照部署說明書操作,防止了人員誤操作,也提高了部署效率,節(jié)省了人力成本,通常在5分鐘之內(nèi)可以完成所有部署。

    故事二

    我再來舉另外一個例子,就是開發(fā)中的編碼規(guī)范,很多軟件企業(yè)都有是不是?

    例如要求程序員: if (){} 要寫成 if () { ... } 等等要求不一一列舉,甚至組織代碼評審解決編碼規(guī)范問題。

    我的建議為什么不在IDE上設(shè)置自動格式化,或者在svn/git提交的時候通過hook調(diào)用格式化程序。http://netkiller.github.io/

    故事三

    管理層要求運維每天發(fā)送服務(wù)器狀態(tài)報告,運維人員需要登錄每個服務(wù)器或者從cacti等工具中獲得服務(wù)器運行狀態(tài)數(shù)據(jù),然后制作一個報告文檔,每天給各位發(fā)送一次。

    運維需要一個專職人員做這個報告,這種報告幾乎沒有人看,就像“人民日報” 人民從來不看。

    當運維事故該出現(xiàn)的時候還是會出現(xiàn),老板一個一個罵,扣工資,扣獎金,運維覺得委屈,公司受到損失。平日里的這些工作并不能避免運維事故,也不能改善運維工作。

    我覺得很多規(guī)范是形式主義。我一向主張實用主義。

    通過技術(shù)手段可能避免很多沒有意義規(guī)范,開發(fā)自動化,測試自動化,運維自動化,這是趨勢也是我的努力的目標。

    上面僅僅舉了幾個例子,較片面,不能完全表達我的想法,需要更多的溝通,歡迎提出您的意見與建議。

    出處?http://netkiller.github.io/

    轉(zhuǎn)載于:https://my.oschina.net/neochen/blog/392762

    總結(jié)

    以上是生活随笔為你收集整理的谈谈技术规范的制定的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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