More actions
imported>linflus No edit summary |
imported>linflus No edit summary |
||
| Line 1: | Line 1: | ||
= | __TOC__ | ||
= Ruby = | |||
마츠모토 유키히로(Matz)가 1995년 [[Smalltalk]], [[Perl]], [[Python]] 의 장점을 취하여 만든 객체지향 스크립트 언어이다. 펄보다 강력하고 파이썬보다 객체지향적이다. | |||
* | 흔히 Ruby를 칭하는 명칭으로 ''진정한 객체지향 언어'', ''보다 나은 Perl'', ''동작하는 의사코드'', ''ALGOL의 탈을 쓴 Lisp''이라 한다. | ||
== 특징 == | |||
=== 진정한 객체지향 언어 === | |||
* Ruby는 진정한 객체 지향 언어이다. | |||
** Ruby에서는 숫자, 문자열, 정규표현, 입출력, 클래스 자체마저 객체이다. '객체가 아닌 자료형'은 존재하지 않는다. | |||
** 모든 작업은 객체를 이용한 작업이며, 작업의 결과물 또한 객체이다. 메소드나 코드 블록을 객체로 다룰 수 있다. | |||
number = Math.abs(number); // 자바 절대값 구하기 | number = Math.abs(number); // 자바 절대값 구하기 | ||
number = nember.abs # 루비 절대값 구하기 | number = nember.abs # 루비 절대값 구하기 | ||
* 클래스 기반의 객체지향을 채용했고, 모든 객체는 특정 클래스의 인스턴스이다. | |||
* 모든 클래스는 Object 클래스의 자손 클래스이다. | |||
** 단, Ruby 1.9에 도입된 BasicObject 클래스는 예외. | |||
=== 보다 나은 Perl === | |||
=== 동작하는 의사코드 === | |||
=== ALGOL의 탈을 쓴 Lisp === | |||
= 참고 = | |||
== 웹 == | |||
* http://www.ruby-lang.org/en/ - 루비 메인 페이지 | * http://www.ruby-lang.org/en/ - 루비 메인 페이지 | ||
* http://www.rubycentral.com/ - 튜토리얼 및 레퍼런스 | * http://www.rubycentral.com/ - 튜토리얼 및 레퍼런스 | ||
| Line 16: | Line 27: | ||
* http://www.os.rim.or.jp/~eban/ - ruby win. GUI 작업 환경 | * http://www.os.rim.or.jp/~eban/ - ruby win. GUI 작업 환경 | ||
* http://tryruby.org - Ruby를 간단히 배워볼 수 있는 대화형 웹 콘솔 | * http://tryruby.org - Ruby를 간단히 배워볼 수 있는 대화형 웹 콘솔 | ||
== 책 == | |||
---- | ---- | ||
[[언어분류]] | [[언어분류]] | ||
Revision as of 12:26, 20 January 2011
Ruby
마츠모토 유키히로(Matz)가 1995년 Smalltalk, Perl, Python 의 장점을 취하여 만든 객체지향 스크립트 언어이다. 펄보다 강력하고 파이썬보다 객체지향적이다. 흔히 Ruby를 칭하는 명칭으로 진정한 객체지향 언어, 보다 나은 Perl, 동작하는 의사코드, ALGOL의 탈을 쓴 Lisp이라 한다.
특징
진정한 객체지향 언어
- Ruby는 진정한 객체 지향 언어이다.
- Ruby에서는 숫자, 문자열, 정규표현, 입출력, 클래스 자체마저 객체이다. '객체가 아닌 자료형'은 존재하지 않는다.
- 모든 작업은 객체를 이용한 작업이며, 작업의 결과물 또한 객체이다. 메소드나 코드 블록을 객체로 다룰 수 있다.
number = Math.abs(number); // 자바 절대값 구하기 number = nember.abs # 루비 절대값 구하기
- 클래스 기반의 객체지향을 채용했고, 모든 객체는 특정 클래스의 인스턴스이다.
- 모든 클래스는 Object 클래스의 자손 클래스이다.
- 단, Ruby 1.9에 도입된 BasicObject 클래스는 예외.
보다 나은 Perl
동작하는 의사코드
ALGOL의 탈을 쓴 Lisp
참고
웹
- http://www.ruby-lang.org/en/ - 루비 메인 페이지
- http://www.rubycentral.com/ - 튜토리얼 및 레퍼런스
- http://testunit.talbott.ws/doc/index.html - 루비용 테스트 유닛
- http://c2.com/cgi/wiki?RubyLanguage - 루비에 대한 사람들의 이야기
- http://www-106.ibm.com/developerworks/linux/library/l-ruby1.html?t=gr,p=Ruby - 루비 튜토리얼
- http://www-903.ibm.com/developerworks/kr/linux/library/l-ruby1.html?dwzone=linux#5 - 한글 튜토리얼
- http://www.os.rim.or.jp/~eban/ - ruby win. GUI 작업 환경
- http://tryruby.org - Ruby를 간단히 배워볼 수 있는 대화형 웹 콘솔