Java so với HTML5

Web di động mới có thể có sự tách biệt rõ ràng giữa giao diện người dùng HTML5 phía trước và các ứng dụng Java phía sau

  • Chia sẻ mục này với mạng của bạn

Java so với HTML5

Qua
  • James Denman

Đã xuất bản. 02 tháng 6 năm 2011

HTML là một thực thể sống. Nó đã phát triển kể từ khi được tạo ra và sẽ tiếp tục phát triển miễn là chúng tôi tiếp tục tìm ra những cách mới và sáng tạo để sử dụng Internet. HTML5 là triển khai "chuẩn hóa" mới nhất của HTML, CSS và JavaScript. Tiêu chuẩn đến từ W3C và sẽ có ảnh hưởng lớn trong phát triển Web

Web di động mới có thể có sự tách biệt rõ ràng giữa giao diện người dùng (UI) và các ứng dụng phụ trợ. Burr Sutter đã trình bày nhiều phiên tại JBoss World 2011, bao gồm một phiên gọi là HTML5 dành cho Nhà phát triển Java. Theo Sutter, các giao diện người dùng dựa trên Web mới sẽ được xây dựng bởi các nhà thiết kế và được mã hóa bằng XML, CSS và HTML. Đối với tất cả quá trình xử lý thực tế, giao diện người dùng phía trước sẽ tương tác với các dịch vụ Web dựa trên Java ở phía sau

Do kiến ​​trúc giao diện người dùng được thiết kế theo mô-đun, nên có thể tương đối dễ dàng xóa một ứng dụng Java độc lập và thay thế nó bằng một ứng dụng tương tự được mã hóa bằng PHP. Có thể hữu ích khi nghĩ về kiến ​​trúc này như một kiến ​​trúc plug-in. Trong HTML5, các mục mô-đun như "vùng văn bản" có thể được chuyển đổi thành plug-in trình soạn thảo văn bản có định dạng jQuery (hoặc JavaScript)

Các bài viết khác về HTML5…

Bạn bè của chúng tôi tại SearchSOA. com cũng quan tâm đến HTML5. Họ đã xuất bản một số phần trên HTML5. Các phần ban đầu tập trung vào những điểm khác biệt giữa HTML5 với HTML4 và những khó khăn trong nỗ lực áp dụng HTML5. Các phần sau đi vào chi tiết hơn về các phần tử canvas HTML5, các phần tử video HTML5 và tác động của HTML5 đối với việc phát triển Web

Trình soạn thảo văn bản không phải là plug-in duy nhất mà HTML5 tận dụng. Các đối tượng Java cũ đơn giản (POJO) có thể dễ dàng được chuyển đổi thành các đối tượng hữu ích có thể cắm trực tiếp vào giao diện người dùng phía trước. Việc người dùng cuối sử dụng máy tính để bàn, máy tính xách tay, máy tính bảng, điện thoại thông minh hay thậm chí là điện thoại phổ thông hỗ trợ Web thường không quan trọng

Trong quá trình phát triển Web truyền thống, bạn sẽ viết mã mọi thứ bằng Java và đưa vào một ít XML và gần giống như phép thuật, HTML sẽ được hiển thị cho bạn. Với HTML5, mã Java có thể được sử dụng để tạo ứng dụng khách hoặc ứng dụng nhỏ trong Bộ công cụ web của Google (GWT). Những applet này sau đó có thể trở thành một phần của kiến ​​trúc plug-in lớn hơn. Java Swing API đã hoạt động theo cách này và có thể rất hữu ích cho các nhà phát triển ngay bây giờ

Năm 2012 có thể tiết lộ một công cụ giao diện người dùng (UI) RESTful mới nổi. Các công cụ thiết kế mới đang cho phép tạo giao diện người dùng mặt trước có thể phát hiện các khả năng của trình duyệt và điều chỉnh các thuộc tính hiển thị cho phù hợp. Ví dụ: Modernizr là một thư viện JavaScript sẽ phát hiện khả năng của trình duyệt người dùng của bạn và điều chỉnh thiết kế cho phù hợp. Các phương pháp phát hiện của họ dường như tương tự như các phương pháp được sử dụng bởi HTML5test. com

Với vai trò là giám đốc tiếp thị kỹ thuật, tôi thường được yêu cầu giải thích công nghệ Sencha khác với các dịch vụ tương tự hoặc cạnh tranh như thế nào. Những cuộc thảo luận đó thường biến thành một ma trận khả năng hoặc bản tóm tắt tương tự, nơi rất dễ bị lạc các sắc thái và cảnh báo.

