비디오: Week 9, continued 2024
Ruby에서 메소드 ( 함수 라고도 함)는 코드를 저장하고 명명 한 다음 나중에 여러 번 사용할 수있는 방법을 제공합니다. 다른 변수를 메서드에 전달하여 해당 메서드의 비헤이비어를 변경할 수 있습니다. 메서드에 전달 된 변수를 메서드의 인수 (아니요, 외치는 종류가 아닙니다!)라고 부릅니다.
두 개의 직사각형을 연속으로 그리려면 어떨까요? 루프 코드를 복사하여 해당 코드를 여러 번 붙여 넣기 만하면됩니다. 대신 사각형 코드를 메서드에 넣을 것입니다.
다음 단계에 따라 사각형을 그릴 재사용 가능한 메서드를 만듭니다.
-
새 사각형 메서드에 대한 정의를 추가하여 시작합니다. 이 코드를 파일의 맨 위에 놓습니다:
def rectangle (height, width, outside_letter, inside_letter) # 여기에 사각형 코드가 들어갑니다.
def 키워드는 Ruby에게 정의를 제공하려고 함을 알립니다. 방법의. def 다음에는 메소드 이름 (직사각형)과 0 개 이상의 인수 목록이 있습니다. 각 인수는 메소드 내부에서 사용할 수있는 변수의 이름입니다. 그런 다음 메서드의 기능을 구성하는 코드를 제공하고 메서드의 끝을 키워드 end로 표시합니다.
-
전체 사각형 그리기 루프 코드를 선택하고 편집 → 잘라내기를 선택한 다음 편집 → 붙여 넣기를 선택하여 1 단계에 표시된 설명 대신 해당 코드를 메서드 내에 붙여 넣습니다.
def 사각형 (높이, 너비, 외부 _ 레터, 내부 _ 레터) 1. 최대 (높이) 할 | 행 | if row == 1 puts outside_letter * 너비 elsif 행 == 높이 puts outside_letter * 너비 else 중간 = inside_letter * (너비 - 2) "# {outside_letter} # {중간} # {외곽선}}"end end end
-
지금 생성 한 메서드를 사용하여 사각형을 그릴 수 있습니다. 이를 위해 메소드를 호출 할 수 있습니다 (Ruby에서는 메시지 보내기 라고합니다). 소스 코드 맨 아래에 너비와 높이 변수를 설정 한 줄 뒤에 다음 코드를 작성하십시오. 프로그램을 실행하십시오.
성공적인 직사각형입니다.
직사각형 메서드 호출을 복사하여 붙여 넣어 두 행을 똑같이 복사 한 다음 프로그램을 다시 실행합니다.무슨 일이야?
-
코드를 메서드에 넣으면 코드를 쉽게 재사용 할 수 있으며 코드를 쉽게 변경하거나 버그를 수정 할 수 있습니다. 직사각형 그리기, 두 번, 세 번 또는 여러 번 그리기위한 긴 코드 세트를 붙여 넣었다 고 상상해보십시오. (시도해보십시오!)이 방법은 효과적이지만 코드를 약간 변경해야하는 경우 어디서든 모든 버전을 검색해야합니다. 방법을 사용하면 단 한번 수정해야합니다!