偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

提高編程效率的14件事

企業(yè)動(dòng)態(tài)
提高編程效率的14件事。

下面是14件如何有效編程的方法:

1:計(jì)劃(Plan)

所謂Plan,其實(shí)就是對應(yīng)于編程中的“設(shè)計(jì)”階段,當(dāng)然,這里的Plan并不像設(shè)計(jì)那樣重量級。它要求我們程序員在正式編程前至少要考慮一下下面的問題:

你這個(gè)程序,工具或是項(xiàng)目的目的,究竟是用來干什么的。你只有知道做什么,要達(dá)到什么樣的目的,你才能做得對,做得好。
需要有什么樣的功能。需要你給出來個(gè)功能列表。這樣可以保證我們不會遺露了什么。
準(zhǔn)備好一些技術(shù)難題的前期調(diào)查和解決方案。不要等到開始編程的時(shí)候才去想。
下面這你因?yàn)橛小癙lan”而得到的好處:

你能夠清楚地明白你要做的東西長什么樣?
你能清楚知道你要開發(fā)的東西要干些什么事?
你能夠在開發(fā)過程中解決你所有可能發(fā)生的難題。

2:使用偽代碼

偽代碼是一個(gè)非常不錯(cuò)的方式,讓你可以看到你要寫的程序長什么樣?根據(jù) 維基百科(Wikipedia),偽代碼被寫定義成這樣:

偽代碼是一個(gè)緊湊和非正式的從高層描述一個(gè)計(jì)算機(jī)編程算法的結(jié)構(gòu)約定。其主要是為了讓人閱讀而不是讓計(jì)算機(jī)執(zhí)行。典型的偽代碼一般會忽略那些算法中不需要人去關(guān)心的細(xì)節(jié)。比如:變量聲明,系統(tǒng)調(diào)用,或是子程序。在偽代碼中,編程語言被自然的人類語言所增強(qiáng)而放大,從而,更方便,更緊湊。

一些人并不喜歡偽代碼,因?yàn)樗麄儾⒉幌喟淹瑯拥拇a寫兩遍,一遍是偽代碼,一遍是真代碼。其實(shí),這是可以理解的,因?yàn)閮蓚€(gè)copy的東西是比較不好維護(hù)的。但是我想,這是可以權(quán)衡的,如果的算法很簡單,那么就不需要偽代碼了,如果你的算法比較復(fù)雜,比較繞,那么,有一個(gè)偽代碼提綱挈領(lǐng)將會是一件非常不錯(cuò)的事情,因?yàn)樗欣谧寗e人從一個(gè)簡單的文檔來了解一個(gè)復(fù)雜的算法或系統(tǒng)。這就好像一個(gè)電線的布線圖一樣,你可以很容易地通過一個(gè)簡單的文檔從復(fù)雜的實(shí)現(xiàn)中找到頭緒。

3:書寫清楚的注釋

請?jiān)谀愕拇a中書寫清楚的程序注釋。當(dāng)然,注釋不是越多越好,注釋應(yīng)該是簡明扼要的,如果你的程序足夠地清楚簡單,那么注釋就會顯的多余。另外,注釋應(yīng)該是注釋“原因,理由,目的”,而不是注釋“是什么”,在“酷殼”的另一篇文章《惹惱程序員的十件事》中,有一條就是關(guān)于壞的注釋是多么的另個(gè)討厭。

4:使用自動(dòng)的編輯工具

自動(dòng)的編輯工具有很多,比如 Typinator,這是一個(gè)可以通過設(shè)定一些替代的簡單代碼來實(shí)現(xiàn)重復(fù)語句的快捷插入,比如你自己的簽名、常用的語句等等,通過它可以設(shè)定替代的簡短代碼。還有其它一些代碼自動(dòng)完成的工具,比如一些VC的插件,還有像Source Insight這樣的東西。別小看這一點(diǎn)點(diǎn)時(shí)間,如果你每天都在寫代碼的話,今天一點(diǎn)點(diǎn),明天一點(diǎn)點(diǎn),將會為你省出很多的時(shí)間。

5:減少代碼

減少代碼的數(shù)量,堅(jiān)持DRY(Don’t Repeat Yourself) 和KISS(Keep It Simple & Stupid) 原則。這樣可以有交物減少代碼的復(fù)雜度,提高程序的易讀性和可維護(hù)性,同時(shí)也能增加代碼的質(zhì)量。

6:代碼重用

DRY (don’t repeat yourself) 原則就是告訴我們需要重用現(xiàn)有的代碼。這樣,你才能夠站在巨人的肩膀之上,從而可以更多的關(guān)注和自己所要處理業(yè)務(wù)的邏輯。編程的最高境界就是寫出來的代碼是可能被重用的,重用和泛型這是編程里始終在追求的目標(biāo)。

7:代碼重構(gòu)