Trong bài viết này, tôi sẽ tập trung vào việc bắt đầu làm việc với các công nghệ HTML5 thực sự như thế nào từ góc độ của một nhóm phát triển Java doanh nghiệp. Tôi sẽ đề cập đến các công nghệ Sencha cụ thể, nhưng tôi không có ý ám chỉ rằng đó là những lựa chọn duy nhất có sẵn. Mặc dù vậy, chúng tôi tin rằng đó là một trong những khung công tác js tốt nhất

một số nền tảng về phát triển phần mềm là gì?

Trong thế giới phát triển phần mềm, lập trình hướng đối tượng (OOP) cực kỳ phổ biến. Mặc dù các nhà phát triển chắc chắn có thể tạo các chương trình và chức năng mà không cần tận dụng mô hình hướng đối tượng, nhưng những người ủng hộ cảm thấy rằng OOP giúp họ tận dụng tốt hơn các nguồn lực của nhóm, cải thiện chất lượng sản phẩm và giảm chi phí hỗ trợ và bảo trì

OOP tập trung vào “đối tượng”, các thành phần cơ bản của sản phẩm đang được phát triển và mối quan hệ giữa các đối tượng đó. Các nhà phát triển thường đóng gói các đối tượng dưới dạng các gói với các giao diện và hành vi được xác định rõ. Trong quá trình phát triển, các đối tượng cung cấp một cơ chế thuận tiện để phân bổ công việc và chúng cho phép các nhà phát triển tập trung vào các đối tượng và chức năng cụ thể thay vì cố gắng hiểu và quản lý các tương tác phức tạp giữa các biến trong toàn hệ thống

Các nhóm được giảm nguy cơ xảy ra lỗi không mong muốn do thay đổi mã, vì các đối tượng dễ bị cô lập và kiểm tra hơn. Các ngôn ngữ OOP phổ biến cũng có thể giảm nỗ lực phát triển phần mềm, thông qua các kỹ thuật như kế thừa, nguyên mẫu và ghi đè, có thể giúp tránh mã trùng lặp cho các loại đối tượng tương tự hoặc có liên quan

Các nhà phát triển Java đã được hưởng những lợi ích này trong nhiều năm và trên thực tế, nền tảng OOP dựa trên lớp của Java có lẽ là một trong những lý do khiến nó đứng đầu bảng xếp hạng ngôn ngữ phổ biến trong hơn 15 năm. Những nhà phát triển này đã xây dựng một hệ sinh thái rộng lớn cho các công nghệ liên quan đến Java, bao gồm các IDE tinh vi, công cụ phát triển và quy trình công việc

Còn Java và HTML5 thì sao?

Mặc dù Java cung cấp một môi trường tuyệt vời cho các ứng dụng phía máy chủ và máy khách, nhưng các ứng dụng doanh nghiệp hiện đại đang ngày càng hướng tới các tiêu chuẩn HTML5, thúc đẩy khả năng tương thích rộng rãi trên nhiều loại trình duyệt, thiết bị và môi trường để đáp ứng nhu cầu của người dùng. Các nhà phát triển Java muốn cung cấp giao diện HTML5 động cho ứng dụng Java mạnh mẽ của họ có thể bị sốc

Các ứng dụng HTML5 tận dụng các tiêu chuẩn như HTML, CSS và JavaScript, vốn nổi tiếng là khó triển khai trong các môi trường, trình duyệt và phiên bản khác nhau. Ngoài việc học các mô hình đối tượng và cú pháp mới cho các tiêu chuẩn này, các nhà phát triển Java cần tìm hiểu kỹ về các thư viện mới, mô hình sự kiện và mô hình OOP hướng nguyên mẫu được sử dụng bởi JavaScript. Hơn nữa, các IDE thường cung cấp ít hỗ trợ cho JavaScript hơn so với Java, kéo dài quá trình học tập

Các nhà phát triển thường cần chọn giữa hai cách tiếp cận để tích hợp HTML5 vào các ứng dụng Java của họ

  1. Sử dụng một khung như GWT hoặc GXT để tạo HTML5 động từ mã nguồn Java
  2. Xây dựng API dựa trên HTTP cho ứng dụng phụ trợ Java và phát triển ứng dụng HTML5 phía máy khách mới

Java so với HTML5

Các khung như Sencha GXT cho phép các nhóm tận dụng kiến ​​thức chuyên môn về Java trên cả mặt trước và mặt sau

GXT & GWT. Tạo HTML5 từ Java

