달력

4

« 2025/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
최근에 Ruby on Rails를 2.2로 업그레이드 하고,  몇가지 테스트 하면서 다시 공부하를 시작하고 있다.
나름대로 전문가라고 자부하는 경력 5년의 김정현 책임이 요즘 너무나 바빠서 몇가지 물어보려해도 연락 자체가 어려운 실정이다.

작년에 공부하면서 정리했는 문서가 있는데, 이는 한빛 출판사에서 번역한 책으로 "Ruby on Rails: Up and Running"라는 제목을 책을 공부하면서 정리한 것이다. 이책에 대한 정보는 "[도서 추천] Ruby on Rails(초고속 웹 개발의 시작)" 라는 제목으로 이전에 쓴 글이 있는데, 이를 참조하면 책을 이해하는데 도움이 될 것이다.
하지만 최근에 나온 2.2버전과 2.3 버전은 책의 예제를 따라가다보면, 뭔가 이상하다고 느낄 것이다.
다시 말해서, 정상적으로 동작하지 않는다. 왜냐하면 책은 1.2 버전을 기준으로 작성되었기 때문이며, 예제를 테스트하려면, Ruby on Rails 1.2 버전을 설치해야 한다.

내가 이전에 정리하고, 다시 정리한 자료는 이전 버전(1.2)을 기준으로 작성되었다. 정리가 마무리되면 2.2버전으로 차이점과 사용법을 다시 정리할 예정이다.

아래 정리한 내용을 간략하게 소개하면, 기본 환경은 만들고, 서버를 실행하고 간단하게 MVC 프레임워크에 따라 테스트 페이지를 만드는 방법을 순서대로 정리하였다. 


1. Ruby On Rails 환경 만들기
    : Rails의 환경은 만들기 위해서는, 아래와 같이 실행을 시키면 "myApps"라는 디렉토리 아래 관련된 폴더와 파일들이 생성된다. 
    => Rails myApps
 
2. Server Test
    : Rails에서 기본으로 제공하는 WEBrick 서버를 실행시키기 위해서는 아래와 같은 명을 실행하면 된다.
    => ruby script/server
    
    :위와 같이 이를 실행하면, 기본 포트로 3000번을 사용하게된다.
    : 테스트는 다음과 같이 웹브라우져에서 실행한다. http://localhost:3000

 

3. Server의 Port및 환경 수정
    : port 및 기본 설정 사항을 수정하기 위해서는 script/server 스크립트를 수정하면 된다. (text edit에서 수정가능)
 
 
    3.1 script/generate options
        : 아래과 같이 console창에 입력하고 실행하면, Parameter를 입력에 대한 사용법이 표시된다.
        => ruby script/generate
            Usage: script/generate [options] generator [args]
 
            Rails Info:
                -v, --version                   Show the Rails version number and quit.
                -h, --help                       Show this help message and quit.

            General Options:
                -p, --pretend                  Run but do not make any changes.
                -f, --force                      Overwrite files that already exist.
                -s, --skip                       Skip files that already exist.
                -q, --quiet                     Suppress normal output.
                -t, --backtrace               Debugging: show backtrace on errors.
                -c, --svn                       Modify files with subversion. (Note: svn must be in path)


 
4. Controller 생성하기
    : Rails즈의 구조와 Server가 정상적으로 동작하면, 다음과 같이 Controller를 생성할 수 있다.
    => ruby script/generate controller Greeting
    : 생성시, 이전에 만들어진 folder 또는 파일은 skip하고, "Greeting"을 위한 새로운 파일들이 생성됨을 볼수 있다.
 
    4.1 생성된 Controller 테스트
    : 생성된 greeting controller의 동작을 확인하시 위해서 웹브라우저의 주소창에 다음과 같이 실행한다.
    => http://localhost:3000/greeting  (greeting 만 붙여주면 된다.)
    : 그러나 이는 정상적으로 동작하지 않는다. 왜냐하면 빈 껍데기만 생성되어져 있기 때문이다.
    : app/controllers 폴더의 "greeting_controller.rb"를 열고 아래과 같이 코드를 추가,수정한다.
 
        class GreetingController < ApplicationController
          def index
            render :text=> "<h1>Welcome to your first Rails application</h1>"
          end
        end
    
