-
Notifications
You must be signed in to change notification settings - Fork 6
π οΈ BE μ½λ 컨벀μ
-
import
-
μμ :
Code Style - Java - Import Layout
μμ Layout static imports separately μ μ©import all other imports import javax.* import java.* <blank line> import static all other imports
-
wildcard :
Code Style - Java - Classcount to use β¦
λ°Names count to use β¦
99λ‘ μ€μ
-
-
μ€νμΌ νμΌ
-
Code Style - Java - Schema
μμ WootecoStyle μ μ©νμ¬ μΌκ΄μ μΌλ‘ μ½λ μ€νμΌμ λ§μΆλ€.
-
-
κ°ν
- class 첫 νλλ ν μ€ κ°ν ν μμ±νλ€.
- class λ§μ§λ§ μ€κ΄νΈλ method λ§μ§λ§ μ€κ΄νΈ ν μ€ μλ μμΉνλλ‘ νλ€.
- λ©μλ λ΄μ κ°νμ λ Όλ¦¬μ λ¨μλ‘ μ½μ νλ€.
-
λ©μλ μμ
-
public-private μ λ ¬ μμ
- public λ©μλλ΄μ private λ©μλλ public λ©μλμ κ°κΉμ΄ μλ μμΉμν¨λ€.
- privateμ΄ κ³μ μ¬μ©λ κ²½μ°, κ°μ₯ μ²μ μ¬μ©ν public λ©μλ μλμ μμΉνλ€.
-
λ©μλ μ λ ¬ μμ
- 컨νΈλ‘€λ¬μ μλΉμ€μμ CRUD μμλλ‘ μμ±
- νμ ν λ μ²μ ν΄λΉ μ½λλ₯Ό 보λ μ¬λμ΄ μμ°¨μ μΌλ‘ μ½λ μλ―Έ νμ νκΈ°κ° λ μ©μ΄νλ€.
-
-
μ΄λ Έν μ΄μ
- μ΄λ Έν μ΄μ μ λ ¬ μμλ μ€μλκ° λμ κ²λΆν° ν΄λμ€ κ°κΉμ΄ λλ€.
-
final
- νλμλ§ μ¬μ©νλ€.
- λͺ¨λ κ³³μ finalμ μ¬μ©νλλ° μμ©λλ 리μμ€κ° λ ν¬λ€. νΉμ μν©μμλ§ λͺ μνλ κ²μ΄ λ ν¨μ¨μ μ΄κ³ μλ―Έ μ λ¬μ΄ κ°λ₯νλ€.
-
equals & toString & hashcode
- domain λ° entityμμ λͺ¨λ μ¬μ μνλ€.
- equals μ idλ§ λΉκ΅νλ€.
-
service layer λ°ν νμ
- DTOλ₯Ό νλΌλ―Έν°λ‘ λ°κ³ , DTOλ₯Ό λ°ννλ€.
-
repository element μμ λ μ²λ¦¬
- repositoryμμ get ν¨μλ₯Ό μΆκ°λ‘ μμ±ν΄ findμ emptyμΌ κ²½μ° μμΈλ₯Ό λ°μμν¨λ€.
-
responseEntity
- μν μ½λ μ½κ² μ€μ νκΈ° μν΄ ResponseEntityλ₯Ό μ¬μ©νλ€.
-
DTO static λ©μλλ₯Ό νμ©ν λ
- from : νλΌλ―Έν°μ κ°μκ° 1κ°μΌ κ²½μ° μ¬μ©νλ€.
- of : νλΌλ―Έν°μ κ°μκ° 2κ° μ΄μμΌ κ²½μ° μ¬μ©νλ€.
- toEnity, toDamain μ¬μ©νλ€.
-
errorμ κ²½μ°, handlerλ₯Ό μ¬μ©νμ¬ μ²λ¦¬νλ€.
-
μ€νλ§ μ¨ν리ν°μ κ²½μ°, μ¬μ©νμ§ μκ³ λ°°μ΄ λ΄μ©λ§μΌλ‘ ꡬννλ€.
-
둬볡 λ± getter, setter μλ μμ± μ΄λ Έν μ΄μ μ μ¬μ©νμ§ μλλ€.
-
λ³κ²½ κ°μ§ κΈ°λ₯ νμ©
-
ErrorHandlerλ‘ λ€μ΄μ€λ κ²λ€μ λ‘κ·Έλ₯Ό λ¨κΈ°κ³ , μΆν νμν κ²λ€μ λν΄μλ κ°μΈμ νλ¨μΌλ‘ λ‘κ·Έλ₯Ό λ¨κΈ΄λ€.
-
DTOμμμ κ²μ¦μ ννμ κ΄λ ¨λ κ²μ¦λ§ μ²λ¦¬νλ€.
-
idμ κ²½μ°, Longμ΄ μλ long νμ μ μ¬μ©νλ€.
-
OSIV μ€μ λκ³ μμνλ€.
-
test λͺ
- DisplayName: [κΈ°λ₯] μ±κ³΅ : ~ κ²½μ° (μλ΅ κ°λ₯)
- ex) νμκ°μ μ±κ³΅, νμκ°μ μ€ν¨: μ΄λ©μΌ μ€λ³΅μΈ κ²½μ°
- (κΈμ ) λ©μλλͺ
+ μν© μμ κ²½μ° _μν©
- ex) login / save
- (λΆμ ) λ©μλλͺ
_μ€ν¨μ΄μ _exception
- ex) login_passwordMismatch_exception / save_duplicatedName_exception
- DisplayName: [κΈ°λ₯] μ±κ³΅ : ~ κ²½μ° (μλ΅ κ°λ₯)
-
TDDμ κ²½μ°, ν¬λ§νλ μΈμλ§ μ§ννλλ‘ νλ€
-
test λ°©μ
-
domain
- μ λ ν μ€νΈ μ§ννλ€.
-
service
- fixture λ§λ€μ΄μ μ¬μ©νλ€.
- ν μ€νΈμ© DBλ₯Ό μ¬μ©νλ€.
-
controller
- fixture λ§λ€μ΄μ μ¬μ©νλ€.
- E2Eλ‘ μ§ννλ€.
- λ€μ΄λλ―Ή ν μ€νΈλ₯Ό μ νμ μΌλ‘ λμ νλ€.
-
repository
- 쿼리문μ λ°λ‘ μμ±νλ κ²½μ°μλ§ ν μ€νΈμ© DBλ‘ μμ±νλ€.
-
-
controller, service λ©μλ μ΄λ¦
-
controller
- create, read, update, delete
-
service
- create, read, update, delete λμΌνκ² μμ±νκ³ κΈ°λ₯μ λ°λΌ λͺ λͺ νλ€.
-
-
ν¨ν€μ§ μ΄λ¦
- domain
- repository
- service
- controller
- μΌμ£ΌμΌ λμ νμ΄λ₯Ό μ§νν΄ λ³Έ ν, μΆν μ§μ μ¬λΆλ₯Ό κ²°μ νλ€.
- λ¬Έμνλ λ Έμ κ³Ό swagger UIλ‘ μ§ννλ€.
- ν¨ν€μ§
- κ³μΈ΅ν VS λλ©μΈν
- κ³μΈ΅νμΌλ‘ νμ λμ ν¨ν€μ§ μμ ν΄λμ€κ° μμ΄λ©° κ°λ μ±μ΄ λ¨μ΄μ§ κ²½νμ΄ μλ€.
- λλ©μΈμΌλ‘ λλ κ²½μ° κ° κΈ°λ₯μ λ°λΌ λλμ΄ μμ΄μ μ²μλΆν° νμ νκΈ° μ©μ΄νλ€.
- κ³μΈ΅ν VS λλ©μΈν
- π μλΉμ€ μκ°
- π¨βπ©βπ§βπ¦ λ°©λ μ μ£Όλ―Ό μκ°
- ποΈ 608λ κ·μΉ
- π₯ κΉ μ»¨λ²€μ
- π€ μ¬μ©μ μλ리μ€
- π κΈ°λ₯ 리μ€νΈ