導航:首頁 > 程序命令 > 程序員片段

程序員片段

發布時間:2023-02-18 16:08:09

程序員看劇的時候,如果看到有敲代碼頁面,會暫停看代碼嗎

我有過一次類似的經歷。某次在某大型石化變電站內給電力監控系統配套資料庫,由於資料庫程序修改量大白天干不完,,我和同事把數據拷貝到筆記本中,回到酒店繼續工作。到了飯點肚子實在餓,又怕用餐影響思維進程,就和同事把各自的筆記本帶到酒店餐廳,找個偏僻位置一邊用餐一邊討論繼續修改程序。

不過一旦發現是 HTML/CSS/javascript/Java/Python/C 在搞向標准輸出列印,Web/HTTP 這種就沒了興致。改進的話,語言上整點 Racket/OCaml/Haskell/Idris/Rust/C#/Elixir,然後開 Visual Studio Code 全屏,裝好對應代碼高亮插件,貼點不明覺厲的代碼片段比如 Chez Scheme 的代碼上去,豎直副屏全屏打開一個 Terminal 不斷往外蹦符合演出敘事的消息。畢竟影視劇里的編程是表演的一部分,需要通過編程表演藝術裝屄的時候,請劇組盡力保證演出效果。

② 計算機二級考試-Web前端程序設計(製作滾動字幕)

滾動字幕會讓很多人感到興奮,特別是第一次使用滾動字幕時,會愛不釋手。現在做一個詳細的方案,讓你更全面地了解一下。我整理了一些滾動字幕的資料,供程序員參考,希望能幫助到你!

計算機二級考試-Web前端程序設計(製作滾動字幕)

滾動字幕會讓很多人感到興奮,特別是第一次使用滾動字幕時,會愛不釋手。現在做一個詳細的方案,讓你更全面地了解一下。

滾動字幕在FrontPage的組件里有,但是FrontPage這個軟體只能支持單行文字,一出現多行文字它就無能為力了,而且它只能支持一行滾動!(如果出現只能滾動一行的情況,解決辦法是把這段代碼嵌入到JavaScript的document.write裡面,請看下面例的詳細說明)Dreamweaver也只能用編寫HTML代碼的方法。所以強烈建議用記事本打開網頁源代碼來我。

1.建立第一個滾動字幕。代碼:

以下是引用片段:

滾動字幕

2.各參數詳解:

a)scrollAmount。它表示速度,值越大速度越快。如果沒有它,默認為6,建議設為1~3比較好。

b)width和height,表示滾動區域的大小,width是寬度,height是高度。特別是在做垂直滾動的時候,一定要設height的值。

c)direction。表示滾動的方向,默認為從右向左:←←←。可選的值有right、down、up。滾動方向分別為:right表示→→→,up表示↑,down表示↓。

d)scrollDelay,這也是用來控制速度的,默認為90,值越大,速度越慢。通常scrollDelay是不需要設置的。

e)behavior。用它來控制屬性,默認為循環滾動,可選的值有alternate(交替滾動)、slide(幻燈片效果,指的是滾動一次,然後停止滾動)

3.實例:

a)如何給滾動字幕加超鏈接?這跟平時的超鏈接是完全一樣的。只要在文字外面加上

以下是引用片段:

軟體下載

點擊軟體下載就可以進入了: 軟體下載

b)如何製作當滑鼠停留在文字上,文字停止滾動?

代碼如:

以下是引用片段:

文字內容

c)交替效果。代碼如:

以下是引用片段:

文字內容

d)多行文本向上滾動。代碼如:

以下是引用片段:

·早晨好啊!

·空氣好清新啊

·今朝食乜好呢?

·中央電視台

·注意:如果你的網頁經過了FrontPage我,保存之後,只能滾動一行,這時候你發現你原來的代碼順序已經變了,My god!解決的辦法是,找出原來的代碼,把它嵌入到JavaScript的document.write中即可,上述代碼寫為:

以下是引用片段:

·早晨好啊!

·空氣好清新啊

