19. 웹 애플리케이션
수천만 대의 PC에 굳이 소프트웨어를 배포해서
설치하지 않아도 웹 애플리케이션을 유지 관리할
수 있다는 점이 장점 중의 하나이다.
웹 애플리케이션은 웹 메일, 온라인 전자상거래 및
경매, 위키, 인터넷 게시판, 블로그 및 MMORPG
게임 등 다양한 기능을 구현할 수 있다.
20. 프레임워크
프로그래밍에서 특정 운영 체제를 위한 응용
프로그램 표준 구조를 구현하는 클래스와
라이브러리 모임이다.
간단하게 프레임워크라고도 부른다.
재사용할 수 있는 수많은 코드를 프레임워크로
통합함으로써 개발자가 새로운 애플리케이션을
위한 표준 코드를 다시 작성하지 않아도 같이
사용된다.
21. 웹 애플리케이션 프레임워크
웹 브라우저에서 이용할 수 있는 응용
소프트웨어를 만들기 위해
개발자가 새로운 애플리케이션을 위한
표준 코드를 다시 작성하지 않아도 되도록
클래스와 라이브러리(코드덩어리)를 모아놓은것
22. Ruby
루비는 마츠모토 유키히로가 개발한 프로그래밍
언어이다.
루비는 간결함과 생산성을 강조한 동적인 오픈
소스 프로그래밍 언어입니다.
루비의 우아한 문법으로 자연스럽게 읽히고 쓰기
편한 프로그램을 만들 수 있습니다.
- 루비 공식 홈페이지
23. 컴퓨터를 배운지 얼마 되지 않았을 때, 나는 프로그래밍 언
어에 관심을 갖게 되었습니다. 당시 이상적인 프로그래밍
언어는 반드시 이룰 수 있는 것이라고 믿었고, 가능하면 그
런 언어를 만드는 디자이너가 되고 싶었습니다. (중략)나는
행복해지기 위해서 살아간다고 믿습니다(적어도 어느 부
문에서는). 이런 믿음에 따라, 루비는 프로그래밍을 쉬우면
서도 즐거운 일로 만들기 위해 디자인 되었습니다. 루비는
여러분이 프로그래밍의 창조적인 면에만 집중할 수 있도
록 해주고, 스트레스를 줄여줄 것입니다.
- 마츠모토 유키히로,Programming Ruby의 추천사에서
26. Ruby On Rails 학습 자료
• 이범재 Ruby On Rails 링크 모음
https://kr.pinterest.com/beomjae/ruby-on-rails/
• Rails Tutorial
https://www.railstutorial.org/book
• Go Rails
https://gorails.com/
• ROR LAB
http://rorlab.org/
37. 간단한 터미널 명령어
• ls : 현재 디렉토리(폴더)의 파일목록 조회
• cd : 해당 디렉토리로 이동
cd rails : rails 디렉토리로 이동
cd .. : 상위 디렉토리로 이동
• mkdir : 디렉토리를 생성하는 명령
mkdir helloworld : helloworld 디렉토리를 생성
38. 레일즈 프로젝트 생성
• 터미널에서 rails new 명령어를 이용하여 레일즈
프로젝트를 생성합니다.
rails new step1
cd step1
54. 제주비앤비
• rails g controller Houses index show
• /app/houses/index 페이지 작성
• /app/houses/show 페이지 작성
• /app/views/layouts/application.html.erb 수정
- 로고 추가
- 메뉴 추가
• rails g model House name description:text address tel
• rails console
House.create({…})
• houses콘트롤러 index 액션 메소드 수정
House.all
• /app/views/houses/index.html.erb 수정
• houses콘트롤러 show 액션 메소드 수정
House.find(id)
• /app/views/houese/show.html.erb 수정
55. 레일즈 프로젝트 생성
• 터미널에서 rails new 명령어를 이용하여 레일즈
프로젝트를 생성합니다.
cd /workspace/rails
rails new jejubnb
cd jejubnb
85. 게스트하우스 목록 데이터 흐름
1. 콘트롤러에서 게스트하우스 데이터를 가져와
서 변수에 저장
@house = House.all
2. 변수를 뷰에 넘겨줍니다.
3. 뷰에서 받아서 HTML 화면에 표현합니다.
86. house콘트롤러에서 목록 데이
터 가져오기
/app/controller/houses_controller.rb 열기
def index
@houses = House.all
end
87. 뷰에서 데이터 보여주기
/app/views/houses/index.html.erb 수정
<% @houses.each do | house | %>
<div class="guesthouse">
<h3><%= house.name %></h3>
<p><%= house.description %></p>
</div>
<% end %>
88. 멘토가 부자가 되게 하려면 어
떻게 해야 할까?
1. 멘토의 계좌번호를 받는다.
2. 거액의 돈을 입금한다.
3. 멘토가 부자가 되었다.
89. 특정 게스트하우스 정보 보여주
려면 어떻게 해야할까?
1. 원하는 게스트하우스의 id번호를
받는다.
2. id를 이용해서 데이터베이스로부터
게스트하우스 정보를 가져온다.
3. 가져온 정보를 보여준다.