Ⅰ 系統程序員怎樣把代碼寫得又快又好
很多初學者包括一些有經驗的程序員,在敲完代碼的最後一個字元後,馬上開始編譯和運行,迫不急待的想看到自己的工作成果。快速反饋有助於滿足自己的成就感,但是同時也會帶來一些問題:
讓編譯器幫你檢查語法錯誤可以省些時間,但程序員往往太專注這些錯誤了,以為改完這些錯誤就萬事大吉了。其實不然,很多錯誤編譯器是發現不了的,像內存錯誤和線程死鎖等等,這些錯誤可能逃過簡單的測試而遺留在代碼中,直到集成測試或者軟體發布之後才暴露出來,那時就要花更大代價去修改它們了。
修改完編譯錯誤之後就是運行程序了,運行起來有錯誤,就輪到調試器上場了。花了不少時間去調試,發現無非是些低級錯誤,或許你會自責自己粗心大意,但是下次可能還是犯同樣的錯誤。更嚴重的是這種debug&fix的方法,往往是頭痛醫頭腳痛醫腳,導致低質量的軟體。
讓編譯器幫你檢查語法錯誤,讓調試器幫你查BUG,這是天經地義的事猛灶,但這確實是又慢又爛的方法。就像你要到神知行離家東邊1000米的地方開會,結果你往西邊走,又是坐車又是搭飛機,花了一周時間,也繞著地球轉了一周,終於到了會議室,你還大發感慨說,現代的交通工具真是發達啊。其實你往東走,走路也只要十多分鍾就到了。不管你的調試技巧有多高,都不如一次性寫好更高效。
下面是我在閱讀自己代碼時的一些方法:
檢查常見錯誤
第一遍閱讀時主要關注語法錯誤、代碼排版和命名規則等等問題,只要看不順眼就修改它們。讀完之後,你的代碼很少有低級錯誤,看起來也比較干凈清爽。第二遍重點關注常見編程錯誤,比如內存泄露和可能的越界訪問,變數沒有初始化,函數忘記返回值等等,在後面的章節中,我會介紹這些常見錯誤,避免這些錯誤可以為你省大量的時間。如果有時間,在測試完成之後,還可以考慮是否有更好的實現方法,甚至嘗試重新去實現它們。說了讀者可能不相信,在學習編程的前幾年,我經常重寫整個模塊,只我覺得能做得更好,能驗證我的一些想法,或提高我的編程能力,即使連續幾天加班到晚上十一點,我也要重寫它們。
模擬計算機執行
常見錯誤是比較死的東西,按照檢查列表一條一條的做就行了。有些邏輯通常不是這么直觀的,這時可以自己模擬計算機去執行,假想你自己是計算機,讀入這些代碼時你會怎麼處理。北大青鳥http://www.kmbdqn.cn/認為這種方法能有效的完善我們的思路,考慮不同的輸入數據,各游嘩種邊界值,這能幫助我們想到一些沒有處理的情況,讓程序的邏輯更嚴謹。
Ⅱ 如何渡過小白期,不再當菜鳥程序員
相信習慣的力量
菜鳥和大牛的區別除了寫代碼、debug的核心能力差距之外,另外一個很大的差別就是在習慣上。大牛經過摸爬滾打練出了一系列優良的習慣,而菜鳥好習慣還沒養成,壞習慣有了一堆。所以身為菜鳥的時候一定要有規范和習慣意識,養成好習慣,去掉壞習慣讓自己越來越習慣寫出優質的代碼。
關於習慣仁者見仁,每個人也都有自己的習慣。
一個函數只做一件事
如果有一天你接手了另外一個同事的代碼,發現他有一個函數裡面裝了三千行代碼,你會是什麼感受?
有一些人會不知不覺地停止學習,因為他已經足夠應付工作了。在工作當中他會有一種在這個領域我當下會的技能已經足夠了的錯覺,有些人甚至會因此覺得其他資歷更深的同事也不過如此,似乎並沒有比自己多會多少東西。
我當初就是這樣,因為我發現我工作當中用到的東西玩的非常溜,用起來得心應手。我一度有些膨脹,覺得自己已經算是一個經驗豐富的程序員了。直到後來有一次面試,被問到了一個常用的工具的技術細節,我張口結舌一句話也說不上來,我才發現,自己知道的只是皮毛而已,甚至連皮毛都算不上。
當然我們工作當中對很多技術的要求都只是會用,你會用就夠了,這並沒有問題。我也並不覺得每一門我們用到的技術都需要去刨根究底,但我們需要對我們的實力有清醒的認識,哪些是勉強會用的?哪些是真正了解掌握的?哪些是需要掌握但是只是勉強會用的?
能夠想明白這些問題可以讓我們保持一個清醒的頭腦,對自己的當下的處境以及長遠的發展目標都會有一個清楚的認識。
積累知識而不僅是經驗
新手或者是小白有一個特點就是往往更加依賴經驗而不是知識,舉個例子吧。比如新手後端經常遇到的問題之一就是maven package失敗,很多人解沖突的辦法就是mvn clean & mvn install。也就是清空重新建立,因為大部分情況下這個命令可以解決問題。所以很多新手就記住了這個命令,每次遇到maven失敗就這么來一次。
如果這個命令解決不了呢?這些人可能會換個命令試試。如果常用的解決問題的命令都試過了還是不行呢?這些人可能就僵住了,覺得這個問題解決不了了,得請大牛來看了。
這里的核心問題是新手積累的是經驗而不是知識,他們只是簡單機械地把出現的問題和解決方法做映射而已,並不是從原理和核心層面理解問題出現以及解決方案生效的原因。那麼帶來的結果就是,積累到的只是經驗,下次能解決問題不是因為學會了問題的解決方法,也不是理解了這一塊技術內容,只是單純地記住了而已。這顯然也是一種偽成長。
其實我之前也遇到過這樣的問題,雖然我每次都有意識遇到問題記錄下解決的辦法,這樣下次就可以不用請教別人了。然而雖然我記錄的問題越來越多,但是每次遇到新的問題還是解決不了,需要請教別人。直到有一天,被我問的大牛露出了不耐煩的神情,才讓我下定決心自己學會解決問題。
於是我不再是頭痛醫頭腳痛醫腳地解決問題,而是去學習了一下問題背後的原理和機制,再從報錯日誌上分析錯誤產生的原因,思考解決方案,最終徹底學會了解決這一類問題的方法。之後不但能夠自己獨立解決問題,而且還可以去幫助別人了。我後來回過頭來想想,如果我第一次遇到問題的時候就自己嘗試去學習其中的機制,而不只是記住解決方法,應該可以做得更好。
少說廢話,多些代碼
著名的Linux之父Linus有一句名言:talk is cheap show me the code。翻譯過來就是廢話少說,代碼拿來。我覺得這句話非常符合這一行的精髓,我們不是靠嘴皮子吃飯的,而是靠實實在在的產出,這個產出最終是要落實到代碼上的。作為一個新人,可能我們會有這樣的問題,那樣的困惑。然而這許多的問題和困惑我們光想是沒用的,只能用硬實力來解決。
著名的C語言作者譚浩強也有一句名言:新手學編程最應該做的事情就是寫滿一萬行可以運行的代碼,之後你就自然入門了。道理其實也是一樣的,少說廢話,多做實事。多做多練,實力自然不會差。空想吹逼是成不了大牛的。所以如果你猶豫想要學習一門新的領域,但是不知道從何做起的時候,不妨想想這句話,別管它三七二十一,先搞起來寫起代碼來再說。搞著搞著,你自然就明白後面應該怎麼做了。
以上就是我自己積累的一些思考和想法,如果你是一個小白的話,希望它能夠幫助你順利度過新手期,向著大牛的目標進發。
Ⅲ 如何判斷辦公室常見疾病的類型
如何判斷辦公室常見疾病的類型
如何判斷辦公室常見疾病的類型,辦公室內很多職員都會因為長期久坐無法動彈,會有很多疾病纏身,比如勁椎病喝腸胃病等等,可以通過運動來緩解,本文講述如何判斷辦公室常見疾病的類型。
病症一、頸椎病
上班族一天中約有三分之一的時間是在辦公桌旁度過的。而大多數人往往習慣彎腰坐著,導致頸椎長時間處於前屈狀態,與頸椎正常的生理曲線相違背,長此以往很容易導致頸椎病。如果出現脖子僵硬或是在扭動脖子時發出聲響,一定要引起警惕,這可能是頸椎病的前兆。
病症二、腸胃病
腸胃病可以說是上班族們最常見的疾病了。很多上班族由於工作繁忙,常常三餐不規律,要麼吃很多,要麼就不吃或是常期吃外賣等不健康的食物,導致腸胃受到損傷,引發腸胃疾病。上班族常見的腸胃疾病有:胃炎、胃潰瘍、便秘等。
病症三、脂肪肝
飲食不規律、喝酒應酬、宵夜不斷是現在大多數職場人員的常態,而大多數人又不愛運動。長期吃一些高脂肪的食物,沒有及時運動消耗,就會造成脂肪堆積,從而引發脂肪肝。
病症四、「空調病」
夏季,對於上班族來說,每天至少有7個小時的時間會呆在辦公室里,而空調溫度一般較低,長時間受冷氣「侵襲」很容易患上「空調病」。
病症五、脫發
脫發是大多數上班族最為苦惱的問題,尤其是很多程序員都出現禿頂的苗頭。上班族而工作壓力大、精神緊張、用腦過度是導致脫發的.主要原因。
一、高科技辦公室病
症狀:長時間待在現代化的辦公里,就會感到胸悶頭疼,有時還會莫名其妙地煩惱,做事沒有精神,思維遲鈍,愛鑽牛角尖。
病因:辦公室的電腦、復印機,都帶有一定的輻射,正是這些輻射引發頭疼等疾病,再加上冬天緊閉門窗,不通風更會加重患頭痛的概率。
二、頸肩腕綜合征
症狀:在電腦面前工作一段時間以後,感覺頸部、肩部酸痛,脖子僵硬,手腕和手臂脹痛。
病因:上班族一般情況下幾乎在工作日里都要待8個小時以上,並且通常是坐著辦公,久坐就會導致頸部、肩部、手腕和脖子酸痛,長時間如此,肩椎炎、腰椎炎等就會引發,長時間頻繁使用手腕和手指的工作會逐漸對這些部位造成損傷,若辦公桌和辦公椅設計不合理,更會加重身體的疲勞,給頸部,肩部、手臂等帶來更大的壓力。
三、電腦眼病
症狀:視覺模糊,視力下降,以及眼睛干澀、發癢、灼熱、疼痛和畏光等,有時還會伴隨頭痛等症狀。
病因:長時間的面對電腦,電腦的光線和輻射都會對眼睛造成一定的損傷,工作壓力大也是引發電腦眼病一部分原因。
四、信息焦慮綜合征
病狀:沒有任何病理變化、也沒有任何器質性改變,但是會突發性地出現惡心、嘔吐、焦躁、神經衰弱、精神疲憊等症狀。嚴重的女性還會並發停經、閉經和痛經等婦科疾病,發病間隔、起病時間不一定。
病因:在信息爆炸的時代,信息量呈幾何級數增長,但人類的思維模式還沒有調整到可以接受如此大量的信息,因此會造成一系列的自我強迫和緊張。
五、工作場所抑鬱症
病症:身體的某個部位疼痛,或者是疲勞、睡不著、吃不下,進一步發展成沒有心情進行日常活動。嚴重的還會導致患者脾氣暴躁,甚至還可能產生自殺的念頭。
病因:科技進步所形成的資訊飽和、工作過量和工作不穩定,都是導致抑鬱的主要因素。這是繼心臟病之後,第二種最有可能使員工失去工作能力的疾病。
六、身體形態走樣
症狀:下盤和臀部變大、站姿坐姿習慣性彎曲,背部僵硬等
病因:久坐不動使血液循環不暢導致身形走樣,有時候習慣性翹腿、抖腿或者是坐姿不正確都是導致身材走形的重要原因。
七、久坐不動
是上班族健康的頭號大敵。有些人一到辦公室,就像粘在椅子上一樣,想跟鄰座說話,都懶到要坐在椅子上用滾輪滾過去。久坐不僅讓頸椎病找上門,高血壓、糖尿病等慢性病也會光顧。
對策:每1小時,彎彎腰、扭扭腿、伸伸臂、轉轉脖子、搓搓臉。如果不想引人注目,可以去趟衛生間或洗把臉,強迫自己站起來溜達。也可以做做隱蔽的勞動,比如把凌亂的物品擺整齊,清掃桌椅灰塵。
八、用眼過度
「久視傷血。用眼時間太長會造成近視、視力模糊、眼乾等多種問題。」張湖德說。
對策:關鍵是活血。每1小時遠望5分鍾,最好能做做眼保健操。也可以把掌心搓熱,放在眼睛上面,反復做5—10次。
九、著裝不舒適
為了職場形象,即使驕陽似火,許多男性還是穿著皮鞋。女性則腳踩七寸高跟鞋,腳痛、腿疼是家常便飯,而且還會影響心情。
對策:在辦公室常備一雙松軟、透氣的平底布鞋,一進辦公室就換上,布鞋可以比平時穿的鞋大一碼,有利於血液循環。
十、飲食不調
具體說就是早飯不吃,午飯湊合。「上班族」經常吃的盒飯、外賣缺蔬果、油大,對健康非常不利。
對策:在辦公室常備水果和綠茶。桃最養人,可以作為夏日滋養品來補充,也可以多喝綠茶,利尿的同時,還能醒腦、促消化、抗輻射。另外,每天上班前,拿飯盒裝點切好洗凈的黃瓜、小西紅柿,也是很好的零食。
那麼對於這些辦公一族來講,我們給的最好的給予你們最好的建議,還是以運動鍛煉來緩解,或者改善辦公室的這些職業病很好的一些鍛煉方法。就是像椅子操。你這個椅子操做的時候可能不大影響,你在辦公室里走來走去,這個看著你不像個樣子。
但是每隔半小時到一小時,我們都可以進行一個化整為零的運動鍛煉活動。椅子操就是一個很簡單的鍛煉方式。給你椅子做在前半部使的自己的腿與地面形成一個90度的夾角,這個時候你把兩手搭在一起交叉的搭在一起使勁的往上進行拉伸,就類似於我們伸懶腰一樣的可以左、右、前、後晃動。這樣話呢,這樣很簡單的一個方式,小椅子操就可以使我們周身的拉伸進行一個很好的活動。還有就是我們說靠牆站立。
咱們辦公室都有牆面,靠牆站立,使你的臀部、腳後跟包括頭部貼緊牆面,然後腳後跟抬起,就是腳尖墊氣使你的全身都有一個整體的收縮,那麼這個時候就會使你的肌肉進行一個強有力的鍛煉。
這個鍛煉跟我們的核心力量練習有異曲同工之處。所以看起來很簡單的鍛煉方式,可以對我們小白領或者是辦公室一族的人起到一個很好的體質提高的問題。至於滑鼠手,我們可以教給大家做一些簡單的手指操。就是把手指交叉,一個很簡單的旋轉、旋轉、扣擊,這些看起來簡單的動作鍛煉,實際上對辦公一族的這種職業病的預防都會起到很好的鍛煉效果。
Ⅳ 足協程序員是誰
足協程序員是陳戌源。
指的是目前的國足足協主席——陳戌源,諧音(程序員),他曾經是上海國際港務的老闆,於19年任足協主席,很多球迷都非常憤怒,說他完全是個門外漢,現在成績也說明了一點問題。
在陳戌源上任以來,國足戰績每況愈下,球迷對其是怨聲載道,各種政策讓人摸不著頭腦!所以大家戲稱程序員,程序猿!中國足球要取得成功還是老老實實把事情做好,不要走太多捷徑,不要以為走捷徑帶來的勝利是長久的。
只要能夠在中國足球和球員個人發展之間找到平衡,俱樂部就會無條件支持留洋。
足球:
足球是一項以腳為主,控制和支配球,兩支球隊按照一定規則在同一塊長方形球場上互相進行進攻、防守對抗的體育運動項目,代表人物有貝利、迭戈·馬拉多納等。
足球運動具有對抗性強、戰術多變、參與人數多等特點,被稱為「世界第一運動」,最高組織機構是國際足球聯合會。現代足球起源地是在英國。傳說在11世紀,英格蘭與丹麥之間有過一場戰爭,戰爭結束後,英國人在清理戰爭廢墟時發現一個丹麥入侵者的頭骨,出於憤恨。
他們便用腳去踢這個頭骨,一群小孩見了便也來踢,不過他們發現頭骨踢起來腳痛,於是用牛膀胱吹氣來代替它——這就是現代足球的誕生。