·中央電視台

由上可以看出,HTML代碼是可以隨意組合的,功能強大!

③ 怎樣快速確定程序員編程水平

想要快速確定程序員的編程水平,可以從以下四個方面考慮:
第一,知識的考察。這個是幾乎每個公司都會做的,也是很有效的手段,基本就是考試。包括問語法問標准演算法問API問一切有標准答案的問題。一個人懂得多,不一定寫得特別好,但是什麼都不懂一定寫不明白。這個方式還可以按需求選人才,比如我們就在php做前端,那我就可以問一堆關於php的,如果我是做嵌入式的,那我可以問一堆c。可以考察這個程序員在和公司需求的交集上完成的怎麼樣。這也是最最簡單和直觀的方法。
第二,對過往項目的理解。這個也是在簡歷關很常問的,說說你當時做的這個項目吧。這個問題非常有效地考察了他是否理解他之前做的東西。有的人簡歷寫的巨漂亮可是實際那項目和他沒關系,或者他就是復制粘貼的代碼,其實自己啥都沒寫。這種時候你和他聊的足夠深入之後能很明顯地發現他自己說不明白了。同時還可以考察一定的語言表達能力和邏輯能力。用我們的話說,先問到面試官不會的深度,然後讓他給面試官講明白。如果他做的東西,他蒙圈的時候比面試官還早(前提是面試官不是搞這方向的),那一般就比較悲劇了。
第三,對寫程序本身的理解。我們很喜歡問一道題,描述一下你是怎麼寫程序的。凡是說我事先design好所有的模塊、介面、功能,然後逐一實現,然後程序就work的,我們都心裡默默補上「呵呵」。因為這是不可能的,只能說明他沒寫過大程序或者沒總結過寫程序的經驗。沒有人在完成一千行以上的程序的時候在沒寫之前就做好所有模塊設計的,何況更大的程序。當然還有就是他會不會認為程序跑通一次就完成了(即寫程序有沒有test階段)之類的。
第四,動手寫程序的能力。這個說實話是面試的時候不太容易考的,因為時間有限。現在的大公司基本是45-60分鍾一輪,一輪還要問好幾個程序題,所以寫的代碼都是片段的,大概20行左右,根本沒法體現一個人會不會寫程序。所以很多人不需要會寫程序,只需要刷好leetcode之類的演算法題庫就可以進大公司(相信我我認識很多)。我們認為一個好的程序員一定要在限定時間之內完成一個完整工作,滿足要求的程序。從輸入到輸出到corner case的驗證。而不僅僅是研究明白某個基礎演算法如何用nlogn而不是n^2解決。這一關卡下去了無數看起來很美好的人。因為我們的題目是不可能在那個時間內找到最優解的,就像絕大部分工程中的編程一樣。一個較好的可用解往往比最優解要有價值的多,因為後者需要大量的時間,很可能沒有前者直白,而且提升未必很高。這是我們公司最在乎的一點。

④ java怎樣在後台獲取前台jsp頁面文本框的value值

1、如果你用的servlet的話,可以用request.getParameter("name");這樣獲取jsp頁面中表單name="name"值的數據。

2、如果用的struts2的話,必須在Action中寫相應的get,set方法,

比如:jsp頁面中有個name值等於「name」,那麼相應的Action中要有相應的name屬性的set和get方法。

Java看起來設計得很像C++,但是為了使語言小和容易熟悉,設計者們把C++語言中許多可用的特徵去掉了,這些特徵是一般程序員很少使用的。例如,Java不支持go to語句,代之以提供break和continue語句以及異常處理。

Java還剔除了C++的操作符過載(overload)和多繼承特徵,並且不使用主文件,免去了預處理程序。因為Java沒有結構,數組和串都是對象,所以不需要指針。Java能夠自動處理對象的引用和間接引用,實現自動的無用單元收集,使用戶不必為存儲管理問題煩惱,能更多的時間和精力花在研發上。

擴展質料:

