Tiểu Luận Tổng quan về ngôn ngữ Ruby - các vấn đề hiện đại của công nghệ phần mềm

28 1.3K 6
Tiểu Luận Tổng quan về ngôn ngữ Ruby - các vấn đề hiện đại của công nghệ phần mềm

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mục lụcChương 1: Ngôn ngữ lập trình Ruby 41. Lịch sử hình thành .42. Giới thiệu về ngôn ngữ ruby .43. Xem mọi thứ như hướng đối tượng 44. Ruby là một ngôn ngữ mềm dẻo và linh hoạt .5Chương 2: Ngôn ngữ Ruby . 61. Biến trong ruby .62. Các dạng dữ liệu trong ruby 62.1. Số 62.2. Ký tự .63. Mảng trong ruby 74. Cấu trúc điều khiển trong ruby .75. Vòng lặp trong ruby 95.1. While .95.2. Util 95.3. For .95.4. Cấu trúc liệt kê .95.5. Hash 105.6. Có một vấn đề trong đây là Blocks 116. Lớp và modules .127. Thừa kế trong Ruby 14Chương 3: Framework Rails . 161. Thế nào là framework .162. Mô hình MVC .162.1. Khái quát về mô hình MVC .162.2. Các thành phần của mô hình MVC 162.3. Ưu và nhược điểm của mô hình MVC .173. Ruby on Rails 183.1. Nguồn gốc của Rails 183.2. Mô hình MVC với Rails 183.3. Tự động sinh code trong Rails .193.4. Vòng đời phát triển một ứng dụng trong Rails 193.5. So sánh Ruby on Rails với Java và PHP .20Chương 4: Cài đặt và phát triển môi trường Rails 221. Các môi trường cụ thể để phát triển Ruby on Rails 222. Cách cài đặt môi trường phát triển Ruby on Rails 223. Cài đặt công cụ hỗ trợ code .22Chương 5: Những vấn đề cụ thể của Rails 241. Bộ công cụ để phát triển .242. Đặc điểm cơ bản với cơ sở dữ liệu của Ruby on Rails .252.1. Giới thiệu Active Record .262.2. Đánh giá Active Record với các hệ csdl khác .262.3. Thao tác sử dụng Active Record .26Chương cuối: Tổng kết . 28Phụ Lục 28Tài liệu tham khảo 28Tieu Luan Tong quan ve ngon ngu Ruby - cac van de hien dai cua cong nghe phan mem

