Tìm hiểu ngôn ngữ lập trình scala, xây dựng website chia sẻ ảnh trực tuyến - Pdf 18

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM
TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN 1

TÌM HIỂU NGÔN NGỮ LẬP TRÌNH
SCALA, XÂY DỰNG WEBSITE CHIA SẺ
ẢNH TRỰC TUYẾN
Người hướng dẫn: Th.S PHẠM VĂN SIM ANH
Người thực hiện: ĐÀO THÀNH ĐẠT
LÊ NGỌC NAM
Lớp : 11050302
Khoá : 15
THÀNH PHỐ HỒ CHÍ MINH, NĂM 2014
TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM
TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN 1

TÌM HIỂU NGÔN NGỮ LẬP TRÌNH
SCALA, XÂY DỰNG WEBSITE CHIA SẺ
ẢNH TRỰC TUYẾN
Người hướng dẫn: Th.S PHẠM VĂN SIM ANH
Người thực hiện: ĐÀO THÀNH ĐẠT
LÊ NGỌC NAM
Lớp : 11050302
Khoá : 15
THÀNH PHỐ HỒ CHÍ MINH, NĂM 2014
3
LỜI CẢM ƠN
Sau một thời gian thực hiện Đồ án 1 đến nay, mọi công việc đã hoàn

thực hiện (nếu có).
TP. Hồ Chí Minh, ngày tháng năm
Tác giả
(ký tên và ghi rõ họ tên)
Đào Thành Đạt
Lê Ngọc Nam
5
PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN
Phần xác nhận của GV hướng dẫn
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
__________________________________________
Tp. Hồ Chí Minh, ngày tháng năm
(kí và ghi họ tên)
Phần đánh giá của GV chấm bài
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
___________________________________________________
__________________________________________
Tp. Hồ Chí Minh, ngày tháng năm
(kí và ghi họ tên)

quyết yêu cầu được đặt ra. Không những thế còn nâng cao khả năng tìm hiểu
và kỹ năng lập trình cho mỗi thành viên của nhóm. Mang lại những kinh
nghiệm quý báu cho sau này.
8
MỤC LỤC
9
DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT
CÁC CHỮ VIẾT TẮT
STT Chữ viết tắt Chữ viết đầy đủ
1 CMD Command line
2 JDK Java Development Kit
3 DSLs Domain Specific Languages
4 JVM Java Virtual Machine
5 E-RD Entity–relationship Diagrams
6 NIO Non-Blocking I/O
7 Java EE Java Platform, Enterprise Edition
Bảng 0.: Bảng các chữ viết tắt
10
DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ, ĐỒ THỊ
DANH MỤC HÌNH
DANH MỤC BẢNG
11
CHƯƠNG 1 – TÌM HIỂU VỀ NGÔN NGỮ SCALA
1.1 Tổng quan về ngôn ngữ Scala
1.1.1 Giới thiệu
Scala là tên viết tắt của Scalable Language (Ngôn ngữ có khả năng mở
rộng). Được phát triển dựa trên những nhu cầu sử dụng các tính năng mở rộng của
nó. Scala được thiết kế để tích hợp các tính năng của lập trình hướng đối tượng và
lập trình hàm.[2]
1.1.2 Nền tảng

Scala cung cấp một sự kết hợp độc đáo của các cơ chế ngôn ngữ khiến nó dễ
dàng để thêm các cấu trúc ngôn ngữ mới theo hình thức thư viện, hoặc để tạo ra
ngôn ngữ miền đặc trưng (DSLs).[2]
13
1.2 Giới thiệu công cụ hỗ trợ và biên dịch một chương trình đơn giản
1.2.1 Công cụ hỗ trợ
Để có thể viết và biên dịch được chương trình được viết bằng ngôn ngữ
Scala cần có những công cụ sau
- Java Developer Kit (JDK) phiên bản 5 trở lên. Có thể tải ở đường dẫn
sau:
http://www.oracle.com/technetwork/java/javase/downloads/
- Scala SDK và Bundle of the Scala IDE for Eclipse. Có thể tải ở đường
dẫn sau:
http://scala-ide.org/download/
1.2.2 Tạo Project và viết ứng dụng “Hello World”
Sau khi khởi đông Bundle of the Scala IDE for Eclipse, hoàn toàn tương tự
như Java, tạo project ta chọn: File ->New ->Scala Project.
Hình .1: Tạo Project mới bằng Bundle of the Scala IDE for Eclipse
14
- Ứng dụng “Hello World:
object HelloWorld{
def main(args:Array[String]){
println("Hello, World! ")
}
}
Cấu trúc chương trình cũng giống như ở Java. Nó bao gồm một phương thức
gọi hàm main, với các đối số dòng lệnh, một mảng các chuỗi như một tham số.
Thân phương thức bao gồm một lời gọi duy nhất lệnh println với đối số Hello,
Word!.
Phương thức main không trả về giá trị, vì thế không cần thiết phải khai báo

