본문 바로가기

분류 전체보기61

단위테스트 적응기 1편 고민의 시작 🌟🌟🌟보통 대학생 프로젝트를 진행하면, 개발 - 기획 - 디자인 - 마케팅의 영역이 명확하게 분리되어 있지 않고, 기한에 맞춰 데드라인 개발을 하는 경우가 많을거다. 그래서, 규모가 작은 프로젝트는 테스트를 작성하지 않고 진행하는 경우가 많고 이로 인해 모든 서비스가 의존하고 절차지향적 코드가 되며, 이후 유지보수가 힘들어지는 코드가 된다.또한, 모든 비즈니스 로직에서 발생하는 에러들이 서버를 돌리고 QA과정에서 발견되며, 이를 수정할 때 역시 단위별로 테스트할 수 있는 것이 아닌 유기적으로 연결되어있는 코드를 하나씩 따라가 보며 수정해야한다….필자는 이러한 문제를 서비스가 완성되고 리펙토링하면서 이것이 과연 객체지향적이라 할 수 있는가? 라는 의문이 들게 되었고, 테스트 코드를 작성.. 2024. 7. 16.
인증 방식 선택에 대한 고민과 고찰 (Session vs Token)[Feat. 레디베리] 고민의 시작대학생분들이 IT 스타트업을 창업해 서비스를 구현한다고 하면, 회원제는 필수로 구현하게 될 것이다. 하지만, 고민에 빠지게 되는 것은 큰 IT 기업은 대부분 세션 방식을 쓰는데 왜 세션을 사용하는 거지? 토큰 방식은 왜? 근데, 그럼 뭐써? 라는 고민을 한 번쯤은 해봤을 것이다. 필자도 로그인 파트를 진행하면서 세션과 토큰 중 추후를 위해 어느 방식이 좋은 것인가에 대해 고민하게 되었고, 직접 사용해본 경험을 토대로 세션과 Token의 필요성, 장,단점 그래서 레디베리는 왜 이 방식을 선택했는지 추후 문제는 없는지를 이야기 해보고자 한다. 왜 인증에서 상태가 필요해?Stateless인 HTTP 특성으로 사용자를 특정할 수 있는 어떠한 수단이 필요하다. 이를 위해, 세션 혹은 토큰을 사용해 서버.. 2024. 7. 3.
Enum Enum이란?열거형이라고도 불리는 Enum은 멤버라 불리는 명명된 값의 집합을 이루는 자료형이다.상수 데이터들의 집합이라고 생각하면된다.예로는 요일 / 계절 / 주사위 등이 있다.월, 화, 수, 목, 금, 토, 일 / 봄, 여름, 가을 , 겨울 / 1, 2, 3, 4, 5, 6이와 같이 한정된 데이터의 묶음을 열겨형 타입 Enum으로 묶는다면 구조적으로 설계가 가능하다.과거 상수 정의final 상수final 제어자를 이용해 변수를 상수화정의된 상수는 클래스 내에서 전역으로 사용될 수 있으며, 한 번 정의된 후에는 값을 변경할 수 없습니다.하지만, 숫자 상수만으로는 어떤 값이 어떤 의미를 가지는지 직관적으로 알기 어렵다. 코드만 봐서는 1이 월요일을 나타내는지 알기 어렵다. 또한 정수형 상수는 같은 정수형.. 2024. 6. 25.
[레디베리 1편] 우당탕탕 실결제 서비스 MVP 배포 이야기 8개월의 여정을 마치고 뒤늦은 후기를 올려본다.사건의 발단 열정 넘치는 한 PM분과 연락이 닿아 지금껏 동고동락한 형과 함께 팀을 꾸리게 되었다.제품을 만들기에 앞서 가장 힘들었던 부분은 팀원 모으기 였던 것 같다. 아무리 학교 커뮤니티에 올리고, 게시물을 붙혀도 아무것도 없는 팀 에는 관심 조차 주지 않았다…특히, 프론트엔드가 문제였다.지이이이이이인짜 안구해졌다…. 그래서 기존에 프론트엔드를 했던 경험을 다시금 살려 해야하나…. 고민마저 들었다….그래서 직접 발로 뛰며 발품 파는 방법으로 진행할 수 밖에 없었다.결국 지인의 지인, 지인의 지인의 지인으로 사람을 모을 수 있었고, 이때 정말 네트워킹의 중요성을 명확히 알 수 있었다. ㅠㅠ여차저차해서 개발 시작 전까지 PM 1, 디자이너 1, 백엔드 2, .. 2024. 6. 24.