Logo vi.androidermagazine.com
Logo vi.androidermagazine.com

Ứng dụng html5 là gì và tôi có muốn không?

Mục lục:

Anonim

Bạn đã từng nghe? Các ứng dụng HTML5 sẽ thay đổi mọi thứ, có thể vào năm tới. Ít nhất đó là những gì một phía của cuộc tranh luận về HTML5 so với các ứng dụng gốc đã được nói trong một thời gian. Đó là một thông điệp đi đến ánh đèn sân khấu mọi lúc, và nó sẽ là như vậy mãi mãi. Hoặc ít nhất cho đến khi nó thực sự xảy ra và tất cả các ứng dụng tốt nhất là ứng dụng HTML5. Không có gì lạ khi thấy các nhà phát triển có những cuộc tranh luận và đề xuất của mỗi bên giải thích phiên bản của họ là phiên bản tốt hơn như thế nào, nhưng khi mọi thứ vượt ra ngoài cuộc thảo luận của nhà phát triển và vào dòng chính mà bạn và tôi nghe thấy, họ có thể khiến chúng tôi tê liệt. Chúng ta có nên thực sự quan tâm đến những gì chúng ta đang nghe?

Trong trường hợp này, có. Mặc dù điều không tưởng khi mọi ứng dụng được viết bằng HTML5 và mọi người dùng đều có cùng trải nghiệm vẫn là một cách tốt nếu nó xảy ra, HTML5 ở dạng lai đã là một vấn đề khá lớn. Chúng ta nên biết và hiểu bất cứ điều gì đó là một vấn đề khá lớn.

Ứng dụng HTML5 là gì?

Lần đầu tiên hầu hết mọi người nghe thấy HTML5 được nhắc đến là khi Steve Jobs nói với chúng tôi tất cả sẽ là tương lai của web và Flash sẽ không. Tuyên bố của ông đã được đưa ra một phần vì Apple đã chặn quyền truy cập vào bất kỳ loại trình phát Flash nào trên iOS, nhưng họ không có tầm nhìn xa nào để biết điều này sẽ xảy ra vì HTML5 có nhiều thứ hơn so với Flash từng làm. Và nó chỉ xảy ra rằng tương lai của web cũng là một cách khá tốt để mã hóa các ứng dụng.

HTML là viết tắt của Ngôn ngữ Đánh dấu Siêu văn bản và chúng tôi đang ở phiên bản thứ 5 của tiêu chuẩn. Nhưng khi bạn nghe thuật ngữ ứng dụng HTML5, cho dù đó là ứng dụng web hay ứng dụng bạn có thể cài đặt trên điện thoại, bạn thực sự đang xử lý ba loại mã.

  • HTML cung cấp một khung công tác nơi các nhà phát triển có thể đặt mã của họ và một ứng dụng có thể biến nó thành thứ gì đó chúng ta có thể nhìn thấy và tương tác.
  • CSS cung cấp một cách để bố trí các bit mã riêng lẻ sẽ trông như thế nào khi chúng được hiển thị và hiển thị trên màn hình của chúng tôi.
  • JavaScript là những gì làm cho tất cả tương tác và có thể "làm" bất cứ điều gì.

Điều làm cho HTML5 trở nên tuyệt vời là mọi thứ đều được hiểu bởi một ứng dụng mà nhà phát triển ứng dụng không cần duy trì và tất cả đều hoạt động trên mọi thiết bị có màn hình có phiên bản riêng của ứng dụng đó. Chúng ta đang nói về một trình duyệt web, nhưng không phải là ứng dụng trình duyệt web. Thành phần của trình duyệt web có thể lấy tất cả mã này và hiển thị nó thành thứ gì đó chúng ta có thể sử dụng một cách dễ dàng và là một phần của rất nhiều ứng dụng bạn đã sử dụng làm chế độ xem web.

Một kỹ sư Mozilla đã từng nói "Mã một lần chạy ở bất cứ đâu không có nghĩa là chạy trốn. Tối ưu hóa là chìa khóa." Những kẻ thông minh, những kỹ sư Mozilla.

Điều này có nghĩa là nhà phát triển có thể viết mã của mình và tinh chỉnh nó, sau đó triển khai nó ở mọi nơi. Điều đó khác nhiều so với việc viết mã riêng cho Android, iOS, macOS, Windows và HTML cho webOS và BlackBerry 10. Nhà phát triển có thể viết mã bằng bất kỳ môi trường phát triển nào họ chọn, cho dù đó là Notepad hay thứ gì đó phức tạp như Visual Studio hoặc Adobe Dreamweaver, gỡ lỗi và tinh chỉnh nó trong bất kỳ trình duyệt nào họ chọn, và nó vẫn chỉ hoạt động ở mọi nơi.

