μ’μ μ΄λ¦μ μ§λ κ²μ λλ‘λ μ΄λ ΅μ§λ§ λ Έλ ₯ν λ§ν κ°μΉκ° μμ΅λλ€.
λ§μ ν΅ν©κ°λ°νκ²½(IDE) μμ Refactoring λ©λ΄λ₯Ό μ 곡νκ³ μλλ°,
κ°μ₯ 첫λ²μ§Έ λ©λ΄λ "Rename" μΈλ°,
μ΄ λ©λ΄λ ν΄λΉ μλ³μλ₯Ό νλ²μ λͺ¨λλ€ λ³κ²½ν©λλ€.
μ½λ©μ νλ€ λ³΄λ©΄ μ²μμ μ§μλ μ΄λ¦μ λ³κ²½ν΄μΌν νμκ° μλλ°,
μ΄λ μ¬μ©νλΌλ κ²μ
λλ€.
μ΄λ¦ μ§λ μ€νμΌμ ν¬κ² 4κ°μ§ μ λλ‘ λλ μ μμ΅λλ€.
| Style | Example |
|---|---|
| C style | product_list, display_products |
| All UPPER case | PRODUCT_LIST |
| Lower camel case | productList, displayProducts |
| Upper camel case | ProductList, DisplayProducts |
μΈμ΄λ λΌμ΄λΈλ¬λ¦¬ μ¬μ©μ λ°λΌ μ€νμΌ κ°μ΄λκ° μμΌλ μ΄μ λ§κ² μ¬μ©νλ©΄ λμ§λ§,
class, type μ΄λ¦μ Upper camel case
method, function μ΄λ¦μ Lower camel case λ₯Ό μ£Όλ‘ μλλ€.
μμμ κ²½μ° λͺ¨λ λλ¬Έμλ‘ μ°κ³ _ λ₯Ό μ¬μ©νλ κ²μ΄ κ΄λ‘μ
λλ€.
iCount, sName λ±μ κ΄λ‘λ μ’μ§ μμ΅λλ€.
μλνλ©΄ νμ
μ μ½κ² λ°λ μ μλλ°
κ·Έλ¬ν κ²½μ° λ³μ μ΄λ¦κ³Ό νμ
μ΄ λ§μ§ μλ κ²½μ°κ° λ°μνκΈ° λλ¬Έμ
λλ€.
κΈ°λ³Έ μμΉ
μλ―Έ μμΉ
κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°μ΄ μΌλ°ν λλ©΄μ
S.V(O) λλ S.V(C) μ κ°μ νμμ μ¬μ©νκ² λ©λλ€.
List<People> peoples = new ArrayList<People>();
peoples.add(new People()); // ---(1)
peoples.add(1, new People()) // ---(2)
if ( peoples.contains(theguy)) {
...
}
add κ΄λ ¨ν΄μλ λκ°μ§ ννκ° μμ΅λλ€.
첫λ²μ§Έ κ²½μ° μ΄λ¦μ μ’ λͺ»λ§λ
νλ° νμμ κ·Έλμ λ SVO κ°μΆκ³ μμ΅λλ€.
λλ²μ§Έ ννλ μ΄λ¦λ νμλ μ’ μ΄μν©λλ€.
3λ²μ§ΈλΌλ©΄, insert λλ insertAt μ΄λΌλ λ¨μ΄λ₯Ό μ°λ κ²μ΄ μ’μ§ μμκΉ μκ°ν©λλ€.
λλ²μ§Έ μΈμλ‘ μμ λΏλ§ μλλΌ λ°°μ΄ννκ° μ€λλΌλ μ΄μνμ§ μμ κ² κ°μ΅λλ€.
peoples.insertAt(n, new People())
peoples.insertAt(n, peopleList)
λ§μ§λ§μ μΆκ°νλ κ²½μ°,
νμ΄μ μμλ append μλ°μ€ν¬λ¦½νΈλ push λ₯Ό μ¬μ©ν©λλ€.
μ€κ°μ μΆκ°νλ κ²½μ°,
νμ΄μ μμλ insert ν¨μλ₯Ό μ 곡νκ³ μμΌλ©°, μλ°μ€ν¬λ¦½νΈλ splice λΌλ ν¨μλ₯Ό μ 곡ν©λλ€.
splice λ λͺλ²μ§Έμμ λͺκ°λ₯Ό λΉΌκ³ , λͺκ°λ₯Ό μΆκ°ν΄λΌλΌλ μ¬λ°λ ν¨μμ
λλ€λ§,
μ§κ΄μ μΈ λ©΄μμλ μμ’μ΅λλ€.
κ·Έλ¦¬κ³ splice λ μ΅μνμ§ μμ λ¨μ΄λΌ μλ―Έλ₯Ό μ κΉλ¨Ήμ΅λλ€.
Array.prototype.insert = function(index, item) {
this.splice(index, 0, item)
}
μ’ λ μ΄ν΄νκΈ° μ½μ§μ?
μ μλ§ λ΄ μ΄μΌκΈ°λ₯Ό λ ν΄λ³΄λ©΄, (μλ° μ μ λ€μ΄ μ«μ΄ν μ΄μΌκΈ°μ λλ€.)
μλ°μμ List λ peoples[i] λΆκ°, peoples.get(i) λ‘ μ¨μΌ ν©λλ€.
리μ€νΈλ₯Ό κΈ°λ³ΈνμΌλ‘ κ°μ§ μμ μΈμ΄μ λΆνΈν¨μ΄λ©°, μ§κ΄μ μ΄μ§ μμ΅λλ€.
λκ΅°λ€λ μ°μ°μ μ€λ²λ‘λ©λ μ§μνμ§ μλκ΅°μ.
μΈμ΄ κ° μΌκ΄μ±μ΄ λΆμ‘±νλ°, μλ°μ μ΅μν΄μ§λ©΄ λ€λ₯Έ μΈμ΄λ₯Ό μ½κ² μ΅μν΄μ§μ§ μμ΅λλ€.
(μ¬μ€ λ무λ μ½κ² 보μ¬μ μ°μ΅κ² 보μΌλ°μ§λ λͺ¨λ¦
λλ€)
μ‘°κΈ λ λμκ° λ³ΌκΉμ?
μλ°μμ Integer λ 2^31-1 κΉμ§ μλ₯Ό νννκ³ ,
Long μ 2^63-1 κΉμ§ μλ₯Ό ννν©λλ€.
λλ¬Έμμ
λλ€. int, long μ΄ μλλΌ μ΄λ€μ wrapper ν΄λμ€μ
λλ€.
λ§μΌ int, long μ μ°μ§ μκ³ wrapper λ₯Ό μ°λ©΄ μλκ° λ§μ΄ λ¨μ΄μ§λλ€.
Python μμ μ μνμ limit μ΄ μμ΅λλ€. μ«μ λ²μ λλ¬Έμ κ³ λ―Όν νμκ° μμ΅λλ€.
μλ°μμλ BigInteger κ° μμ§λ§ λ§μ΄ λΆνΈν©λλ€.
μλλ‘μ΄λ νλ‘κ·Έλλ°μμ LayoutInflater λ₯Ό κ°μ Έμ€λ ν¨μμ λλ€.
LayoutInflater inflater = LayoutInflater.from(getContext());
from μ΄λΌλ ν¨μκ° μ°μ
λλ€. λμ¬λ μλμ§λ§ μμ¬μν΅, μλννμλ
κ°μ₯ μ ν©ν λ¨μ΄λ₯Ό μ΄ κ² κ°μ΅λλ€.
λ§μ§λ§μμ from μ λμμ€κ° λ§€μ° μ’μ΅λλ€.
λ± λ€μ΄λ§λ λ¨μ΄μμ νλ¦Ό μμ΅λλ€.
μ΄λ€ κ°μ²΄κ° λΉ κ°μ²΄μΈμ§ νμΈνλ ν¨μκ° μμ λ μ΄λ¦μ΄ μ΄λ ν κΉμ?
λλ²μ§Έκ° μ’μ 보μ΄λ€μ. μμ΄λ‘ μ½μ΄λ Object is Empty λ± λ§λ€μ.
μ΄ ν¨μμ λ°νκ°μ μ΄λ¨κΉμ? boolean νμ
λλ€.
μΈλ²μ§Έ κ²½μ°μ μ΄λ¦μ΄ μλ κ²½μ°, μ΄λ° μκ°μ΄ λ€ κ²λλ€.
"object μ¬, λΉμ΄ μνκ° λμ΄λΌ"
λ°νκ°μ μκ±°λ boolean(μ±κ³΅, μ€ν¨)
첫λ²μ§Έλ λΉμ·νκ² λͺ
λ Ήνλ λμμ€λ₯Ό νκΈ°κΈ°λ νλ€μ.
λλ²μ§Έλ‘ μ΄λ€ νμΌμ΄ μ‘΄μ¬νλμ§ νμΈνλ ν¨μμ μ΄λ¦μ?
μκΉλ νμ©μ¬λκΉ is κ° νμνμ§λ§, exist λ λμ¬μ
λλ€.
μ΄ κ²½μ° λμ¬μ 3μΈμΉ λ¨μνμ μ¬μ©ν©λλ€.
λλΆλΆμ μ°Έ/κ±°μ§ μ λ°ννλ ν¨μλ 3μΈμΉ νμ¬ λ¨μνμ μ¬μ©ν©λλ€.
isEmpty λ λΉμ·ν λ§₯λ½μ
λλ€.
3μΈμΉ λ¨μνμ΄ μλ λμ¬ μνμ μ΄λ€λ©΄, λͺ
λ Ήμ λ΄λ¦¬λ λμμ€μ
λλ€.
μΈλ²μ§Έλ‘ μ΄λ€ 리μ€νΈμ κ°μ²΄κ° μ‘΄μ¬νλμ§ νμΈνλ ν¨μμ μ΄λ¦μ?
μ λκ° λ κ²κ°μλ°, have λ λ무λ μλ―Έκ° λ§μ΅λλ€.
νμ§λ§ contains λ λ± νλμ μλ―Έλ₯Ό κ°μ§κ³ μμΌλ―λ‘ contains λ₯Ό μλλ€.