Programming

[언그래머] 서른여덟번째 아티클_유효성 검사의 책임은 누구일까

송코딩 songcoding 2023. 10. 31. 08:00

안녕하세요,

김송아입니다.

 

 

우리는 어떠한 일을 할 때, 책임 공방이라는 상황에 자주 놓이곤 하죠!

특히 정말 중요한 일이라면, 시작하기 전에 그 책임을 딱 나누고 시작하는 것이 이상적이기도 합니다.

 

하지만 이게 현실 ^_^ @아는 형님 JTBC, 직썰

 

오늘은 지난 아티클에 이어서, 유효성 검사의 책임은 누가 져야 할지 생각해볼까 합니다👀

(지난 아티클에서는 유효성 검사가 무엇인지 얘기했었고, 기획할 때 참고할만한 영상을 소개해드렸었죠!)

 

[언그래머] 서른일곱번째 아티클_유효성 검사가 무엇일까

안녕하세요, 여러분! 송아지할때 송아 김송아입니다. 제가 저를 소개할 때 늘 하는 말이 있어요. "송아지할때 송아 김송아"입니다. 라고 제 이름을 표현하곤 합니다. 왜 이렇게 표현하냐구요? 김

songacoding.tistory.com

 

 

여러분들은 유효성 검사를
누군가 책임져야 한다면 누가 해야한다고 생각하시나요?

 

요즘은 하나의 서비스가 가지고 있는 기능이 많다보니,

당연히 사용자의 입력이 이루어지는 란도 많을 수 밖에 없겠죠?

 

 

 

그렇다보니 일단 책임에 대해 논하기 전에,

어디부터 어디까지 유효성 검사의 범위에 포함된다고 해야할지 고민부터 해야할 것 같습니다.

아래 3가지 상황 중 여러분들은 몇가지가 유효성 검사에 포함된다고 생각하시나요?

 

 

 

✔️ 첫번째 상황. 아래와 같이 아이디를 입력할 때

      👉🏻 null인지 아닌지의 상태로 유효성 검사가 필요할 것 같습니다.

 

이럴 때 우리는 '아이디를 입력해주세요.' 라는 문구를 백엔드로 넘기지 않고도 바로 메세지로 뿌려줄 수 있겠죠?

 

 

✔️ 두번째 상황. 아래와 같이 이메일 주소를 입력할 때

      👉🏻 제대로된 이메일 형식인지 유효성 검사가 필요할 것 같습니다.

 

이럴 때 우리는 '메일 주소를 제대로 입력하세요.' 라는 문구를 백엔드로 넘기지 않고도 바로 메세지로 뿌려줄 수 있겠죠?

 

 

✔️ 세번째 상황. 아래와 같이 비밀번호를 입력할 때,

 

      👉🏻 맞는 비밀번호인지 체크해야할 것 같습니다.

 

이럴 때 우리는

1️⃣ 비밀번호를 화면에서 받아서 백엔드로 넘기고

2️⃣ 비밀번호가 맞는지 백엔드에서 체크를 하고

3️⃣ 틀렸다면 프론트엔드에서 '비밀번호가 일치하지 않는다'는 메세지를 뿌려줄 수 있겠죠?

 

 

 

지난 아티클에서도 확인했듯이, 유효성 검사라는 단어 자체의 범위가 애매하다보니

이런 단순한 상황들 뿐 아니라 다양한 상황들에서 우리는 유효성 검사로 볼 것인지 말 것인지에 대한 결정부터 해야하는 상황인 것 같습니다.

 

-

 

이러한 상황들을 좀 더 구체적으로 설명할 수만 있다면,

이 책임을 화면에서만 가져갈지, 로직에서만 체크할지 아니면 둘 다 책임을 질지에 대한 명확한(? 가능한가) 논의가 가능하지 않을까 싶습니다.

 

 

즉, 우리 개발자들이 개발을 명확히 하기 위해선,

구체적으로 서비스를 기획하고 설계하는 것부터 시작 아닐까 싶습니다.

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ @구글링 '구체적 짤'

 

 

오늘 10월의 마지막 날이더라구요!

다들 어떤 10월을 보내셨나 모르겠습니다.

 

10월 마무리 잘 하시구, 

새로운 11월에 만나요 😊

 

 

감사합니다.

김송아 드림

 

👆🏻클릭이 될까?