Điều đó bao gồm cả điện thoại của bạn, quá. Chúng ta đều đã thấy các ứng dụng HTML5 đang được sử dụng như một trang web. Những nơi như Twitter hoặc phiên bản di động của Gmail là những ví dụ tuyệt vời về HTML5 tại nơi làm việc. Nhưng vì HTML5 có thể được hiển thị bởi một thành phần xem web, việc thả một cửa sổ bên trong khung ứng dụng cơ bản để tạo một ứng dụng bạn thực sự cài đặt trên điện thoại rất đơn giản và nhanh chóng. Thậm chí có những công cụ của bên thứ ba làm tất cả công việc cho bạn, như Apache Cordova. Điều này giúp các nhà phát triển mới đưa ý tưởng của họ tới mọi người cũng như các nhà phát triển dày dạn, những người hiện có thời gian để mơ về những điều chúng ta chưa từng thấy trước đây. HTML5 được nhúng trong ứng dụng gốc có thể chạy mã và sử dụng các tài sản mà nó nhận được từ internet, nhưng nhà phát triển cũng có thể cài đặt các mã này cục bộ và trỏ mã vào đó cho các ứng dụng ngoại tuyến trung thực đến tốt.

Nhưng không phải mọi thứ đều tuyệt vời về HTML5.

Thực tế của các ứng dụng HTML5

Đây là nơi mọi thứ có thể gây nhầm lẫn. Khi chúng ta nghĩ về một trang web, chúng ta thường quên rằng một trang web chỉ gửi mã của nó đến một công cụ trình duyệt và đó là thiết bị của chúng ta hoạt động. Điều đó có nghĩa là những thứ như định vị địa lý, trò chuyện âm thanh và video thời gian thực, đồ họa tăng tốc 3D và nhiều thứ khác không chỉ có thể mà còn đơn giản cho nhà phát triển triển khai bằng HTML5. Đó là bởi vì một cơ quan tiêu chuẩn đã nói: "Này các bạn, tất cả chúng ta cần phải làm điều này nhất định theo cách đặc biệt này và một nhà phát triển có thể yêu cầu chúng ta làm điều đó như thế này."

Dù sao đó cũng là mục tiêu. Thực tế có thể hơi khác một chút, và chúng ta chỉ cần nhìn vào phát lại video để biết một ví dụ tuyệt vời về lý do tại sao. Mọi trình duyệt bạn muốn sử dụng đều hỗ trợ HTML5: Chrome, Opera, Internet Explorer, Edge, Firefox và Safari là các trình duyệt HTML5 và hỗ trợ phát lại video một khi nhà phát triển gõ chỉ bằng một vài từ trỏ đến video. Bất kỳ loại thành phần xem web di động nào mà các ứng dụng này có sẽ làm điều tương tự vì chúng sử dụng cùng một công cụ kết xuất.

Khi bạn không thực thi các quy tắc, chúng sẽ trở thành các đề xuất; những cái mà không ai muốn theo.

Nhưng tất cả họ đều không hỗ trợ cùng loại video vì HTML5 là nền tảng chéo, mở và không độc quyền, vì vậy không ai buộc họ phải hỗ trợ tất cả các định dạng. Ogg Theora là một định dạng video phổ biến mà mọi trình duyệt đều hỗ trợ ngoại trừ Internet Explorer, đây là trình duyệt mặc định trên nhiều máy tính. H.264 thậm chí còn phổ biến hơn, nhưng nó không mở hoặc miễn phí để sử dụng vì vậy Firefox không hỗ trợ nó. VP8 và WebM miễn phí sử dụng và mở và mọi công cụ trình duyệt đều hỗ trợ chúng, nhưng Internet Explorer và Safari yêu cầu người dùng tìm nạp và cài đặt hỗ trợ. Về mặt kỹ thuật, HTML5 hỗ trợ phát lại video HD và cực kỳ dễ dàng cho nhà phát triển triển khai nó. Trong thế giới thực, chỉ có loại video phù hợp được hỗ trợ.

YouTube phát tất cả video bằng HTML5 vì Google có tiền để chuyển đổi video bạn tải lên.

HTML5 cũng phụ thuộc vào phần cứng được sử dụng và mức độ thành thạo của nhà phát triển khi viết mã. Chọn thư viện JavaScript sai vẫn có thể tạo ra kết quả tương tự, nhưng nó cũng có thể dẫn đến rò rỉ bộ nhớ và xử lý Thao tác DOM (Mô hình đối tượng tài liệu - được tạo khi tải trang hoặc ứng dụng và bao gồm mọi thành phần trên trang hoặc trong ứng dụng như một "tài liệu" riêng biệt) có thể khiến ứng dụng HTML5 chậm một cách khó chịu ngay cả phần cứng tốt nhất. Trên điện thoại không có khả năng, nó nhanh chóng dẫn đến việc người dùng gỡ cài đặt ứng dụng của bạn.