Java編譯程序生成位元組碼(byte-code),而不是通常的機器碼。Java位元組碼提供對體系結構中性的目標文件格式,代碼設計成可有效地傳送程序到多個平台。Java程序可以在任何實現了Java解釋程序和運行系統(run-time system)的系統上運行。

在一個解釋性的環境中,程序開發的標准「鏈接」階段大大消失了。如果說Java還有一個鏈接階段,它只是把新類裝進環境的過程,它是增量式的、輕量級的過程。

因此,Java支持快速原型和容易試驗,它將導致快速程序開發。這是一個與傳統的、耗時的「編譯、鏈接和測試」形成鮮明對比的精巧的開發過程。

參考資料:java-網路

⑤ 程序員的生活是怎樣的

現在的程序員找工作好找,工資高,總之是個很吃香的行業。但是你知道程序員的生活是怎樣的嗎?

敲代碼應該就是他們的生活日常了。電腦是他們的主體,是他們的依靠。因為程序員就是以電腦為生的。程序員技術好的話,工資待遇是很高的,工作時間自己靈活安排,比較自由。程序員一般周末是怎麼樣過的呢?喝早茶逛商場去旅遊嗎?其實他們跟這個不太沾邊。

我們肯定很好奇,程序員的電腦裡面都有些什麼呢?都裝了些什麼神秘的東西?全部是代碼和學習資料嗎?他們確實是有一些技術上的網站,也會有科技的博客,,有一些會關注一些新聞頻道,科技前沿,不過我猜大多數程序員的電腦里大部分都是啪啪啪網站吧。

Bug對於程序員來說並不陌生,他們最害怕的也是這個,他們會經常三更半夜被人叫起來修改bug。當他們遇到這種情況,有一些程序員會說這不是我寫的代碼,有些程序員會說我在電腦上運行沒有問題的啊,大部分的程序員會先痛罵一下,然後還是乖乖地修改。

程序員會不會沒錢花呢?我覺得程序員不會沒錢花,而是沒有時間花。程序員也不會很講究,衣服有些是媽媽買的,淘寶買的,或者女朋友送的,反正他們的衣服不需要自己買。

最後,還是提點建議給廣大的程序員們,趕快找個對象吧。

⑥ 北大青鳥java培訓:優秀的程序員該如何更上一層樓

