So sánh Phonegap với framework khác nhƣ Titanium Mobile, Adobe AIR

Một phần của tài liệu Nghiên cứu và ứng dụng framework phát triển ứng dụng đa nền tảng vào thi trắc nghiệm trực tuyến (Trang 41 - 45)

- Các thao tác cơ bản 3

1.3.4 So sánh Phonegap với framework khác nhƣ Titanium Mobile, Adobe AIR

AIR

- So sánh framework Phonegap với Titanium mobile

Phonegap và Titanium khá giống nhau vì nó đều là framework xây dựng ứng dụng di động đa nền tảng sử dụng đến công nghệ web và javascript, mã nguồn mở với giấy phép Apache 2.0 của Titanium SDK và Apache Software Foundation-governed

Học viên: Lê Thị Hoàng Anh _ Lớp 13B CNTT1 42

project “Cordova” của phonegap cũng là giấy phép với quyền tƣơng tự. Tuy nhiên nguyên lý và cách tiếp cận giải quyết vấn đề của hai framework này có rất ít điểm chung. Trong khi phonegap là framework để xây dựng ứng dụng hybird thì titanium lại là framework để xây dựng ứng dụng native có nghĩa là titanium không phải là cách tiếp cận “viết một lần chạy đƣợc ở nhiều hệ điều hành” nó thực sự viết ra native app cho từng hệ điều hành, chỉ có sự khác biệt với native app là nó sử dụng javascript để viết trên tất cả các hệ điều hành khác nhau mà nó hỗ trợ.

Chúng ta có bảng so sánh sau:

PhoneGap Titanium Ghi chú

Hỗ trợ các hệ điều hành Android,BlackBerry WebWorks (OS 6.0 trở lên),iOS,Windows Phone 7 và 8,webOS,Tizen, Ubuntu, Max OS X…

iOS, Android,Mobile Web (beta),Blackberry (beta),Tizen.

Phonegap hỗ trợ nhiều platform hơn Titanium.

Hỗ trợ Native-UI Chưa hỗ trợ Có hỗ trợ Phonegap bị giới

hạn trong webview của thiết bị.

Yêu cầu cài đặt Ruby, Java SDK, Platform SDKs, PhoneGap Titanium, Platform SDKs, Java SDK Hiệu quả ứng dụng Các ứng dụng không giống ứng dụng gốc được như Titanium vì các UI nằm trong một webview của từng device.

Hiệu năng xử lý không tốt bằng ứng dụng gốc nhưng tốt hơn Phonegap Đây là một ưu điểm của Titanium so với Phonegap vì Titanium có thể truy cập được đến các chức năng của native

Học viên: Lê Thị Hoàng Anh _ Lớp 13B CNTT1 43 UI nên có hiệu năng tốt hơn. Hỗ trợ Javascript API Có Có Cả hai đều hỗ trợ Javascript API với cách thức khác nhau. Hỗ trợ HTML/CSS PhoneGap sử dụng HTML5, Javascript và CSS3 để tạo ra các UI của ứng dụng và các chức năng. Titanium uses chỉ sử dụng Javascript để tạo ra cả UI và chức năng. Phonegap thực chất là một web app chạy trên một native web browser của thiết bị. Kết quả và chi phí phát triển ứng dụng Sử dụng PhoneGap, bất kỳ nhà phát triển nào cũng có thể nhanh chóng cho ra một sản phẩm khá hấp dẫnbằng cách sử dụng HTML, CSS và JS. Thêm nữa bạn có thể sử dụng bất cứ công nghệ back end nào như PHP, .NET hay Ruby…

Titanium phức tạp hơn khi nó yêu cầu JS SDK để thực hiện các yêu cầu lớn. Bởi vậy nhà phát triển thường mất nhiều thời gian và chi phí hơn để cho ra một sản phẩm, hơn nữa bạn cần có một kỹ năng JavaScript để phát triển được ứng dụng có chất lượng.

Theo quan điểm của tôi,

phonegap kinh tế và dễ sử dụng hơn Titanium nhiều.

Gỡ lỗi Dễ gỡ lỗi Khó gỡ lỗi vì có ít công cụ hỗ

trợ gỡ lỗi cho javascript

Ứng dụng phonegap dễ gỡ lỗi hơn vì nó dựa trên Webkit chuẩn do vậy cho phép bạn gỡ lỗi sử dụng các webdeveloper tool.

Lƣu trữ dữ liệu PhoneGap hỗ trợ bộ nhớ trong, IndexedDB, WebSQL ...

Titanium chỉ hỗ trợ cơ sở dữ liệu nhúng được vào SQLite.

Phonegap storage API dựa trên W3C Web

Học viên: Lê Thị Hoàng Anh _ Lớp 13B CNTT1 44

SQL Database và W3C Web Storage API

Bảng 1.5 So sánh framework Phonegap và Titanium

- So sánh framework Phonegap với Adobe AIR

Sự khác biệt cơ bản nhất giữa PhoneGap và AIR là bạn phát triển các ứng dụng AIR sử dụng các công cụ bắt nguồn từ nền tảng Flash (Flex, Flash, ActionScript, MXML) còn bạn phát triển các ứng dụng PhoneGap sử dụng HTML, CSS và JavaScript.

Các ứng dụng AIR sử dụng AIR runtime cho phép bạn tạo ra các single codebase với chính xác cùng hành vi mong đợi trên tất cả các platform mà nó có thể hỗ trợ. Trong khi đó ứng dụng phonegap chạy bên trong một web browser native hỗ trợ riêng cho từng hệ điều hành do đó cùng một codebase phonegap nó có thể có một ít khác biệt cho từng platform mà nó hỗ trợ do vậy bạn phải tính toán và lƣu tâm đến điều này trong thiết kế.

ActionScript có các đối tƣợng kiểu mạnh để hỗ trợ nguyên lý kế thừa kiểu lớp, cùng với đó các ứng dụng AIR có thể xây dựng sử dụng framework Flex để cho phép bạn có thể nhanh chóng cho ra sản phẩm doanh nghiệp. Các thành phần trong ứng dụng AIR là các đối tƣợng logic có các hành vi, các thuộc tính, và một ngữ cảnh đồ họa. Trong khi đó phonegap là ứng dụng dựa trên JavaScript hỗ trợ kế thừa nguyên mẫu, và HTML/JS tất cả các phần tử của nó có thể nhìn thấy đƣợc thông qua DOM HTML. Các giao diện HTML có thể đƣợc tạo ra từ các chuỗi ký tự hoặc các mẫu javascript nhƣng về thực chất cuối cùng bạn cũng tạo ra các phần tử DOM có các thuộc tính và các style. Các hệ điều hành mà AIR hỗ trợ: Android, BlackBerry, hệ điều hành Tablet, và hệ điều hành iOS (xem tại http://www.adobe.com/sea/products/air/features.html). Phonegap hỗ trợ: iPhone/iPhone 3G, iPhone 3GS và các thế hệ mới hơn, BlackBerry

Học viên: Lê Thị Hoàng Anh _ Lớp 13B CNTT1 45

v6.0 trở lên, BlackBerry 10, Windows Phone 7 và 8, Ubuntu, Firefox OS, Amazon Fire OS, Max OS X, Tizen… (xem tại http://cordova.apache.org/#about).

Một phần của tài liệu Nghiên cứu và ứng dụng framework phát triển ứng dụng đa nền tảng vào thi trắc nghiệm trực tuyến (Trang 41 - 45)