1.3 Những khái niệm cơ bản trong ngôn ngữ Scala
1.3.1 Khai báo biến
Có 2 loại biến trong Scala: biến val và biến var. Biến val tương tự như biến
final trong java, sau khi được khai báo thì không thể thay đổi giá trị. Còn biến var
thì ngược lại, sau khi khi báo vẫn có thể thay đổi giá trị.
Ví dụ về khai báo một biến: Val count : Int
16
1.3.2 Cách khai báo phương thức/ hàm
Hình 1.: Khai báo hàm – [1, pp. 69]
Khai báo một hàm/phương thức bắt đầu bằng từ khóa def sau đó tới tên
hàm/phương thức, các giá trị đầu vào nằm trong dấu ngoặc đơn. Tiếp sau đó là dấu :
và kiểu dữ liệu trả về. Nội dung hàm/phương thức nằm trong cặp dấu ngoặc nhọn
{}
1.3.3 Cấu trúc lặp, rẽ nhánh và điều kiện
- While:
var i = 0
while (i < args.length) {
println(args(i))
i += 1
}
- foreach:
args.foreach((arg: String) => println(arg))
17
- for:
for (arg <- args)
println(arg)
ví dụ:
for (i <- 0 to 2)
print(greetStrings(i))
- if:

- scala.math : các hàm toán học cơ bản và các kiểu số học bổ sung.
- scala.sys : Tương tác với các tiến trình khác và hệ điều hành.
- scala.util.matching - mẫu kiểm tra tính phù hợp bằng chữ sử dụng biểu
thức thông thường.
- scala.util.parsing.combinator : sử dụng để phân tích cú pháp
- scala.xml : phân tích cú pháp XML, thao tác, và tuần tự hóa.
19
CHƯƠNG 2 – TÌM HIỂU VỀ PLAY FRAMEWORK 2
1.1 Tổng quan về Play Framework 2
1.1.1 Khái niệm
Play là một chương trình khung dùng để tạo các ứng dụng web, được
viết bằng Scala and Java theo kiến trúc model–view–controller (MVC). Play
được tạo ra với mục đích tăng hiệu suất lập tình bằng các sử dụng quy ước
bằng cấu hình, tải lại mã nóng và hiển thị lỗi trên trình duyệt – Nguồn [2]
1.1.2 Những điểm nổi bật
Play Framework 2 là một framework để viết web bằng ngôn ngữ java và
scala với tiêu chí nhẹ, không trạng thái, thân thiện với nền tảng web các đặc điểm
sau:
- Dựa trên nền tảng java JVM(Java Virtual Machine): Có thể sử dụng
đa nền.
- Thân thiện với người phát triển: Bạn chỉ cần chỉnh sửa trong text-editor
và sau đó nhấn refresh trên trình duyệt web, mọi chỉnh sửa sẽ có hiệu lực.
- Quy mô đơn giản: Bên dưới nền tảng Play sử dụng một mô hình hoàn
toàn bất đồng bộ được xây dựng trên Akka. Kết hợp với đặc điểm không
trạng thái của web, quy mô của Play trở nên đơn giản.
- Thích hợp cho cả Web và moblie: Play có thể hoạt động tốt trên cả nền
tảng web và mobile. – Nguồn [4]
20
1.1.3 Lịch sử phát triển kiến trúc Play Framework
1.1.1.1 Play Framework 1

22
- Groovy đã bị lược đi: Play 2 không còn sử dụng groovy nữa, thay vào đó
là Scala templates.
- JPA and Hibernate cũng được lược bỏ: Trong phiên bản 2.0 trở đi Play
không còn sử dụng hai gói thư viện này để hỗ trợ quản lý thực thể nữa,
thay vào đó là một lớp truy xuất dữ liệu mới tên là Anorm. Arnorm được
sử dụng để truy xuất dữ liệu từ cơ sở dữ liệu sau đó chuyển vào các thực
thể một cách rất đơn giản.
- Akka được sử dụng làm tác nhân chính để đáp ứng xu hướng mới là phát
triển một ứng dụng hiệu năng cao và đáng tin cậy
(Nguồn tham khảo [3])
1.2 Hướng dẫn cài đặt Play Framework 2
1.2.1 Những công cụ cần thiết
Để có thể sử dụng được Play Framework 2 cần có những công cụ sau
- JDK 6 hoặc mới hơn. Có thể tải về ở đường dẫn sau:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Mã nguồn Play Framework 2. Có thể dùng 1 trong 2 bản sau:
o Typesafe Activator bao gồm: Activator, Akka, Play, Scala.
http://typesafe.com/activator?
_ga=1.197492719.1758479467.1399448997
23
o Play standalone distribution chỉ bao bồm Play
http://www.playframework.com/download
(Lưu ý: Bài hướng dẫn sử dụng gói Play standalone distribution)
1.2.2 Cài đặt và kiểm tra
Bước 1: Cần đảm bảo đã cài đặt JDK. Có thể kiểm tra bằng Command
Line(CMD) bằng cú pháp java –version và javac –version
Hình 2.: Kiểm tra cài đặt JDK
Bước 2: Giải nén gói Play standalone distribution ở trên và copy vào một
nơi bất kỳ (trong ví dụ tên thư mục sẽ là play-2.2.2 đặt ở đường dẫn C:\)


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status