b 루비 ( 영어 : Ruby ) 는 마츠모토 유키히로가 개발한 동적 객체 지향 스크립트 프로그래밍 언어이다. 루비는 순수 객체 지향 언어라, 정수나 문자열 등을 포함한 데이터 형식 등 모든 것이 객체이다. 기능에는 클래스 정의, 가비지 컬렉션, 강력한 정규 표현식 처리, 다중 스레드, 예외 처리, 반복, 클로저, Mixin, 연산자 오버로드 등이 있다. 구문은 ALGOL계를 계승하면서 가독성을 중시하고 있다. 오랫동안 언어 사양이 명문화되지 않고 마츠모토의 구현 언어 사양에 준하는 것으로 간주되어 왔지만, 2010년 6월 RubySpec으로 언어 사양을 책정 중이다. 목차 1 루비의 철학 2 구현 버전 2. 1 공식 구현 2. 2 그외의 다른 구현 3 파이썬과의 비교 4 사용 예제 4. 1 제어구조 4. 2 문자열 4. 3 컬렉션 4. 4 블록 ( Block ) 과 반복자 ( Iterator ) 4. 5 클래스 4. 5. 1 열린 클래스 4. 6 예외 4. 7 메타프로그래밍 5 같이 보기 6 각주 7 외부 링크 루비의 철학 [ 편집 ] 루비의 개발자 마츠모토 유키히로는 루비가 스트레스가 없는 쉬운 프로그래밍이고, 루비는 우리의 삶을 반영해야 하며, 프로그래밍 언어는 ( 컴퓨터가 아닌
루비 ( 프로그래밍 언어 ) - 위키백과, 우리 모두의 백과사전 루비 ( 프로그래밍 언어 ) 위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 루비Ruby 패러다임 프로그래밍 패러다임 : 객체 지향 프로그래밍, 명령형 프로그래밍, 함수형 프로그래밍, 반영발표년도 1995년설계자 마츠모토 유키히로개발자 마츠모토 유키히로및 관계자최근 버전 2. 5. 0최근 버전 출시일 2017년 12월 25일 ( 17달 전 ) ( 2017 - 12 - 25 ) [ 1 ] 주요 구현체 루비 MRI, YARV, 루비니우스, 메렐, J루비, 맥루비, 루비모티온, 뮤비 영향을 받은 언어 에이다, C, CLU, 딜란, 에펠, 리스프, 루아, 펄, 파이썬, 스몰토크영향을 준 언어 클로저, 커피스크립트, 커스텔, D, Elixir, 팰컨, 그루비, 록크, 줄리아, 미라, Nu, 포인트온, 레이아, 러스트, 스위프트라이선스 루비 라이선스GNU GPLv2BSD 라이선스사용 중인 파일 확장자. rb 루비 ( 영어 : Ruby ) 는 마츠모토 유키히로가 개발한 동적 객체 지향 스크립트 프로그래밍 언어이다. 루비는 순수 객체 지향 언어라, 정수나 문자열 등을 포함한 데이터 형식
외부 링크 루비의 철학 [ 편집 ] 루비의 개발자 마츠모토 유키히로는 루비가 스트레스가 없는 쉬운 프로그래밍이고, 루비는 우리의 삶을 반영해야 하며, 프로그래밍 언어는 ( 컴퓨터가 아닌 ) 인간 중심으로 설계되어야 한다고 했다. 구현 버전 [ 편집 ] 루비는 이식성이 매우 높다. 대부분 GNU 리눅스에서 개발되었지만 유닉스, 맥 OS X, 윈도 95 / 98 / Me / NT / 2000 / XP, 도스, BeOS, OS / 2 등에서 동작한다. [ 2 ] 루비 인터프리터는 유닉스, 리눅스, 마이크로소프트 윈도, OS X, MS - DOS, OS / 2, 아미가 등 많은 플랫폼에 이식되어 있다. 루비 구현물은 크게 마츠모토 유키히로가 만든 공식 구현과 그외의 구현, 두 가지으로 나눌 수 있다. 공식 구현 [ 편집 ] MRI ( Matz'Ruby Implementation ) : 1. 8. x 이전의 공식 구현. YARV ( Yet Another Ruby VM ) : YARV는 2007년 12월에 발표된 루비 1. 9. 0 버전에 포함되어 있다. MRI를 확장하는 공식적인 구현이다. MRI 루비 인터프리터가 갖는 속도의 한계를 뛰어넘기 위해 만들어진 바이트코드 인터프리터이다. 이것은 소스
puts " # { key } is # { value } " end # Prints : water is wet # fire is hot hash. delete : water # Deletes : water = >'wet'hash. delete - if { | key, value | value = ='hot'} # Deletes : fire = >'hot'블록 ( Block ) 과 반복자 ( Iterator ) [ 편집 ] 코드 블록을 생성하기 위한 두가지 문법이 있다. { puts " Hello, World! " } # { 중괄호 } 에 주목하시오. # 또는 do puts " Hello, World! " end 블록을 사용하여 열거와 배열을 반복하기 array = [ 1,'hi ', 3. 14 ] array. each { | item | puts item } # = > 1 # = >'hi'# = > 3. 14 array. each - index { | index | puts " # { index } : # { array [ index ] } " } # = > 0 : 1 # = > 1 :'hi'# = > 2 : 3. 14 # The following uses a Range ( 3.. 6 ). e
순 만들어진 시기순 영어 기반이 아닌 목록 원본 주소 " " 분류 : 루비 ( 프로그래밍 언어 ) 객체 지향 프로그래밍 언어스크립트 언어ISO 표준1995년 개발된 프로그래밍 언어C로 작성된 자유 소프트웨어BSD 라이선스 소프트웨어동적 프로그래밍 언어자유 컴파일러와 인터프리터숨은 분류 : 참조 오류가 있는 문서영어 표기를 포함한 문서 둘러보기 메뉴 개인 도구 로그인하지 않음토론기여계정 만들기로그인 이름공간 문서토론 변수 보기 읽기편집역사 보기 더 보기 검색 둘러보기 대문사용자 모임요즘 화제최근 [UNK] 문서 보기임의 문서로도움말기부 도구 여기를 가리키는 문서가리키는 글의 최근 [UNK] 올리기특수 문서 목록고유 링크문서 정보위키데이터 항목이 문서 인용하기 다른 프로젝트 공용 인쇄 / 내보내기 책 만들기PDF로 다운로드인쇄용 판 다른 언어 [UNK] IndonesiaItaliano 日 本 語 [UNK] [UNK] [UNK] / [UNK] [UNK] / [UNK] / [UNK] [UNK] [UNK] [UNK] 中 文 [UNK] 語 링크 편집 이 문서는 2019년 6월 12일 ( 수 ) 14 : 06에 마지막으로 편집되었습니다. 모든 문서는 크리에이티브 커먼즈 저작자표시 - 동일조건변경허락 3. 0에 따라 사용할 수 있으며, 추가적인 조건이 적용될 수 있습니다. 자세한 내용은 이용 약관
uts'nop'end # 결과 : # ya n = 0 while n < 3 puts'foobar'n = 1 end # 결과 : # foobar # foobar # foobar 일부 제어구조에서는 반복자 ( Iterator ) 로 대신한다. 문자열 [ 편집 ] 루비에서 문자열을 정의하기 위한 다양한 방법이 있다. 다음의 할당은 동일하며 변수 보간 ( Variable interpolation ) 을 지원한다. a = " [UNK] nThis is a double - quoted string [UNK] n " a = % Q { [UNK] nThis is a double - quoted string [UNK] n } a = % { [UNK] nThis is a double - quoted string [UNK] n } a = % / [UNK] nThis is a double - quoted string [UNK] n / a = < < - BLOCK This is a double - quoted string BLOCK 다음의 할당은 동일하며 원래 그대로의 문자열 ( raw string ) 을 산출한다. a ='This is a single - quoted string'a = % q { This is a single - quoted string } 컬렉션 [ 편집 ] 배열을 사용하여 구성
" color : # # { code } [UNK] " > # { self } < / span > " end end end 생성된 메소드는 이렇게 사용될 수 있다. " Hello, World! ". in - blue = > " < span style = [UNK] " color : # 00f [UNK] " > Hello, World! < / span > " 같이 보기 [ 편집 ] 루비 온 레일즈 ( RoR, Ruby on Rails ) 각주 [ 편집 ] ↑ " Ruby 2. 5. 0 Released ". 《 Ruby Programming Language 》. 2017년 12월 25일. 2017년 12월 25일에 확인함. ↑ 인용 오류 : < ref > 태그가 잘못되었습니다 ; rubyLicense라는 이름을 가진 주석에 제공한 텍스트가 없습니다 외부 링크 [ 편집 ] 공용에 분류가 있습니다. 루비 루비 공식 홈페이지 루비 문서 사이트 한국 루비 사용자 모임 루비 온 레일스 프레임워크 - 루비언어로 구현된 MVC모델 웹 프레임워크 루비 프로그래밍 언어 한국어 문서 - 루비에 관련된 한국어 문서 링크집 루비 Microservices 아키텍처 vdeh자유 - 오픈 소스 소프트웨어일반 자유 소프트웨어란 무엇인가 GNU 프로젝트 오픈 소스 역사 자유 소프트웨어 리눅스 모질라 운영 체제
모든 문서는 크리에이티브 커먼즈 저작자표시 - 동일조건변경허락 3. 0에 따라 사용할 수 있으며, 추가적인 조건이 적용될 수 있습니다. 자세한 내용은 이용 약관을 참고하십시오. [UNK] 미국 및 다른 국가에 등록되어 있는 Wikimedia Foundation, Inc. 소유의 등록 상표입니다. 개인정보 정책 위키백과 소개 면책 조항 개발자 쿠키 정책 모바일 보기
86400 end end today = Time. now # = > Thu Aug 14 16 : 51 : 50 1200 2008 yesterday = today. yesterday # = > Wed Aug 13 16 : 51 : 50 1200 2008 예외 [ 편집 ] begin # 어떤 것을 하는 코드 rescue # 예외를 처리할 코드 else # 예외가 발생하지 않았을 경우 실행할 코드 ensure # 예외가 발생하든 안 하든 실행할 코드 end 메타프로그래밍 [ 편집 ] COLORS = { : black = > " 000 ", : red = > " f00 ", : green = > " 0f0 ", : yellow = > " ff0 ", : blue = > " 00f ", : magenta = > " f0f ", : cyan = > " 0ff ", : white = > " fff " } class String COLORS. each do | color, code | define - method " in - # { color } " do " < span style = [UNK] " color : # # { code } [UNK] " > # { self } < / span > " end end end 생성된 메소드는 이렇게 사용될 수 있다. " Hello
집 루비 Microservices 아키텍처 vdeh자유 - 오픈 소스 소프트웨어일반 자유 소프트웨어란 무엇인가 GNU 프로젝트 오픈 소스 역사 자유 소프트웨어 리눅스 모질라 운영 체제 BSD 다윈 GNU 리눅스 미닉스 오픈솔라리스 ReactOS 하이쿠 개발 GCC LLVM 자바 펄 PHP 파이썬 루비 루아 이클립스 데스크톱 환경 그놈 마테 LXDE KDE SC ROX Xfce 창 관리자 블랙박스 EDE 인라이튼먼트 플럭스박스 I3 IceWM 라이트스텝 오픈박스 PekWM 윈도 메이커 단체 자유 소프트웨어 재단 리눅스 재단 모질라 재단 오픈 소스 이니셔티브 이클립스 재단 Xiph. Org 재단 vdeh프로그래밍 언어 비교 연표 역사 APL 어셈블리어 베이직 C C C # 코볼 포트란 Go 그루비 하스켈 자바 자바스크립트 ( JS ) 코틀린 리스프 루아 오브젝티브 - C 파스칼 펄 PHP 파이썬 루비 러스트 셸 스몰토크 스위프트 비주얼 베이직 닷넷 ( VB. NET ) 더 보기... 분류 목록 알파벳순 분류순 만들어진 시기순 영어 기반이 아닌 목록 원본 주소 " " 분류 : 루비 ( 프로그래밍 언어 ) 객체 지향 프로그래밍 언어스크립트 언어ISO 표준1995년 개발된 프로그래밍 언어C로 작성된 자유 소프트웨어BS
루비(영어: Ruby)는 마츠모토 유키히로가 개발한 동적 객체 지향 스크립트 프로그래밍 언어이다. 루비는 순수 객체 지향 언어라, 정수나 문자열 등을 포함한 데이터 형식 등 모든 것이 객체이다. 기능에는 클래스 정의, 가비지 컬렉션, 강력한 정규 표현식 처리, 다중 스레드, 예외 처리, 반복, 클로저, Mixin, 연산자 오버로드 등이 있다. 구문은 ALGOL계를 계승하면서 가독성을 중시하고 있다. 오랫동안 언어 사양이 명문화되지 않고 마츠모토의 구현 언어 사양에 준하는 것으로 간주되어 왔지만, 2010년 6월 RubySpec으로 언어 사양을 책정 중이다.