hardcode,硬編碼

去抖音面試被問到硬編碼與軟編碼的區別,如何選取硬編與軟編?
1、計算機科學中,只有硬編碼(hardcode),以及非硬編碼,有人也成為“軟編碼” 。2、硬編碼和軟編碼的區別是:軟編碼可以在運行時確定,修改;而硬編碼是不能夠改變的 。所有的硬編碼和軟編碼的區別都可以有這個意思擴展開 。3、 在計算機程序或文本編輯中,硬編碼是指將可變變量用一個固定值來代替的方法 。
用這種方法編譯后,如果以后需要更改此變量就非常困難了 。大部分程序語言里,可以將一個固定數值定義為一個標記,然后用這個特殊標記來取代變量名稱 。當標記名稱改變時,變量名不變,這樣,當重新編譯整個程序時,所有變量都不再是固定值,這樣就更容易的實現了改變變量的目的 。盡管通過編輯器的查找替換功能也能實現整個變量名稱的替換,但也很有可能出現多換或者少換的情況,而在計算機 程序中,任何小錯誤的出現都是不可饒恕的 。
【hardcode,硬編碼】最好的方法是單獨為變量名劃分空間,來實現這種變化,就如同前面說的那樣,將需要改變的變量名暫時用一個定義好 的標記名稱來代替就是一種很好的方法 。通常情況下,都應該避免使用硬編碼方法 。4、 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 就不是硬編碼 。

    推薦閱讀