2012-09-19 28 views
12

Tôi đang tìm các công cụ cho lập trình GUI Perl trên Windows để phát triển giáo dục/trong nhà, chủ yếu là liên quan đến khoa học.Lập trình GUI Perl trên Windows

Lựa chọn đầu tiên của tôi là PerlQt. Một người bạn của tôi đang phát triển với Qt và C++ vì vậy tôi mong đợi nhận được sự giúp đỡ từ anh ấy. Ngoài ra Qt còn có một trình tạo GUI và Linux có tích hợp tốt đẹp với Perl. Thật không may, tôi không thể làm cho nó hoạt động trên Windows. Tôi đã tìm kiếm các tùy chọn khác và vẫn không rõ ràng sau khi tìm kiếm. Đây là những gì tôi đã có cho đến nay.

  • Perl/Tk: cơ sở người dùng rộng, tài liệu tốt, học tương đối thấp đường cong. Nhưng nhìn cũ và có thể không hoạt động. Tuy nhiên, một số bài báo nói rằng nó được khởi động lại ngay bây giờ và có cái nhìn bản địa.
  • wxPerl: giao diện bản địa. Nhưng đường cong học tập dốc. Không phải tất cả thư viện wx đều được chuyển đến Perl. Một số thích nó và một số ghét nó.
  • Win32: GUI: giao diện gốc, có thể sử dụng tất cả API Windows. Cần cài đặt lực lượng vì một trong các thử nghiệm không thành công. Vẫn hoạt động nhưng không chắc chắn nó đã được cài đặt đúng cách.
  • XUL :: GUI: sử dụng công cụ FireFox, nhập CSS.

Tôi có thể quản lý cài đặt và thành công để hiển thị "Xin chào, thế giới". Tuy nhiên, tôi không thể quyết định cái nào để đi và thông tin trực tuyến đôi khi có vẻ trái ngược nhau.

Bạn có so sánh các công cụ về hiệu quả con người (dễ đọc và viết mã), hiệu quả tính toán và tính sẵn có của trình tạo GUI không?

+5

