리팩토링은 소프트웨어 엔지니어가 갖춰야 할 기본적인 소양 중 하나입니다. 이 강의는 인텔리J와 자바를 사용하여 보다 실용적인 방법으로 다양한 코드의 냄새와 리팩토링 기술을 설명하고 직접 실습할 수 있도록 준비했습니다.
이런 걸
배워요!
총 24개의 코드 냄새와 7개의 리팩토링 카탈로그
자바 예제 코드로 보여주고 직접 실습할 수 있는 43개의 리팩토링
인텔리J가 제공하는 리팩토링 관련 기능
단순 구현을 넘어서
더 좋은 코드를 만들고 싶은 모든 개발자에게 💌
리팩토링
코드의 기능은 유지하면서 클래스, 함수, 필드처럼 여러 프로그래밍 요소를 변경하여 더 나은
코드로 개선하는 과정 또는 그러한 기술을 말합니다. 리팩토링을 학습하고 적용한다면
똑같이 동작하는 코드도 보다 더 이해하기 쉽고 유연하게 만들 수 있습니다.
처음에는 변하지 않을 것 같았던 가정과 최선이라고 생각했던 코드도 시간이 지나고, 환경이 바뀌고, 기술이 발전하다 보면 "코드를 도대체 왜 이렇게 짠거지?"라는 이야기를 하기 십상입니다.
리팩토링에서 다루는 총 24개의 코드 냄새를 통해 그러한 코드를 찾는 방법과 43개가 넘는 리팩토링 기술을 통해 코드를 개선하는 방법을 학습할 수 있습니다.
장담하건데, 이 수업 이후 여러분의 코드를 다시 보신다면 분명 더 나은 코드로 고칠 수 있을 겁니다.
IntelliJ
인텔리제이와 같은 통합 개발 환경 (IDE)은 단순한 편집기와 달리 고도의 연산과 분석 기능으로
코드 리팩토링에 도움이 되는 여러 기능을 제공하고 있습니다.
이 강의에서 소개하는 기능들을 활용한다면 여러분의 코드 생산성도 향상시킬 수 있습니다.
기초 문법은 배웠는데
이제 뭘 해야 하지?
지금보다
더 나은 개발자로
성장하고 싶다면?
더 좋은 코드로
개선하고 싶은데…
냄새나는 코드를
어떻게 개선하는지
알고 싶다면?
인텔리제이를
더 잘 쓰고 싶은데…
리팩토링 기능을 100%
활용하고 싶다면?
리팩토링?
실제로 보고 싶은데…
글로 읽는 리팩토링
말고 보면서
배우고 싶다면?
📢 알려드립니다
이 강의에서는 총 24개의 코드 냄새와 각 냄새를 해결할 수 있는 여러 리팩토링 기술을 다루고 있습니다.
각 리팩토링 기술은 IntelliJ가 제공하는 기능을 적극적으로 활용하며, 여러분이 직접 실습할 수 있도록 예제 코드를 제공하고 있습니다.
리팩토링은 1999년에 1판을 출판하고 2018년에 2판이 나왔으며 GoF의 저서《디자인 패턴》과 더불어
모든 개발자에게 추천하는 필독서 중 하나입니다.
과거와 지금, 그리고 앞으로도 업무에서 언제든 유용하게 쓰일 기술이니 꼭 학습하시기 바랍니다.
Refactoring (리팩터링 2판)
아마존 기준 평점 4.7/5
객체 지향 소프트웨어 디자인 분야 8위 (2022.02 기준)
모든 개발자에게 권장하는 추천 도서 중 하나
Martin Folwer
객체 지향 분석 설계, UML, 엔터프라이즈 패턴 그리고
익스트림 프로그래밍에 관한 여러 저술과 발표로
유명한 소프트웨어 엔지니어
📢 참고해주세요
Q. 개발자라면 리팩토링을 꼭 학습해야 하나요?
A. "어떻게든 동작하기만 하면 된다."가 아니라 "어떻게 하면 더 좋은 코드로 동작하게 만들 수 있을까?"를 고민하는 개발자라면 리팩토링을 반드시 학습해야 합니다. 이 강의에서 다루는 기술은 여러분이 작성하는 코드 품질을 향상시키는데 많은 도움을 줄 것입니다.
Q. 리팩토링은 언제 해야 하나요? 실무에서 리팩토링을 할 시간이 없어요.
A. 리팩토링은 시간을 정해놓고 해도 좋고, 새로운 코드를 작성할 때 또는 기존 코드를 수정하여 기능을 개선하거나 변경할 때 같이 진행할 수도 있습니다. 예를 들어, 제 업무 중에 자주 사용하는 클래스가 있는데 5년간 이것저것 쌓이다 보니 너무 커졌다는 생각이 들 정도로 코드 냄새가 나기 시작했습니다. 해당 업무를 마치고 시간을 조금 내서 "메소드 추출하기"와 "메소드 매개변수화하기"를 통해 상당수의 중복 코드를 제거하고 조금 더 읽기 좋은 코드를 만들어 보내고 코드 리뷰를 기다리고 있습니다. 한번에 크게 변경하기보다는 조금씩 자주 하다보면 시간을 오래 들이지 않아도 조금씩 개선할 수 있습니다.
Q. 자바 기초만 공부한 상태인데 이 강의를 수강해도 될까요?
A. 네, 자바 기초를 학습했다면 본 강의를 수강할 수 있습니다. 특히, 인텔리J 사용에 익숙하지 않은 분들이라면 이 강의에서 소개하는 인텔리J의 리팩토링 기능을 꼭 익히고 업무에서 활용하시기 바랍니다. 여러분의 생산성을 향상시켜줄 수 있는 많은 팁들이 기다리고 있습니다.
Q. 강의의 난이도나 방식이 저에게 맞을지 궁금합니다.
A. 이 강의에서 미리보기로 "이해하기 힘든 이름", "함수 선언 변경하기", 그리고 "변수 이름 변경하기" 수업을 공개해 두었습니다. 수강 전 강의를 미리 들어보신 후 이런 방식의 강의 진행이 본인에게 도움이 될지 판단해주시기 바랍니다.
"개발자로 일을 하다 보면 한 번쯤은 코드를 '똥'에 비유하는 말을 들어보셨을 겁니다. 이런 코드들은 업무처리를 더디게 만들고 요구사항의 변경에 대처하기 어렵게 만듭니다.
이러한 코드를 깨끗하고도 안전하게 정리하는 방법이 리팩토링이며, 이를 통해 더욱 가독성 좋고 변화에 유연하게 대처 가능한 구조로 코드 변경이 가능합니다. 리팩토링으로 여러분 프로젝트의 코드를 아름답게 가꿔보시길 바랍니다."
학습 대상은
누구일까요?
리팩토링을 처음 접하는 개발자 또는 학생
더 나은 코드로 개선하는 방법을 학습하고 싶은 개발자 또는 학생
인텔리J를 더 잘 활용하여 생산성을 높이고 싶은 개발자 또는 학생
선수 지식,
필요할까요?
자바 기초
수강생 수
90,119
수강평 수
3,996
강의 평점
4.8
강의 수
20
네이버와 아마존을 거쳐 현재 Microsoft에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.
아인슈타인은 "교육이란 사실을 가르치는 것이 아니라, 생각할 수 있는 힘을 기르는 것이다."라고 말했습니다. 그리고 저도 그 말에 깊이 공감하며 강의를 만들고 있습니다.
유튜브: '백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식 공유
번역: 스프링 및 하이버네이트 관련 서적 다수 번역
저술: 쉽게 따라하는 자바 웹 개발
전체
78개 ∙ (9시간 39분)
가 제공되는 강의입니다.
냄새 1. 이해하기 힘든 이름
03:20
리팩토링 1. 함수 선언 변경하기
13:32
리팩토링 2. 변수 이름 바꾸기
05:55
리팩토링 3. 필드 이름 바꾸기
11:03
냄새 2. 중복 코드
04:44
리팩토링 4. 함수 추출하기
10:44
리팩토링 5. 코드 정리하기
05:33
리팩토링 6. 메소드 올리기
07:00