Các khung như GXT và GWT cho phép các nhà phát triển Java tiếp tục sử dụng các công cụ và quy trình công việc quen thuộc để tạo các ứng dụng động trên toàn bộ mặt sau và mặt trước. Họ thường không cần phải lo lắng về những điều kỳ quặc về HTML và CSS, và họ không cần phải đi sâu vào lỗ hổng JavaScript. Bằng cách mã hóa hoàn toàn bằng Java, họ có thể tận dụng thế hệ mã HTML5 và JavaScript được tối ưu hóa tự động, mạnh mẽ. Các nhà phát triển Java có thể tùy chỉnh chức năng và kiểu dáng do khung cung cấp và thậm chí cung cấp các điều khiển giao diện người dùng tùy chỉnh sẽ được sử dụng trên máy khách (yêu cầu một số chuyên môn về HTML/CSS)

Hạn chế chính là các nhà phát triển bị cách ly khỏi môi trường khách hàng và có thể cần phải vượt qua một số vòng để điều chỉnh một số khía cạnh của trải nghiệm người dùng – đặc biệt nếu cần môi trường mới như máy tính bảng và điện thoại

Làm cách nào để tôi tạo ứng dụng khách HTML5 mới?

Xây dựng ứng dụng khách HTML5 là một tùy chọn phức tạp hơn nhưng linh hoạt hơn. Sự tách biệt tự nhiên của mã phía máy khách và phía máy chủ cho phép các nhóm quản lý mã máy khách và máy chủ một cách độc lập và tận dụng kiến ​​thức chuyên môn của các thành viên trong nhóm có kỹ năng vượt ra ngoài Java. Việc điều chỉnh mã máy khách cho môi trường mục tiêu mới có thể được đơn giản hóa rất nhiều thông qua việc sử dụng các phương pháp thiết kế thích ứng và đáp ứng trong ứng dụng khách và ứng dụng khách có thể được đóng gói thành ứng dụng gốc thông qua các công cụ như Cordova cho thiết bị di động và Electron cho máy tính để bàn

Có rất nhiều lựa chọn khung của bên thứ ba có sẵn để đơn giản hóa trải nghiệm phát triển, cung cấp các khả năng rộng rãi hoặc chuyên biệt. Một số khung chỉ cung cấp quản lý hoặc ràng buộc dữ liệu, trong khi những khung khác tập trung vào các điều khiển giao diện người dùng. Điều quan trọng là phải hiểu những khả năng nào là cần thiết trong một khung bởi vì các nhà phát triển có thể phải sử dụng một số khung cộng với mã tùy chỉnh (và/hoặc công cụ) để có được tất cả các chức năng cần thiết

Java so với HTML5

Các khung như Sencha Ext JS cho phép các nhà phát triển Java tận dụng trải nghiệm thiết kế OO để sử dụng ở giao diện người dùng mà không cần có chuyên môn sâu về web

Ext JS dành cho nhà phát triển Java

Khung Ext JS cung cấp một giải pháp rộng rãi, bao gồm mọi thứ mà nhà phát triển phía máy khách cần với quản lý bố cục và dữ liệu, thư viện giao diện người dùng phong phú, biểu đồ, chủ đề, khả năng truy cập, v.v. Không cần nhiều khung, mã keo tùy chỉnh và các vấn đề đau đầu về bảo trì liên quan. Tôi tin rằng Ext JS là duy nhất có khả năng giải quyết nhiều điểm khó khăn cho các nhà phát triển Java doanh nghiệp, những người chọn tận dụng khung HTML5 phía máy khách, bởi vì nó không chỉ giải quyết các nhu cầu kỹ thuật của ứng dụng mà còn phù hợp với quy trình phát triển Java doanh nghiệp

Mặc dù Ext JS là một giải pháp HTML5, nhưng các nhà phát triển không cần phải lo lắng về các sắc thái của trình duyệt, HTML và CSS. Những chi tiết đó được xử lý bởi khung, vì vậy các nhà phát triển có thể tập trung vào viết mã. Ext JS cung cấp một mô hình đối tượng mạnh mẽ dựa trên tất cả các chức năng. Quản lý dữ liệu MVC/MVVM, các thành phần GUI với trình quản lý bố cục linh hoạt, sự kiện, hỗ trợ cử chỉ và thậm chí cả các đối tượng do người dùng xác định. Các đối tượng được hiển thị theo kiểu dựa trên lớp quen thuộc với các nhà phát triển Java, vì vậy họ không cần phải thành thạo OOP hướng nguyên mẫu. Thông qua mô hình dựa trên lớp này, các nhà phát triển có thể phân lớp và mở rộng các lớp tích hợp và tùy chỉnh giống như họ làm trong Java. Trên thực tế, mã Ext JS tương tự như Java theo một số cách

  • Cách tiếp cận hướng lớp dễ hiểu đối với các nhà phát triển Java
  • Vòng đời đối tượng được xác định rõ đảm bảo rằng các nhà phát triển hiểu cách cung cấp cấu hình ban đầu và ghi đè
  • Đóng gói đối tượng cho phép bảo vệ các thành viên lớp
  • Không gian tên và bố cục hệ thống tệp giúp giữ cho mã được tổ chức
  • Quy ước đặt tên cải thiện khả năng hiểu và bảo trì mã