5. View 생성하기
    : view에서 Controller에서 전달해준 데이터를 표시하기 위해서는 view를 생성하면 된다.
    : 아래는 controller과 view를 동시에 생성하는 것인데, 기존에 생성한 controller을 유지하려면 "n"을 누르면 된다.
    => ruby script/generate controller Greeting index
    : app/views/greeting/ 디렉토리 아래 index.rhtml 파일 생성된 것을 console창에서 볼 수 있다.
    : 이전에 생성한 greeting_controller.ry파일에서 index 메소드는 그대로 두고 code만 삭제한다.
    : 브라우져에서 새로 고치기를 하면 새로 만든 뷰가 보여지는 것을 확인할 수 있다.
 
    5.2 Controller와 view 연동하기
    : controller에 @welcome_message 인스턴트 변수를 추가한다.
    -Code in greeting_controller.rb-
        class GreetingController < ApplicationController
          def index
              @welcome_message ="Welcome to your first Rails application"
          end
        end

     -Code in index.rhtml-
        <h1><%= @welcome_message %></h1>
        <p>Find me in app/views/greeting/index.rhtml</p>
 
    : 브라우져를 새로고침해서 원하는 결과가 나왔는지 확인해 보자.

당연히 원하는 결과가 나올 것이다.
:
Posted by 행복상자
인생에 대해서 다신 한번 생각하게 하는 영화를 보았다.
많은 사람들이, 특히 젊을 때는 시간이라는 것이 무한하다고 생각하고, 살고 있는지도 모른다. 그러다가 결혼하고 아이를 갖고, 이 아이가 성장함에 따라서, 인생의 끝을 향해 달려 간다는 것을 깨닫게 된다.

이 영화는 2시간 40분정도로 짦지 않은 시간이지만, 한 아이의, 한 남자의 일생과 사랑을 이야기 하는데는 결코 길지 않은 시간이다. 

이야기는 한 병석에서 마지막 임종을 기다리는 모녀로 부터 시작된다. 그리고 어머니의 부탁으로 읽혀지는 어떤 사람의 일기장과 시간을 모티브로, 벤자민 버튼의 이야기는 그의 비극적인 탄생으로 부터 시작된다.

벤자민의 어머니는 그를 출산하자 곧 죽게되고, 그의 아버지는 그의 흉한 몰꼴을 보고 죽이려고 했으나, 그를 양로원 앞에 버려둔다. 의사는 그가 얼마 못 살거라 했지만, 그는 흑인 부부의 아들로 성장하게 되고 점점 더 젊어지는 기이한 인생을 살게 된다. 

그의 육체의 나이는 정신의 나이와 정 반대의 모습이기 때문에, 80이 노인의 모습일 때는, 다른 노인들과 별 다른 차이를 발견하지 못했지만, 정신적으로는 왕성한 호기심은 여는 아이와 다를 바가 없었다. 여느 아이들은 그 또래의 아이들과 친구였지만, 벤자민의 친구들은 양로원에 의탁되어지는 노인들이었다. 그리고 그들은 벤자민과는 반대로 쇠약해지고, 죽음을 기다리는 사람들이었다. 벤자민은 이들을 통해서 과연 무엇을 배우고 생각하고 있었을까?

벤자민은 육체와 정신이 완전히 반대로 성장하였기 때문에, 노인들이 인생의 끝자락에서 인생을 관망하는 태도를 너무나도 어린 나이에 깨닫게 되었다. 그는 어는 정도의나이가 되었을 때는, 인생을 받아 들이고 수긍하고 인정하는 것들을 남들보다 쉽게 받아 들였다. 그리고, 꿈을 이루는 데도, 나이가 제약이 된다고 생각하지도 않했다. 하지만 아직도 그가 정발로 바라고, 이루어 지기를 소망했던 것이 무엇인지 모르겠다.

