���� �޼ҵ� �����丵

 

Extract Method �����丵�� ����ڿ��� ���õ� �ڵ� �����׸�Ʈ�� �޼ҵ�� �ٲٴ� ���� ����մϴ�.  �� �����丵�� ���� �� �ڼ��� ������ Overview�� �����Ͻʽÿ�, �Ǵ�  how to extract a method�� ����� �������� �ٷ� ���ʽÿ�.

����

 

Extract Method  �����丵�� ȣ��� ��, IDEA�� �ڵ��� ���õ� ������ �м��ϰ�, ���õ� �ڵ� �����׸�Ʈ�� ���� �Է��� ������ �װ��� ���� ����� ������ �����մϴ�.  ���� ��Ȯ�ϰ� �� ���� ��� ������ ������, �װ��� ������ �޼ҵ带 ���� ��ȯ ������ ���˴ϴ�.  ���� ��� ������ ���� ��쿡, Extract Method �����丵�� ������� �������� �𸨴ϴ�. �׸��� ���� �޽����� ��Ÿ���ϴ�.  �� ��� Extract Method �۾��� ����ϴ� ������ �ణ�� �ַ���� �ֽ��ϴ�.  ���� ���, ����� ��� ��� ���� �����ϴ� Ư���� ������-Ŭ������ �����ص� �����ϴ�.  �׷� ���ɼ��� ū �پ缺 ������, ������ ��ű��� �޷� �ְ� Extract Method �����丵�� �ڵ� ��忡�� ���� ��� ���� �۵����� �ʱ� ������,  ����� �ڵ带 �����丵�� �����ϱ� ���� �����ؾ߸� �մϴ�.

The code fragment to form the method, may not necessarily be a set of statements. It may also be an expression used somewhere in the code. For example, applying the Extract Method  to: 

�޼ҵ带 �����ϴ� �ڵ� �����׸�Ʈ�� �ݵ�� �� ��Ʈ�� ������Ʈ��Ʈ�� �ƴ����� �𸨴ϴ�.  ���� �ڵ忡�� ��ü�� ���Ǵ� ǥ���������� �𸨴ϴ�.  ���� ��� Extract Method�� ������ �����ϴ� ��:


results in: 

�����:




���� ��� ������ ��쿡 ���Ͽ�, Extract Method �����丵�� �� �ణ�� ��쿡�� �۵����� ���� ���Դϴ�.  ���� ���, ��� ���� ���Ǻη� �޼ҵ带 �����ϴ� �Ϳ��� �����ϰ�, �װ��� ���� ������ �ʴ� �ڵ� �����׸�Ʈ�� ���ؼ� �۵����� ���� ���Դϴ�.


 

�޼ҵ带 �����ϴ� ���


  Overview
�κ��� ������ �ٰ��մϴ� 

1.  

�޼ҵ忡 �����Ǵ� �ڵ��� ������ �����Ͻʽÿ�.

2.  

Refactor �޴� ������, Extract Method...  Ŭ���Ͻʽÿ�(�Ǵ� Ctrl + Alt + M �� �����ϴ�). �ٸ� ����� Refactor �� ����Ʈ�ϰ� ������ ������ ��ư�� Ŭ���ϰ� Extract Method...�� Ŭ���ϴ� �� �Դϴ�.


���� ���̾�α״� ��� �Է� ������ ����Ʈ �Ű������μ� ����Ʈ �Ǵ� ������ ��Ÿ�� ���Դϴ�. (���� �Ű� ���� ���λ簡  File | Settings | IDE Settings | Code Style ���̾�α׿��� �����Ǿ��ٸ�, �� ���λ�� �̹� �߰��Ǿ����ϴ�):

 




 3.   

Name �ؽ�Ʈ �ʵ忡��, ���ο� �޼ҵ��� �̸��� �����Ͻʽÿ�.

 4.   

Parameters ��Ͽ���:

 �����ϴ� üũ�ڽ��� ����/�����Ͽ� �޼ҵ� �Ű� �����μ� �Ѱ��� ������ �����Ͻʽÿ�; ���� �Ű� ������ �Ұ����ϴٸ�, �ʱⰪ�� �Բ� �����ϴ� Ÿ���� ���� ������ ���� ��忡�� ������ �� �Դϴ�. �׷��� ����� �������� ������ ������ �̴ϼȶ������� �Է��ؾ߸� �� �� �Դϴ�.

  �����ϴ� �Ű� ���� ������ ���� Ŭ���ϰ� ���ο� �̸��� �Է��Ͽ� ���ϴ� �Ű� ������ �̸��� �ٲٽʽÿ�

 5.   

Visibility �׷쿡��, ���ο� �޼ҵ带 ���� ���ü��� �����Ͻʽÿ�.

 6.   

���ο� �޼ҵ忡 �Ѿ�� �Ű� ������ ������ �����ϱ� ���� Move Up  and Move Down�� ����Ͻʽÿ�.

 7.   

OK�� Ŭ���Ͻʽÿ�.  ���ο� �޼ҵ尡 ������ ���̰� �ڵ� �����׸�Ʈ�� �޼ҵ� �ݷ� ��ü�� ���Դϴ�.

 8.   

���� IDEA�� ������ Ŭ���� ������ ���Ӱ� ������ �޼ҵ带 �θ��� �ݰ� �Բ� ��ü�Ǵ� � �ߺ��� �ڵ� ������ �ִ� ���� �����ϸ�, ��ſ��� Process Duplicates  ���̾�αװ� ������Ʈ �� �� �Դϴ�.



���� ����� No �� ������, ������ ó������ ���õ� �ڵ��� ������ ���Ӱ� ������ �޼ҵ带 �θ��� ���� ���� ��ü�� ���Դϴ�. ���� �����

Yes�� �����ϸ�,  ��� �ߺ��� ������ ������ ���̾�α��� ����� �Բ� ó���� ���Դϴ�.


����� ������ �ڵ带 �����ϴ� �Ϳ� ���� �޼ҵ� ��(���� ����� Yes �� �����ϸ�)�� ���� ����ǰų�, �Ǵ� �״�� ���� ���Դϴ�(���� ����� No�� �����ϸ�).