
29 thg 3, 2016
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
HelloWorld.rb:20:in `testPrivate'': private method `myTest'' called for #(NoMethodError)
from HelloWorld.rb:28
Bên cạnh đó ở Ruby các biến trong lớp đều được đặt là private, trong khi các hằng số đều
là public.
7. Thừa kế trong Ruby
Là ngôn ngữ hướng đối tượng nên Ruby có đầy đủ các tính chất như tính đa hình, đóng gói…
và 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 là nhóm các thành phần hàm, biến, hằng số và 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à với ngôn ngữ script như Ruby thì vi ệc phân chia
chương trình thành các file chứa các module khác nhau.Các file này sau đó có thể được sử dụng
thông qua lời gọi require hoặc load trong chương trình chính.
Chương 3: Framework Rails
Đến với chương này các bạn có thể biết được thế nào là một framework, mô hình kiến trúc của
nó, những đặc điểm của framework Rails và những đánh giá của nó với các framework khác.
1. Thế nào là framework
Framework là những thư viện code, được thiết kế để giúp đỡ trong việc phát triển phần mềm.
Framework tạo ra một bộ ứng dụng thiết kế dựa vào những 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 những phần mềm một cách nhanh nhóng và hiệu
quả.
Khi phát triển một phần mềm dựa vào một framework nào đó thì vi ệc phát triển nó trở lên thuận
lợi với người lập trình bởi vì nó giảm bớt thời gian tập trung vào việc code hơn để có thể tập
trung vào việc giải quyết những vấn đề liên quan đến logic điều đó làm tăng hiệu quả của người
lập trình.
2. Mô hình MVC
Ngày này các framework về thiết kế website hầu như đều sử dụng mô hình MVC để phát triển.
vậy mô hình này có những đặc điểm gì mà các framework đư ợc sử dụng nó để phát triển như
vậy?
2.1.
Khái quát về mô hình MVC
MVC là viết tắt của Model – View – Controller. Nó là một kiến trúc phần mêm hay mô hình
thiết kế được sử dụng trong kỹ thuật phần mềm, giúp cho người lập trình tách ứng dụng của họ
thành ba thành phần khác nhau Model, View và Controller. Mỗi thành phần có một nhiệm vụ
riêng biệt và độc lập với thành phần khác.
2.2.
Các thành phần của mô hình MVC
Dưới đây là sơ đồ của mô hình MVC:
Các thành phần trong mô hình MVC có mỗi quan hệ chặt chẽ với nhau. Các thao tác của nó
được lặp lại mỗi khi tiếp nhận yêu cầu của người dùng.
Như hình trên có th ể thấy mô hình MVC gồm 3 thành phần chính: Model, View và Controller.
Model:
Gồm mọi hoạt động liên quan đến cơ sở dữ liệu, các thao tác với cơ sở dữ liệu đều được thực
hiện ở đây gồm: chuẩn hóa, phân tích đánh giá…
View:
Phần này liên quan đến người dùng. Nó là 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 một cách cụ thể nhất. Và nó cũng nhận tương tác giữa người dùng và hệ
thống .
Controller
Controller chịu trách nhiệm phân phối ứng dụng. Nó nhận sự kiện từ bên ngoài, rồi tương tác
với Model để xử lý thông tin. Sau khi xử lý tác động liên quan đến hệ thống thì nó truyền đến
View để hiển thị với người dùng.
Như vậy dễ dàng thấy rằng sự tương tác giữa các thành phần trong mô hình đều thông qua
controller. Controller là cầu lối giữa View và Model. Nó điều khiển dữ liệu rồi sau đó đưa ra
những thông tin cần thiết cho người dùng.
2.3.
Ưu và nhược điểm của mô hình MVC
Ưu điểm của mô hình MVC:
Mô hình MVC làm tăng khả năng phát triển và 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: vì các thành phần phụ thuộc
thấp với nhau, vì vậy khi thay đổi một cái thì không ảnh hưởng đến cái khác.
Các thành phần trong mô hình MVC đư ợc sử dụng lại: ví dụ một model có thể sử dụng
cho nhiều phần hiển thị và ngược lại cũng vậy.
Mô hình MVC có thể phân tán: sự chia sẽ cách biệt về code giữa các thành phần có ý
nghĩa là mỗi thành phần trong chúng có thể ở trên một máy tính riêng, nếu thấy cần thiết.
Nhược điểm của 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 trong quá trình phát triển và tốn thời gian luân chuyển qua các tầng.
3. Ruby on Rails
3.1.
Nguồn gốc của Rails
Đầu tiên, tôi muốn giới thiệu với các bạn nguồn gốc hình thành framework Ruby on Rails.
Rails ra mắt công chúng lần đầu tiên vào năm 2004, Rails thoạt đầu được dùng như là nền
tảng cho một công cụ quản lý dự án được đặt tên là Basecamp và được tạo ra bởi nhà
phát triển web David Heinemeier Hansson, một nhân viên của công ty phát triển web
37signals (Mỹ). Ban đầu họ xây dựng Rails không phải với mục đích là xây dựng ra một
framework riêng, chủ tâm ban đầu là dùng nó để xây dựng các ứng dụng khác của 37signals.
Sau đó Heinemeier Hansson thấy tiềm năng của nó giúp cho anh ấy làm các công việc dễ dàng
hơn bằng cách rút ra các tính năng phổ biến như trừu tượng cơ sở dữ liệu và khuôn
mẫu(template) bên trong, và sau đó nó trở thành phiên bản đầu tiên được tung ra của Ruby on
Rails.
Trên thực tế Rails được rút trích từ Basecamp, một chương trình mà được cộng đồng Rails
cho là trong quá trình làm chương trình đó thì đã gặp và giải quyết được rất nhiều các vấn đề
phức tạp. Và Rails, một framework bắt nguồn từ chương trình đó thì nó đã thừa kế được
những sức mạnh từ dự án đó. Vì vậy Rails luôn sẵn sàng có thể giải quyết được các vấn đề
thực tế tồn tại trong quá trình phát triển web. Ngoài ra, ban đầu Rails được xây dựng ra còn với
mục đích là để xây dựng các ứng dụng khác từ nó, bởi vậy Rails trước khi xuất hiện trên
thế giới thì nó đã chứng minh được bản thân nó là một framework rất hữu dụng, chặt chẽ và
toàn diện.
Sau khi phiên bản đầu tiên được tung ra thì cộng đồng Rails cũng đã đóng góp bổ sung
hàng mở rộng nó, và sửa các lỗi được tìm thấy. Và phiên bản mới nhất của Rails bây giờ là
phiên bản 2.0.2.
3.2.
Mô hình MVC với Rails
Hiện nay mô hình MVC đang được sử dụng hầu hết các framework phát triển ứng dụng web.
Rails cũng không là ngo ại lệ. Rails dự trên mô hình MVC đ ể phát triển framework của mình.
Cấu trúc của mô hình MVC rất rõ ràng. Điều này làm cho người lập trình đẽ dàng phát triển
ứng dụng của mình.
Hiện tại chương này giới thiệu những vấn đề cơ bản của Rails nên mình chỉ nói sơ qua phần này
ở đây để làm rõ đư ợc mô hình mà framework xử dụng. Còn về các mục sau mình sẽ làm rõ
những tác động cụ thể của mô hình MVC đối với Rails.
3.3.
Tự động sinh code trong Rails
Ta cũng có thể nói đến Rails với việc sinh code tự động. Khi bạn phát triển trên Rails, có
các thư mục hay file là nơi để bạn điền code vào, và tất cả các phần trong ứng dụng của bạn
tương tác với nhau trên một cách thức chuẩn. Hay nó đã chuẩn bị sẵn một bộ khung
chương trình trước cho bạn, điều này giúp bạn đơn giản là chỉ việc điền các đoạn code login
vào trong ứng dụng và tích kiệm và giảm tải công việc của bạn. Và nhờ có bộ khung đã định
nghĩa sẵn này, Rails cung cấp các generate, rake, script cho phép bạn nhanh chóng tạo, xóa ra
một số template để bạn định nghĩa model, view ,controller, hay ngay cả database trong cơ sở
dữ liệu.
3.4.
Vòng đ ời phát triển một ứng dụng trong Rails
Rails động viên sử dụng các điều kiện khác nhau cho mỗi giai đoạn trong chu trình vòng đời
của ứng dụng(phát triển,kiểm tra, và sản phầm). Nếu bạn đã hoàn thành việc phát triển ứng
dụng web trong một khoảng thời gian, đây có lẽ là cách để bạn thực hiện. Rails chỉ hợp thức
hóa các môi trường này.
Development trong điều kiện development, thay đổi tới code nguồn của ứng dụng ngay lập
tức; tất cả chúng ta cần làm là load lại trang tương ứng trong trình duyệt. Tốc độ không phải
là yếu tố quyết định trong điều kiện này; Thay vì vậy, mục tiêu là cung cấp cho người
phát triển nhìn xuyết suốt các thành phần có liên quan đến việc hiển thị trên mỗi trang web.
Khi một lỗi xảy ra trong điều kiện phát triển, các nhà phát triển có thể nhìn thoáng qua để biết
dòng code nào gây ra lỗi, và như thế nào dòng đó được gọi tới. Khả năng này được cung cấp
bởi stack trace(bao gồm đầy đủ các danh sách các phương thức gọi để chuẩn bị cho lỗi),
cái này được hiển thị khi một lỗi không trông đợi xảy ra.
Test Trong điều kiện kiểm tra, chúng ta thường làm mới(refresh) cơ sở dữ liệu với một
ranh giới của dữ liệu giả cho mỗi lần kiểm tra được lặp lại-điều này đảm bảo rằng kết quả
của cuộc kiểm tra là nhất quán, và cách xử lý đó là có khả năng tăng thêm. Unit và các thủ
tục kiểm tra là tự động hóa hòan toàn trong Rails. Khi chúng ta kiểm tra ứng dụng Rails,
chúng ta không xem nó sử dụng một trình duyệt web truyền thống. Thay vì vậy, các cuộc
kiểm tra được gọi từ các dòng lệnh, và có thể chạy dưới background. Điều kiện kiểm tra
cung cấp một môi trường chuyên dụng để xử lý các hoạt động đem lại hiệu quả.
Production Giai đoạn mà ứng dụng của bạn đã hoàn thành, khi mà các kết quả kiểm tra là
tốt, các lỗi đã được loại ra. Khi đó việc thay đổi code là rất hiếm, điều này có nghĩa là môi
trường sản phẩm có thể lạc quan để tập trung vào việc sử dụng. Nhiệm vụ như viết số lượng
lớn các log cho mục đích gỡ rồi là trở nên không cần thiết khi này. Tuy nhiên, nếu một lỗi

Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét