

기존에 구현한 해시태그 기능을 고도화하는 작업을 진행하는 시간을 가졌다. 해시태그는 # 기호 뒤에 단어가 붙는 형태인데, 게시글을 작성할 때, 이전과 다르게 해시태그 입력창을 없애고, 본문에 직접 해시태그를 추가하면, 해당 해시태그를 따로 테이블에 저장하여 관리하는 방식이다. 이를 위해, 본문 내용을 파싱하는 메서드도 새롭게 추가하였다. 이렇게 파싱하는 작업은 정규표현식을 통해서 수행하는데, 정규식은 중간중간 구글링하여 사용해본 적은 있으나, 맨땅에서 작성할 수준은 아니기에, 이번 강의을 통해 정규표현식 관련하여 추가 학습을 해야겠다는 생각을 하였다. 아무래도 사용자의 자유도를 높여줄수록 해시태그를 파싱하는 부분을 섬세하게 구현하여야, 정상적인 단어만 해시태그로 분류될 수 있을 것이다. 조건문을 통해 파싱하는 것이 아닌, 정규표현식을 통해 파싱함으로써, 정말 간결하고 명료한 소스코드로 해시태그를 분류할 수 있었다. 정규표현식을 틈틈이 학습하여, 실무에서 필요할 때, 효율적으로 업무를 처리해야겠다는 생각이 강하게 들었다. 이렇게 파싱을 통해 얻어온 해시태그는 별도의 해시태그 테이블에 저장되는 로직을 탐으로써, 도메인으로 관리하게 되었다. 이 부분 때문에, 기존의 게시글 작성, 수정, 삭제 로직에 변화가 생겼는데, 효율성은 크게 고려하지 않고, 기능을 구현하는 것에 초점을 맞추어 소스코드를 작성하였다. 게시글을 삭제할 때, 이제 어느 게시글에서도 더이상 사용되지 않는 해시태그라면, 해당 해시태그는 테이블에서 삭제되고, 하나 이상의 게시글에서 여전히 사용되고 있는 해시태그라면, 그대로 보존하는 방식이다. 이러한 로직을 기준으로 소스코드를 구현함으로써, 기존 화면에서 해시태그를 다루는 방식을 유지하면서, 뷰와 컨트롤러를 모두 완성할 수 있었다. 또한, 이러한 구현 과정 속에서 테스트 코드의 중요성을 다시금 느끼게 되었는데, 온갖 방식으로 파싱된 해시태그를 파라미터로 만들어 테스트 메서드에 넘겨주는 방식으로 테스트를 진행함으로써 해시태그 파싱의 정확성을 크게 높일 수 있게 되었다.
패스트캠퍼스 [직장인 실무교육]
프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.
fastcampus.co.kr
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.