2011-07-03 34 views
6

Tôi hiện đang làm việc trên một dự án RIA linh hoạt, nhưng gần đây đã đi qua openlaszlo. Có vẻ như rất nhiều dự án lớn đã chọn nó hơn flex, chẳng hạn như dịch vụ nhạc trực tuyến Pandora. Tôi quan tâm đến lý do tại sao. Cho đến nay lợi thế lớn nhất mà tôi đã thấy là nó có một lớp trừu tượng để hỗ trợ flash 6,7, 8, 9 và dhtml và đã được phát triển trong một thời gian dài hơn (vì vậy có thể ổn định hơn).Adobe Flex vs openlaszlo

Có ai có nhiều kinh nghiệm sử dụng cả hai hoặc chỉ openlaszlo? là sự hỗ trợ cho dhtml và các phiên bản flash cũ thực sự là một lợi thế lớn với sự phổ biến của flash 9 những ngày này? Có thể điều này chỉ vì nhiều nhà phát triển đã thoải mái với javascript/ajax? Bên cạnh ưu tiên ngôn ngữ, tại sao openlaszlo và không flex?

Cảm ơn mọi mẹo! Ryan

+0

Hiện tại có 20 câu hỏi được gắn thẻ "openlaszlo" và 12695 được gắn thẻ "flex" trên StackOverflow ... –

+0

điều gì đó được thực hiện bởi các tình nguyện viên và thứ gì đó được làm từ một công ty, với độ cứng và lộ trình rõ ràng. : D. Tôi sẽ đặt cược vào sự phát triển của tập đoàn - Flex. –

+0

Điểm tốt, cộng đồng thương mại và cộng đồng, mặc dù tôi đã thấy nhiều dự án cộng đồng tuyệt vời. Tôi thích môi trường phát triển thị giác/hình ảnh động/flash. Nếu openlaslo không có, tôi nghĩ rằng có rất nhiều nền tảng ria trình duyệt khác/ra khỏi đó cũng thực sự tốt, được sử dụng bởi các trang web lớn và không có nhà xây dựng gui. –

Trả lời

5

Khi các công ty như Pandora chọn OpenLaszlo, Flex vẫn là một sản phẩm thương mại (thậm chí là trình biên dịch). Phiên bản Flex 1.0 và 1.5 không ổn định, và chỉ với phiên bản 2.0 của Flex, nền tảng đã ổn định hơn rất nhiều. Macromedia khiến nhiều nhà phát triển thất vọng vì Flex 2.0 không tương thích với 1.5 và tất cả các ứng dụng phải được viết lại cho bản phát hành mới. Trong tình huống đó, một vài công ty nghĩ rằng OpenLaszlo không phải là một lựa chọn tồi.

Tính năng mạnh mẽ nhất của OpenLaszlo là ngôn ngữ LZX. Ngôn ngữ hỗ trợ các lớp, hoạt ảnh của bất kỳ thuộc tính số, các ràng buộc nào sử dụng cú pháp thuộc tính = "$ {}", hỗ trợ mixin, các bộ dữ liệu với ánh xạ dữ liệu (dựa trên cú pháp xPath). Một số nhà phát triển chính của ngôn ngữ LZX đã làm việc trên ngôn ngữ Dylan của Apple trước đây, và rất nhiều khái niệm mạnh mẽ của Dylan đã biến nó thành ngôn ngữ LZX.

