Java được sử dụng để làm gì trong khoa học dữ liệu?
Trả lời:
Như những người khác ở đây đã nói, các khuôn khổ dựa trên Máy ảo Java đã được sử dụng rộng rãi cho các sản phẩm và khuôn khổ liên quan đến hệ thống phân tán, phân tích dữ liệu, học máy trong cài đặt doanh nghiệp. Lý do cho điều này là rất nhiều lần:
- Java là một ngôn ngữ có cơ sở người dùng rộng rãi
- Java (mặc dù dài dòng) dễ hiểu đối với hầu hết các lập trình viên
- Java được đánh máy mạnh và lập trình bằng Java buộc các lập trình viên phải rõ ràng về các loại biến và dữ liệu mà họ xử lý – điều này có giá trị trong thế giới quản lý dữ liệu, khoa học dữ liệu và học máy (cũng như trong phát triển phần mềm nói chung)
- Bộ công cụ dành cho Java được phát triển khá tốt – một loạt các IDE và các tính năng hoàn thiện trên chúng cho phép các nhà phát triển làm việc hiệu quả một cách hợp lý
- Máy ảo Java rất tốt để viết mã trông giống hệt nhau trên nhiều nền tảng – và điều này phù hợp với không gian dữ liệu lớn, giống như nhiều đấu trường phát triển khác có tính năng đa dạng nền tảng
- Scala được sử dụng nhiều trong các công nghệ xử lý dữ liệu lớn và học máy như Apache Spark. Scala về cơ bản được xây dựng trên JVM và hoạt động khá tốt với Java. Vì vậy, mặc dù Scala khó học hơn đối với hầu hết các lập trình viên so với Java, nhưng các lập trình viên sử dụng cái này hay cái kia đều có thể làm việc trên cùng một nền tảng.
Các quyết định liên quan đến lựa chọn ngôn ngữ lập trình được đưa ra không chỉ để dễ dàng lập trình và các tính năng, mà còn cả khả năng bảo trì mã, cung cấp công cụ và đào tạo. Tóm lại, các dòng mã hoặc sự dài dòng không phải là lý do duy nhất khiến mọi người thích Scala hơn Java – còn có các lý do khác, chẳng hạn như thành phần chức năng, lập trình chức năng, v.v. khiến Scala trở nên hấp dẫn.
Điều đó nói rằng, các kỹ sư và nhà quản lý thích Java hơn Scala trong một số tình huống, đặc biệt là khi có nhiều nhà phát triển hoặc kỹ sư tham gia hơn và đối với các tình huống như các dự án nguồn mở phải được đa luồng, phân phối và sẵn sàng cho doanh nghiệp – mà Scala có lẽ là quá thành ngữ và biểu cảm – và đối với cơ sở mã dễ hiểu, có chủ ý (và có thể bảo trì) thì có nhiều chức năng và hữu ích hơn.