좀 더 깔끔한 정리 ver

1. 기본 문법

출력

  • puts "Hello, World!" : 문자열을 출력하고 줄 바꿈
  • print "Hello" : 줄 바꿈 없이 출력

주석

  • 한 줄 주석: # 여기에 주석을 작성
  • 여러 줄 주석:

    2. 변수와 데이터 타입

    변수 선언

    • 소문자로 시작: name = "Dora"

    데이터 타입

    • 정수 (Integer): x = 5
    • 실수 (Float): pi = 3.14
    • 문자열 (String): greeting = "Hello"
    • 심볼 (Symbol): status = :active (메모리 효율적이며 고정된 객체)
    • 배열 (Array): numbers = [1, 2, 3]
    • 해시 (Hash): person = { "name" => "Dora", "age" => 25 }

    3. 조건문과 논리

    조건문

    • 한 줄 조건문: puts "Adult" if age > 18

    논리 연산자

    • &&: 그리고
    • ||: 또는
    • !: 부정

    4. 반복문

    while 루프

    for 루프

    times 메서드


    5. 메서드

    메서드 정의

    • 기본값 설정: def greet(name = "Guest")

    반환값

    • 루비는 마지막 식의 값을 자동으로 반환합니다.
    • return을 명시적으로 사용할 수 있습니다.

    6. 클래스와 객체 지향 프로그래밍 (OOP)

    클래스 정의

    • 인스턴스 변수: @name은 객체의 속성을 의미합니다.
    • 게터/세터 메서드: attr_accessor는 자동으로 게터와 세터를 생성합니다.

    7. 모듈과 믹스인

    모듈 정의

    • 모듈은 클래스에 믹스인하여 재사용할 수 있습니다.

    8. 예외 처리

    예외 처리 구조

    • raise: 명시적으로 예외를 발생시킵니다.

    9. 파일 입출력 (IO)

    파일 읽기

    파일 쓰기


    10. 정규 표현식

    정규 표현식 사용 예시

    • match: 문자열이 정규 표현식과 일치하는지 확인합니다.

    11. 상속과 클래스 계층

    클래스 상속


    12. 메타 프로그래밍

    method_missing 사용


    13. 기타 유용한 문법

    스페이스십 연산자

    심볼과 문자열 변환

    • :symbol.to_s : 심볼을 문자열로 변환
    • "string".to_sym : 문자열을 심볼로 변환
     
    좀 더 깔끔한 정리 ver