VIsual Studio2010에서 제공하는 (아마 그 이상에서도 제공될듯...)
코드 리펙토링 관련하여서
대략적인 내용은 아래와 같습니다.
리펙토링 기술 | 의미 |
---|---|
이름 바꾸기 | 프로젝트 전체에 걸쳐서 코드 토큰 (메소드 이름, 필드 , 지역변수 등) 의 이름을 변경 |
메소드 추출 | 선택된 코드 구문ㅇ르 기초로 새로운 메소드 정의 |
필드 캡슐화 | Public 필드를 C# 속성으로 캡슐화된 private 필드로 변경 |
인터페이스 추출 | 기존 타입 멤버를 기초로 새로운 인터페이스 타입을 정의 |
매개변수 제거 | 해당 매개변수를 메소드의 매개변수 목록에서 제거한다 |
매개변수 다시 정렬 | 멤버 매개변수의 순서를 변경 |
그중에서 "메소드 추출" 예제입니다.
어떤 코딩을 작성했는데,
다른 곳에서도 쓰일 가능성이나 쓰고 싶을때,
일일이 메소드를 만들고 다시 복사&붙이기 등의 업무를 조금이라도 줄여보고자 할때 유용할것 같습니다.
1) 일단 아래의 소스코드를
- 처음에 한 번 쓸 코딩이었는데, 추후 여러군데에서 공통적으로 쓸 생각이다
라는 가정하에
새로운 메소드로 뽑아낸다.
소스내용은 Console로 경고창을 띄우는데, 전경색과 뒷배경색을 바꿔서 경고문을 보여주는 상황으로 가정하겠습니다.
2) 아래처럼 해당 코드를 드래그한후
마우스 오른쪽 버튼으로 리펙터링 -> 메소드 추출을 클릭한다
3) 그러면 신규로 뽑아낼 메소드의 이름을 지으라는 메세지박스가 나옵니다.
여기선 Console_Warning이라는 이름의 메소드를 만들어낸다는 가정.
4) 이후에 아래처럼 신규로 메소드를 쉽게 뽑아낼수있다.
이번코드는 짧아서 필요성을 못 느낄수도 있지만
추후 더 많은 양의 코드를 별도로 메소드로 만들어낼때
위의 자동화? 기능을 활용하면 좋을 것 같습니다.
'프로그래밍&IT > C#' 카테고리의 다른 글
C# - XML 작성 기본 (0) | 2015.02.22 |
---|---|
this의 3가지 용법 체크 (0) | 2014.12.02 |
C# 접근 제한자 / 접근자 관련 (private, public, protected ...) (0) | 2014.11.15 |
using : namespace 선언 외 다른 활용 (0) | 2014.06.17 |
논리 연산자 우선순위 (0) | 2014.05.10 |