책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > Ruby/Rails
· ISBN : 9791185890166
· 쪽수 : 712쪽
· 출판일 : 2015-04-09
책 소개
목차
Part 1 루비 개요
1장 루비 개요 2
1-1 루비에 대해 2
1-2 이 책을 읽는 법 5
1-3 루비 자료 활용법 6
1-4 루비 컴파일러 설치 방법 7
1-5 루비를 사용해 보자 11
1-6 코딩 스타일 16
1-7 여러 종류의 루비 18
1-8 루비 커뮤니티와 관계자 24
1-9 루비 개발에 대해 알기 24
Part 2 루비 언어 규격
2장 루비 기초 28
2-1 Hello, Ruby 28
2-2 변수와 상수 33
2-3 조건 분기와 진릿값 36
2-4 식 37
2-5 클래스 38
2-6 모듈 44
2-7 주요 내장 클래스 45
2-8 다양한 대입식 55
2-9 예외 56
2-10 외부 파일 읽기 57
2-11 예약어 58
2-12 내장 변수 및 상수 58
3장 제어 구조/메소드/내장 함수 62
3-1 연산자 62
3-2 기본적인 제어 구조 64
3-3 예외 처리 73
3-4 대역 탈출 80
3-5 메소드 정의와 호출 81
3-6 기본적인 내장 함수 99
4장 클래스와 모듈 108
4-1 클래스 108
4-2 모듈 123
4-3 객체 130
5장 주요 내장 클래스/모듈 136
5-1 Numeric 136
5-2 String 144
5-3 Regexp 151
5-4 Comparable 161
5-5 Enumerable 162
5-6 Time 190
5-7 IO/File 197
5-8 Dir 210
5-9 스레드 213
5-10 파이버 223
5-11 Process 226
5-12 Struct 229
5-13 Marshal 231
5-14 ObjectSpace 233
Part 3 메타 프로그래밍
6장 루비의 클래스 객체 236
6-1 Class 클래스로 클래스를 만든다 236
6-2 클래스 객체 240
6-3 싱글톤 클래스 250
6-4 메소드 탐색 방법 257
6-5 Module#prepend 265
7장 동적 프로그래밍 273
7-1 오픈 클래스 273
7-2 BasicObject#method_missing 275
7-3 eval 279
8장 Proc 객체 291
8-1 Proc 클래스 291
8-2 Proc#new 이외의 Proc 객체 생성 방법 295
8-3 Proc.new/Kernel.proc/Kernel.lambda 296
8-4 루비의 클로저 300
9장 Method 클래스 302
9-1 Method 객체 302
9-2 Method 클래스와 UnboundMethod 클래스 307
9-3 Method 객체와 Proc 객체 310
10장 루비의 리플렉션 프로그래밍 313
10-1 객체를 조사 313
10-2 클래스를 조사 323
10-3 이벤트를 후크(hook)한다 336
Part 4 기본 탑재 라이브러리
11장 라이브러리 348
11-1 멀티 스레드 프로그래밍(thread) 348
11-2 손쉬운 비동기 프로그래밍(Fiber) 354
11-3 고급 파일/디렉터리 조작(pathname/fileutils/tmpdir/tempfile) 356
11-4 특정 형식의 텍스트 데이터를 간단히 조작(yaml/json/csv) 365
11-5 상급자를 위한 문자열 객체(StringIO) 378
11-6 집합 활용하기(Set) 381
11-7 상세한 시간/날짜(Time/Date) 387
11-8 심플한 HTTP 클라이언트(net/http) 394
11-9 가장 기본적인 템플릿 라이브러리(ERB) 402
11-10 루비 벤치마크를 간단하게(benchmark) 407
11-11 로그 파일 처리(Logger) 411
12장 내장 툴 416
12-1 irb 416
12-2 RDoc 422
12-3 Rake 429
12-4 RubyGems 445
Part 5 실전 프로그래밍
13장 gem 패키지 작성법 462
13-1 모형 생성 462
13-2 gemspec에 대해 464
13-3 gem 패키지 작성 470
13-4 Rake 태스크 471
13-5 C 언어로 라이브러리 작성 475
14장 자주 사용되는 외부 툴 481
14-1 번들러 481
14-2 카피스트라노 496
14-3 YARD 518
14-4 Pry 544
15장 커맨드라인 애플리케이션 개발 562
15-1 개발할 Todo 관리 애플리케이션에 대해 562
15-2 Todo 관리 애플리케이션을 개발하기 전에 567
15-3 CLI 애플리케이션 작성 572
15-4 데이터베이스 접속 처리와 Command 클래스 575
15-5 커맨드라인 인수 해석 590
15-6 Command 클래스와 결합 602
15-7 Todo 관리 애플리케이션 완성과 gem 패키지화 608
16장 웹 애플리케이션 개발 612
16-1 웹 애플리케이션 개발 환경 612
16-2 Todo 애플리케이션 2.0.0에서 사용할 라이브러리 623
16-3 웹 인터페이스 추가 637
16-4 다시 todo 명령 668
16-5 Todo 애플리케이션 2.0.0 완성 671
찾아보기 674
리뷰
책속에서
루비에서는 라이브러리 관리를 위해서 RubyGems라는 관리 시스템을 사용한다. 그리고 RubyGems를 통해 설치되도록 패키징되어 있는 라이브러리를 gem 패키지라고 한다.
이 RubyGems를 이용해서 gem 패키지를 설치할 때는 빌드가 필요한 것도 있다. RubyInstaller를 이용해서 루비를 설치했다면, 같은 다운로드 페이지에 있는 ‘Development Kit’를 사용해서 컴파일 환경을 설치해 두는 것이 좋다. 그림 1.4처럼 다운로드 페이지에 있는 ‘Development Kit’를 다운로드한 후 exe 파일을 실행한다.
루비에는 유사 변수(pseudo variable)라고 하는 참조 전용 변수가 있다. 표 2.4는 유사 변수 목록이다. true, false, nil 이외의 유사 변수는 위치나 구문에 따라 참조하는 값이 달라진다. 유사 변수에는 값을 대입할 수 없다.
Object 클래스에는 대소를 비교하는 비교 연산자가 정의돼 있지 않다. 때문에 새롭게 정의한 클래스 객체를 비교 연산하고 싶은 경우에는 비교 연산자 메소드를 독자적으로 정의할 필요가 있다. 이때, Comparable 묘듈을 이용하면 조금 더 간단하게 비교 연산자 메소드를 사용할 수 있다.