Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
개발 · 프로그래밍

/

프로그래밍 언어

퇴근은 빠르게, 코드는 클린하게, 인텔리J를 활용한 리팩토링 시작하기(with 단축키) - 기초편

막연하게 리팩토링이라는 용어는 들었지만, Intellj IDEA에디터를 활용해서 코드를 리팩토링하는 방법 모르는 초보 개발자를 위해서 빠르게 학습할수 있도록 구성했습니다.

(5.0) 수강평 4개

수강생 99명

먼저 경험한 수강생들의 후기

이런 걸 배울 수 있어요

  • 실습을 통해 refactor기능을 조합해서 안전하게 코드를 고치는 법을 배워요.

  • IntelliJ IDEA에 있는 리팩토링을 빠르게 접근하는 법을 배워요.

  • 예제를 통해 각각 refactor 기법이 어떻게 동작하는 배워요.

이런 분들에게 추천드립니다. 

  • 자바 개발을 처음 시작한 2, 3년차 개발자
  • 리팩토링이라는 용어는 들어봤지만 어떻게 적용해야 할지 막여한 개발자
  • 리팩토링 기법은 책으로 배웠으나 이 기법들을 어떻게 연결해서 코드를 수정하는게 좋을지 모르는 개발자

수강생의 고민 & 해결 방법

  • 고쳐야 하는 코드는 많고, 복잡해서 어디부터 손을 대야 할지 모를때...
  • IDEA에디터의 간단한 refactor기법은 들어는 봤는데...어떻게 동작하지는 모를때...
  • 이 강의에 설명된 각각의 refactor기법의 동작 방식을 보고, 실습 항목을 따라해 보면  고민 해결 !!!! 

이 강의에서 배우는 것들 ✨

지금 작성 중인 Java코드를 빠르고 안전하고 쉽게 고치려면 아래의 리팩토링 기법은 꼭!!!! 알고 있어야 합니다.

  • Introduce Variable (변수로 빼고)
  • Extract Method (메소드로 빼고)
  • Change Signature (메소드를 변경하고)
  • Extract Delegate (객체로 빼고)
  • Introduce Parameter Object (파라미터를 불변객체로 만들고)
  • Move Instance Method (메소드를 이동하고)
  • Replace Inheritance With Delegate (상속 관계를 끊는 법을 배웁니다.)

이 강의에서는 위에서 언급된 각 리팩토링 기법을 모두 배우게 되며,

실습을 통해 각 리팩토링 기법들을 활용해서 코드를 안전하고 빠르게 수정하는 방법을 알려 드립니다.


학습 내용 📚

리팩토링을 통해 코드가 진화 하는 경험을 해보세요. !!!!!

아래와 같이 끝임 없는 if문을 수정해 본 경험이 있으신가요?

IntelliJ IDEA에서 지원되는 refactor를 이용하면,  몇번의 수정을 통해서... 아래와 같이 진화 할 수 있습니다.

 


예상 질문 Q&A 💬

Q. 왜 IntelliJ IDEA refactor 기능을 배워야 하나요?
A. 코드를 수정할때, 단순히 "찾아 바꾸기"해서 바꿀수 없는 경우가 더 많습니다. 그래서 각 Java 에디터 별로 이름은 다르지만 리팩토링 하는 기능을 제공하고 있습니다. refactor 기법을 습득하게 되면, 코드를 수정하는데 많은 어려움이 없어 질수 있기 때문에 꼭 배워야 된다고 생각합니다.  

Q. 비 전공자도 들을 수 있나요?
A. 네, 선수 지식을 어느정도 갖추셨다면 가능합니다. 개발에 대한 열정이 있다면 전공 유무는 중요하지 않은 것 같아요. :) 하지만, 아주 기초적인 개발경험을 가지고 있어야 이해하는데 도움이 될 수 있습니다. 어렵다고 생각되면 혼자 고민하지 마시고, 언제든 문의 주세요 :)

