欧美日韩精品在线,国内精品久久久久久久久,一级毛片恃级毛片直播,清纯唯美亚洲综合欧美色

揭秘Java開發(fā)人員必須遵從的十大法則(2)_PHP教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:解析PHP繪制3D圖形之自定義圖形及矢量圖
上一篇進(jìn)行了一些簡單3D圖形實(shí)例,本篇介紹自定義及矢量圖實(shí)例。首先繪制一個(gè)三尖角星體,分別由前面,后面和三個(gè)側(cè)面組成。 自定義多邊形 代碼: 以下為引用的內(nèi)容: ?phprequire_once ( 'Image/3D.php' ) ; $image = new Image_3D () ; $image - setColor

 

4.請不要有硬代碼

開發(fā)人員常常有意識的忘記或者忽視這條規(guī)則,原因是我們,和一般時(shí)候一樣,在趕時(shí)間。如果我們遵從這條規(guī)則,我們可能會趕不上進(jìn)度。我們可能不能結(jié)束我們的當(dāng)前狀態(tài)。但是寫一條額外的定義靜態(tài)常量的代碼行又能花費(fèi)我們多少時(shí)間呢?

這里有一個(gè)例子。

以下為引用的內(nèi)容:
public class A {

    public static final String S_CONSTANT_ABC = "ABC";

    public boolean methodA(String sParam1){

    if(A.S_CONSTANT_ABC.equalsIgnoreCase(sParam1)){

    return true;

    }

    return false;

    }

    }

現(xiàn)在,每一次我們需要和某一些變量比較字符串“ABC”的時(shí)候,我們只需要引用S_CONSTANT_ABC,而不是記住實(shí)際的代碼是什么。它還有一個(gè)好處是:更加容易在一個(gè)地方修改常量,而不是在所有的代碼中尋找這個(gè)代碼。

5.不要發(fā)明你自己的frameworks

已經(jīng)推出了幾千種frameworks,而且它們中的大多數(shù)是開源的。這些frameworks中間有很多是極好的解決方案,被應(yīng)用到成千上萬的應(yīng)用中。你們需要跟上這些新frameworks的步伐,最起碼是膚淺的。在這些極好的、應(yīng)用廣泛的frameworks中間,一個(gè)最好的、最直接的例子是Struts.在你所能想象到的frameworks中,這個(gè)開源的web frameworks對于基于web的應(yīng)用是一個(gè)完美的候選者。但是你必須記住第二條規(guī)則??不要讓事情復(fù)雜化。如果你開發(fā)的應(yīng)用只有三個(gè)頁面?請,不要使用Struts,對于這樣一個(gè)應(yīng)用,沒有什么“控制”請求的。

6.不要打印行和字符串相加

我知道,為了調(diào)試的目的,開發(fā)人員喜歡在每一個(gè)我們認(rèn)為適合的地方添加System.out.println,而且我們會對我們自己說,會在以后刪掉這些代碼的。但是我們常常忘掉刪去這些代碼行,或者我們根本就不想刪掉它們。我們使用System.out.println來測試,當(dāng)我們測試完成以后,為什么我們還能接觸到它們呢?我們可能刪掉一行我們實(shí)際需要的代碼,僅僅是因?yàn)槟愕凸懒薙ystem.out.println所帶來的傷害,考慮下面的代碼:

以下為引用的內(nèi)容:
public class BadCode
 
  { public static void calculationWithPrint()

    { double someValue = 0D;

        for (int i = 0; i < 10000; i++)
 
        { System.out.println(someValue = someValue + i);

         }

         public static void calculationWithOutPrint()

         { double someValue = 0D;for (int i = 0; i < 10000; i++)

         { someValue = someValue + i;

         }

         }

         public static void main(String [] n)

         { BadCode.calculationWithPrint();

           BadCode.calculationWithOutPrint();

         }

在下面的表格中,你能夠看到calculationWithOutPrint()方法的運(yùn)行花了0.001204秒。相比較而言,運(yùn)行calculationWithPrint()方法花了令人驚訝的10.52秒。

(如果你不知道怎么得到一個(gè)像這樣的表格,請參閱我的文章“Java Profiling with WSAD” Java Profiling with WSAD)

避免這樣一個(gè)CPU浪費(fèi)的最好方法是引入一個(gè)包裝器方法,就象下面這樣

以下為引用的內(nèi)容:
public class BadCode {

    public static final int DEBUG_MODE = 1;

    public static final int PRODUCTION_MODE = 2;

    public static void calculationWithPrint(int logMode){

    double someValue = 0D;

    for (int i = 0; i < 10000; i++) {

    someValue = someValue + i;

    myPrintMethod(logMode, someValue);

    }

    }

    public static void myPrintMethod(int logMode, double value) {

    if (logMode > BadCode.DEBUG_MODE) {             return; }

    System.out.println(value);

    }

    public static void main(String [] n) {

    BadCode.calculationWithPrint(BadCode.PRODUCTION_MODE);

    }

    }

在下面的圖中,你將看到,使用了StringBuffer的那個(gè)方法只花了0.01秒來執(zhí)行,而那個(gè)使用了字符串相加的方法卻花了0.08秒來運(yùn)行。選擇是顯而易見的。

 

 

分享:解析PHP編寫的25個(gè)游戲腳本
PHP是一種易于使用、易于學(xué)習(xí)且可以廣泛獲取的編程語言。它非常適合開發(fā)在各種游戲中可以使用的簡單腳本。無論是一個(gè)人玩簡單的使用紙和筆的游戲,還是同一群人玩復(fù)雜的桌面角色扮演游戲,或者任意類型的聯(lián)機(jī)游戲,本系列都提供了適合您的內(nèi)容。用 PHP 可以

來源:模板無憂//所屬分類:PHP教程/更新時(shí)間:2009-10-05
相關(guān)PHP教程