Ngay cả trong năm 2012, nhà phát triển web vẫn đang gặp phải sự cố Laszlo đã cố gắng giải quyết khi công ty ban đầu tạo OpenLaszlo.10 năm trước, Flash là công nghệ trình duyệt chéo duy nhất cung cấp khả năng hiển thị hình ảnh hoàn hảo cho 97% trình duyệt trên máy tính để bàn, nơi plugin được cài đặt.
Các công cụ JavaScript, HTML và CSS có nhiều tính năng hơn bây giờ: Phát lại âm thanh và video, nhúng phông chữ, hoạt ảnh dựa trên CSS, hiển thị nội dung tăng tốc phần cứng, API vẽ, hỗ trợ hội nghị truyền hình gần đây trong một số trình duyệt (Chrome, Firefox, và Opera dựa trên WebRTC). Các trình duyệt hiện đại cung cấp hầu hết các tính năng tương tự như Flash, nhưng vẫn có một số phần trăm người dùng nhất định duyệt web bằng phiên bản Internet Explorer cũ hơn IE9.
Các yêu cầu cho phải đối mặt với người tiêu dùng hoặc kinh doanh các ứng dụng vẫn còn khác nhau: Nhiều doanh nghiệp
phát triển ứng dụng Cross-trình duyệt
Nếu bạn biết các API và sự khác biệt giữa các trình duyệt, bạn có thể dễ dàng đạt được 80-90% của những gì bạn có thể với Flash dựa trên các tiêu chuẩn mở. Nhưng bạn vẫn phụ thuộc vào chuyên môn của nhà phát triển, với Flash, bạn có một API ActionScript, mà bạn sử dụng trên tất cả các trình duyệt (ít nhất là cho Windows và OS X, Linux có một số hạn chế và không được hỗ trợ tốt).
Ngôn ngữ LZX vs tinh khiết JavaScript
LZX vẫn là một ngôn ngữ tuyệt vời cho việc xây dựng UIS lớn, sử dụng một cách tiếp cận phát triển thành lập. LZX đã phát triển rất nhiều: hỗ trợ CSS, mixins, hỗ trợ các lớp mã hóa trong JavaScript thay vì XML, khả năng nhúng mã ActionScript 3 vào ngôn ngữ là một số tính năng mới.
6 năm trước - lâu sau khi LZX được tạo ra - nhiều nhà phát triển không biết cách viết mã JavaScript tốt. Mô hình phát triển dựa trên nguyên mẫu không được tài liệu hóa tốt và các nhà phát triển có xu hướng sử dụng JavaScript như Java/OOP - dẫn đến mã khủng khiếp. Và ngay cả trong năm 2012, với nhiều sách hay về JavaScript xuất hiện trên thị trường và hàng triệu nhà phát triển JavaScript thú vị, việc xây dựng các giao diện phức tạp bằng cách sử dụng JavaScript thuần túy, nó không phải là một nhiệm vụ dễ dàng. Có một lý do cho sự phổ biến của các ngôn ngữ biên dịch sang JavaScript như CoffeeScript.
Một số lượng lớn nhà phát triển đã sử dụng ngôn ngữ LZX của OpenLaszlo và chuyển sang sử dụng các khung JavaScript như jQuery hoặc Prototype, cần bao nhiêu mã để đạt được những gì có thể thực hiện với một vài dòng mã LZX bằng cách sử dụng bộ dữ liệu, databinding, replication và hệ thống bố cục. Nhiều nhà phát triển Flex chuyển sang HTML5/JavaScript phát triển phàn nàn về những điều tương tự. Có sức mạnh của LZX, và có khả năng biên dịch chéo cho cả SWF và JavaScript do đó vẫn là một thứ cực kỳ có giá trị.
OpenLaszlo và Adobe AIR SDK
Với ActionScript 3 dựa SWF10/11 thời gian chạy, bất kỳ ứng dụng OpenLaszlo có thể dễ dàng biên soạn thành một Adobe AIR cho các ứng dụng Android hoặc iOS. Kiểm tra video này tôi đã tạo vào năm 2010, hiển thị tập lệnh Apache Ant compiling an OpenLaszlo app into an AIR for Android application và triển khai ứng dụng cho điện thoại. Quy trình làm việc đó hoạt động với phiên bản OpenLaszlo 5.0 mới nhất (chưa được phát hành). Điều còn thiếu là, không có bộ thành phần nào được tối ưu hóa cho thiết bị di động và cảm ứng cho OpenLaszlo tại thời điểm này. Nhưng sẽ không có quá nhiều việc để tạo ra một bộ thành phần như vậy, nếu các thành viên cộng đồng tích cực sẵn sàng đóng góp cho một dự án như vậy. Điều đó có nghĩa, bạn có thể sử dụng LZX để phát triển các ứng dụng di động với hiệu suất tốt trên điện thoại thông minh và máy tính bảng hiện đại, mà không cần phải tìm hiểu Objective C hoặc Java để phát triển Android. Haxe là một dự án mã nguồn mở khác sử dụng tính năng biên dịch chéo để nhắm mục tiêu nhiều thời gian chạy hơn: JavaScript, Flash, NekoVM, PHP, C++, C# và Java.
Dual-runtime và cross-biên soạn cho một trải nghiệm người dùng tốt hơn
Đã có một số công nghệ trong những năm qua cho phép các nhà phát triển ứng dụng di động mã một ứng dụng trong một ngôn ngữ, và cross-biên dịch mã khác nền tảng di động.Bạn có thể làm tương tự với OpenLaszlo và bạn có thể thêm các thời gian chạy khác dễ dàng do kiến trúc mô-đun (các thành phần được viết bằng LZX, LFC được viết bằng LaszloScript/JavaScript, hạt nhân được viết bằng ngôn ngữ cụ thể thời gian chạy, ví dụ: ActionScript3). Nhưng trong đôi mắt của tôi có một lý do thậm chí còn quan trọng hơn để sử dụng một ngôn ngữ như LZX, và biên dịch chéo sang JavaScript, ActionScript 3 hoặc các ngôn ngữ khác hoặc máy ảo. Nó có liên quan đến khả năng tạo hiệu ứng hình ảnh tuyệt đẹp và trải nghiệm người dùng độc đáo, được LZX kích hoạt và khó đạt được với sự phát triển JavaScript thuần túy.
Laszlo Systems và David Temkin (cựu CEO kiêm CTO của Laszlo) thành lập các hạn Cinematic User Experience:
Cinematic kinh nghiệm người dùng truyền tải đầu tiên của tất cả những gì bạn không chỉ xem bạn đang tương tác - “người dùng kinh nghiệm " phần của nó. Chúng tôi suy nghĩ điện ảnh là một thuật ngữ hấp dẫn, đã có một spin không techie với nó. Đó là điều mà khi những người không phải công nghệ nhìn thấy nó, họ ngay lập tức hiểu đây là một loại sản phẩm hoàn toàn khác và nhưng những người trong ngành sẽ xem xét và nói mọi thứ đang di chuyển trên màn hình , có thể bạn có kiến trúc kỹ thuật khác ...
Một trong những mục tiêu của OpenLaszlo và LZX là để cho phép việc tạo ra các ví dụ Cinematic Kinh nghiệm người dùng, bằng cách cho các kỹ sư UI API và các công cụ trong ngôn ngữ lập trình (LZX) để tái tạo một cách chính xác những kinh nghiệm tạo ra bởi UX các nhà thiết kế sử dụng các công cụ như công cụ biên tập Flash.
Dưới đây là một trích dẫn từ a book on iOS app development, cho thấy rằng các công ty khác thấy giá trị của một cách tiếp cận như vậy:
Một trong những khái niệm mà các kỹ sư của Apple muốn nói về khi họ đang nói về người sử dụng Beauti-ful Giao diện là khái niệm về trải nghiệm người dùng điện ảnh . Một người dùng điện ảnh có kinh nghiệm là giao diện người dùng giống như một thứ gì đó từ một bộ phim Hollywood. Nó trông tương lai-tic và mịn, và nó sử dụng hình ảnh động để tăng cường cảm giác làm việc với các đối tượng vật lý.
Nhà thiết kế giao diện người dùng của Apple đã cung cấp cho bạn một bộ công cụ cho phép bạn tạo các loại giao diện người dùng điện ảnh này . Các công cụ như Core Animation cho bạn sức mạnh để builduser giao diện có liên quan đến yếu tố trượt từ off-màn hình thay vì hơn là chỉ xuất hiện, và các yếu tố đó di chuyển với một trọng lượng gần như vật lý đối với họ
LZX và chéo -compiler cung cấp cho chúng tôi các công cụ để tạo trải nghiệm người dùng đặc biệt này. Bạn có thể làm tương tự với JavaScript, nhưng nó sẽ có nhiều mã hơn, và có lẽ khó khăn hơn nhiều. Một ví dụ tốt là ứng dụng OpenLaszlo đầu tiên chạy trong DHTML, LzPix demo: Created in 2006, nó vẫn là một giao diện người dùng tuyệt vời - và tôi chưa từng thấy bất kỳ thứ gì giống như nó được xây dựng bằng các khung JavaScript.
Thời gian chạy kép vẫn hợp lệ
Có, cách tiếp cận kép thời gian chạy vẫn hợp lệ. Sẽ có nhiều ứng dụng hơn trong giới thiệu bằng cách sử dụng thời gian chạy DHTML và tôi không biết tại sao không phải như vậy. Thực tế là OpenLaszlo chưa được tối ưu hóa cho iPad hoặc máy tính bảng chắc chắn là một bất lợi, nhưng thời gian chạy DHTML có thể được tối ưu hóa cho iOS và Android.Nếu quirks trình duyệt trên máy tính bị xóa, bộ thành phần mới sẽ được tạo tối ưu hóa cho các trình duyệt di động (sử dụng canvas HTML và CSS2/3 để hiển thị các compoents), bạn sẽ có thời gian chạy di động vững chắc cho OpenLaszlo.
Câu hỏi hay, dựa trên một số quyết định được thực hiện trong những tháng gần đây bởi một số người dùng nổi bật nhất của OpenLaszlo, có vẻ như nó không hoạt động tốt: Bạn đã đề cập đến Gliffy, một số khác là [Apache OpenMeetings] (http: // incubator.apache.org/openmeetings/). Nhóm hiện đang chuyển sang Apache Wicket và jQuery cho phiên bản HTML5 của ứng dụng hội nghị nguồn mở. Đây là [thảo luận trong danh sách gửi thư OpenMeetings] (http://goo.gl/VO7EP): "... Dự án OpenLaszlo dường như hiện không còn được duy trì nữa. Không có bản phát hành nào kể từ năm 2010 của dự án." –
Re: "Có ứng dụng nào khác được triển khai dưới dạng HTML5/DHTML và Flash" không, ứng dụng chỉnh sửa video của chúng tôi (http://www.sarolta.tv/web/sarolta-tools/template-editor.html) có chế độ HTML5 hoạt động nhưng không phát âm thanh và thay thế video bằng hình thu nhỏ của video nhưng chế độ đó không được phát hành cho công chúng vì chúng tôi hiện không nhắm mục tiêu thiết bị di động và mọi thứ khác đều hỗ trợ Flash. Tuy nhiên, tôi có thể sử dụng điện thoại di động JQuery để làm điều đó nếu tôi đã bắt đầu lại từ đầu. – Kmeixner