Q. 특정 플랫폼에 종속적인 강의 인가요? 
A. 네, 많은 메이져 회사에서 주로 사용하는 Java 에디터 프로그램인 IntelliJ IDEA에서 지원하는 기능을 소개 하고 있고, MacOS환경에서 강의를 구성하였기 때문에 특정 플랫폼에 종속적일수 있습니다. 하지만, Windows사용자들을 위해서 단축키 같은 경우 녹화된 화면에 표시해서 사용할 수 있도록 구성하였기 때문에 따라 하는데는 전혀 문제가 없을 것 같습니다.

 

이런 분들께
추천드려요

학습 대상은
누구일까요?

  • 처음 리팩토링 기법을 적용해 보는데 어려움이 있는 초,중급 개발자

  • 레거시 코드를 안전하게 고칠 수 있는 방법에 고민이 많은 개발자

  • 설계를 할 때 바로 Java 코드를 변경 하면서 수정하고 싶은 개발자

선수 지식,
필요할까요?

  • Java 기초 문법

  • Intellj IDEA에 대한 기본 활용 방법

  • 개발에 대한 열정

안녕하세요
입니다.

99

수강생

4

수강평

5.0

강의 평점

1

강의

안녕하세요.

스스로 배우고, 경험한 것을 나누는 것을 즐기며,

프로그래밍을 하는 것을 좋아 하는 개발자 김승겸 입니다.

 

  • 현) 우아한형제들 - 백엔드 개발자

  • 전) 잡코리아 - 플랫폼 아키텍쳐

  • 전) 11번가 - 백엔드 개발자

  • 전) 위메프 - 백엔드 개발자

 

 

커리큘럼

전체

28개 ∙ (2시간 30분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

전체

4개

5.0

4개의 수강평

  • angrydaddy님의 프로필 이미지
    angrydaddy

    수강평 1

    평균 평점 5.0

    5

    36% 수강 후 작성

    Hello Mr. Bye, first of all, thank you for telling me about various development methods that I was ignorant of. I didn't know much about using various refactoring techniques using IntelliJ. It seems that it is necessary to read the manuals of Springboot and IntelliJ Tool carefully. Also, it was good to use shortcuts through refactoring methods or techniques, but more than anything, it seems good to look at the code level even though I only vaguely understood what TDD is in theory. I learned refactoring methods and shortcuts, but it would be better if there was a way to actually implement test code. I really feel like it comes from the practical experience needed for development. I am a real developer rather than a beginner. Mr. Bye, have a good day in the future and I look forward to the next content :)

    • sensaengkim247
      지식공유자

      @Manager Ang, thank you for your first feedback. In offline, I shared this content comfortably with developers, but since it was my first time making an online course, it was more difficult than I thought ^^; while filming the video (in a fluster...) @.@ Nevertheless, thank you very much for your positive feedback. Currently, I am contemplating various roadmaps and thinking a lot about how to provide good guidelines for beginners. I will actively review the comments and work even harder to make the next course better. Thank you. (bow!!)

  • tkwkalsrn8776님의 프로필 이미지
    tkwkalsrn8776

    수강평 1

    평균 평점 5.0

    5

    100% 수강 후 작성

    It was a helpful lecture

    • sensaengkim247
      지식공유자

      Thank you for your opinion. I will continue to reward you with good content ^^ Thank you.

  • kimaresen님의 프로필 이미지
    kimaresen

    수강평 23

    평균 평점 5.0

    5

    100% 수강 후 작성

    While using Intellij, I only heard about the refactoring supported by the IDE and only thought about how to use it, but it was good that it actually wrote about the source code that changed while refactoring the example and in what situations the function is used. I am starting to feel more confident that I can slowly proceed with refactoring with the Intellij IDE. Thank you for the great lecture.

    • sensaengkim247
      지식공유자

      @KimAresen, Thank you for your kind review. In my long experience of programming, I don't think there's a topic that's as difficult to find an answer to as the act of refactoring ^^ So, I'm glad to hear that it was helpful to you, and I'll work hard to prepare for the next lecture as well. Thank you again.

  • jiu4163님의 프로필 이미지
    jiu4163

    수강평 10

    평균 평점 5.0

    5

    100% 수강 후 작성

    I think I can write code more easily now that I know about writing clean code. Thank you!

    ₩33,000

    비슷한 강의

    같은 분야의 다른 강의를 만나보세요!