에 대한 디렉토리와 파일을 구성하는 방법은 다음과 같이 수업을 : 나는 파일을 작성하는 경우 그것은 잘 작동중첩 클래스
require 'active_support/core_ext'
class Shelf
def initialize
@books = {}
end
def book(code: code)
@books[code] if @books.has_key?(code)
@books = Book.new(code: code)
end
end
class Shelf::Book
def initialize(code: code)
@code = code
end
end
.
나는 두 개의 파일 shelf.rb
및 shelf/book.rb
으로 클래스를 구분합니다,하지만 난 shelf.rb
에서 require_relative 'shelf/book'
을 쓸 때 class Shelf
이 아직 정의되지 않았기 때문에 그것은 실패합니다.
파일 및 디렉토리는 어떻게 구성해야합니까? 완전히 중첩 된 클래스를 사용하고 있습니까?
"당신은라는 이름의 클래스가있는 경우 : 선반 :: 책 , 파일 이름 book.rb는 ** 선반 디렉토리에서 **이어야합니다 ** "정말입니까? rubygem 웹 사이트에있는 예제 중 하나에서'require 'rdoc/data'메인 클래스 또는 모듈에 링크합니다. RDoc :: Data 경우처럼 보이지 않습니다. –
@ AurélienBottazini : 물론 제약이 아니기 때문에 더 많은 것으로 간주됩니다. 국제 대회를 사용하는 좋은 습관. – Surya
@ AurélienBottazini : 또한 OP가 묻는 내용을 읽어보십시오. * 파일 및 디렉토리는 어떻게 구성해야합니까? 아니면 중첩 된 클래스를 완전히 잘못된 방식으로 사용하고 있습니까? *. 질문은 파일 및 디렉토리를 구성하는 것에 대해 명확하게 질문하며 대답에서 그 점을 언급하지 않을 이유가 없습니다. – Surya