關於我們這個行業,「是什麼品質使得優秀的程序員區別於其他程序員?」是最難回答的問題之一。
最近我閱讀了EranGalperin的《WhatMakesagoodprogrammer》,很有感觸,於是北大青鳥http://www.kmbdqn.cn/想和大家分享一下我認為團隊中每個人都需要具備的基本技能和特質。
1.適應性和靈活性很多開發團隊都在喊我們需要靈活的開發人員——尤其是在軟體開發初期這類人才更為重要。
如果你平時是搞UI編程的,那麼我們希望你能深入到數據持久層。
我們甚至可能還會要求你去做一些測試。
你可能是作為一個Java程序員而聘用的,但我們希望下一個應用程序你能用.NET寫擅長多任務和成為某個領域的專家一樣重要。
在當時可能會讓你想抓狂,但是挨過這段日子之後,你的簡歷絕對會讓你的下一個僱主心動不已。
2.熱情也許你上大學學習計算機科學這個專業,只是因為你聽說這行業能賺錢。
幾年之後,當你發現回報並沒有你想像得那麼豐厚的時候,可能就會開始沮喪,提不起干勁來。
偉大的程序員會真心實意地愛著編程——可以不喜歡現在正在搞的代碼——但總的來說,你應該成為一個享受於構建一些東西來解決問題的人。
當有時間空下來可以喝杯咖啡的時候,你會去逛逛類似於JavaLobby的網站,尋找提高自己的途徑。
你會對谷歌最新的舉措,市面上剛出來的Web框架感興趣,津津樂道。
3.用科學武裝頭腦的實幹家《ThePragmaticProgrammer》是軟體行業中最重要的書籍之一。
它不僅不局限於某一種特定的編程語言,而且還為我們提供了一系列的指南,是一部非常經典的著作。
在團隊工作時我們需要考慮到自己的行為所帶來的後果,拒絕「破窗理論」。
對工作保持一貫的高標准——測試、編碼和文檔等等——然後漸漸帶動整個的團隊,蔚然成風。
保持新鮮感的最好辦法是用科學的思維武裝頭腦。
任何問題都可以被分解,所有語言都有著一系列相似的特徵。
之所以有些人能做到這一點,而其他人卻不能的主要原因是在於,你是否保持對自己的質疑:這個代碼片段還能不能寫得更好?是不是可以用一種更有條理的方式呈現這些信息?我可以鄭重地告訴你,這些答案幾乎總是肯定的,所以踏踏實實地解決這些「自我質疑」吧!4.良好的組織安排能力一個優秀的程序員會把事情安排得井井有條,甚至每天下班前都會列出明天的任務。
這樣如果需要做別的事情的話,至少可以參考這個清單,看看放到什麼時候做合適,或者會不會對其他任務造成影響。
ps,這里推薦一個蠻有用的工具——Mylyn,一個基於任務的Eclipse插件。
在處理代碼和文檔方面也需要良好的組織安排能力。
如果我們能夠有組織地進行封裝、設計、命名類和變數,不但有助於團隊成員的理解,還能讓你幾個月後的再次查看,不至於像是在閱讀他人的代碼。
5.通情達理,平易近人我們大多數在團隊環境中工作的,所以我們必須要具備人際交往的能力。
所有被尊重的偉大程序員個個都平易近人。
你需要騰出時間為他人提供幫助,不管是有問題的代碼,還是項目經理想了解一下你的預估。
除此以外,你還應該盡量做到表達清晰——以免交流之後,對方反而對問題更加困惑了。

⑦ 程序員必須知道的HTML常用代碼有哪些

html+css代碼

一、文本設置

1、font-size:號大小

2、font-style:字體格式

3、font-weight:字體粗細

4、顏色屬性color:文本顏色

二、超鏈接設置

text-decoration:參數

參數取值范圍:

underline:為文字加下劃線

overline:為文字加上劃線

line-through:為文字加刪除線

blink:使文字閃爍

none:不顯示上述任何效果

三、背景

1、背景顏色

background-color:設置背景色

2、背景圖片

background-image:url(URL)

URL就是背景圖片的存放路徑,none表示無。

3、背景圖片重復

background-repeat:參數

四、背景

repeat:不重復平鋪背景圖片

repeat-x:使圖片只在水平方向上平鋪

repeat-y:使圖片只在垂直方向上平鋪

如果不指定背景圖片重復屬性,瀏覽器默認的是背景圖片向水平和垂直兩個方向平鋪。

4、背景圖片固定

background-attachment:參數

背景圖片固定控制背景圖片是否隨網頁的滾動而滾動。如果不設置背景圖片固定屬性,瀏覽器默認背景圖片隨網頁的滾動而滾動。為了避免過於花哨的背景圖片在滾動時轉移瀏覽者的注意力,一般都設為固定。

五、參數取值范圍:

fixed:網頁滾動時,背景圖片相對於瀏覽器的窗口而言,固定不動。

scroll:網頁滾動時,背景圖片相對於瀏覽器的窗口而言,一起滾動。

六、區塊

1、單詞間距

word-spacing:單詞間距

2、字母間距

letter-spacing:字母間距

3、文本對齊

text-align:參數

七、參數的取值:

left:左對齊

right:右對齊

center:居中對齊

justify:相對左右兩端對齊

4、垂直對齊

vertical-align: 參數

top:頂對齊

bottom:底對齊

text-top:相對文本頂對齊

text-bottom:相對文本底對齊

baseline:基準線對齊

middle:中心對齊

sub:以下標的形式顯示

super:以上標的形式顯示

5、文本縮進

text-indent:縮進距離

12px相當於一個文字距離。

6、空格

white-space:參數

八、參數取值范圍:

