개발을 자바라

조재민·2025년 4월 13일

Implicit과 Explicit

Implicit : 묵시적인

Implicit하게 코드를 짜는 것은 생략해서 간결하게 작성하는 것이다.
예시)

// Implicit
name = name;

// Implicit
int b = 1;
double a = b; // 자동 형변환 (double)이 생략됨

Explicit : 명시적인

Explicit하게 코드를 짜는 것은 모든 과정을 명확하게 드러내며 작성하는 것이다.
예시)

// Explicit
this.name = name;

// Explicit
int b = 1;
double a = (double) b;

Implicit한 코드의 장점

  • 짧고 간단합니다.
  • 개발하기 편합니다.

Implicit한 코드의 단점

  • 협업 시 내 코드가 다른 사람이 봤을 때 이해하기 어려움

Explicit한 코드의 장점

  • 코드가 수행하는 게 무엇인지 명확히 드러남.
  • 코드를 봤을 때 이해하기 쉬움.

Explicit한 코드의 단점

  • 다 명시적으로 써 놓아서 코드가 한도끝도 없이 길어질 수 있음.

요약

"Implicit은 나에게는 편하지만, 다른 사람에겐 불친절할 수 있음"
"Explicit은 길더라도, 의도를 명확히 드러내므로 협업에 적합"

언제 Implicit 언제 Explicit을 써야할까?

개인 프로젝트나 빠른 개발: Implicit도 OK저축은행
협업, 오픈소스, 유지보수 고려 시: Explicit 추천

마무리

Implicit과 Explicit은 상황에 따라 적절히 선택해야 한다.
하지만 협업을 하거나, 명확한 코드가 필요한 경우에는 Explicit이 더 안전한 선택이다.

웹서버

웹서버는 정적 파일(HTML, CSS)을 제공하는 서버로 데이터를 처리하지 않는 서버입니다.
주로 사용되는 것은 Apache, Nginx 등이 있습니다.

WAS

WAS는 웹 페이지도 만들어주기는 하지만 API 서버 역할도 수행합니다.

  • API 서버: 클라이언트에게 데이터(JSON) 를 반환
  • 대표 예: Spring MVC에서 @RestController

Rest API

API 서버 내부에 존재하면서 REST 방식으로 자원을 주고받는데 이 때 REST 방식이란 자원과 동작을 분리하여 HTTP 메서드(GET, POST 등)로 동작을 표현하는 방식이다.

예시)
동작	메서드	예시 경로
조회	GET	  	 /사실
생성	POST  	 /밥
수정	PUT	  	 /유후/1
삭제	DELETE 	 /잠만/1
-> GET /사실 → 사용자 목록 조회
POST /밥 → 새로운 사용자 추가
PUT /유후/1 → 1번 사용자 정보 수정
DELETE /잠만/1 → 1번 사용자 삭제

Restful API

Restful API는 REST의 원칙을 더 철저히 지킨 API이다.
URL, 자원 표현 방식, 응답까지 REST스럽게 구성해야 한다.

  • URL에는 동사가 들어가지 않고, 명사만 들어간다. 보통 복수형으로 사용.
  • 상황에 맞는 HTTP 상태 코드를 반환
  • JSON 형식으로 반환
  • 자원의 관계를 URL로 표현해 URL이 예측 가능하게 한다.

넌 전혀 Restful하지 않아의 예)

GET /getUser
POST /createUser 

Restful하게 고친 예)

Get /users
Post /users

REST API: REST 원칙을 조금 지키는 API
Restful API: REST 원칙을 철저히 지킨 API
→ 즉, Restful API는 '넌 정말 Restful해. 넌 최고로 Restful해'이다.

profile
Backend Developer

0개의 댓글