본문으로 바로가기
TaeyoungKim.dev

개발 동작·상태 영어: add/remove와 start/stop/pause 차이

CS작성 약 4분 읽기TaeyoungKim
LinkedInX

버튼에는 remove라고 쓰여 있는데 실제로는 파일이 완전히 삭제되고, 서비스 화면의 stop을 눌렀더니 다시 시작할 수 없는 일이 생기면 이름이 동작을 제대로 설명하지 못한 것이다. 개발 영어 동사는 번역보다 실행 뒤 무엇이 남는지로 구분해야 한다.

아래 그림은 대상이 남는지와 중단 뒤 재개할 수 있는지를 실행 결과로 비교한다.

add remove delete clear는 무엇을 남길까?

그림에서 볼 것은 단어의 번역보다 실행 뒤 남은 대상과 상태다. 이 두 결과를 기준으로 잡으면 아래 동사들이 덜 비슷해 보인다.

동사핵심 의미실행 뒤 확인할 것
add기존 모음에 항목 추가새 항목과 기존 항목이 함께 남음
remove모음이나 관계에서 항목 제거대상 자체는 다른 곳에 남을 수 있음
delete대상 자체를 삭제복구·보존 정책이 없다면 대상이 사라짐
clear내용이나 현재 값을 비움그릇·설정 항목·입력창은 남음

장바구니에서 상품을 remove해도 상품 데이터까지 삭제하지는 않는다. 반면 관리자에서 계정을 delete한다면 계정과 연결 데이터의 처리 범위를 먼저 정해야 한다. 입력창의 clear는 입력값을 비우지만 입력창 자체를 없애지 않는다.

start stop pause resume는 재개 가능성으로 읽는다

start는 아직 실행하지 않은 작업을 시작하고, stop은 실행을 멈춘다. pause나 suspend는 현재 진행 지점을 보존한 채 잠시 멈춘다는 뜻이 강하고, resume은 그 지점에서 재개한다.

text
READY --start--> RUNNING --pause--> PAUSED
  ^                  |                 |
  |                  +----stop-------> STOPPED
  +------------------------resume가 아니라 새 start 필요

실제 API가 상태를 보존하지 않는다면 버튼 이름만 pause로 바꾸면 안 된다. 재개 시 처음부터 다시 실행되는지, 중간 상태에서 이어지는지, 중복 작업이 생기지 않는지를 계약과 테스트로 확인해야 한다.

enable disable과 show hide는 무엇이 다를까?

enable/disable은 기능을 사용할 수 있는지, show/hide는 화면에 보이는지를 나타낸다. 숨긴 버튼이 키보드나 API로는 여전히 실행될 수 있고, 비활성화된 기능의 안내 문구는 화면에 보일 수 있다. 보안 권한을 단순히 hide로 처리하면 안 되는 이유도 여기에 있다.

available/unavailable은 자원이나 기능을 이용할 수 있는 상태, valid/invalid는 값이나 요청이 규칙을 만족하는 상태에 가깝다. 서버가 available이어도 입력이 invalid일 수 있다.

create make generate와 find search는 결과로 구분한다

create는 새 대상을 만든다는 일반적인 표현이고, generate는 규칙이나 입력으로 결과를 생성한다는 뜻이 강하다. make는 일상적인 만들기 표현이지만 코드에서는 프로젝트 관례가 더 중요하다. UUID는 generateId, 새 주문 객체는 createOrder처럼 결과가 생기는 방식을 드러낼 수 있다.

search는 조건에 맞는 대상을 찾는 과정을, find는 찾으려는 결과에 초점을 둘 때 자주 쓴다. 라이브러리마다 반환값과 실패 처리가 다르므로 이름만 보고 단정하지 말고 “없을 때 빈 목록인가, null인가, 예외인가?”를 함께 확인한다.

메서드 이름을 고를 때 무엇을 확인할까?

  1. 실행 전과 후의 상태를 한 줄로 적는다.
  2. 대상 자체가 사라지는지, 관계나 내용만 바뀌는지 구분한다.
  3. 멈춘 작업을 이어서 실행할 수 있는지 확인한다.
  4. 보이는 상태와 사용할 수 있는 상태를 나눈다.
  5. 실패했을 때 반환값·예외·부분 변경을 확인한다.

핵심 요약

remove는 모음이나 관계에서 빼는 동작, delete는 대상 자체를 없애는 동작, clear는 내용을 비우는 동작이다. pause/resume은 진행 상태 보존을 전제로 하고, stop/start는 새 실행 경계를 나타낼 수 있다. show/hide와 enable/disable도 화면 표시와 사용 가능성이라는 서로 다른 상태다. 번역 하나보다 실행 전후 상태와 실패 계약을 함께 읽어야 이름이 실제 동작과 맞는다.

작성자

TaeyoungKim

기초 개념을 구현과 검증, 실제 운영 판단까지 연결해 기록합니다.

#개발자 영어#메서드 이름#상태#API#CS

함께 읽으면 좋은 글