Đó không phải là vấn đề duy nhất. Khi bạn xây dựng một ứng dụng HTML5 lấy mọi thứ từ internet, bạn phải xử lý thời gian tải. Điều đó bổ sung tốc độ kết nối của người dùng vào danh sách những thứ có thể khiến ứng dụng của bạn chạy chậm, cùng với khả năng vật lý của phần cứng (nhiều điện thoại sử dụng bộ xử lý không chính xác tốc độ) và tối ưu hóa mã. Nếu phải mất một giây để hiển thị mã của bạn trên thiết bị người dùng và 10 giây để tải mã từ internet, bạn sẽ có rất nhiều người dùng không hài lòng.

Ứng dụng Facebook là một ví dụ về những gì sai với HTML5 giống như Instagram là một ví dụ về những gì đúng.

Có một ví dụ tuyệt vời về điều này có sẵn, và hầu hết tất cả chúng ta đều không hài lòng với bất kỳ loại điện thoại nào chúng ta sử dụng: ứng dụng Facebook. Ứng dụng Facebook về cơ bản là một chế độ xem web được nhúng vào một khung chứa các nút và giúp quản lý thông tin đăng nhập tài khoản của bạn hoặc đẩy tin nhắn theo cách mà hệ điều hành chấp thuận. Tất cả những thứ xảy ra bên trong ứng dụng đều được thực hiện bằng HTML5 và nó chỉ là quá nhiều để xử lý một khi bạn yếu tố tìm nạp tất cả dữ liệu từ internet. Các nhà phát triển tiếp tục thêm nhiều hơn vào Facebook, người dùng đang đăng các tệp lớn được lưu trữ tại các địa điểm bên ngoài Facebook và có hàng triệu triệu người truy cập máy chủ của Facebook cùng một lúc, 24/7. Điều đó làm cho các ứng dụng chậm để làm mới, rất ngốn điện và là chủ đề của rất nhiều khiếu nại.

Trang web di động của Facebook cũng được viết bằng HTML5, nhưng nó được thiết kế để thu hút tài nguyên vì nó dành cho sử dụng di động. Điều đó giúp tải nội dung bạn muốn xem nhanh hơn ngay cả khi tất cả nội dung đó không được hiển thị khá đẹp như trên chế độ xem đầy đủ. Đó cũng là lý do tại sao trang web di động và các ứng dụng "lite" của Facebook tham chiếu nó hoạt động tốt hơn nhiều so với ứng dụng chính thức của Facebook. Và đây không chỉ là vấn đề của Facebook - có rất nhiều ứng dụng sẽ hỗ trợ tất cả các tính năng của chúng bằng HTML5 nhưng cũng phức tạp (một từ hay cho sự phình to vì chúng đã xuất hiện một thời gian và liên tục thay đổi) như Facebook và sẽ hành động tương tự.

Vậy tôi có muốn xem thêm ứng dụng HTML5 hay không?

Vâng! Nhưng không phải tất cả các ứng dụng.

HTML5 thực sự rất tốt trong nhiều thứ và là cách tuyệt vời để nhà phát triển sử dụng thời gian của mình để nghĩ ra ý tưởng sáng tạo thay vì root thông qua hướng dẫn tham khảo Objective-C hoặc C ++. Nhưng đôi khi, cấu trúc cứng nhắc của các ngôn ngữ phát triển buộc nhà phát triển phải thực hiện mọi thứ theo một cách nhất định là điều làm cho kết quả cuối cùng hoạt động tốt hơn trên điện thoại của chúng tôi.

Các ứng dụng HTML5 có thể là một cơn ác mộng như chúng ta thấy từ ứng dụng Facebook hoặc chúng có thể khá tuyệt vời như chúng ta thấy từ trang web Gmail di động. Hoặc Uber. Hoặc Instagram. Hoặc bất kỳ ứng dụng nào trong số hàng trăm ứng dụng HTML5 mà chúng tôi sử dụng hàng ngày. Đó không phải là điều chúng ta phải lo lắng, nhưng đó hoàn toàn là điều để các nhà phát triển tranh luận không ngừng. Và bây giờ trong khi họ đang tranh luận và cố gắng thuyết phục bạn điều gì tốt hơn, bạn biết một chút về lý do tại sao họ nói những điều họ đang nói.

Chúng tôi có thể kiếm được một khoản hoa hồng cho việc mua hàng bằng cách sử dụng các liên kết của chúng tôi. Tìm hiểu thêm.