CÁC VẤN ĐỀ HIỆN ĐẠI CỦA CÔNG NGHỆ PHẦN MỀM Chủ đề: Tổng quan ngôn ngữ Ruby Giảng viên: TS Trương Anh Hoàng Thành viên: Nhữ Tuấn Anh Đào Đức Thịnh Đàm Thái Nhiên Hà Nội 01/10/2012 Mục lục Chương 1: Ngơn ngữ lập trình Ruby Lịch sử hình thành Giới thiệu ngôn ngữ ruby Xem thứ hướng đối tượng 4 Ruby ngôn ngữ mềm dẻo linh hoạt Chương 2: Ngôn ngữ Ruby Biến ruby Các dạng liệu ruby 2.1 Số 2.2 Ký tự Mảng ruby Cấu trúc điều khiển ruby Vòng lặp ruby 5.1 While 5.2 Util 5.3 For 5.4 Cấu trúc liệt kê 5.5 Hash 10 5.6 Có vấn đề Blocks 11 Lớp modules 12 Thừa kế Ruby 14 Chương 3: Framework Rails 16 Thế framework 16 Mơ hình MVC 16 2.1 2.2 Các thành phần mô hình MVC 16 2.3 Khái qt mơ hình MVC 16 Ưu nhược điểm mô hình MVC 17 Ruby on Rails 18 3.1 Nguồn gốc Rails 18 3.2 Mơ hình MVC với Rails 18 3.3 Tự động sinh code Rails 19 3.4 Vòng đ ời phát triển ứng dụng Rails 19 3.5 So sánh Ruby on Rails với Java PHP 20 Chương 4: Cài đặt phát triển môi trường Rails 22 Các môi trường cụ thể để phát triển Ruby on Rails 22 Cách cài đặt môi trường phát triển Ruby on Rails 22 Cài đặt công cụ hỗ trợ code 22 Chương 5: Những vấn đề cụ thể Rails 24 Bộ công cụ để phát triển 24 Đặc điểm với sở liệu Ruby on Rails 25 2.1 Giới thiệu Active Record 26 2.2 Đánh giá Active Record với hệ csdl khác 26 2.3 Thao tác sử dụng Active Record 26 Chương cuối: Tổng kết 28 Phụ Lục 28 Tài liệu tham khảo 28 Chương 1: Ngôn ngữ lập trình Ruby Lịch sử hình thành Ruby ngơn ngữ lập trình hướng đối tượng, có khả reflection Cú pháp bị ảnh hưởng từ Ada Perl với đặc tính hướng đối tượng Smalltalk, chia sẻ số đặc tính với Python, Lisp, Dylan CLU Ruby tạo Yukihiro “Matz” Matsumoto từ 24 tháng 2, 1993 đưa thức vào năm 1995 Ruby chịu nhiều ảnh hưởng từ Perl, hồn tất ngơn ngữ này, anh đùa v ới người bạn nên đặt tên nghe cho giống thứ đá quý (Perl lúc đầu đặt tên Pearl - ngọc trai) Và bạn anh gợi ý tên Ruby Sau Matz bất ngờ phát Pearl viên đá quý tư ợng trưng cho người sinh tháng 6, cịn Ruby tượng trưng cho người sinh tháng Anh cho tên Ruby phù hợp Ruby kế thừa phát triển nhiều đặc tính từ Perl Tháng năm 2005, phiên ổn định 1.8.3 Ruby 1.9 (với số thay đổi) trình phát triển Giới thiệu ngơn ngữ ruby Thay định nghĩa Ruby tơi xin trích ngun văn lời giới thiệu Ruby cộng đồng Ruby sau: “Ruby ngơn lập trình mã nguồn mở, linh hoạt, với bật đơn giản dễ dùng hữu ích Nó có cú pháp “tao nhã” tự nhiên dễ đọc dễ dàng để viết” Và theo tác giả ngôn ngữ Ruby, anh Yukihiro “matz” Matsumoto người Nhật, tác giả người ưa thích ngơn ngữ như: Perl, Smalltalk, Eiffel, Ada, Lisp Tác giả cố gắng kết hợp cách thận trọng ngôn ngữ với từ tạo Ruby Có lẽ mà Ruby ngôn ngữ với câu lệnh cú pháp quen thuộc học Một vài đặc điểm nhận thấy ngôn ngữ Ruby là:   Ruby có cú pháp ngắn làm nhiều việc Ruby ngôn ngữ hướng đối tượng Xem thứ hướng đối tượng Với Ruby, thứ đối tượng Mọi bit thơng tin hay code đưa cho chúng việc sở hữu thuộc tính hay hành động Trong lập trình hướng đối tượng thuộc tính gọi biến thực thể (instance variables) hành động gọi phương thức Ruby hướng đối tượng “tinh khiết”, điều thấy bit code mà thực hành động với số Số coi đối tượng có phương thức làm times Đoạn code in lần dòng “We *love* Ruby”: 5.times{ print "We *love* Ruby" } Đa số ngôn ngữ khác, số số kiểu liệu nguyên thủy khác không coi hướng đối tượng Nhưng Ruby theo ảnh hưởng lớn ngôn ngữ Smalltalk việc đưa phương thức thực thể biến tới tất kiểu Điều tạo nên thống dế dàng sử dụng Ruby với tất đối tượng Ruby ngôn ngữ mềm dẻo linh hoạt Ruby coi ngôn ngữ mềm dẻo linh hoạt, từ cho phép người dùng tự sửa đổi phần cốt lõi Các phần cốt lõi Ruby rời định nghĩa lại ý muốn Các phần hữu thêm vào Ruby cố gắng không hạn chế nhà lập trình Chương 2: Ngơn ngữ Ruby Trong chương nói qua tổng thể vấn đề với Ruby Các bạn hiểu Ruby Và bạn thao tác với vấn đề ngôn ngữ Ruby Biến ruby Biến ruby không cần khai báo kiểu Khi gán giá trị cho biến tự động nhận kiểu, nhận giá trị cho biến Ví dụ: User =”user” Puts user => user Khai báo biến ruby làm cho ngôn ngữ trở lên linh hoạt Biến toàn cục ruby: thêm @ trước biến trở thành biến tồn cục để sử dụng tác động chương trình Cịn khơng có @ biến địa phương sử dụng phần chương trình Mỗi biến ruby đối tượng Nhờ vào vấn đề này, bạn tác động đến vấn đề biến: chuyển kiểu, ghép biến với Nhờ có tính chất biến ruby tương tác với cách dễ dàng Ví dụ: @u =”Ngon ngu” “{#@u} lap trinh”=> “Ngon ngu lap trinh” Cũng đảo ngược chuỗi viết hoa … Các dạng liệu ruby Ruby ngôn ngữ hướng đối tượng Ở thành phần liệu từ số, ký tự, mảng xây dựng sở lớp 2.1 Số Cấu trúc phân cấp liệu dạng số Ruby: Các dang liệu kiểu số xây dựng từ lớp Numeric Kiểu số nguyên: Integer có hai dạng Fixnum với độ dài 31 bits Bignum có độ dài tùy ý Kiểu số thực thể qua lớp Float Bên cạnh số kiểu liệu khác khơng có sẵn đinh nghĩa thư vi ện chuẩn Ruby 2.2 Ký tự String lớp dùng để thể chuỗi ký tự Khác với Java String Ruby “mutable” String Ruby khai báo dấu ngoặc đơn ngoặc kép Với dạng chuỗi đặt dấu nháy đơn ‘’ ký t ự \ có ý nghĩa sau ký tự \ ‘ Bên cạnh chuỗi nháy đơn viết xuống dịng hiển thị thành nhiều dòng tương ứng Với dạng chuối dấu nháy kép “” nhiều ký tự đặc biệt hỗ trợ, ví dụ \n, \t java Bên cạnh chuối dấu nháy kép cịn thị kết biểu thức thơng qua ký tự # Mảng ruby Mảng khai báo trực tiến thơng qua đối tượng Array Ví dụ: Arr= [1,2,3,4,5,6] Arr= Array.new Cách đánh số mảng Ruby đánh từ đến số phần tử -1 Ruby việc xếp thành phần mảng linh hoạt mềm dẻo Ta khai báo mảng chiều gồm phần tử đơn: arr = [1,2,3,4,5,6] Hoặc mảng lồng: arr = [[1,2],[3,4,5,6],[7,8,9]] Hoặc mảng trích xuất subArr = arr[0,2]#subArr = [[1,2],[3,4,5,6]] Các mảng tương tác với thơng qua toán tử +,-,*… Với phép + ta cộng hai mảng với nhau: ar= [1,2,3] +[4] # ar=[1,2,3,4] Với phép trừ phần tử mảng mảng trừ loại bỏ phần tử có mảng bị trừ ar= [1,2,3] -[2] # ar=[1,3] Với phép nhân, ta nhân mảng với số kết cho ta số phần tử mảng lặp lại theo giá trị nhân: ar= [1,2,3]*2 # ar= [1,2,3,1,2,3] Các mảng đính thêm phần tử với phép toán "Nhan vat lich su", "tinh cach"=>"yeu nuoc" } Với mảng Hash, ta có persons[xep loai] = "Nhan vat lich su" Mảng Hash không sử dụng số (index) để truy vấn liệu mà sử dụng từ khóa (clef) để liên kết với liệu liên quan Mảng Hash giống mảng Array nên thừa hưởng phương thức each persons = { HelloWorld.rb:20:in `testPrivate': private method `myTest' called for #(NoMethodError) from HelloWorld.rb:28 Bên cạnh Ruby biến lớp đặt private, số public Thừa kế Ruby Là ngôn ngữ hướng đối tượng nên Ruby có đầy đủ tính chất tính đa hình, đóng gói… kế thừa class Parent def printOut puts "This is Parent class" end end class Child def printOut puts "This is Child Class" end end Modules Modules nhóm thành phần hàm, biến, số chạy độc lập module MyModule def MyModule.intro puts "This is the intro of modul" end def MyModule.sayHello puts "Hello" end end class MyClass include(MyModule) def sayHello MyModule.sayHello end end myClass = MyClass.new myClass::sayHello Một chương trình có th ế gồm nhiều file, với ngôn ngữ script Ruby vi ệc phân chia chương trình thành file chứa module khác nhau.Các file sau sử dụng thơng qua lời gọi require load chương trình Chương 3: Framework Rails Đến với chương bạn biết framework, mơ hình kiến trúc nó, đặc điểm framework Rails đánh giá với framework khác Thế framework Framework thư viện code, thiết kế để giúp đỡ việc phát triển phần mềm Framework tạo ứng dụng thiết kế dựa vào thư viện phát triển theo ngôn ngữ để tạo người lập trình dễ dàng để phát triển phần mềm cách nhanh nhóng hiệu Khi phát triển phần mềm dựa vào framework vi ệc phát triển trở lên thuận lợi với người lập trình giảm bớt thời gian tập trung vào việc code để tập trung vào việc giải vấn đề liên quan đến logic điều làm tăng hiệu người lập trình Mơ hình MVC Ngày framework thiết kế website sử dụng mơ hình MVC để phát triển mơ hình có đặc điểm mà framework đư ợc sử dụng để phát triển vậy? 2.1 Khái qt mơ hình MVC MVC viết tắt Model – View – Controller Nó kiến trúc phần mêm hay mơ hình thiết kế sử dụng kỹ thuật phần mềm, giúp cho người lập trình tách ứng dụng họ thành ba thành phần khác Model, View Controller Mỗi thành phần có nhiệm vụ riêng biệt độc lập với thành phần khác 2.2 Các thành phần mơ hình MVC Dưới sơ đồ mơ hình MVC: Các thành phần mơ hình MVC có quan hệ chặt chẽ với Các thao tác lặp lại tiếp nhận yêu cầu người dùng Như hình có th ể thấy mơ hình MVC gồm thành phần chính: Model, View Controller Model: Gồm hoạt động liên quan đến sở liệu, thao tác với sở liệu thực gồm: chuẩn hóa, phân tích đánh giá… View: Phần liên quan đến người dùng Nó phần hiển thị với người dùng Nó đưa thơng tin cụ thể đến với người dùng cách cụ thể Và nhận tương tác người dùng hệ thống Controller Controller chịu trách nhiệm phân phối ứng dụng Nó nhận kiện từ bên ngoài, tương tác với Model để xử lý thông tin Sau xử lý tác động liên quan đến hệ thống truyền đến View để hiển thị với người dùng Như dễ dàng thấy tương tác thành phần mơ hình thơng qua controller Controller cầu lối View Model Nó điều khiển liệu sau đưa thơng tin cần thiết cho người dùng 2.3 Ưu nhược điểm mơ hình MVC  Ưu điểm mơ hình MVC: Mơ hình MVC làm tăng khả phát triển mở rộng ứng dụng   Mơ hình MVC khiến cho việc bảo trì trở lên dễ dàng hơn: thành phần phụ thuộc thấp với nhau, thay đổi khơng ảnh hưởng đến khác  Các thành phần mơ hình MVC đư ợc sử dụng lại: ví dụ model sử dụng cho nhiều phần hiển thị ngược lại  Mơ hình MVC phân tán: chia cách biệt code thành phần có ý nghĩa thành phần chúng máy tính riêng, thấy cần thiết  Nhược điểm mơ hình MVC: Đối với dự án nhỏ áp dụng mơ hình MVC gây cồng kềnh, tốn thời gian trình phát triển tốn thời gian luân chuyển qua tầng Ruby on Rails 3.1 Nguồn gốc Rails Đầu tiên, tơi muốn giới thiệu với bạn nguồn gốc hình thành framework Ruby on Rails Rails mắt công chúng lần vào năm 2004, Rails đầu dùng tảng cho công cụ quản lý dự án đặt tên Basecamp tạo nhà phát triển web David Heinemeier Hansson, nhân viên công ty phát triển web 37signals (Mỹ) Ban đầu họ xây dựng Rails với mục đích xây dựng framework riêng, chủ tâm ban đầu dùng để xây dựng ứng dụng khác 37signals Sau Heinemeier Hansson thấy tiềm giúp cho anh làm công việc dễ dàng cách rút tính phổ biến trừu tượng sở liệu khn mẫu(template) bên trong, sau trở thành phiên tung Ruby on Rails Trên thực tế Rails rút trích từ Basecamp, chương trình mà cộng đồng Rails cho q trình làm chương trình gặp giải nhiều vấn đề phức tạp Và Rails, framework bắt nguồn từ chương trình thừa kế sức mạnh từ dự án Vì Rails ln sẵn sàng giải vấn đề thực tế tồn trình phát triển web Ngồi ra, ban đầu Rails xây dựng cịn với mục đích để xây dựng ứng dụng khác từ nó, Rails trước xuất giới chứng minh thân framework hữu dụng, chặt chẽ toàn diện Sau phiên tung cộng đồng Rails đóng góp bổ sung hàng mở rộng nó, sửa lỗi tìm thấy Và phiên Rails phiên 2.0.2 3.2 Mơ hình MVC với Rails Hiện mơ hình MVC sử dụng hầu hết framework phát triển ứng dụng web Rails không ngo ại lệ Rails dự mơ hình MVC đ ể phát triển framework Cấu trúc mơ hình MVC rõ ràng Điều làm cho người lập trình đẽ dàng phát triển ứng dụng Hiện chương giới thiệu vấn đề Rails nên nói sơ qua phần để làm rõ đư ợc mơ hình mà framework xử dụng Cịn mục sau làm rõ tác động cụ thể mơ hình MVC Rails 3.3 Tự động sinh code Rails Ta nói đến Rails với việc sinh code tự động Khi bạn phát triển Rails, có thư mục hay file nơi để bạn điền code vào, tất phần ứng dụng bạn tương tác với cách thức chuẩn Hay chuẩn bị sẵn khung chương trình trước cho bạn, điều giúp bạn đơn giản việc điền đoạn code login vào ứng dụng tích kiệm giảm tải cơng việc bạn Và nhờ có khung định nghĩa sẵn này, Rails cung cấp generate, rake, script cho phép bạn nhanh chóng tạo, xóa số template để bạn định nghĩa model, view ,controller, hay database sở liệu 3.4 Vòng đ ời phát triển ứng dụng Rails Rails động viên sử dụng điều kiện khác cho giai đoạn chu trình vịng đời ứng dụng(phát triển,kiểm tra, sản phầm) Nếu bạn hoàn thành việc phát triển ứng dụng web khoảng thời gian, có lẽ cách để bạn thực Rails hợp thức hóa mơi trường Development điều kiện development, thay đổi tới code nguồn ứng dụng lập tức; tất cần làm load lại trang tương ứng trình duyệt Tốc độ khơng phải yếu tố định điều kiện này; Thay vậy, mục tiêu cung cấp cho người phát triển nhìn xuyết suốt thành phần có liên quan đến việc hiển thị trang web Khi lỗi xảy điều kiện phát triển, nhà phát triển nhìn thống qua để biết dịng code gây lỗi, dòng gọi tới Khả cung cấp stack trace(bao gồm đầy đủ danh sách phương thức gọi để chuẩn bị cho lỗi), hiển thị lỗi không trông đợi xảy Test Trong điều kiện kiểm tra, thường làm mới(refresh) sở liệu với ranh giới liệu giả cho lần kiểm tra lặp lại-điều đảm bảo kết kiểm tra quán, cách xử lý có khả tăng thêm Unit thủ tục kiểm tra tự động hóa hịan tồn Rails Khi kiểm tra ứng dụng Rails, khơng xem sử dụng trình duyệt web truyền thống Thay vậy, kiểm tra gọi từ dịng lệnh, chạy background Điều kiện kiểm tra cung cấp môi trường chuyên dụng để xử lý hoạt động đem lại hiệu Production Giai đoạn mà ứng dụng bạn hoàn thành, mà kết kiểm tra tốt, lỗi loại Khi việc thay đổi code hiếm, điều có nghĩa mơi trường sản phẩm lạc quan để tập trung vào việc sử dụng Nhiệm vụ viết số lượng lớn log cho mục đích gỡ trở nên không cần thiết Tuy nhiên, lỗi xảy ra, bạn không muốn làm người dùng sợ hãi với thông báo dấu vết khó hiểu(nó tốt giai đoạn phát triển) Với nhu cầu khác cho điều kiện,giai đoạn, Rails lưu trữ liệu cho điều kiện liệu tách biệt hoàn toàn Bởi vậy, thời điểm nào, bạn có:  Dữ liệu trực tiếp với người dùng thực tương tác môi trường điều kiện sản phẩm  Một copy liệu trực tiếp mà bạn sử dụng để gở rối lỗi hay phát triển tính môi trường điều kiện phát triển  Một liệu kiểm tra bạn liên tục làm việc load lại môi trường điều kiện kiểm tra 3.5 So sánh Ruby on Rails với Java PHP Để đánh giá framework, người ta dựa vào yếu tố: tốc độ phát triển (Dev Speed), khả bảo trì (maintainability), cơng cụ hỗ trợ (Dev Tools)và khả mở rộng thay đổi (Scaling) Như theo lược đồ đánh giá trên, thấy framework có điểm mạnh – yếu riêng Với RoR, tốc độ phát triển khả bảo trì Vậy đâu yếu tố quan trọng yếu tố để đánh giá framework nên sử dụng Theo Tim Bray nhiều chun gia, tính bảo trì, ứng dụng xây dựng đa số sử dụng thời gian dài, thực tế cho thấy chi phí cho cơng tác bảo trì ln khơng nhỏ Mặt khác, với hỗ trợ mơ hình MVC, độ dễ hiểu độ dài code cũn g cải thiện so với PHP Java Ngồi yếu tố trên, nêu thêm yếu tố cụ thể sau ảnh hưởng tới tầm quan trọng RoR so với framework khác Đó giải pháp mã nguồn mở khả thương mại Với giải pháp mã nguồn mở, RoR dung hịa tính dễ học PHP cấu trúc chặt chẽ Java Còn khả thương mại, tảng J2EE NET sử dụng cơng ty lớn với tính ổn định an toàn chặt chẽ việc quản lý khối lượng lớn liệu RoR đảm bảo nhiệm vụ tương tự với giá thành hạ Chương 4: Cài đặt phát triển môi trường Rails Như chương trước đề cập đến vấn đề framework nói chung số điều liên quan đến framewoerk Rails Chương đề cập đến cài đặt để phát triển môi trường để học đ ể chạy ngôn ngữ Rails Các môi trường cụ thể để phát triển Ruby on Rails Hầu mơi trường phát triển framework Bạn cài đặt hệ điều hành Window, Linux Mac Nhưng học tập phát triển trang web nhà lập trình thường sử dụng Linux Mac Để có server để thực thi hệ thống phát triển Rails người phát triển thường chọn sever Linux Cách cài đặt môi trường phát triển Ruby on Rails Ở hướng dẫn bạn cài đặt môi trường phát triển Rails Windown B1: Truy cập vào trang web railsinstaller.org download gói “web the kit “ B2: Chọn cài đặt gói vừa tài kích đúp vào Chọn next sau chọn install chương trình B3: Bỏ tích đánh dấu khỏi dịng “Configure git and ssh when installation has completed”và chọn finish B4: Từ hình cmd bạn gõ: rails new project1 ấn enter B5: Di chuyển vào thư mục project1 gõ: rails s enter B6: Bạn dùng trình duyệt gõ vào địa chỉ: “localhost:3000” hình hình hiển thị “welcome aboard” tức bạn cài đ ặt thành công Cài đặt công cụ hỗ trợ code B1: Bạn download công cụ sublimetext trang http://www.sublimetext.com/ B2: Cài đặt sublimetext B3: Sau cài đặt xong sublimetext ta di chuyển vào thư mục cài đặt mặc định là: C:\Program Files\Sublime Text B4: Copy file sublime_text.exe vào thư mục đổi tên “subl” B5: Copy đường dẫn thư mục chứa file “subl” B6: Kích phải chuột vào "My Computer", chọn "Advanced System Settings", chọn "Environment Variables", kéo xuống tìm "Path", chọn "Edit" Thêm ";" vào cuối dòng dán đường link vừa vào B7: Khởi động lại Command line chọn đường dẫn project : gõ “subl” để mở Sublime text Khi hoàn thành xong mục bạn t ạo thành công môi trường phát triển công cụ hỗ trợ code Đến bạn học phát triển ứng dụng web framework Rails Bây hồn thành mơi trường phát triển có kiến thức ngơn ngữ Ruby bạn có tìm hiểu vấn để phát triển Ruby on Rails Còn bạn muốn thực thi môi trường Rails hệ thống khác bạn xem thêm mục tài liệu kham khảo Chương 5: Những vấn đề cụ thể Rails Bộ công cụ để phát triển Rake: công cụ xây dựng viết Ruby, Có khác biệt lớn Rake công cụ khác.Tất công việc viết ngơn ngữ Ruby Vì vậy, thừa hưởng tính linh hoạt, đầy đủ tận dụng lợi số tính tốt Ruby Cài đặt: Để cài đặt Rake, từ cmd ta gõ lệnh : “ gem install rake “ enter Chức năng:  Rake hỗ trợ mơ hình quy tắc tổng hợp nhiệm vụ ngầm  Người dùng xác định nhiệm vụ với điều kiện tiên  Một thư viện nhiệm vụ đóng gói sẵn để thực xây dựng rakefiles dễ dàng  FileLists linh hoạt hoạt động mảng hiểu thao tác tên tập tin đường dẫn Các hỗ trợ nhiệm vụ : Di chuyển đến thư mục cần kiểm tra , gõ lệnh : rake tasks + Mỗi danh sách nhiệm vụ có sẵn rake tạo phụ thuộc vào thư mục bạn kiểm tra + Các nhiệm vụ thường liên quan đến database, xóa sửa tạo mới, clean nhớ cache Các hỗ trợ nhiệm vụ chính: + rake about: Thơng tin phiên cài đặt phiên cài sẵn máy bạn để tiện cho việc chỉnh sửa , update + rake assets: Có chức clean để xóa bỏ assets compiler , compiler assets + rake db: Tổng hợp nhiệm vụ có sẵn rake với database tạo, xóa sửa , rollback… hữu ích xử lý xự cố với db + rake doc: công cụ hỗ trợ việc tạo tài liệu hướng dẫn cho ứng dụng bạn, tài liệu API Nó tách để làm cho code bạn trở lên đơn giản  rake doc:app : Tạo tài liệu hướng dẫn cho ứng dụng bạn doc/ app  rake doc:guides : Tạo hướng dẫn rails doc/guides  rake doc:rails : Tạo hướng dẫn rails api doc/api  rake doc:plugins : Tạo tài liệu api cho tất plugin cài doc/plugins  rake doc:clobber_plugins : Loại bỏ tất tài liệu tạo cho plugins + rake notes : Hàm tìm kiếm thơng qua code bạn bắt đầu với từ khóa FIXME, OPTIMIZE or TODO Nó tìm kiếm file có phần mở rộng builder, rb, erb, haml and slim + rake routes: Cung cấp tất đường dẫn định tuyến có sẵn code bạn để bạn hình dung tổng thể + rake test: Cơng cụ có sẵn unit, hỗ trợ tạo test có sẵn kiểm tra tính ổn định ứng dụng + rake tmp: rails ta có file “Rails.root/tmp” để lưu trữ file tạm , process id dùng hoạt động di ễn Rake tmp hỗ trợ dọn dẹp file để giải phóng nhớ  rake tmp:cache:clear : xóa bỏ tmp/cache  rake tmp:sessions:clear : xóa bỏ tmp/session  rake tmp:sockets:clear : xóa bỏ tmp/sockets  rake tmp:clear : xóa tồn file Bundler: Bundler cơng cụ trì mơi trường phù hợp cho mã code nhà phát triển tất dòng máy Khi mã code nhà phát triển triển khai máy khác nhau, thư viện trước nhà phát triển thay đổi theo mơi trường máy Điều phá vỡ ứng dụng nhà phát triển Bundler đảm bảo thư viện cũ, ghi hình t ất thứ lại với để phát triển ứng dụng chạy tốt máy, nơi mà triển khai.Ở bundler giúp ta quản lý sử dùng gem trực tiếp Rubygems.org số trang khác Gem: gói thư viện Ruby Cài đặt bunlder: B1 : Trong thư mục gốc app , chọn gemfile tùy chỉnh cài đặt theo mong muốn , chọn gói gem hỗ trợ app “jQuery JavaScript library”, giao di ện Ruby cho SQLite database….Bằng cách xóa ký tự # trước gói cần thiết thêm phiên gói Hoặc bạn tìm thư viện để cài đặt Gem B2: Sau lưu file Gem bạn dùng lệnh bundle install để cài đặt vào ứng dụng Và tiến hành sử dụng thư viện Đặc điểm với sở liệu Ruby on Rails Rails Framework hỗ trợ đầy đủ các ứng dụng liên quan đến quản trị sở liệu (csdl) xampp, wamp Trong trình phát triển Rails, thân Rails tr ừu tượng hóa csdl thơng qua tầng liên kết Active record Đây thành phần cho phép điều khiển tương tác qua lại ứng dụng với sở liệu não trung tâm Rails 2.1 Giới thiệu Active Record Active Record tầng ánh xạ quan hệ với đối tượng cho phép bảng ánh xạ tới lớp, hàng tới đối tượng cột tới thuộc tính Tức thay làm việc với csdl thơng thường qua hàng cột, thông Active Record ta làm việc với lớp, đối tượng, thuộc tính 2.2 Đánh giá Active Record với hệ csdl khác Ưu điểm: + Thông qua việc Rails tự động thêm vào thuộc tính theo cột csdl việc định rõ thuộc tính theo hướng khác không cần thiết + Có thể khơng cần sử dụng ngơn ngữ SQL để làm việc với csdl mà sử dụng ngôn ngữ Rails để tạo đồng d ễ dàng việc lập trình + Tự động tìm kiếm Primary key Foreign key xây dựng csdl việc liên kết bảng làm tự động Nhược điểm : + Hạn chế Active Record theo chuẩn mẫu sẵn khởi tạo liệu nên việc thay đổi tùy biến + Do liên kết bảng tự động không người cài đặt nên việc liên quan đến chỉnh sửa csdl trở lên phức tạp 2.3 Thao tác sử dụng Active Record a Xác định mối quan hệ Có loại mối quan hệ: 1-1, - nhiều, nhiều – nhiều Quan hệ - 1: Quan hệ – nhiều : Quan hệ nhiều – nhiều : b Lấy đối tượng Active record hỗ trợ việc lấy đối tượng thông qua việc với Model.”method” với Model biến ánh xạ tên bảng method hàm định sẵn find , first , last , first!, last! Lấy liệu có primary key : Model.find(1); select * from Model limit Lấy liệu có promary key từ -> 10 Model.find([1,10]) SELECT * FROM clients WHERE (clients.id IN (1,10) Đối với khối liệu lớn , ta sử dụng “find_each find_in_batches” với việc lấy nhiều nhiều ghi khối để gọi sử dụng dễ dàng Find_each : với batch_size số lượng hồ sơ lấy để chuyển vào lô để sử lý Chương cuối: Tổng kết Ở nhóm tổng kết vấn đề phiên báo cáo này: Các bạn hi ểu ngôn ngữ Ruby điều Hiểu mơ hình MVC Framework Và em trình b ầy framework Rails thư xung quanh đến Những vấn đề RoR giới thiệu phiên sau Phụ Lục Những từ ngữ viết tắt: RoR: Ruby on Rails Csdl: sở liệu Db: database Tài liệu tham khảo [1] http://dev.vast.vn/tuananh/Web/C%C4%90048-1 [2] Nguyễn Hải Châu, “Tổng quan Framework Rails” [3] Michael Harlt,”Ruby on Rails Tutorial Learn Web Development With Rails” http://ruby.railstutorial.org/ruby-on-rails-tutorial-book ... Các phần hữu thêm vào Ruby cố gắng khơng hạn chế nhà lập trình Chương 2: Ngơn ngữ Ruby Trong chương nói qua tổng thể vấn đề với Ruby Các bạn hiểu Ruby Và bạn thao tác với vấn đề ngôn ngữ Ruby. .. dụng Ruby với tất đối tượng Ruby ngôn ngữ mềm dẻo linh hoạt Ruby coi ngôn ngữ mềm dẻo linh hoạt, từ cho phép người dùng tự sửa đổi phần cốt lõi Các phần cốt lõi Ruby rời định nghĩa lại ý muốn Các. .. Chương cuối: Tổng kết Ở nhóm tổng kết vấn đề phiên báo cáo này: Các bạn hi ểu ngôn ngữ Ruby điều Hiểu mơ hình MVC Framework Và em trình b ầy framework Rails thư xung quanh đến Những vấn đề RoR giới

Ngày đăng: 25/12/2013, 23:05

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan