原文鏈接:http://blog.sina.com.cn/s/blog_4b4cf2af0100xaso.html
計算機科學中,只有硬編碼(hardcode),以及非硬編碼,有人也成爲“軟編碼”。
硬編碼和軟編碼的區別是:軟編碼可以在運行時確定,修改;而硬編碼是不能夠改變的。所有的硬編碼和軟編碼的區別都可以有這個意思擴展開。
在計算機程序或文本編輯中,硬編碼是指將可變變量用一個固定值來代替的方法。用這種方法編譯後,如果以後需要更改此變量就非常困難了。大部分程序語言裏,可以將一個固定數值定義爲一個標記,然後用這個特殊標記來取代變量名稱。當標記名稱改變時,變量名不變,這樣,當重新編譯整個程序時,所有變量都不再是固定值,這樣就更容易的實現了改變變量的目的。
儘管通過編輯器的查找替換功能也能實現整個變量名稱的替換,但也很有可能出現多換或者少換的情況,而在計算機
程序中,任何小錯誤的出現都是不可饒恕的。最好的方法是單獨爲變量名劃分空間,來實現這種變化,就如同前面說的那樣,將需要改變的變量名暫時用一個定義好 的標記名稱來代替就是一種很好的方法。通常情況下,都應該避免使用硬編碼方法。
java小例子:
int a=2,b=2;
硬編碼:if(a==2)
return false;
非硬編碼
if(a==b) return true; (就是把數值寫成常數而不是變量 )
一個簡單的版本:如求圓的面積
的問題 PI(3.14)
那麼3.14*r*r
就是硬編碼,而PI*r*r 就不是硬編碼。