Flutter 개발 상자

[Flutter] remove vs delete 차이 개발자관점에서 정리하기 본문

Flutter/간단팁

[Flutter] remove vs delete 차이 개발자관점에서 정리하기

망고상자 2024. 1. 16. 16:51
728x90

기본적으로...

 

remove : '제거하다' 라는 의미, 복구가 가능함

delete : '삭제하다' 라는 의미, 복구가 불가능한 좀 더 강력한 제거

 

라고 알려져있습니다.

 

 

현실적으로는...

 

 

 

이것은 구글의 keep 이라는 메모앱입니다.

'메모삭제' 와 '실행취소'가 동시에 공존하고 있습니다.

위에서 본 단어의 개념이 전혀 맞지 않는 모습입니다.

 

이처럼 실제 최근 애플리케이션에서는 '삭제' 라는 개념이 '복구' 라는 개념과 같이 쓰이는 경우가 많습니다.

 

아무래도 사용자 친화적인 UI 관점으로 봤을때

데이터를 삭제할때마다 일일이 삭제를 할 것인지 물어보고 영구 삭제를 시키는것보단

클릭 즉시 휴지통으로 이동되고 이를 취소할 수 있는 Undo 팝업을 띄워주는것이 사용성이 좋기 때문에

삭제와 제거의 경계가 점점 허물어져 가는 추세인겁니다.

 

 

그럼 함수 이름 지을때 어떻게 해야해?

 

우리가 remove와 delete의 의미를 고민하는 이유...

당연히 함수나 변수에 이름을 붙여줄때 둘중에 뭘 해야할지 고민되기 때문입니다.

 

완전히 제거 복구가능 이런건 생각하지 마시고 일단 이것부터 생각하는게 좋습니다.

 

삭제하는 대상을 생성/수정/읽어올때
Update, Write, Read, Create 라는 단어를 사용할경우 Delete 사용
Set, Get, Put 이라는 단어를 사용할경우 Remove 사용

 

 

Update와 Delete는 대표적으로 CRUD 라는 단어로 같이 쓰는것처럼 서로 대응되는 관계입니다.

Set과 Remove 역시 서로 대응되는 관계입니다.

 

이는 약간 개발쪽에서 관행처럼 여겨지는것이기 때문에

Remove와 Delete를 사용할때 무조건 이 단어들의 본질을 따라서 가기보다는

위와같은 규칙에 맞춰서 사용하는것이 자연스럽습니다.

728x90