normal默認,空白會被瀏覽器忽略、pre保留空白、nowrap文本不換行。

7、顯示樣式

display:參數

九、參數取值范圍:

block:塊級元素,在對象前後都換行

inline:在對象前後都不換行

list-item:在對象前後都換行,增加了項目符號

none:無顯示

十、方框

1、height高度

2、width寬度

3、padding內邊距

4、margin外邊距

5、float(浮動):可以讓塊級元素在一行中排列,例如橫向菜單。

6、clear清除浮動

十一、邊框

1、樣式

border style 參數

邊框樣式的參數:

none:無邊框

dotted:邊框為點線

dashed:邊框為長短線

solid:邊框為實線

double:邊框為雙線

2、寬度 border width

3、顏色 border color

(7)程序員片段擴展閱讀:

HTML常用代碼之修改頁面的實用性HTML代碼:

貼圖:<img src="圖片地址">

加入連接:<a href="所要連接的相關地址">寫上你想寫的字</a>

在新窗口打開連接:<a href="相關地址" target="_blank">寫上要寫的字</a>

移動字體(走馬燈):<marquee>寫上你想寫的字</marquee>

字體加粗:<b>寫上你想寫的字</b>

字體斜體:<i>寫上你想寫的字</i>

字體下劃線: <u>寫上你想寫的字</u>

字體刪除線: <s>寫上你想寫的字</s>

字體加大: <big>寫上你想寫的字</big>

字體控制大小:<h1>寫上你想寫的字</h1> (其中字體大小可從h1-h5,h1最大,h5最小)

