12/08/2018, 15:15

Scala_Ngôn ngữ lập trình có khả năng mở rộng.

Scala_Ngôn ngữ lập trình có khả năng mở rộng. Scala ra đời năm 2003 và đã trở thành ngôn ngữ server bậc cao với những ưu điểm nổi trội: Là ngôn ngữ hướng đối tượng chuẩn mực: Scala kế thừa những tính năng hướng đối tượng từ java. Toàn bộ giá trị là [object], toàn bộ hành động là [method]. Là ...

Scala_Ngôn ngữ lập trình có khả năng mở rộng. Scala ra đời năm 2003 và đã trở thành ngôn ngữ server bậc cao với những ưu điểm nổi trội:

  • Là ngôn ngữ hướng đối tượng chuẩn mực: Scala kế thừa những tính năng hướng đối tượng từ java. Toàn bộ giá trị là [object], toàn bộ hành động là [method].
  • Là ngôn ngữ lập trình hàm bậc cao: Hỗ trợ Case class, Pattern matching, Class định nghĩa với implicit parameter, Monad, Higher kinded type và phát triển thành nhiều tính năng nhỏ khác.
  • Static typing: Static typing là đặc tính ngôn ngữ lập trình yêu cầu mô tả nghiêm ngặt để xử lý biến số, hàm số dạng data đã quyết định trước. Vì scala là ngôn ngữ Static typing nên hệ thống an toàn. Nếu có lỗi thì sẽ tìm thấy ở giai đoạn biên dịch chứ không phải tại lúc chạy.
  • Tương thích với Java: Có thể gọi và sử dụng bất kỳ thư viện Java nào. Code Scala khi biên dịch ra cũng là cùng mã byte code của JVM.
  • Scala ưu việt khi xử lý tính toán song song, phân tán và bất đồng bộ. Hiện nay, các CPU đa lõi (công nghệ đóng gói nhiều lõi xử lý vào một bộ xử lý duy nhất) đã trở nên phổ biến. Trong Java khi thực hiện xử lý song song thì sử dụng class java.lang.Thread và package java.util.concurrent. Trong Scala có một thư viện gọi là "Actor" để thực hiện xử lý song song hiệu quả. Giữa các actor giao tiếp với nhau bằng message. Hơn nữa, từ Scala 2.9 có thể sử dụng bộ sưu tập hỗ trợ xử lý song song (palallel collection). Có thể dễ dàng mô tả xử lý thực hiện từng thread.

So sánh code Java và Scala

VD: chuyển đổi toàn bộ ký tự của 1 chuổi sang kiểu chữ hoa. Code Java:

   public List filterNames(List<String> names, int len) {
        List<String> result = new ArrayList();
        for (String name : names) {
            if (name.length() >= len) {
                result.add(name.toUpperCase());
            }
        }
        return result;
    }

Sử dụng vòng lặp, check độ dài của từng element rồi add vào list đã định nghĩa những element thỏa mãn điều kiện. Cùng xử lý như trên nhưng khi mô tả bằng scala thì thành như bên dưới: Code scala:

filterNames(list: List[String], len: Int) = list.filter(_.length() >= len).map(_.toUpperCase)

filtering bằng độ dài (len) danh sách truyền qua rồi trả về danh sách đã chuyển đổi thành chữ hoa toàn bộ từng elements của list kết quả. Bạn cảm thấy sao? Chắc chắn là so với code Java thì code ít hơn nhiều đúng không.

1. Install JAVA

Vì Scala chạy trên JVM nên chúng ta cần cài đặt JDK (Java Development Kit). Hãy Download bản JDK tương thích với môi trường của bạn từ link bên dưới và install. Java SE - Downloads | Oracle Technology Network | Oracle

2. Install SCALA

Từ site bên dưới download SDK của Scala. Download | The Scala Programming Language Bước 1: Click vào khung đỏ thì ta có thể down được file cài đặt (.msi) của scala. Bước 2: Sau khi down load xong thì run file msi để install Bước 3: Khi installer khởi động lên thì click [Next] Bước 4: Check accept rồi click [Next] Bước 5: Click [Next] Bước 6: Click [Install] Bước 7: Chờ đến khi cài đặt xong Bước 8: Khi đã đến màn hình finish, Click [Finish] để hoàn thành quá trình cài đặt.

3. Hello World bằng REPL (Read Eval Print Loop)

Bước 1: Mở command prompt (cmd) và run lệnh scala

scala

để Khởi động REPL(Read Eval Print Loop) Bước 2: Bạn có thể thử thực hiện những code Scala đơn giản.

Để kết thúc REPL thì chạy lệnh bên dưới

:q

Cách giải quyết lỗi 'scala' is not recognized as an internal or external command

Ở Bước 1: nói trên nếu bạn chạy lệnh scala mà trả về thông báo lỗi:

'scala' is not recognized as an internal or external command, operable program or batch file.

Nguyên nhân là do trong đường dẫn (path) đến scala.bat của bạn đã có khoảng trống. VD: Khi bạn cài default thì đường dẫn sẽ là : C:Program Files (x86)scalain Trong đường dẫn trên thì có 2 spaces: 1 giữa Program và Files, và 1 ở giữa Files và (x86). Để giải quyết thì bạn làm như sau:

  1. Xóa system variable trong path của hệ thống:
  • Vào Control PanelAll Control Panel ItemsSystemAdvanced system settings--> Mở ra System Properties
  • Ở tab Advanced của System Properties chọn Environment Variables
  • Bấm chọn vào Path ở System variables --> Mở ra Edit System Variable, xóa đường dẫn C:Program Files (x86)scalain~ trong Variable value đi.
  1. Move folder cài đặt của scala vào C:
    Vậy là đường dẫn đến scala.bat của bạn bây giờ thành C:scalain (không còn space nào)

  2. add thêm path của scala vào.

  • Vào Control PanelAll Control Panel ItemsSystemAdvanced system settings--> Mở ra System Properties
  • Ở tab Advanced của System Properties chọn Environment Variables
  • New User Variable: Variable name là scala; Variable value là C:scalain
  • Modify User Variable Path: Thêm ;%scala% vào.

4.Vậy là xong, bạn có thể chạy lệnh scala trong cmd để confirm lại.

Nguồn tham khảo: http://docs.scala-lang.org/ja/overviews/ http://blog.y-yuki.net/entry/2016/12/29/000000 http://www.atmarkit.co.jp/ait/articles/1202/10/news122.html https://sites.google.com/site/scalajp/home/documentation/introduction

0