Vì sao các ông lớn công nghệ lại đua nhau phát triển ngôn ngữ lập trình của riêng mình?
Công nghệ robot nano sẽ là tương lai của nền y học
Chuyện châu chấu đá voi: Ông lớn FPT đã thua một ông lập trình viên tuổi ngũ tuần ở Cà Mau???
Giả thuyết mới gây tranh cãi về lực hấp dẫn
Liên lạc với người ngoài hành tinh có thể hủy diệt sự sống Trái đất
Giả thuyết mới: Hố đen trong vũ trụ biến thành hố trắng
Đối thủ truyền kiếp của Apple là Microsoft thì đã có ngôn ngữ riêng (C# .NET) từ lâu. Đến năm 2016, C# được tiếp sức mạnh mẽ khi gã khổng lồ phần mềm tuyên bố mua lại Xamarin, một công nghệ cho phép phát triển ứng dụng iOS Android và Windows đồng thời từ một codebase viết bằng C#.
Không đứng ngoài cuộc Facebook cũng ra mắt một phiên bản cải tiến của PHP với tên gọi "Hack". Google gần đây nhất tuyên bố sẽ hỗ trợ một ngôn ngữ mới mang tên Kotlin để các nhà phát triển ứng dụng có thêm lựa chọn khi phát triển cho Android. Thực tế, Kotlin không thuộc về Google mà là một ngôn ngữ có tương thích với Java do một công ty độc lập phát triển. Tuy vậy, xét tới vai trò "thâm căn cố đế" của Java trên lĩnh vực doanh nghiệp có lẽ trong tương lai gần Kotlin chỉ có thể thay thế ngôn ngữ này trên hệ điều hành của Google mà thôi.
Lợi ích...
Từ góc độ kỹ thuật lợi ích của Swift, Hack và Kotlin so với các ngôn ngữ tiền nhiệm được các ông lớn sử dụng là tương đối rõ ràng. Tầm nhìn dành cho C, PHP và Java đều là các ngôn ngữ đột phá khi ra mắt, song chúng không thuộc về thời đại di động và mạng xã hội Lý do đầu tiên để các ngôn ngữ mới ra đời là để khắc phục các điểm yếu cố hữu của các ngôn ngữ cũ. Ví dụ, quyết định thêm khả năng hỗ trợ static type (kiểu tĩnh) vào PHP của Facebook khi tạo ra hack cũng là có lý do rất rõ ràng: tăng khả năng kiểm tra code và bắt lỗi cho ngôn ngữ ngay trong quá trình code.
Hoặc, cải tiến lớn nhất của Kotlin so với Java là thiết kế nhằm loại bỏ lỗi NullPointerException, một lỗi quá quen mặt với lập trình viên OOP, xảy ra khi hệ thống cần gọi đến một biến chưa được reference tới bất kỳ một giá trị nào trong bộ nhớ. Các cơ chế cải tiến của Kotlin so với Java, ví dụ như không cho phép gán biến String thành null hoặc construct ? sau tên biến để tự động trả về giá trị null khi biến gọi tới đang là null, sẽ giúp cho các lập trình viên có thể tránh "lỗi tỷ đô" này một cách dễ dàng.
Quan trọng hơn cả là những vấn đề của riêng từng ông lớn, những mục đích mà họ muốn theo đuổi. Ví dụ, Google phát triển GO là bởi các ngôn ngữ cũ chưa thực sự phù hợp với deep learning. Hãy nhớ rằng tất cả các ông lớn công nghệ đều đã có hàng năm trời sử dụng các ngôn ngữ cũ để giải quyết bài toán của riêng họ - họ hiểu rất rõ giới hạn của các công nghệ hiện tại khi theo đuổi các bài toán riêng đó.
Và họ có tiềm lực để tạo ra những ngôn ngữ mới, khắc phục những điểm yếu nhãn tiền của ngôn ngữ cũ để giải những bài toán quen thuộc một cách thuận tiện, dễ dàng hơn.
...và lý tưởng
Nhưng điều không mấy ai nhận ra, là những bài toán của Apple hay của Facebook có thể cũng là bài toán của cả thế giới công nghệ. Nói một cách đơn giản, nếu như Apple có thể tạo ra một ngôn ngữ trực quan, dễ học theo kiểu script nhưng vẫn có thể đảm bảo hiệu năng ở mức chấp nhận được cho các ứng dụng di động, tại sao không "mở" ngôn ngữ ấy ra cho tất cả mọi người cùng sử dụng? Làm gì có lập trình viên nào không thích các ngôn ngữ vừa có hiệu năng tốt, vừa dễ maintain?
Tương tự, nhiều developer dùng PHP chắc hẳn cũng đã gặp phải những vấn đề mà Facebook từng gặp phải. Dùng Java, bạn có thể hiểu được những tình huống Google muốn tránh.
Còn với Xamarin Microsoft lại giải quyết một bài toán tất yếu mà ai ai cũng có thể nhìn ra, ngay cả khi thời đại internet of Things sắp bùng nổ: ứng dụng/dịch vụ nào cũng sẽ phải hỗ trợ nhiều loại nền tảng khác nhau. Trong thời đại đa nền tảng này, bất cứ một coder nào cũng đều mong muốn có thể tiết kiệm tối đa công sức bằng cách tái sử dụng lượng code tối đa có thể (cụ thể hơn là các lớp code chứa business nằm ngoài các lớp code gọi trực tiếp xuống hệ điều hành). Dĩ nhiên, bài toán cao đẹp ấy cũng xuất phát từ riêng một vấn đề của Microsoft: windows (và Windows Phone trước đây) quá thiếu ứng dụng so với iOS và Android.
Thực tế câu chuyện tự giải quyết vấn đề của riêng mình rồi thấy hay quá nên đem 'mở' cho tất cả mọi người cùng sử dụng" không phải là hiếm trong thế giới công nghệ. Cuộc đua ngôn ngữ lập trình ngày nay chỉ là biểu hiện mới nhất của tư tưởng này.
...và tham vọng
Dĩ nhiên, chẳng mấy kẻ làm công nghệ tốt bụng đến mức đi làm không công cho kẻ khác. Đằng sau mỗi bước đi của các gã khổng lồ luôn là những tham vọng kinh tế khổng lồ.
Đầu tiên, các ngôn ngữ cũ như C, Java hay PHP đều không phải do Apple, Google hay Facebook nắm phần kiểm soát chủ chốt. Khả năng các hãng này có thể tác động lên các ngôn ngữ cũ để cải tiến theo mong muốn của mình là không nhiều. Các rắc rối pháp lý cũng có thể từ đây mà xuất hiện.
Ví dụ điển hình là Google. Oracle đã nhiều lần mang Google ra tòa với cáo buộc vi phạm bản quyền thiết kế API của Java. Google đã chuyển sang sử dụng bộ API mở tương thích với OpenSDK, nhưng trớ trêu là phần mềm mã nguồn mở này cũng do Oracle thao túng. Dù rằng JetBrains không phải là công ty con của Google, và dù rằng Kotlin vẫn phụ thuộc ít nhiều vào Java, khả năng Google gây ảnh hưởng lên ngôn ngữ này vẫn cao hơn khả năng gây sức ép lên Oracle.
Tiếp đến là tham vọng dành cho tương lai. Không phải vô cớ mà Apple biến Swift thành mã nguồn mở. Microsoft cũng biến C# thành ngôn ngữ open-source sau nhiều năm giữ làm của riêng. Google chắc chắn không bắt JetBrains (chủ sở hữu Kotlin) phải độc quyền Kotlin cho Android dù rằng vị thế của gã khổng lồ tìm kiếm đủ lớn để bắt chẹt bất cứ một công ty nhỏ nào. Lý do: dù là mã nguồn mở nhưng các ông lớn vẫn đứng đằng sau kiểm soát hướng đi tương lai của các ngôn ngữ này. Càng nhiều người sử dụng thì quyền lực ngầm của tác giả ngôn ngữ đối với thế giới công nghệ càng lớn.
Thêm nữa, Google cũng hoàn toàn có thể sử dụng phiên bản hiện tại của Kotlin làm bước đệm để dần dần từ bỏ Java, theo cùng một cách Apple đang thay thế Objective-C bằng Swift.
- Hãy thử nghĩ mà xem: nếu như các lợi thế của Swift là đủ để một bên thứ ba nào đó phát triển một phiên bản ngôn ngữ này cho back-end server thì quyền thao túng của Apple cũng sẽ được mở lên một chiến trường trước nay Apple vẫn bỏ mặc. Nếu Kotlin có thể chứng minh được lợi ích trên Android, kịch bản ngôn ngữ này thay thế Java cũng không hẳn là viễn tưởng.
Cuộc đua ngôn ngữ lập trình đã lại một lần nữa khởi tranh. Lần này, thế lực đứng đằng sau sẽ không phải là các tổ chức độc lập hay phi lợi nhuận nữa. Với tham vọng kinh tế rất rõ ràng, hãy chờ đợi một cuộc chiến ngôn ngữ lập trình muôn phần khốc liệt hơn trước đây.
- CityQ Car-eBike - Xe đạp điện kiểu dáng ôtô (Thứ Hai, 22:30:01 11/01/2021)
- Sạc điện thoại siêu tốc với công nghệ laser mới (Thứ Hai, 22:30:08 21/12/2020)
- iPhone 12 dính lỗi thường xuyên rớt sóng mạng (Thứ bảy, 21:54:06 05/12/2020)
- Quạt cây tự động quay theo người dùng (Thứ sáu, 22:45:03 04/12/2020)
- 8 sự thật thú vị về Stephen King, tác giả tiểu thuyết kinh dị... (Thứ bảy, 22:07:00 24/10/2020)
- Dịch vụ xăm đường chỉ tay để thay đổi vận mệnh gây sốt... (Thứ bảy, 21:01:08 24/10/2020)
- Lenovo ra mắt bộ tứ màn hình cao cấp ThinkVision dành cho người... (Thứ bảy, 20:01:08 24/10/2020)
- Microsoft công bố giải pháp giúp giảm thiểu mức độ ô nhiễm... (Thứ bảy, 19:05:06 24/10/2020)
- Khổ thân châu Âu: iPhone 12 bán tại đây đắt hơn, 5G chậm hơn... (Thứ bảy, 15:07:00 24/10/2020)
- Phát hiện ra cơ quan mới có thể có trong cổ họng con người (Thứ bảy, 14:03:04 24/10/2020)
- Điều gì sẽ xảy ra nếu bạn ngưng gội đầu trong vòng một năm?
- 7 thảm họa thiên nhiên có thể sắp xảy ra
- Sự thật về chế độ máy bay và 20 bí mật về điện thoại của bạn
- 7 bí ẩn trên Trái đất đã khiến khoa học đau đầu cả nghìn năm qua mà vẫn chưa có lời giải
- Các nhà thiên văn học bó tay trước sự tồn tại của hành tinh này
-
Cơ hội hiếm hoi quan sát hành tinh màu xanh da trời vài ngày tới
Thứ tư, 20:00:03 20/01/2021
-
EU cho hay: "Sâu bột an toàn, người có thể ăn được"
Thứ Ba, 23:30:04 19/10/2021
-
Hệ sao kỳ quái chưa từng thấy cách Trái đất 1.800 năm ánh sáng
Thứ Ba, 22:50:04 19/01/2021
-
Loài người có thể đơn độc trong vũ trụ
Thứ Ba, 22:35:01 19/01/2021
-
Chuyện về con nhện đi săn nhện: Thạo binh pháp như "Gia Cát Lượng", đầy mưu hèn kế bẩn để săn mồi bằng mọi giá
Thứ Ba, 21:27:04 19/01/2021
-
Bức thư tiết lộ những năm cuối đời đầy đau đớn của Napoléon
Thứ năm, 21:35:07 14/01/2021
-
Tàu chở hàng SpaceX lần đầu tự động tách khỏi trạm ISS
Thứ năm, 21:16:01 14/01/2021
-
Phát hiện chuẩn tinh cách Trái đất hơn 13 tỷ năm ánh sáng
Thứ năm, 20:45:03 14/01/2021