해결된 질문
작성
·
397
0
안녕하세요 드디어 강의 완강했습니다!!^^ 뒷부분 부터는 퀴즈가 없어서 비교적 빨리 수강했네요.
강의 후에 해봐야 할 것들을 생각해보았는데 조언을 듣고 싶어서 질문남깁니다.
일단은 지금 것 했던 "나만의 ~~프로젝트"를 리팩토링(성능/안정성/가독성/로직개선)하고 api기능추가, 테스트코드 작성, DB쿼리성능개선등을 해보고자합니다.
전부 다 하려면 시간이 오래걸리겠지만(ㅠ) 마지막에 취업준비강의에서 말씀하신 3년차개발자로 생각되기 위해선 해야할게 많은 것 같습니다..ㅎㅎ(3년차 같은 신입을 뽑는다니!!ㅠㅠ)
그래서 일단 목표는 실제 현업에서 하는 것처럼 코드를 작성해보고자 하는데요, 막상 하려니 좀 막막하네요.
질문은:
지금 제 생각은 현업에서 쓰는 좋은 코드를 보고 어떤 식으로 설계했는지 테스트코드는 어떻게 작성했는지 등등 참고하고 분석하고 공부해서 제 나름대로 프로젝트를 리팩토링해보고 싶은 생각입니다. 그게 가장 실력도 늘 것 같구요. 그래서 혹시 관련 코드나 책이나 자료등이 있으면 추천해주시면 감사하겠습니다.
아! 그리고 백엔드 심화강의에서 마이크로큐와 await의 관계를 굉장히 감명깊게 들었습니다. 비동기과정이 정말 헷갈렸는데 속이 시원해졌습니다.ㅎㅎ 혹시 이런 자바스크립트 원리나 cs관련내용도 추천해주실만한 책이나 자료 있으면 알려주시면 감사하겠습니다.
일단 방향은 이렇게 잡았는데 조언해주시면 참고하겠습니다!!
끝으로 제가 지금것 들었던 개발강의중 가장 자세하고 친절하고 이해도 잘되고 재밌는 강의였습니다!!
퀴즈 할때나 버그나 에러날때 힘들긴 했지만, 그래도 개발이 점점 더 재밌어지고 더 잘하고 싶네요. 궁금한 것있으면 또 질문해도 되겠죠?^^;;; 감사합니다!!
답변 2
3
안녕하세요! nya님!
끝까지 완강에 성공하신 것을 축하드립니다!^^
무엇이 되었든 마무리를 잘 하는 경험이 정말 멋진 일인 것 같아요!
그리고 물론! 앞으로도 계속 질문하셔도 됩니다!^^
먼저 질문을 보면, 방향을 아주 잘 선택하신 것 같아요!리팩토링(성능/안정성/가독성/로직개선)하고 api기능추가, 테스트코드 작성, DB쿼리성능개선등
이러한 내용을 다루기 위해서 가장 좋은 방법은, 해당 백엔드코스 커리큘럼처럼 모든 것을 한 번에 하기 보다는, 파트를 정해서 하나씩 깊게 파시는게 좋을 것 같아요! 따라서, 책은 전체를 다루는 기초 책보다는 영역별로 한 권씩 잡아서 깊게 파시는게 좋을 것 같아요!(강의도 영역별로 하나만 집중하여 다루는 강의를 들으면 좋아요!)
이렇게되면, 갑자기 해야할 양이 산더미처럼 많아지게 되는데, 우선순위는 객체지향(4대 특징, 5대 원칙 SOLID)를 먼저 공부하시면서 내 포트폴리오에 어떻게 적용할 수 있을지, 왜 유지보수가 좋아지는지를 고민해 보시면 좋을 것 같아요! 여기서 관점은 내가만든 코드를 다른사람이 갖다쓰기 좋은지, 변경이 쉬운지를 고민하면서 리팩토링 해보세요! 해당 주제와 관련한 유명한 블로그들과 해당 블로그에 나오는 코드를 많이 정독하시면 좋을 것 같아요!
다음으로는, cs에 관하여는 여러가지 알아야할 것이 많이 있어요! 우선순위를 몇 개만 골라 드리면, http에 대한 깊은 이해, 싱글스레드 기반의 JS가 실제 상황에서 문제되는 예시들과 극복 방법, 메모리누수와 GC 등을 주제로 하나씩 파시는게 좋을 것 같아요! 방법은 위에서 말씀드린 방법과 동일합니다!
마지막으로 하나만 조언을 드리면, 해당 포트폴리오를 통해 실제 유저를 받아볼 수 있다면 정말 좋은 경험과 도움이 될 것 같아요! 시야가 상당히 넓어지게 됩니다!^^ (사실 API 몇 개 추가하는 것보다 훨씬 중요해요! )
0
안녕하세요, 인프런 AI 인턴이에요. 개인 프로젝트 리팩토링과 개선에 관심이 있으시다니 멋지네요!
먼저, 실제 현업에서 좋은 코드를 참고하고 학습하기 위해서는 여러 오픈 소스 프로젝트를 살펴볼 수 있습니다. GitHub와 같은 개발자 커뮤니티에서 많은 오픈 소스 프로젝트를 찾아볼 수 있고, 특히 프로젝트의 스타 수와 커밋 이력을 확인하면 신뢰할 만한 프로젝트를 선택할 수 있습니다.
또한, 좋은 코드의 설계와 테스트 코드 작성 방법을 배울 수 있는 책과 자료도 추천드릴 수 있어요. Clean Code: A Handbook of Agile Software Craftsmanship(클린 코드)와 Refactoring: Improving the Design of Existing Code(리팩토링)은 좋은 코드 작성과 개선에 대한 가이드라인으로 유명한 책들이에요. 또한, TDD (Test Driven Development)와 관련된 책이나 자료도 찾아보시면 좋을 것 같아요.
백엔드 심화강의에서 마이크로큐와 await의 관계에 대해서 감명을 받으셨다고 하셨는데, 이 부분에 대해서는 조금 더 구체적인 내용이 필요할 것 같아요. 마이크로큐는 Promise를 반환하는 비동기 함수를 처리하는 데 사용되는 도구인데, await는 비동기 함수를 동기적으로 호출하여 처리하기 위해 사용되는 키워드입니다. 이 두 가지 요소를 어떻게 활용할 수 있는지에 대해서는 좀 더 자세한 내용을 알려주시면 더욱 정확한 도움을 드릴 수 있을 것 같아요.
더 필요한 정보나 질문이 있으면 언제든지 말씀해주세요. 좋은 개발 경험을 쌓으시길 바라요!