벤자민은 다른 사람들이 살고 있는 시간과는 정 반대로 시간을 거슬러서 살기 때문에, 그를 아는 사람들의 죽음을 지켜보아야 했다. 그의 소망은 사랑하는 사람들과 같이 늙으가고, 자신의 죽음을 지켜보아주기를 원하지 않았을까?

정상적인 시간의 흐름에 속하거나, 시간을 거슬러 살거나, 모두에게는 각자의 삶이 있고, 그 삶에는 기쁨과 슬픔 그리고 사랑과 즐거운이 있다. 어떤 사람들은 이를 받아 들이기도 하지만, 어떤 사람들은 이름 받아들이지 못하기도 한다. 운명이라는 갇힌 틀안에서 전혀 선택이라는 것을 할 방법이 없는 상황에서도 때로는 이를 받아들이고 새로운 시작의 기회를 삼아할 할 필요가 있다.

영화에서는 여러 등장인물들을 통해서, 인생을 접하는 여러가지의 모습들을 보여주고 있다. 같은 시대를 살던 사람들에게도 동일한 삶은 없을 뿐더러, 삶을 접하고, 이해하는데는 너무나도 다른 태도와 가치관들이 보인다.

한 남자의 애절한 사랑만이 아니라, 삶을 같이 공유하지 못하는 것이 너무나도 슬플쁜이다.
얼마전에, 한국의 성자이신, 김수환 추기경님이 돌아가셨는데, 많은 분들이 지금도 그분의 죽음을 슬퍼하고 애도하고 있다. 단지 갑작스러운게 돌아가셔서, 안타깝다고만 생각하지 말고, 생전에 바라셨던 것들이 남은 이들의 삶을 통해서 이루었으면 좋겠다. 그 분도 그걸 원하시지 않을까?  


그래서,
가장 행복한 한때는 사랑하는 사람들과 삶을 공유하고, 이야기 할 수 있는 시간인것 같다.

:
Posted by 행복상자
오전에 있었던 강좌에 이어서, 오후에 있었던 3개의 강좌들이다.
사실 모든 강좌들을 다 보게되면, 약 7시간 정도가 필요하다. 전부를 한번에 들어 볼수는없지만, 주제별로 나누어 보면 큰 도움이 될거라 생각이 든다.
강의에 사용되었던 자료들에 대한 링크도 추가한다.

Individual slide sets in PDF format:
:
Posted by 행복상자

우연히 YouTube 사이트를 검색하다가 Ruby on Rails에 대한 동영상 강좌가 올라와 있는 것을 발견하였다. 하루동안 버클리 대학에서, 세미나가 진행 되었던 것들인데, 주제별로 잘 나누어져 있어서, 처음 접하는 사람들이 Ruby on Rails를 이해하고 공부하는데 큰 도움이 될거라 생각된다.
세미나는 "Ruby on Rails Short course"라는 제목으로 열렸는데, 동영상은 영어로 진행되어서 이해하기가 어려울 수 있다. 더군다나, 말하느 속도도 상당히 빨라서, 집중해서 들어야 한다. 하지만, 레일즈의 데모를 보면 쉽게 이해 할 수 있을 것이다. 레일즈가 유명해진 것도 15분 내외의 데모 동영상을 통해서 알려 졌으니 말이다.

아래에 첨부한 동영상들은 오전에 있었던 강의 동영상 들이다.
그리고 강의에 사용되었던 자료들의 링크이다.

Individual slide sets in PDF format:


Ruby on Rails Short Couse:

Ruby on Rails - Part 1: Hello World
 

Ruby on Rails - Part 2: Just Enough Ruby

Ruby on Rails - Part 3: Basic Rails

 

:
Posted by 행복상자