개발자

디자인 패턴이 필요할 때는 언제인가요?

2023년 04월 11일조회 561

안녕하세요. 1년 조금 넘게 프론트엔드 직무로 개발 중인 개발자입니다. 현재 회사에서 어드민 페이지를 개발하고 있습니다. 저 혼자 프론트를 맡아서 개발하다보니, 시행착오가 정말 많습니다. 특히 이번 프로젝트는 사용자와의 상호작용이 많아서 코드를 갈아엎은 일이 꽤 있었습니다..ㅎㅎ 그래서 제 고민은요! 디자인 패턴이 필요한 때인가 싶습니다. 저는 기존에 만들어진 것을 유지보수하거나, 기능을 붙이기 보다는 바닥부터 새로 만드는 프로젝트를 맡아서 개발을 했어요. 그럴 때마다 드는 생각이 자꾸 첫 단추를 잘못 끼는 느낌이 듭니다. 경험이 부족해서 일까요? 기간 내에 개발을 완료하고 싶은 욕심이 있습니다. 처음엔 state를 2~3개 정도 내려주는건 괜찮다 생각해서 상태관리 라이브러리 없이 최상단 컴포넌트에서 관리하고, 컴포넌트를 객체로 관리해서 사용자가 클릭할 때마다 스위칭 되도록 만들었어요. 그런데 이런 것들이 계속해서 추가되고 관련된 상태와 상호작용들이 많아지다보니, 결국 상태관리 라이브러리를 사용하게 되었어요. 이렇게 바뀌다보니 시간도 오래걸리는 느낌이 들고, 더 나아가 좋은 구조에 대해서도 고민이 되고..그걸 위한 게 디자인 패턴인가? 생각이 들었습니다. 그래도 나름 시행착오를 많이 겪어서 전보다는 문제 해결이 빨라진 느낌이 있지만, 더 성장하기 위해서 키워드를 얻고 그 방향으로 나아가고 싶어요. 뭔가 제가 모르는 것을 모르는 듯한 느낌이 듭니다. 따라서 프로젝트를 시작할 때 어떤 것들을 먼저 고민해야할지, 그리고 디자인 패턴이 필요하다고 느꼈을 때는 언제인지와 같은 전략, 경험이나 조언을 얻고 싶습니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 2

진성주님의 프로필 사진

디자인 패턴 자체는 알게 모르게 사용하고 있으셨을겁니다. https://careerly.co.kr/comments/81510?utm_campaign=self-share 제가 공유한 리액트 패턴들을 보시면 익숙한게 많으실겁니다. 저는 시간되실때 한번쯤 다 보시길 추천드립니다. 로직에 대한 부분은 사실 디자인 패턴보다는 리팩토링 2판 자바스크립트, 클린코드 책을 더 추천드립니다.

김병연(Vintz)님의 프로필 사진

김병연(Vintz)

작성자

프론트엔드 개발자2023년 04월 11일

공유 감사합니다. 틈틈이 볼게요! 사실 클린코드 책은 사놓고 안읽고 있었는데, 이번 기회에 읽어보겠습니다. :)

커리어리 AI 봇님의 프로필 사진

디자인 패턴은 소프트웨어 설계에서 반복적으로 발생하는 문제들에 대한 일반적인 해결책이며, 프로젝트의 구조와 코드 재사용성을 개선할 수 있습니다. 디자인 패턴은 다양한 상황에서 사용할 수 있지만, 특히 다음과 같은 경우에 고려해볼 만합니다: 1. 코드의 중복성이 높아질 때 2. 유지보수가 어려운 코드 구조를 개선할 필요가 있을 때 3. 새로운 기능을 추가하거나 변경이 쉽게 만들어야 할 때 4. 팀원들과의 협업이나 코드 가독성이 중요할 때 5. 애플리케이션의 성능이나 안정성을 높이고자 할 때 프로젝트를 시작할 때 고려해야 할 몇 가지 사항은 다음과 같습니다: 1. 프로젝트의 요구사항을 명확하게 정의하고 분석합니다. 이를 통해 프로젝트의 복잡성과 어떤 디자인 패턴이 적합한지를 이해할 수 있습니다. 2. 기존에 사용된 디자인 패턴이나 라이브러리를 조사하고, 그 중 어떤 것이 프로젝트에 적합한지 평가합니다. 이를 통해 기술적 부채를 줄이고, 효율적인 개발을 추구할 수 있습니다. 3. 코드 구조와 관련된 몇 가지 기본 원칙을 숙지합니다. 예를 들어, SOLID 원칙, DRY 원칙, KISS 원칙 등이 있습니다. 이러한 원칙들은 디자인 패턴을 이해하고 적용하는 데 도움이 됩니다. 4. 코드 리뷰와 같은 개발 프로세스를 활용하여, 팀원들과 함께 코드 품질을 높일 수 있습니다. 디자인 패턴에 대해 학습하고 싶다면, "디자인 패턴"이라는 책(Gang of Four, GoF)을 참고하세요. 이 책은 많은 디자인 패턴의 기본 개념과 사용 예제를 제공합니다. 또한 다양한 온라인 자료와 커뮤니티에서도 많은 정보와 사례를 찾아볼 수 있습니다. 핵심은 시행착오를 통해 경험을 쌓고, 다양한 디자인 패턴과 원칙을 익히는 것입니다. 이를 통해 더 나은 구조와 코드 품질을 위한 방향성을 찾아갈 수 있습니다. 여러분의 프로젝트에 디자인 패턴을 적용하는 것은 어려울 수 있지만, 경험을 쌓으면서 적절한 패턴을 선택하고 사용하는 능력을 기를 수 있습니다. ----- ✅ Chat GPT의 답변을 평가해 주세요! 틀린 내용은 없는지, 답변이 도움이 되었는지 댓글로 작성해 주세요.

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!