Ajax-loader-large-white
객체 지향 프로그래밍(Object-Oriented Programming) I
왜 클래스(Classes)를 사용하나요?

루비는 객체 지향 프로그래밍 언어로, 이는 루비가 객체(object)라 불리는 프로그래밍 구조를 다룬다는 뜻입니다. 루비 안의 (거의) 모든 것이 객체입니다! 지금까지 여러분은 여러 객체들을 사용해 왔으므로, 매우 익숙하게 느껴질 겁니다. 객체는 이전에 다뤘던 메소드와, 데이터를 나타내는속성(attributes)을 가지고 있습니다. 예를 들어,

"Matz".length
# ==> 4

위의 코드에서 "Matz" 객체는 문자열로, .length 메소드와 길이 속성인 4를 가지고 있습니다. 이제부터 진행할 몇 가지 과제를 통해 고유의 메소드와 내부 변수를 가진 여러분 만의 객체를 만드는 방법을 배워볼 것입니다.

하지만 과연 무엇이 "Matz"를 문자열로 만드는 걸까요? 해당 문자열은 정확히 말하자면 String(문자열) 클래스(class)의 인스턴스입니다. 클래스는 비슷한 속성과 메소드를 갖는 객체들을 관리하고 생산하는 방법이라고 생각하시면 됩니다.

Instructions

오른쪽의 에디터 안의 코드를 확인해 보세요. 여러분을 위해 저희 만의 클래스 Language를 미리 정의한 뒤, ruby, python, javascript라는 해당 클래스의 인스턴스들을 생성해 두었습니다. Save & Submit Code 버튼을 클릭하여 이들이 어떻게 작동하는지 확인해 보세요!

준비가 다 되셨으면 Save & Submit Code 버튼을 클릭하여 여러분 만의 클래스 및 객체 생성을 시작해 봅시다.

script.rb