Scala được biên dịch thành mã byte và được nhập tĩnh vì vậy nhiều tối ưu hóa tương tự có thể được thực hiện cho các ngôn ngữ được gõ tĩnh như Java (trái ngược với các ngôn ngữ được gõ động như Groovy). Vì vậy, so sánh Groovy với Scala là so sánh táo với cam.
Bây giờ, Java để Scala so sánh:
Bạn có thể mong đợi Scala là ngang bằng với Java trong hầu hết các tình huống. Scala có thể chậm nếu bạn lập trình một cách ngu xuẩn, ví dụ, tông màu của các bản mix thông qua Traits có thể cung cấp một số chi phí mà Java đơn giản sẽ không có.
Nhưng ...
Nếu đặc điểm đang thực sự giải quyết một vấn đề phức tạp trong hương vị tốt, sau đó là một giải pháp trong đồng bằng Java sẽ phải giải quyết cùng phức tạp. Ai nói giải pháp bạn viết bằng Java sử dụng các mẫu của riêng bạn sẽ hiệu quả hơn những gì bạn nhận được miễn phí trong Scala (hãy nhớ, trình biên dịch Scala được viết bởi những người có lẽ là một lập trình viên tốt hơn bạn). Mặt khác, nếu bạn đang sử dụng các tính năng ngôn ngữ không có lý do chính đáng (ví dụ, các đối tượng Integer khi nguyên gốc int sẽ làm), mã của bạn sẽ bị cồng kềnh, chậm chạp, crap bất kể bạn sử dụng ngôn ngữ nào.
Ngoài ra, hãy xem xét lớp đặc biệt của các ứng dụng dựa trên yêu cầu phản hồi tương tác với cơ sở dữ liệu hoặc tài nguyên chuyên sâu I/O khác. Cổ chai sẽ không phải là toán tử 'mới' hoặc phí gọi phương thức ảo - nó gần như chắc chắn sẽ là I/O.
Tóm lại, hiệu suất giữa Scala và Java là như nhau, và không nên là lý do lớn nhất bạn chọn một trong số khác trong 99% trường hợp. Vì lao động có tay nghề cao hơn phần cứng máy tính, bạn nên chọn ngôn ngữ mà bạn có thể (hoặc có thể học) chương trình hiệu quả nhất (bao gồm cả đồng đội của bạn). Nếu Scala cho phép bạn viết một phần mười mã như Java, bạn có thể nhận được 10X lợi ích bằng cách sử dụng nó.Nếu Scala làm chậm bạn xuống 10 lần (vì nó quá khó để đọc), gắn bó với Java!
Hãy nhớ rằng trình biên dịch Scala có nhiều việc phải làm hơn trình biên dịch Java. Nó chỉ được mong đợi rằng nó sẽ không được nhanh như những gì bạn đã trở nên quen với các ngôn ngữ đơn giản. –