Ngoài việc giúp các nhà phát triển và nhóm riêng lẻ làm việc với Ext JS, các khả năng cấp nguồn này cho phép cải tiến công cụ có thể tăng tốc độ tăng năng suất

Ví dụ: hầu hết các IDE cung cấp các tính năng như hoàn thành mã, điều hướng cơ sở mã, hỗ trợ tái cấu trúc và tạo giàn giáo lớp tự động, giúp cải thiện đáng kể tốc độ phát triển Java. Đáng buồn thay, sự hỗ trợ của họ dành cho JavaScript thường không mạnh bằng - có thể có một số tính năng xung quanh DOM nhưng rất ít thông tin chi tiết về các đối tượng/nguyên mẫu do người dùng xác định. Ext JS được xây dựng để tận dụng các đối tượng và mối quan hệ của ứng dụng – bao gồm cả lớp stock và lớp tùy chỉnh – để cung cấp các khả năng đầy đủ tính năng cho mã Ext JS trong IDE, cải thiện đáng kể tốc độ phát triển Ext JS

Tất nhiên, viết mã chỉ là một phần của việc phát triển phần mềm. Xây dựng, thử nghiệm và gỡ lỗi thường được tích hợp vào quy trình phát triển của nhóm Java và Ext JS có giải pháp cho tất cả các nhu cầu này

Ext JS cho phép các nhà phát triển Java xây dựng các ứng dụng doanh nghiệp phức tạp tận dụng HTML5 trong khi tránh được nhiều khó khăn do các ngôn ngữ, mô hình và công cụ mới gây ra. Các nhà phát triển Java có thể tận dụng chuyên môn OOP dựa trên lớp của họ để phát triển các ứng dụng HTML5 được thiết kế tốt, mạnh mẽ, dễ bảo trì, cung cấp trải nghiệm người dùng năng động, hấp dẫn trên trình duyệt và thiết bị di động, thông qua web hoặc gói ứng dụng gốc

Nếu bạn chưa dùng thử Ext JS hoặc GXT, tôi khuyên bạn nên tải chúng xuống để dùng thử miễn phí 30 ngày. Chúng tôi có một số tài nguyên tuyệt vời để giúp bạn bắt đầu và tôi nghĩ bạn sẽ thích những gì bạn thấy. Hãy chắc chắn theo dõi blog này để biết thêm các ví dụ thực hành trong tương lai gần

HTML5 có sử dụng Java không?

Ứng dụng HTML5 tận dụng các tiêu chuẩn như HTML, CSS và JavaScript , những tiêu chuẩn này nổi tiếng là khó triển khai trong các môi trường, trình duyệt và phiên bản khác nhau.

HTML5 có thể thay thế JavaScript không?

Nói về JavaScript, thật thú vị khi lưu ý rằng HTML5 sẽ thay thế API JavaScript trong tài liệu HTML4 . Tất nhiên, người dùng cuối sẽ không nhận thấy rằng. Với sự kết hợp của HTML5 và JavaScript, các trang web của bạn trở nên năng động và được hỗ trợ tốt bởi các trình duyệt web, trong khi nội dung của bạn có thể trông sống động và tươi mới.

HTML5 có giống với JavaScript không?

Sự khác biệt chính giữa HTML5 và JavaScript . HTML5 được sử dụng để tạo cấu trúc cơ bản và trình bày nội dung trong WWW, nhưng Javascript là một phần cơ bản của HTML5 .

Học Java hay HTML tốt hơn?

Nên học trước cho người mới bắt đầu vì nó rất dễ dàng và đơn giản. Nếu bạn muốn học JavaScript hoặc CSS, bạn phải học HTML trước, nhưng nếu bạn muốn học python hoặc java, bạn không cần học HTML trước.