更改字體顏色:<font color="#value">寫上你想寫的字</font>(其中value值在000000與ffffff(16位進制)之間

消除連接的下劃線:<a href="相關地址" style="text-decoration:none">寫上你想寫的字</a>

貼音樂:<embed src="音樂地址" width="寬度" height="高度" autostart=false>

貼flash: <embed src="flash地址" width="寬度" height="高度">

貼影視文件:<img dynsrc="文件地址" width="寬度" height="高度" start=mouseover>

換行:<br>

段落:<p>段落</p>

原始文字樣式:<pre>正文</pre>

換帖子背景:<body background="背景圖片地址">

固定帖子背景不隨滾動條滾動:<body background="背景圖片地址" body bgproperties=fixed>

定製帖子背景顏色:<body bgcolor="#value">(value值見10)

帖子背景音樂:<bgsound="背景音樂地址" loop=infinite>

貼網頁:<iframe. src="相關地址" width="寬度" height="高度"></iframe>

⑧ net程序員怎麼提升自己的技術能力

一、先列三個常見的開發場景:

1、拿到一個模塊詳細設計文檔,大部分程序員的通常做法就是開始搭建界面代碼,然後從第一個按鈕點擊事件或頁面Load事件開始寫第一行業務代碼。寫的差不多了,就運行一下,發現哪裡不是自己想的那樣,就改改,直到改到是自己預想的那樣。

2、做完了一個功能模塊或幾塊相關聯的功能模塊,輸入111asd,發現新建正常、保存正常,就提交給測試人員。測試員用測試用數據、測試場景用例來測試,發現有問題,就登記bug。對於嚴重的影響下一步測試的BUG,測試員就用內部IM通知這個開發人員。對於不影響繼續往下測試的BUG,測試員就登記下來,等程序員有空時處理。

3、程序員一般工作不希望大家打擾,所以開發起來就是開發。等手頭開發告一段落,就看看BUG庫。發現有與自己有關的BUG,就從第一個BUG開始看起。就開始通過IM和測試員掰扯起來(這不是個BUG啊、業務邏輯不是你想的那樣啊、我這里不能重現啊、你給的信息描述不清晰啊),於是IM幾來幾往,甚至跑過去當面交流一番,甚至會拉扯上產品經理一起討論,更甚者需要項目經理或產品經理發起一個會議來集體討論一下

這是不是很熟悉呢?這就是大部分程序員開發的三個步驟:寫代碼、自測、修復BUG。

二、說好的代碼設計、代碼測試呢?

代碼設計?那不是都有開發平台么,已經固化了啊。那不是維護舊功能做完善修改呢么,又不是寫新代碼,只能在現有代碼基礎上修改啊,你又不能大幅重構。

代碼測試?你丫需求討論期、產品設計期、設計評審期那麼長,都把研發項目時間佔光了,就留下2個星期讓我們寫代碼,我們哪裡有時間搞那麼深的測試。還想讓我們搞結對編程?還想讓我們搞測試驅動開發?

而且你看測試,什麼功能測試、集成測試、性能測試、安全測試、安裝部署測試、升級測試、遷移測試、UAT測試,一大堆測試,測試也需要很多時間。

一個項目,需求討論、產品范圍規劃與評審、產品設計與設計評審佔了一個半月,開發+自測就一個月,測試佔了一個半月,這就4個月了啊。

三、為啥程序員寫代碼總是寫寫測測?

剛才大家也都看到了,大部分程序員都是從界面代碼開始寫起,而且寫一寫,就運行一下看看。為什麼會是這種開發方式?

那是因為大部分程序員缺乏在腦子中的整體建模能力。只能做出來一點,真實的感覺一下,然後再往下。

有些是產品經理的上游就有問題,沒給出業務流程圖(因為產品經理也沒做過業務),也沒畫清楚產品功能操作流程圖。

為啥沒給出業務流程圖?因為產品經理不熟悉業務,另外,產品經理也沒有流程建模能力啊。為啥沒畫清楚產品功能操作流程圖啊?因為不會清晰表達流程啊。

很多產品經理、程序員,都缺乏分類、分層、相關、先後能力,更別說總結、洞察能力。

這是基本訓練,是一個做事頭腦清醒的人必備的技能,這不是一個程序員或產品經理或測試員的特定技能要求。

我經常看書就梳理書的脈絡,每看一本就寫一篇總結。我過去閑扯淡還梳理過水滸傳、紅樓夢的人物關系圖呢,其實就在事事上訓練自己的關聯性、層次性、洞察性。

我經常面試一個人時,我會問這樣的問題:「你把我剛才說的話復述一遍,另外你再回答一下我為什麼會這樣?」,其實,我就在看一個人的細心記憶、完整梳理、重現能力,我也在看一個人的梳理、總結、洞察能力。

我個人寫代碼就喜歡先理解業務流,然後理解數據表關系,然後理解產品功能操作流,大致對功能為何這樣設計、功能這樣操作會取什麼表、插入或更新哪些表,哪些表的狀態欄位是關鍵。

然後我寫代碼的時候,就根據我所理解的業務流、功能操作流、數據輸入輸出流,定義函數,定義函數的輸入與輸出。

然後,我會給函數的輸入值,賦上一些固定值,跑下來看看能否跑通這幾個關聯函數,看看還需要怎樣的新增函數,或者看看函數的輸入輸出參數是否滿足跑通。

剩下的事,就是我填肉寫詳細邏輯代碼了。

當然,大部分人沒我這樣的邏輯建模能力。怎麼閱讀理解也想像不出來,也沒法定義函數。畢竟有邏輯建模能力的程序員都很少,100個人里有10個,已經是求爺爺告奶奶好幸運了。

那怎麼辦呢?

我建議是分離分工配合,這就是現實中沒辦法的辦法。讓有邏輯建模能力的人來設計函數框架、來設計工具來設計代碼模板,然後讓沒有邏輯建模能力的人來填肉寫詳細邏輯代碼。

我們可以先從最緊要的模塊開始這么做。不緊要的模塊,還讓它放任自流,讓熟練手程序員繼續塗抹。

我曾經還讓有頭腦的程序員做榜樣,給大家分享他是怎麼規劃函數的,怎麼做維護性代碼的代碼結構改善的。但是發現效果並不佳,其他人並沒有因此能做代碼設計。可能邏輯建模能力是個人的基本素質,是從小到大訓練成型的,不是你一個大學已經幾年的人能夠短時間內可以訓練的。

所以啊,還是讓能走的人先走,讓從最緊要的模塊開始這么做。

不必擔心這樣做後,因為過去一件事被分工(一個做代碼框架一個填肉)成兩個人做了會降低工作效率。我們很多的工作效率低就是因為半瓶子醋搞出來的,來回反復修改。

真是應了劉德華在電影里說的那句話:說你又不聽,聽又聽不懂,聽懂了又不做,做又做不好,做不好還不服氣。

四、為什麼大部分程序員不做代碼測試或白盒測試或單元測試呢?

還是因為沒有代碼設計。因為沒有函數啊。所以,一個按鈕功能有多復雜,代碼就有多長。我見過2000行的函數,我也見過1000多行的存儲過程和視圖SQL。怎麼做白盒測試啊,這些代碼都粘在一起呢,要測,就得從頭到尾都得測。

所以啊,先學會設計函數,先寫好函數,這就求爺爺告奶奶了。很多開發了5年的熟練手程序員,可能都未必會寫函數。

函數的輸入輸出值就很有講究。很多人都寫死了,隨著版本迭代,發現過去定義的函數參數不夠用了,於是就新增了一個參數。然後,相關性異常就爆發了,其他關聯的地方忘改了,到底哪些有關聯,怎麼查啊,本系統沒有,沒准其他系統就調用你了,你根本不知道哪個神經人曾經COPY過你的代碼修吧修吧就改成了他的功能呢,而且裡面的很多代碼他看不懂也不敢刪,只要他實現的功能正常了他也不管了。於是,你改了你這個函數,他的系統就莫名出錯了。

所以,我一般會定義幾個對象來做參數。另外,我也很注重函數的日誌、函數的異常保護、異常拋出、異常返回。另外,我也很注重參數輸入值的合法性校驗。

所以啊,應該開發Leader們先制定函數編寫規范最佳實踐,輸入輸出參數怎麼定義比較好,函數的返回值如何定義比較好,函數的日誌記錄應該怎麼寫比較好,函數的異常保護、異常拋出、異常返回如何寫比較好。先教會一般程序員,先從會寫函數開始啊。

當然,你光有一份規范,程序員們還是不理解、不實際應用啊。所以,還得Leader們做好典型的代碼模板,裡面是符合函數規范的代碼框架,只有這樣,一般程序員們才會照貓畫虎適應了函數設計的編程習慣。

所以啊,我專門重新定義了leader的明確職責,其中第一個重要職責就是:負責工具/框架/模板/規范的制定,並且負責推廣且普及應用落地。

你不明確定義Leader的這個重要職責,你不對這個職責做明確的KPI考核,誰尿你啊。你以為好的工具/框架/模板/規范是靠人們的熱情、自發產生的么?我們還沒有那麼自覺高尚啊。

五、為什麼大部分程序員不寫注釋啊?

我經常說一句話,千萬別多寫注釋。為啥?

因為我們經常遇到的問題不是沒有注釋,而是更糟的是,注釋和事實代碼邏輯是不相符的。這就出現常見問題了:殘存下來的設計文檔是一個邏輯、注釋是一個邏輯說明、真實代碼邏輯又是一個,鍾表多了,你也不知道正確時間了。

所以啊,產品文檔、注釋、真實代碼,三者總是很難一致同步。我為了幾百人研發團隊能做到這個同步花了大量心血和辦法,但我最終也沒解決了這個問題,還把Leader們、總監們、我都搞的精疲力盡。

索性回歸到一切一切的本源,代碼,就是程序員的唯一產出,是最有效的產出。那麼,讓代碼寫的不用注釋也能看懂,咱得奔著這個目的走啊。

為啥看不懂,不就是義大利面條式代碼么,又長又互相交雜。

OK,我就規定了,每個函數不能超過50行。用這一個簡單規定和靜態代碼檢查插件,來逼迫大家嘗試著寫函數。有的函數屬於流程函數,是串起其他函數的,有的函數就是詳細實現函數,實現一個且唯一一個明確作用的。

有了流程函數和功能函數,而且每個函數不超過50行,這就比過去容易看懂了。

六、為什麼大部分程序員不抽象公共函數啊?

我經常說一句話:千萬別抽象公共函數啊。為啥?

因為大部分程序員缺乏抽象洞察能力。特別是有些積極熱情有餘、愛學習愛看書、半瓶子醋晃悠的二桿子,看了幾本UML、重構、設計模式、整潔代碼之道,就躍躍欲試了,還真敢給你抽象公共函數了。

一開始,他覺得80%相似,20%不相似,於是在公共函數裡面簡單寫幾個if..else做個區隔就可以。沒想到,越隨著版本迭代,這些功能漸漸越變越不一樣了,但是這個代碼已經幾經人手了,而且這是一個公共函數,誰也不知道牽扯多少,所以誰也不敢大改,發現問題了就加一個if..else判斷。

沒想到啊沒想到,這個本來當初公共的函數,現在變成了系統最大的毒瘤,最復雜的地方,誰也不敢動,除非實在萬不得已,手起刀落。

所以,我平時告誡程序員,純技術的、純通用的,你們可以嘗試搞搞抽象公共函數,對於業務的,你們還是簡單粗暴的根據Leader們做的代碼模板代碼框架,乖乖的復制、修改、填肉吧。

你們啊,先從做模板做代碼片段開始吧,咱們放到咱們內部代碼片段開源庫里,看誰的代碼片段被別人復制的多,說明你的代碼抽象設計能力越好了。那時候,我就大膽放心讓你撒丫子跑了。在沒有學會跑之前,給老子乖乖的復制、修改、填肉吧。

⑨ 請問資深程序員,如何組織管理平時搜集的代碼片段

GistBox 用簡便的方式來組織和管理代碼片段。你的代碼會保存到雲端進行備份,再也不用擔心迷失在雜亂的代碼片段中。GistBox 是建立在標準的 HTML5 技術基礎上。在旅途中或在辦公室,你都可以使用 GistBox。

⑩ 情景活動作文150字『信』片段式

老師手臂一揮,幾名同學飛奔出去,拿回籃球就玩了起來。小明剛上場就投中了一個3分球,旁邊的人發出一陣陣歡呼聲。小力也投了幾個球,但球好像不願再進籃筐,一個也沒中。

過了一會兒,他們打起了比賽。小馬從遠處傳球給小明,小明一個三步上籃就奪取了兩分,再加上小馬的幾個兩分球,一下子他們就扭轉了局勢。

當然也有人不參加比賽,那些人都是認為比賽不公平的。開始我還玩幾局,後來就不再玩了。我們也不是閑著,一會兒跑步,一會兒競走。

到了實心球拋遠運動的時間,我和小力站在一排,「三、二、一、投!」兩個球從規定的線上飛了過去,停在了同一條線上。

閱讀全文

與程序員片段相關的資料

熱點內容
小奔運動app網路異常怎麼回事 瀏覽:447
php開啟壓縮 瀏覽:303
伺服器主機如何設置啟動 瀏覽:282
linux配置網路命令 瀏覽:774
一張照片怎麼製作視頻app 瀏覽:908
pythonweb和php 瀏覽:976
電腦伺服器地址ip地址 瀏覽:823
對矩陣壓縮是為了 瀏覽:910
setfacl命令 瀏覽:172
linux子系統中斷 瀏覽:342
linux查看進程ps 瀏覽:224
知識庫系統php 瀏覽:623
小波變換壓縮圖像python 瀏覽:151
阿里巴巴程序員怎麼月入百萬 瀏覽:173
如何使用國外伺服器 瀏覽:188
燃燈者pdf 瀏覽:468
編譯器用數學嗎 瀏覽:7
圖形化apk反編譯工具 瀏覽:48
考勤表加密怎麼辦 瀏覽:735
arj壓縮與解壓批處理怎麼寫 瀏覽:658