Tôi đã thực hiện cả phát triển OpenLaszlo và Flex. Flex có hỗ trợ công cụ tuyệt vời bởi các nhà cung cấp IDE khác nhau.Nhưng ngôn ngữ ActionScript 3 có thể rất hạn chế, như trong Java bạn dành rất nhiều thời gian suy nghĩ về mô hình lớp học của bạn. OpenLaszlo nhấn mạnh sự phát triển dựa trên cá thể (rất nhanh để tạo mẫu, trong khi vẫn có thể xây dựng các ứng dụng rất phức tạp với 100k + dòng mã LZX). Các ứng dụng OpenLaszlo lớn nhất mà tôi biết là Laszlo Webtop (120K + dòng mã LZX) và IBM Websphere Commerce Edition (http://ibm.co/Kid5tc). Tôi đã nghe nói rằng các công ty khác đã tạo ra các ứng dụng lớn bằng nhau bằng cách sử dụng OpenLaszlo.

Kể từ phiên bản 4.2 OpenLaszlo tích hợp Flex SDK. Trình biên dịch OpenLaszlo tạo mã LZX thành JavaScript 2 và sau đó thành mã ActionScript 3. Nếu bạn biên dịch một ứng dụng cho cả DHTML và SWF10 +, bạn có thể kiếm lợi nhuận từ việc kiểm tra kiểu tốt hơn của trình biên dịch Flex, ngay cả khi ứng dụng của bạn sẽ chỉ được triển khai cho thời gian chạy DHTML/HTML5.

OpenLaszlo rất ổn định. Bản phát hành chính cuối cùng (4.0) đã được ra mắt vào tháng 3 năm 2007, mặc dù nhóm OpenLaszlo coi bản phát hành 4.2 tương đương với bản nâng cấp phiên bản chính, vì nó bổ sung hỗ trợ ActionScript 3 và SWF9 cho nền tảng. 4,2 được phát hành vào tháng 12 năm 2008, bản phát hành ổn định hiện tại là phiên bản 4.9 - mặc dù nhiều thành viên cộng đồng và Laszlo đã sử dụng OpenLaszlo 5.0 (thân máy, chưa được phát hành) trong sản xuất.

Sau khi Adobe thông báo đóng gói Flex SDK cho Apache Foundation (bây giờ là dự án Vườn ươm Apache), Adobe đã thông báo rằng họ đã làm việc trên một tính năng biên dịch chéo cho trình biên dịch Flex thế hệ tiếp theo có tên là "FalconJS". Adobe cũng nói, rằng FalconJS (có thể sẽ được đóng góp cho Apache Flex trong Q4 2012) sẽ không thể biên dịch chéo các ứng dụng Flex hiện tại thành JavaScript. Một ví dụ danh sách đơn giản của FalconJS (như được trình diễn vào tháng 12 năm 2011) được tạo thành 5 MB mã JavaScript không nén, có thể được đun sôi xuống 2.5 MB bằng chế độ nâng cao của trình biên dịch của Google Closure. Một ví dụ OpenLaszlo tương tự trong thời gian chạy DHTML biên dịch ít hơn 750k mã JavaScript.

+0

couldnt đã yêu cầu một câu trả lời tốt hơn! – ryanggfx

3

Tôi nghĩ cụm từ 'rất nhiều dự án lớn' của bạn là rất tương đối. Có, một số công ty lớn đã sử dụng nó, nhưng tôi không xem xét bất kỳ dự án lớn nào. Nếu bạn nhìn vào tất cả chúng trong giới thiệu OpenLaszlo, chúng có vẻ là giao diện khá đơn giản với tôi. Cũng lưu ý rằng OpenLazslo biên dịch Flash, không phải Flex và khung công tác liên quan.

Với tôi, OpenLaszlo là một thay thế cho việc tạo các RIA đơn giản theo cách mà mã kết thúc có thể được biên dịch sang Flash hoặc Javascript. HaXe là một lựa chọn thay thế cho điều này, và tôi nghĩ nó hoạt động tốt hơn OpenLaszlo.

Với điều đó đã nói, có một vấn đề với những "chung" này viết một lần, biên dịch sang khung công tác Flash/Javascript; nó không khai thác bất kỳ sức mạnh/lợi thế nào của từng nền tảng cụ thể. Flash là liên tục thay đổi và như vậy là Javascript với việc bổ sung các thẻ html5 và css3. Nếu bạn đã từng có kinh nghiệm trong cả hai, bạn sẽ nhận thấy rằng chúng rất khác nhau trong cách chúng làm việc và thuật toán có thể hoạt động tốt với Flash, có thể không có Javascript.

Quan điểm của tôi là, nếu bạn chọn công nghệ, hãy chọn một công nghệ phù hợp hơn. Nếu dự án của bạn có nhu cầu có cả Javascript và Flash, thì đây có thể là một lựa chọn tốt, nhưng hãy nhớ rằng bạn sẽ mất đi 'sức mạnh' của mỗi dự án. Ví dụ, Flex có kiến ​​trúc skinning rất tốt và một bộ công cụ cần thiết để phát triển doanh nghiệp. Javascript có thể làm một số công cụ khá gọn gàng với bộ chọn, css3 và một số khung công tác khác như jQuery.

Theo kinh nghiệm của tôi, việc đăng các trình biên dịch như OpenLaszlo sẽ loại bỏ những điểm mạnh đó. Thêm vào đó, nếu có một thứ mới xuất hiện (như nói, phần cứng tăng tốc video/3d cho javascript/flash), bạn phải đợi cho những người ở OpenLazslo cập nhật trước khi bạn có thể sử dụng nó (nếu họ sử dụng nó).

+0

Tôi chỉ có nghĩa là lớn như trong sử dụng rộng rãi, và chủ yếu là đề cập đến Walmart, H & R khối và Pandora. Nhưng có, cảm ơn bạn rất nhiều. Đó là chính xác những gì tôi đang tìm kiếm. – ryanggfx

+0

Sử dụng rộng rãi? Trong 5 năm kinh nghiệm chuyên môn của tôi, tôi chưa gặp bất kỳ ai sử dụng OpenLazslo (mà tôi đã từng làm việc). Và tôi không thể nói rằng tôi nhìn thấy nó như là một yêu cầu cho một công việc. Tương tự cho HaXe. Đối với tôi, có vẻ như thử nghiệm nhiều hơn bất kỳ thứ gì khác và sẽ không được sử dụng cho bất kỳ dự án quan trọng nào vì những lý do tương tự mà tôi liệt kê ở trên vì bạn cuối cùng sẽ đâm vào tường và tự bắn vào chân vì bạn không thể làm hơn. –

+0

quên tôi đã nói bất cứ điều gì về bất cứ điều gì là lớn. Tôi chỉ tự hỏi tại sao các dự án có ý nghĩa hơn 2-3k nhấn một trang web ngày (walmart, pandora, h & r block) đã chọn openlaszlo thay vì chỉ sử dụng flex/as3. Tôi không biết liệu có lẽ có cái gì đó tôi đã nhìn thấy mà họ đã nhìn thấy không. Dù sao, tôi đã chỉ tò mò và bạn trả lời những người lớn. Nó luôn luôn là tốt đẹp để biết về các dự án thay thế. – ryanggfx

0

Tôi bắt đầu phát triển RIA với OpenLaszlo vì nó cung cấp một loại trình duyệt chạy ở mọi nơi. Trải nghiệm người dùng được phân phối với nó cũng rất tốt.

tôi chuyển đến Flex (khi nó được trong Beta) vì:

  1. Mỗi khả năng OpenLaszlo đã có sẵn trong Flex.
  2. Flex có thêm lợi thế vì nó là sản phẩm thương mại được hỗ trợ từ công ty tạo nội dung phương tiện kỹ thuật số hàng đầu Macromedia & sau đó được Adobe mua lại.
  3. Trình tạo Flash (a.k.a Flex Builder) được xây dựng trên Eclipse cung cấp cải thiện năng suất phát triển tốt. (do đó chi tiêu một khoản phí giấy phép thời gian cho nó không phải là ở tất cả các vấn đề)
  4. Trên tất cả Flex có khả năng tích hợp/từ xa phía máy chủ tốt hơn.
  5. Flex có rất nhiều hướng dẫn & mã mẫu để xây dựng một nhà phát triển mới rất dễ dàng.

Bây giờ Flex cũng được cộng đồng thúc đẩy dự án mã nguồn mở dưới Apache Software Foundation OpenLaszlo hiện nay cung cấp thêm một tính năng trên Flex (cho đến khi FalconJS trình biên dịch chéo được phát hành) mà nó có thể chạy cả Flash & môi trường runtime Ajax với một mã duy nhất căn cứ .

Nhưng Flex vẫn có lợi thế là có môi trường phát triển rất tốt (tích hợp với các công cụ thiết kế Adobe khác) và khả năng tích hợp phía máy chủ tốt cho ứng dụng doanh nghiệp, Flex là người chiến thắng rõ ràng.

+0

FalconJS sẽ không hỗ trợ biên dịch các ứng dụng Flex thành JavaScript/HTML5. Các ứng dụng demo mà Adobe đã trình chiếu vào cuối năm 2011 đã lên tới nhiều megabyte mã JavaScript cho một danh sách đơn giản, sẽ được nén xuống khoảng 1,5 MB bằng cách sử dụng gzip. FalconJS sẽ được tặng cho Apache vào cuối năm 2012, và nó hoàn toàn không phải là một sản phẩm hoàn chỉnh, và Adobe không tin rằng nó có thể là bao giờ hết. –

Các vấn đề liên quan