一些老的代碼可能已經(jīng)不合時(shí)宜了,比較以前老的C++的STL庫在多線程下可能會出現(xiàn)很多問題。所以,我們自己的代碼也是一樣的,每過一段時(shí)間,我們需要把這些代碼回收再利用,這就是軟件的重構(gòu)。重構(gòu)代碼所追求的并不是要提供更多的功能,而是讓老的代碼更有生命力,讓老的代碼跟上時(shí)代,更具擴(kuò)展性,靈活性。

8:使用設(shè)計(jì)模式

設(shè)計(jì)模式是一種從代碼級解決某一些問題的方法論。這個(gè)世界上有很多很多的設(shè)計(jì)模式,比如MVC,單實(shí)例,工廠,觀察者等等,等等。使用好的設(shè)計(jì)模式可以讓你的代碼更具重用和擴(kuò)展性。關(guān)于設(shè)計(jì)模式,請參看本站的另一篇文章《101個(gè)設(shè)計(jì)模式》

9:使用程序框架Framework

Frameworks 是一份給程序員的禮物,他們幫助你完成了很多很細(xì)節(jié)的事情,他們有可能是一個(gè)lib庫,你需要進(jìn)行簡單的拼裝,一個(gè)幾乎完成了的軟件框架就已形成。這是一個(gè)能夠給開發(fā)工作提速的東西。只要上網(wǎng)隨便搜一搜,你可以看到太多太多的框架了。形形色色,幾乎都是開源社區(qū)貢獻(xiàn)的。

10:泛型編程

如果抽像出一些程序中相似的東西,然后把這些相似的東西用一個(gè)標(biāo)準(zhǔn)的東西實(shí)現(xiàn),這也是編程所追求的最高境界之一,像諸如C++中的STL之類的東西就是此類東西的最佳體現(xiàn)。靈活之及,幾乎都快放之四海皆準(zhǔn)了。

11:使用開源的代碼

這個(gè)世界上有太多太多開源的代碼了。學(xué)會利用他們可以讓你更節(jié)省時(shí)間和精力,因?yàn)槲覀兺耆珱]有必要把相當(dāng)?shù)臇|西實(shí)現(xiàn)若干次,學(xué)會使用開源的代碼不但是一個(gè)學(xué)習(xí)的過程,同樣也是一個(gè)增加編程效率的事情。

12:完善開發(fā)環(huán)境

開發(fā)環(huán)境非常重要,因?yàn)楹玫拈_發(fā)環(huán)境可以讓你事倍功半。他們可以讓你不需要關(guān)注別的東西,比如,我曾看過某程序員在調(diào)整編輯器的字體和高亮上花費(fèi)了不少工夫。是的,這是值得肯定了,只有把開發(fā)環(huán)境變得舒服,才能讓自己更好的編程。

13:使用調(diào)試器

學(xué)會使用調(diào)試器來調(diào)試代碼,單步跟蹤,變量值跟蹤,內(nèi)存,堆棧等等。熟練地使用調(diào)試器可以讓你更好的查找程序的問題,以得到最優(yōu)的代碼。

14:使用版本管理工具

版本管理工具應(yīng)該是任何程序員都應(yīng)該要去學(xué)會使用的東西,特別在一個(gè)團(tuán)隊(duì)中,如何管理程序的不同版本,如何維護(hù),存放代碼,版本管理工具絕對是開發(fā)過程中不可少的東西。其意義絕對不只代碼備份和共享那么簡單。下面是一些開源的管理管理工具:Git,SVN,CVS和Bazaar。

【編輯推薦】

  1. 8條體面的程序員偷懶技巧
  2. 新生代JAVA程序員的思想
  3. 程序員技術(shù)升級指南
責(zé)任編輯:夏雨 來源: 北大青鳥中文網(wǎng)
相關(guān)推薦

2018-11-01 15:50:24

MongoDB服務(wù)器數(shù)據(jù)庫

2010-07-19 16:09:41

面試

2021-11-11 13:39:53

存儲數(shù)據(jù)存儲技術(shù)

2012-07-22 15:22:17

加班

2019-11-06 11:16:00

程序員HTMLPython

2014-11-11 15:19:36

程序員

2011-04-02 13:35:21

多線程編程多線程java

2012-09-10 10:26:22

工作工作習(xí)慣調(diào)整心態(tài)

2021-08-03 10:40:47

混合云云計(jì)算應(yīng)用程序

2014-05-13 10:05:00

工作效率

2022-04-19 07:48:16

JavascriptCSS

2015-03-11 11:23:38

MySQLPHP開發(fā)

2012-01-09 09:45:14

PhoneGapPPT

2020-05-27 10:46:49

Kubernetes容器云計(jì)算

2020-05-08 15:30:42

PostgreSQL數(shù)據(jù)庫數(shù)據(jù)

2014-08-12 09:22:05

程序員

2010-08-30 09:21:20

2023-02-17 10:53:21

首席信息官數(shù)字風(fēng)險(xiǎn)

2022-06-08 12:29:24

編程語言JavaPython

2024-01-09 14:57:22

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號