Bạn đã bỏ lỡ [Prima] (http://www.prima.eu.org/). Tôi tìm thấy một giới thiệu tốt đẹp của [Prima trên Windows] (http://blogs.perl.org/users/fabio_dalfonso/2012/07/a-brief-introduction-to-prima.html). – RanRag

+1

Cảm ơn, tôi sẽ kiểm tra. – microbe

+1

Tôi thấy bạn nói "liên quan đến khoa học". Bạn đang làm gì với nó vậy? David Mertens (và một vài người khác, bao gồm cả bản thân tôi) đang xây dựng một REPL PDL trung tâm bằng cách sử dụng Prima. Nó có chức năng có thể chứa các ứng dụng đơn giản dưới dạng các tab trong cửa sổ chính. [CPAN link] (https://metacpan.org/module/DCMERTENS/App-Prima-REPL-0.03/bin/prima-repl), [GitHub link] (https://github.com/run4flat/App-Prima -REPL) –

Trả lời

2

Có một lỗi thời Perl GUI FAQ trên perlmonks.

PerlQt theo dõi chặt chẽ Qt.

+0

Tôi đã xem qua Câu hỏi thường gặp. Tôi không chắc có bao nhiêu thông tin vẫn hợp lệ. Câu hỏi thường gặp được viết vào năm 2001 với một chút cập nhật vào năm 2004. Hầu hết thông tin vẫn còn hợp lệ trên Windows 7? – microbe

+0

@microbe - Tôi đã chạy PerlTk trên cửa sổ, khác hơn thế, tôi không biết (Tk, đối với tôi, là tốt cho một ứng dụng 1 hoặc 2 cửa sổ, nhưng ngoài đó, tôi có thể đi với cái gì khác) . Prima khá mới vào thời điểm FAQ được viết, nhưng nó vẫn được duy trì. – runrig

+0

Prima được duy trì tích cực. Dmitry thường xuyên làm việc với chúng tôi. Anh ta cũng nhanh chóng sửa lỗi. –

13

Đối với lập trình GUI nền tảng chéo thực, tôi sẽ đề xuất Prima hoặc Tk. Không nhìn tuyệt vời, nhưng chúng hoạt động.

Tuy nhiên, tôi nghĩ bạn có thể được phục vụ tốt hơn (hehe) bằng cách sử dụng giao diện người dùng web so với GUI thực tế những ngày này; điều này rất dễ dàng bằng cách sử dụng một khung công tác web. Tôi sẽ đề xuất Mojolicious mặc dù những người khác làm như Dancer. Lý do chính của tôi cho thấy Mojo trên Dancer là Mojo có rất nhiều chức năng trong một gói nhỏ. Sau đó, một lần nữa, đây là lý do mà những người khác muốn giới thiệu Dancer, vì vậy đó là một quăng.

Cân nhắc cuối cùng là Mojo đi kèm với WebSockets ngoài hộp. Điều này làm cho nó dễ dàng hơn cho webapp của bạn để cảm thấy giống như một ứng dụng thực sự, nói chuyện trở lại máy chủ và nhận được phản ứng mà không cần tải lại.

Chỉnh sửa: Tôi hiện có ví dụ điển hình về ứng dụng dành cho máy tính để bàn được viết với phụ trợ Perl/Mojo và giao diện web: Farabi của Azawawi. Nó là một trình soạn thảo văn bản, hướng tới việc viết Perl. Đó là GUI là trình duyệt, làm cho nó trở thành một trình soạn thảo đa nền tảng đơn giản. Tôi đề nghị nó như là một điểm khởi đầu cho các nhiệm vụ tương tự.

2

Tôi có kinh nghiệm với PerlTk và wxPerl. wxPerl là bộ công cụ khá tốt mà tôi có thể đề xuất.Ngoài ra còn có một người thợ xây GUI có sẵn wxGlade

Vài ứng dụng tôi đã có trong Tk dạy tôi ghét điều đó bộ công cụ hết lòng:

  1. có vẻ khủng khiếp
  2. lượng disproportional thời gian mã hóa đã được chi vào việc giải quyết khác nhau lỗi và tìm giải pháp cho các tính năng bị thiếu
5

Tự quảng cáo cho mô-đun perl của mình IUP:

  • nó sử dụng widget bản địa (= ứng dụng của bạn sẽ có cái nhìn tự nhiên & cảm giác)
  • nó cũng là hơi cross-platform (Win32, GTK, Motif)
2

Dưới đây là một tổng quan về bộ công cụ phụ tùng - nhiều trong số đó cung cấp giấy gói sang các ngôn ngữ lập trình phổ biến:

http://en.wikipedia.org/wiki/List_of_widget_toolkits

tôi khuyên bạn nên [wxwidgets][1] aka wxwindows, hoặc một trình duyệt giải pháp dựa trên r (ví dụ: XULrunner) hoặc giải pháp dựa trên HTML5 + thuần túy. Hiện tại, tôi đang làm việc trên một công cụ đa nền tảng chỉ với giao diện người dùng bảng điều khiển cơ bản, sau đó sử dụng các websockets và HTML5 + SVG cho một giao diện người dùng phức tạp hơn và UX. Để làm cho nội dung web động, tôi sử dụng một công cụ tạo mẫu đơn giản.

(Cá nhân, mọi thắc mắc cái nhìn tổng quan, tôi đã có kinh nghiệm tốt để đặt các hạn wikipedialist of đâu đó trong truy vấn tìm kiếm của những người tin cậy công cụ tìm kiếm. Kudos cho cộng đồng wikipedia siêng năng.)

1

HTA, HTML ứng dụng, mshta.exe ... Cũ nhưng hoạt động như một sự quyến rũ. Ưu điểm: Tổng số truy cập về cơ bản mọi thứ bạn có thể muốn để phát triển các ứng dụng đáng tin cậy trong nhà. Nhược điểm: Hình học được tẻ nhạt, tài liệu perlscript (vs vbscript/javascript)/về cơ bản không tồn tại

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