Ngôn ngữ lập trình Scala thành lập năm 2003 đã trở thành một ngôn ngữ server bậc cao được yêu thích trên toàn thế giới. Scala mang sức mạnh của lập trình hướng đối tượng mục tiêu được kế thừa và tăng trưởng từ Java cùng với những chức năng của một ngôn ngữ lập trình hàm tối tân.
Ngôn ngữ lập trình Scala là gì?

Scala là ngôn ngữ lập trình đa mẫu hình, được thiết kế tích hợp các công dụng của lập trình hướng đối tượng mục tiêu và lập trình hàm. Scala chạy trên nền máy ảo Java và nó tương thích hoàn toàn với Java. Vì nó có kiểu biên dịch cũng giống như Java nên nó có khả năng đọc được các thư viện của Java. Ngoài ra nó cũng có khả năng chạy trên .NET, tuy nhiên chưa được ổn định.
Những điểm tốt nhất của ngôn ngữ lập trình Scala
- Ở Scala, một vài cấu trúc khó khăn của môi trường Java hay .NET đã được đào thải và chèn vào một vài đặc tính ưu việt hơn, chẳng hạn như như:
-
- a uniform object model
- pattern matching và higher-order functions
- novel ways to abstract và compose programs
- Scala ngắn gọn, súc tích, dễ đọc hiểu và dễ học. Các cấu trúc của Scala cực kì nhẹ và súc tích, cho phép lập trình viên có khả năng giảm kích thước của code ít nhất hai hoặc ba lần so với Java. Thế nên nó giúp cho việc viết code nhanh hơn và việc maintain cũng dễ hơn.
- Nó rất chính xác vì nó được trang bị hệ thống phát hiện và tránh nhiều lỗi ứng dụng tại thời điểm biên dịch.
- Ngôn ngữ này có tính mở rộng. Nó bổ sung một ngôn ngữ máy độc đáo, đơn giản thêm thư viện, hỗ trợ việc lập trình dựa trên các thư viện hàm đã có sẵn.
Một số dấu hiệu của ngôn ngữ Scala
- Cơ động linh động về cú pháp
- Có được vòng lặp for mạnh mẽ
- Được thiết kế để hợp với cả lập trình hàm cũng giống như lập trình hướng đối tượng
- Bộ máy kiểu dữ liệu đầy đủ và có thể mở rộng (định nghĩa thêm method cho kiểu có sẵn)
Tại sao lại chọn Scala ?

Scala là ngôn ngữ hướng đối tượng chuẩn xác
Tại sao lại chuẩn mực ? Vì Scala kế thừa những tính năng hướng đối tượng mục tiêu từ Java, ngôn ngữ “mainstream” về hướng đối tượng mục tiêu, đồng thời đã tiến hóa thêm một bậc.
- Mixin viết bằng Trait
- Structural subtyping
- Variance
- Self type annotation
- Kế thừa class kiểu implicit
- Xác lập quyền truy xuất rõ ràng với từ khóa kiểu
private[this]
- Tất cả các thành quả có thể sử dụng như là một object.
- So sánh Scala và Ruby
- Một khi thiết lập xong môi trường và chạy thử thành công chương trình đầu tiên trên Scala, bây giờ con người có thể nghiên cứu thử những tính năng thú vị của Scala. Những chẳng hạn như phía dưới được thể hiện trong sự đối sánh với ngôn ngữ Ruby, 1 ngôn ngữ được xem như khá gần gũi với Scala
- Cú pháp Scala không cần kết thúc các lệnh if else bằng end. Điều này giúp giảm bớt việc viết liên tục nhiều lần end khi viết các câu lệnh rẽ nhánh hay vòng lặp

-
Ruby
Ngôn ngữ lập trình Scala Scala
Ngôn ngữ lập trình Scala Scala quy định rõ ràng về kiểu dữ liệu nên sau khi đã gán giá trị 1 biến theo kiểu nào đấy thì sau đó biến đấy chỉ sẽ được gán lại với kiểu đã sử dụng trước đó trong khi trên Ruby biến có thể được gán giá trị là 1 String rồi sau đấy lại có thể được gán thành quả là 1 số nguyên
Ruby
Ngôn ngữ lập trình Scala Scala
Ngôn ngữ lập trình Scala Cú pháp của Scala rất linh động cho phép dùng dấu chấm (dot) để gọi method giống như Ruby nhưng cũng có khả năng không cần sử dụng dấu chấm mà thay vào đó là space để thực hiện việc gọi method
Ruby
Ngôn ngữ lập trình Scala Scala
Ngôn ngữ lập trình Scala Một trong các điểm thú vị của Scala là vòng lặp for mãnh liệt, 1 dẫn chứng cho khả năng giúp đỡ lập trình hàm của Scala. Cú pháp vòng lặp for này cho phép dùng (pattern guard: 1 biểu thức trả về thành quả true hoặc false chắc chắn chương trình sẽ lại chạy nếu giá trị trả về là true và trái lại bỏ qua nếu thành quả trả về là false).
-
Demo chạy 1 project trên Scala
B1. Tạo 1 project Scala
Trên thực đơn, chọn New -> Scala Project, sẽ xuất hiện màn hình “Create a Scala project”.
Ở mục Project Name, nhập “Hello1” rồi ấn button Next -> Finish, sẽ thấy hiển thị project Hello1 ở trong Package Explorer.
B2: Tạo 1 Scala package trong folder source “src”
Click chuột phải vào project Hello1 trên, trên menu chọn New -> Package, sẽ xuất hiện màn hình Java Package. Trên màn hình Java Package nhập tên package vào mục Name. Ở đây nhập tên package là “hello”. Trên Package Explorer sẽ hiển thị package vừa tạo trên.
B3: Tạo Scala object “HelloWorld”
Click chuột phải vào project hello trên, trên thực đơn chọn New -> Scala Object, sẽ xuất hiện màn hình Scala Object. Nhập tên object vào mục Name. Ở đây nhập tên Object là “HelloWorld”. Sau khi tạo xong sẽ thấy trên Package Explorer hiển thị object HelloWorld.scala.
B4: Mở HelloWorld.scala và viết code vào
B5: Chạy code vừa viết
Click chuột phải vào HelloWorld.scala, trên menu chọn Run As -> Scala Application
-> Sẽ xuất hiện kết quả “HelloWorld”
- Trên đây là recommend sơ lược về ngôn ngữ lập trình scala. Hiện tại ở Việt Nam, ngôn ngữ này còn khá mới mẻ và chưa có những tài liệu. Hy vọng qua bài đăng này các bạn có thể hiểu hơn về ngôn ngữ lập trình Scala.
Bài viết trên, mình đã chia sẻ tới các bạn khái niệm và mục đích sử dụng của ngôn ngữ lập trình scala. Cảm ơn các bạn đã theo dõi bài viết nhé!
>>Xem thêm: Top những ngôn ngữ lập trình web phổ biến nhất hiện nay
Mỹ Phượng-Tổng hợp
Tham khảo: (kipalog, topdev,…)