루비 파일 입출력

루비 파일 입출력가장 중요한 건 역시 파일 다루기 이겠다. 여기에서 다룰 내용은 다음과 같다. 기본 파일 입출력 파일 삭제, 이름 변경, 권한 변경 파일 정보 가져오기 파일 위치 조작 고수준 입출력 장치들 디렉토리 표준출력은 puts와 print 메서드를, 표준입력은 gets를 이용한다.#!/usr/bin/rubyprint "Enter a value ...

서버 프로그램 개발을 위한 ruby Gserver

서버 프로그램 개발을 위한 ruby Gserver여자처자 해서 간만에 서버 프로그램을 만들어야 했다. 예전 같으면 를 쓸 수 있는 상황이 아니다. Persistant한 통신채널을 유지해야 하기 때문이다. 최근 ruby 언어를 사용하고 있으니, ruby기반으로 서버 프로그램을 간단히 만들 수 있는 무언가 있을 거라고생각해서 찾은게 "GServer"이다. G...

Ruby JSON 활용

Ruby JSON 활용1.9.2에는 bundle 형태로 루비와 함께 제공된다. 1.8.7 버전의 경우 gem으로 설치해야 한다.# gem install jsonhash 자료구조를 그대로 json 포맷으로 만들 수 있다.#!/usr/bin/rubyrequire rubygemsrequire jsonmyinfos = { "name"=>"yundream", "a...

ruby base64 이코딩 및 디코딩

ruby base64 이코딩 및 디코딩Base64 모듈은 base64 인코딩을 위한 encode64, strict_encode64, urlsafe_encode64 메서드와 디코딩을 위한 decode64, strict_decode64, urlsafe_decode64 메서드를 제공한다. 간단한 인코딩, 디코딩 예제require base64enc = Base6...

NET::HTTP를 이용한 웹 클라이언트 개발

NET header까지 제어해야 했다. 해서 꽤 많은 일을 할 수 있는 HTTP client api를 찾아야 했다. 그렇게 찾은게 NETHTTP 요청은 꽤 많은 구성요소를 가진다. "프로토콜require uriuri = URI("httpputs uri.scheme # http puts uri.host # www.joinc.co.krputs uri.port...

루비 블럭, Procs, Lambdas 이해하기

루비 블럭, Procs, Lambdas 이해하기루비의 블럭, Procs, 람다(Lambdas)는 강력한, 때로는 마법처럼 보이기도 하는 기능이지만 이해하기 어려운 기능이기도 하다. 다른 언어에서 쉽게 찾아볼 수 있는 기능이 아니기 때문이다. 특히 C, C++, Java, PHP등의 언어를 기본으로 하고 있다면 더욱 그렇다. 이들 언어는 클로저(Closur...

Rack

Rack Rack은 Ruby 기반의 웹 애플리케이션 개발을 위한 인터페이스를 제공하는 소프트웨어다. Rack의 가장 간단한 응용은 웹서버의 요청을 받아서 웹 프레임워크로 전달하고 응답을 웹서버로 전달하는 미들웨어 소프트웨어의 개발이다. Rack는 웹 서버로의 요청을 처리해서 웹 프레임워크로 전달하고, 웹 프레임워크의 응답을 처리해서 웹 서버로 전달하기 위...

Ruby thread

Ruby thread새로운 언어를 배워야 겠다는 생각이 들적에 사용하는 나름의 방식이 있다. 1. 문법은 대략 쭉 훑어 본다. 문법을 외울 것도 아니고, 그럴 필요성도 못 느끼겠다. 쭈욱 읽어 내려간 다음, 몇 줄이라고 코드를 짜보면서 익힌다. 1. 자료구조 관련된 것들 훑어본다. 배열, 해쉬, 맵, set 등등 1. 파일 관리 쪽 본다. 1. 를 본...

Ruby Tutorial - 루비 언어 튜토리얼

Ruby Tutorial - 루비 언어 튜토리얼 책을 사기는 귀찮고, 언어에 대한 기본적인 이해는 있다고 생각되니 Tutorial로 쉽게 언어를 익히는게 좋겠다고 생각. Tutorial 문서를 찾아서 구글 검색을 해봤더니.. 이 첫번째로 나온다. 이것 저것 생각하기 귀찮아서 이 문서로 공부 해 보기로 했다. 언제나 그렇듯이 우분투 리눅스환경이다. 현재(2...

ruby tutorial2 - Class

ruby tutorial2 - Class클래스와 객체지향에 대한 내용은 링크를 참고한다. 언어를 막론하고 클래스의 개념은 크게 다르지 않으므로, 다른 객제 지향언어를 다룬 적이 있다면 쉽게 이해할 수 있을거다. java, python, c++ 경험이 있다면 금상첨화. 객체는 클래스로부터 만들어지는 구현물이다. 클래스는 사물의 "특성"과 "행동방식"을 정의...