Cross platform là một thuật ngữ chỉ các phương thức điện toán, phần mềm máy tính hay những khái niệm được thực thi cùng nhau và đầy đủ trên các phần mềm máy tính. Vậy cụ thể, Cross platform là gì? Giữa Cross Platform với Native App có những đặc điểm khác biệt nào? Cùng Bizfly tìm hiểu kiến thức tại bài viết này. Show
Cross Platform là gì?Cross platform hay Multi Platform là một nền tảng đa ứng dụng. Hiểu đơn thuần hơn là chỉ với một bản code, bạn hoàn toàn có thể phiên dịch và sử dụng nó trên nhiều nền tảng ứng dụng khác nhau, giúp bạn tiết kiệm ngân sách và chi phí được công sức của con người và thời hạn đáng kể . Chính vì lợi thế đó mà Cross platform được ưa chuộng bởi rất nhiều lập trình viên hiện nay. Ngoài ra, khi lập trình, bạn cần phải lựa chọn tuỳ theo ưu, nhược điểm của một Framework bởi Cross platform sử dụng Framework đa nền tảng.
Bạn đang đọc: Cross platform là gì? Phân biệt Cross Platform với Native App Xem thêm : Thiết kế app mobile và những kỹ năng và kiến thức tổng quan về phong cách thiết kế app Lợi ích mà Cross Platform mang lạiCác lập trình viên yêu dấu sử dụng Cross platform là chính bới những quyền lợi nhất định mà nó mang lại cho người dùng .
Ưu điểm, hạn chế của Cross PlatformBizfly san sẻ tới bạn những ưu, điểm yếu kém của Cross platform để tận dụng được tối đa những quyền lợi và hạn chế của nó . Ưu điểm
Nhược điểm
Xem thêm: Pamphlet là gì? Ấn phẩm được sử dụng nhiều trong ngành quảng cáo
Tương tự Cross platform, Native App và Hybrid App cũng là những ứng dụng đa nền tảng được sử dụng khá thông dụng. Tuy nhiên, bạn cần nắm rõ được điểm độc lạ giữa 3 loại ứng dụng này như sau . Native App
Cross platform
Hybrid App
Xem thêm: Đặt máy tạo nhịp tim Pacemaker
Lựa chọn Cross Platform, Native App hay hybrid App?Bạn hoàn toàn có thể dựa trên những tiêu chuẩn sau để lựa chọn .
Với những thông tin hữu dụng về Cross platform mà Bizfly san sẻ trong bài viết này, bạn đã hoàn toàn có thể đưa ra cho mình một sự lựa chọn tương thích và mang lại hiệu suất cao cao trong việc làm. Hơn nữa hoàn toàn có thể tiết kiệm ngân sách và chi phí được ngân sách cũng là điều bạn cần chăm sóc .
Cross-platform là Cross-platform. Đây là nghĩa tiếng Việt của thuật ngữ Cross-platform - một thuật ngữ được sử dụng trong lĩnh vực kinh doanh. Khả năng của một ngôn ngữ lập trình (như Java) cho phép các lập trình viên phát triển phần mềm cho nhiều nền tảng cạnh tranh bằng cách viết một chương trình duy nhất một lần. Cross-nền tảng phần mềm có thể chạy trên hầu hết hoặc tất cả các hệ thống có ít hoặc không sửa đổi. Còn được gọi là đa nền tảng. Thuật ngữ Cross-platform
Đây là thông tin Thuật ngữ Cross-platform theo chủ đề được cập nhập mới nhất năm 2022. Thuật ngữ Cross-platformTrên đây là thông tin giúp bạn hiểu rõ hơn về Thuật ngữ Cross-platform. Hãy truy cập tudienso.com để tra cứu thông tin các thuật ngữ chuyên ngành tiếng Anh, Trung, Nhật, Hàn...liên tục được cập nhập.
“Trong công nghệ điện toán, đa nền tảng (tiếng Anh: cross-platform hay multi-platform) là một thuật ngữ chỉ các phần mềm máy tính hay các phương thức điện toán và các khái niệm được thực thi đầy đủ và vận hành cùng nhau trên nhiều nền tảng máy tính. Phần mềm đa nền tảng có thể được chia thành hai loại; một loại yêu cầu phải thiết kế hoặc biên dịch từng phiên bản cho mỗi nền tảng nó hỗ trợ; loại kia có thể chạy trực tiếp trên bất cứ nền tảng nào mà không cần sự chuẩn bị thêm đặc biệt nào - chẳng hạn như phần mềm được viết bằng một ngôn ngữ thông dịch hay được biên dịch trước sang mã bytecode có khả năng di động bằng một trình thông dịch hay các gói run-time thường dùng hoặc là thành phần tiêu chuẩn trên mọi nền tảng”. (Nguồn: https://vi.wikipedia.org/wiki/%C4%90a_n%E1%BB%81n_t%E1%BA%A3ng) Đọc xong đoạn định nghĩa trên sẽ có bạn hiểu, có bạn thấy lùng bùng. Tôi xin giải thích một cách dễ hiểu như sau: Đầu tiên phải hiểu platform là gì. Platform là “nền tảng” là móng cho công trình. Nếu coi platform là nền móng của công trình, thì software, application chính là công trình, là ngôi nhà xây trên cái móng đấy. Vậy cross platform là những kiến trúc nhà có thể dựng lên ở các nền khác nhau. Ngoài ra, theo định nghĩa cross-platform từ wiki thì phần mềm đa nền tảng sẽ chia ra làm hai loại: 1) Loại cần phải thiết kết hoặc biên dịch cho từng nền tảng 2) Loại được viết bằng ngôn ngữ thông dịch hay dược dịch trước sang mã byte code Trong bài viết này tôi sẽ tập trung vào loại 1. Loại 2 tôi sẽ viết ở một bài khác. Các ví dụ về cross-platform:Có thể kể ra đây vô vàn những ứng dụng nổi tiếng đang chạy cross-platform như:
Ngoài ra còn rất nhiều ứng dụng cross-platform hay khác nữa. Các độc giả có thể giúp liệt kê thêm ở phần comment Lợi ích của cross-platformVậy câu hỏi đặt ra là: cross-platform có ưu thế, lợi ích gì không? Câu trả lời tất nhiên là có rất nhiều lợi ích rồi. Hiện tại các hãng phần cứng (Chipset, CPU, GPU, wifi, buetooth, ...) đều hỗ trợ đa nền tảng. ví dụ về đồ họa phần cứng GPU thì hầu như các hãng phần cứng đều hỗ trợ opengl, opengles. Nói thêm là hiện nay opengles được coi là chuẩn rendering cho các thiết bị nhúng, nó cũng là một cross platform framework. Nghĩa là ở mức phần cứng cũng đã “cross-platform” và có driver cho từng nền tảng. Do đó những phần mềm chạy trên các hệ điều hành (nền tảng khác nhau) vẫn có thể khai thác được hết các lợi thế phần cứng. vì vậy việc xây dựng cross-platform sẽ có các lợi ích sau: - Mạch lạc về kiến trúc: Để xây dựng một ứng dụng cross-platform thì thiết kế phải chặt chẽ, tuân thủ theo đúng mô hình (MVC, MVVM,..). để tách biệt phần phụ thuộc vào OS, phần phụ thuộc vào phía 3rd Library (sẽ được mô tả chi tiết ở phần nâng cao). Việc này sẽ là áp lực cho nhà thiết kế, nhưng bù lại sẽ làm cho ứng dụng có hiệu năng cao, dễ dàng bảo trì trong tương lai. - Viết code ít : Bạn chỉ cần chỉ cần code duy nhất một bộ mã (hoặc phần lớn) và có thể build và chạy trên các nền tảng khác khau. Nghĩa là công sức bỏ ra để viết mã máy sẽ được tối ưu. - Dễ dàng bảo trì và mở rộng: Do mạch lạc về kiến trúc việc điều tra sửa lỗi cũng sẽ dễ dàng hơn, giúp cho việc bảo trì và mở rộng cũng sẽ dễ dàng hơn nhiều. - Tính tái sử dụng cao: Hiển nhiên rồi. Vì là cross-platform nên các đoạn mã sẽ dễ dàng được tái sử dụng và share cho các ứng dụng, phần mềm khác cho dù nó là cross-platform không. Tương lai của cross-platform?Hãy quay lại với những, framework, ứng dụng cross platform nổi tiếng hiện nay Bài trước tác giả Tống Văn Linh đã đề cập đến Qt, tôi sẽ lấy luôn ví dụ về Qt framework. Chính vì nó là cross platform mà nó đã len lỏi vào hầu hết các lĩnh vực từ cấu hình thấp đến cấu hình cao đòi hỏi sự mượt mà về UI, UX.
Ảnh trên thể hiện những lĩnh vực mà Qt đang thống lĩnh thị trường. Đây mới là một ví dụ về tính phổ cập, phổ dụng của cross-framework. Chúng ta còn có rất nhiều các thư viện cross platform nổi tiếng khác như: opencv (thư viện phục vụ cho xử lý ảnh), ffmpeg(thư viện phục vụ cho xử lý video), cocos2d(thư viện phục vụ cho gaming với việc sử dụng năng lực đồ họa phần cứng GPU). Tensorflow (thư viện dung cho trí tuệ nhân tạo AI). Những thư viện này đã làm thay đổi ngành công nghệ thông tin, là công cụ mạnh thúc đẩy sự sang tạo cho các lập trình viên, các nhà nghiên cứu khoa học và cả những bạn sinh viên đam mê công nghệ thông tin nữa. Và, Windows cũng không ngoại lệ Microsoft, với hệ điều hành windows, được cho là bảo thủ, không ủng hộ open source là giấy phép mà các cross-framework thường hay phát hành theo các chuẩn khác nhau (GPL, LGPL, Apache, BSD, MIT), từ chỗ coi Linux là u nhọt (cancer) theo lời của cựu CEO Microsoft Steve Ballmer : “Linux is not in the public domain. Linux is a cancer that attaches itself in an intellectual property sense to everything it touches. That's the way that the license works” (Nguồn: https://en.wikiquote.org/wiki/Steve_Ballmer) Giờ đây Microsft đã dần cởi mở hơn với linux, cộng động open-source, tham gia và hỗ trợ thúc đẩy rất nhiều vào việc xây dựng các ứng dụng, framework đa nền tảng. Với những bước đi mang tính chất chiến lược sau:
Sâu hơn về cross-platform:Dưới đây tôi tiếp tục phân tích trên quan điểm của người lập trình viên khi quyết định chọn cross-platform để phát triển sản phẩm của mình. Dầu tiên hãy tưởng tượng một ứng dụng hay framework cross-platform nó như thế nào
Ảnh trên thể hiện kiến trúc tổng quát của các cross-platform application Những câu hỏi cần được giải quyết
Ở bài sau tôi sẽ trả lời 4 câu hỏi trên và đi vào những kỹ thuật lập trình chuyên sâu cộng thêm phần source code demo. Ngoài ra nếu người viết sẽ tổng hợp những cau hỏi/comment của độc giả để trả lời cũng như cải thiện bài viết ở lần tới. |