Haxe có đáng để học không? [đóng cửa]


153

Đối với những người ngoài kia sử dụng Haxe , điều gì làm cho nó hữu ích cho bạn? Đọc trang web có vẻ rất hứa hẹn. Nó cung cấp tính di động đáng kể?

Một số thế giới thực và có lẽ dưới những lợi thế được đánh giá cao là gì?

Những cạm bẫy hoặc gotchas là gì?


chưa bao giờ nghe về điều này trước khi trông thú vị.
JoshBerke

9
Tại sao phải có vấn đề nghiêm trọng với cộng đồng? Cộng đồng không lớn lắm nhưng rất ủng hộ, hãy xem hoạt động của Danh sách gửi thư.
Franco Ponticelli

4
Câu trả lời ngắn gọn là có, nó đáng để học hỏi. Tôi sẽ viết một câu trả lời chi tiết hơn sau nếu người khác không trả lời tốt hơn.
tylermac

4
cũng có thể nhìn vào câu hỏi này: stackoverflow.com/questions/321204/haxe-in-the-field
TheHippo

2
Tôi không nghĩ rằng có bất kỳ tác hại trong việc học nó. Nó rất gần với JS và NHƯ thời gian dành cho việc học nó có thể chuyển sang các dự án khác.
Nosredna

Câu trả lời:


128

Haxe có đáng để học không?

Câu trả lời ngắn gọn là: Tuyệt đối!

Đối với những người ngoài kia sử dụng Haxe, điều gì làm cho nó hữu ích cho bạn?

Nếu bạn là nhà phát triển web, bạn biết rằng bạn không thể gắn bó với một công nghệ quá lâu. Sớm muộn gì bạn cũng sẽ phải đối phó với những thay đổi trong môi trường hoặc mục tiêu (bạn phát triển cho .NET nhưng một khách hàng quan trọng yêu cầu PHP hoặc có thể tiện ích đó phải ở trong Flash chứ không phải Javascript) và đây là trường hợp tốt nhất. Trong trường hợp xấu nhất, bạn sẽ phải chuyển đổi liên tục, thường là nhiều lần trong cùng một ngày làm việc.

Những công tắc đó có thể lãng phí rất nhiều thời gian của bạn vì bạn cần thay đổi mô hình lập trình quá nhiều lần và có thể vì bạn sẽ có nhiều sự trùng lặp trong việc mã hóa thư viện của mình cho các mục tiêu cụ thể. Haxe cố gắng giảm bớt nỗi đau của quá trình chuyển đổi bằng cách chỉ có một ngôn ngữ nguồn (ngôn ngữ Haxe) và nhiều đầu ra (thông qua trình biên dịch Haxe). Ngôn ngữ rất thân thiện và khá dễ học, bất kể nền tảng của bạn.

Đọc trang web có vẻ rất hứa hẹn. Nó cung cấp tính di động đáng kể?

Ngôn ngữ là như nhau cho dù bạn triển khai nền tảng nào. Vì vậy, bạn định nghĩa các lớp / giao diện / enums / typedefs theo cùng một cách cho JS, Flash, C ++, v.v. Nếu những loại bạn xác định không phụ thuộc vào API nền tảng cụ thể, chúng có thể được sử dụng lại từ nền tảng này sang nền tảng mà không cần nỗ lực gì cả . Tất cả các nền tảng cũng chia sẻ các API phổ biến như truy cập XML, kết nối HTTP và phản ánh. Các nền tảng có những điểm chung (ví dụ Neko và PHP) chia sẻ cùng một API cho những thứ như truy cập tệp hoặc phát triển máy chủ web.

Một số thế giới thực và có lẽ dưới những lợi thế được đánh giá cao là gì?

  • Nếu bạn có kinh nghiệm với Flash / Flex, bạn sẽ biết trình biên dịch có thể làm chậm công việc của bạn như thế nào (lợi thế duy nhất là có thể nghỉ giải lao trong khi chờ đợi;)). Trình biên dịch Haxe nhanh hơn nhiều lần, nhanh đến mức hầu hết thời gian bạn thậm chí không nhận thấy nó hoạt động.
  • Mã byte được sản xuất nhanh hơn nhiều so với công cụ Adobe tương đương.
  • Ngoài ra trong vương quốc Flash, Haxe có thể "nội tuyến" các chức năng hoặc truy cập các tính năng Bộ nhớ chỉ khả dụng ở nơi khác bằng cách sử dụng Alchemy.
  • Trong trường hợp bạn cần, bạn cũng có thể quyết định phiên bản Flash nào sẽ nhắm mục tiêu, từ 6 đến 10; API đã thay đổi rất nhiều nhưng ngôn ngữ Haxe hoàn toàn giống nhau.

Nói về phía máy chủ, tất cả chúng ta đều biết PHP phổ biến như thế nào. Bạn có thể phát triển một ứng dụng với Haxe nhắm mục tiêu và mở rộng sang Neko hoặc thậm chí C ++ nếu ứng dụng web của bạn phát triển.

Những cạm bẫy hoặc gotchas là gì?

Dưới đây là danh sách các quan niệm sai lầm phổ biến:

  • Haxe is young and immatureKhông thực sự, Haxe đã gần 4 tuổi, đã thấy 25 bản phát hành chính thức (không phải bản dựng) + 13 bảng chữ cái và betas, nó được cập nhật liên tục và có một cộng đồng rất tận tâm. Nó được sử dụng chuyên nghiệp bởi rất nhiều người trong một số lĩnh vực phát triển; hãy xem kho lưu trữ danh sách gửi thư để tìm cách mọi người sử dụng Haxe.

  • Haxe is complicatedVì mục tiêu chính của Haxe là không có bất kỳ câu hỏi nào về AS3, mọi người mong đợi rằng nó phải có trình hướng dẫn hoặc GUI. Như đã nói Haxe là một ngôn ngữ và một trình biên dịch làm cho nó phù hợp với các lập trình viên nhưng không tốt cho các nhà thiết kế.

  • There aren't any IDEsPhần thực sự của điều này là IDE có thể được cải thiện về nhiều mặt để tích hợp tốt hơn với Haxe nhưng đã có rất nhiều tùy chọn hợp lệ .

  • The only book published is already outdatedCó một số sự thật ở đây, thật không may, cuốn sách đã được xuất bản chỉ một vài tháng trước khi một bản phát hành lớn xảy ra (từ V1 đến V2). Bản phát hành chính đó không thay đổi nhiều, nhưng nó đã thêm một vài điểm không tương thích. Cuốn sách vẫn là một tài nguyên hợp lệ (tôi không chỉ nói vậy vì tôi đã viết nó;))


1
Cảm ơn đã trả lời Franco. Và danh sách các IDE. Tôi bị thu hút bởi plugin Xcode cho HaXe. Trông thật ngọt ngào! Câu chuyện với bộ khung UI và Haxe là gì? Ví dụ: có bao giờ có thể nhắm mục tiêu nói Cacao với HaXe và nhận các tiện ích gốc cho OS X không? Về cơ bản sử dụng trình xây dựng giao diện và liên kết với nhau bằng mã nguồn HaXe?
Gordon Potter

Nếu C ++ là đủ bản địa cho bạn thì có thể. Bạn nên bọc các cuộc gọi Ca cao để chúng có thể truy cập được từ mã được tạo bởi haXe. Phiên bản hiện tại của haXe như bạn có thể biết đã cho phép phát triển ứng dụng iPhone; Tất nhiên nó vẫn còn rất thử nghiệm. Hãy xem xét rằng mục tiêu C ++ chỉ được giới thiệu trong phiên bản mới nhất.
Franco Ponticelli

34
Nó cũng sẽ giúp có một số khuyết điểm cho haXe - không chỉ là lời khen ngợi.
Alan Klement

Bản thân lập trình viên AS3 và thấy flash chết một cách khủng khiếp, haxe đang ngày càng tốt hơn cho chúng ta.
justnajm

Đồng ý về những nhược điểm có thể có, và nếu bạn có thể, tôi thực sự muốn một phiên bản cập nhật của câu trả lời này nếu có thể.
Prometheus

25

"Đối với những người ngoài kia sử dụng Haxe, điều gì làm cho nó hữu ích cho bạn?"

Là một flasher sáng tạo, tôi thực sự không thấy điểm nào trong AS3 nữa! Vì vậy, từ một lập trình viên / nghệ sĩ Flash người dùng, đây là ý kiến ​​của tôi:

Trong dự án hiện tại của tôi, tôi có một thanh niên 19 tuổi, người đã chuyển từ hầu hết các dòng thời gian AS2 / AS3 sang các lớp Haxe theo hướng dẫn của tôi và đã chuyển cả mã AS2 và AS3. Vì vậy, tôi không nghĩ Haxe khó sử dụng hơn AS3 hoặc khi được sử dụng trong Flash khác nhau đáng kể. Về tính ổn định, khả năng hiện tại chính của tôi là các khía cạnh của người chơi Flash hiện tại, Haxe thực sự ổn định hoặc ổn định hơn AS3 khi phát triển Flash.

Tiến hóa Flash là một quá trình liên tục tạo ra các thư viện trở nên vô dụng khi Flash thay đổi (có thể họ cần bán phần mềm mỗi năm!?), Và các thành phần luôn là thứ tôi cần, nhưng kích thước thật ngớ ngẩn, vì vậy tôi không sẵn lòng để theo như cừu vào Flex hoặc thậm chí chuyển sang XAML thay thế.

Ưu điểm chính của Haxe là, bạn có thể bắt đầu thực sự nghĩ đến việc tạo ra các lớp đã ly dị khỏi nền tảng và phần lớn có thể sử dụng được năm năm kể từ bây giờ, tôi nghi ngờ điều đó đúng với bất kỳ AS3 nào bạn tạo ra, Haxe có ít ràng buộc hơn, có khả năng Tôi có thể biên dịch mã thành JavaScript, Silverlight hoặc bất cứ thứ gì Google đưa ra tiếp theo.

Vấn đề chính của tôi với Haxe là hầu hết sự phát triển không phải trên máy Mac nên các khía cạnh biên dịch C ++ và các tính năng mới của Haxe đôi khi xuất phát từ người dùng Windows, nhưng tôi không gặp vấn đề với Haxe cốt lõi như biên dịch Flash.

Về mặt thiết kế: Tôi sử dụng phim Flash IDE được tải trong thời gian chạy cho tài sản hình ảnh của mình và làm tương tự khi phát triển trong AS3 vì vậy thực sự quy trình làm việc của tôi không phụ thuộc vào AS3 / Haxe, tôi thích một cuộc sống đơn giản nên tôi sử dụng Textmate cho AS3 hoặc Haxe. Tôi có niềm đam mê với Flash IDE và sức mạnh của nó nhưng sẽ không bao giờ sử dụng nó cho mã và hầu hết các công việc Flash của tôi chủ yếu là mã, vì vậy tôi không phải là một người khó tính Linux, Haxe không ngăn bạn sử dụng Flash IDE, nhưng nếu bạn muốn sử dụng swfmill hoặc sam bạn có thể.

Câu hỏi là: tại sao lại lãng phí thời gian của bạn vào ngôn ngữ thương mại AS3 có khả năng thay đổi chỉ để bán các phiên bản trong tương lai và bị giới hạn trong trình phát Flash?

Tôi không mất nhiều thời gian để đến một giai đoạn mà tôi có thể tạo một trò chơi hoặc ide phức tạp trong javascript mà không cần jQuery, v.v. Haxe ... nó sẽ hoạt động trên trình duyệt chéo, v.v ... Haxe cho phép tôi lấy Flash của mình kỹ năng lập trình và hiểu biết phát triển giao diện bên ngoài flash (chưa bao giờ thực sự sử dụng JavaScript trước đây), nếu tôi học JavaScript thuần túy, có lẽ tôi sẽ không cảm thấy được kích hoạt, giống như ai đó đã cắt đứt cánh tay của tôi và tôi sẽ viết mã rất cụ thể cho nền tảng , trong khi bây giờ tôi có thể sử dụng FEffects để tweening và sau đó thêm một số chuyển đổi trình biên dịch và biên dịch sang một số nền tảng khác và sử dụng một số neash / nme.

Tôi thực sự khá thích các khía cạnh như trình biên dịch thông minh về các loại, cho phép mã của tôi sạch hơn. Và typedef là tuyệt vời.

Tôi đã xem PHP và quyết định đó là một ngôn ngữ bẩn thỉu lộn xộn và tương tự với JavaScript, tôi rất vui vì tôi có thể nhắm mục tiêu chúng với Haxe và không phải mất quá nhiều thời gian cho ma thuật hack đen.

Nếu bạn thích tạo mã để phát triển nhanh chóng khả năng sáng tạo trực quan, tôi nghĩ Haxe là ngôn ngữ lý tưởng và thậm chí là một freelancer tôi đang sử dụng nó một cách thương mại.


18

Quan điểm của tôi về Haxe,

Cảnh báo các đoạn văn sau rất triết lý (Những đoạn thực tế tiếp tục đi xuống):

Là một người cởi mở với nhiều ngôn ngữ lập trình trong thời gian ngắn lập trình của tôi và một người chỉ đơn giản là tiếp tục khi tôi cảm thấy có gì đó không hiệu quả với tôi; Tôi thấy rằng Haxe là thứ mà tôi không thể tiến bộ được, tôi không thể 'tốt hơn'.

Trước đây tôi đã phát hiện ra rằng thời gian tôi dành cho việc viết bằng một ngôn ngữ cụ thể liên quan đến hai yếu tố chính, tôi cần sử dụng ngôn ngữ đó bao nhiêu để có kết quả và tôi dễ dàng nắm bắt ngôn ngữ đó như thế nào. Nhưng với Haxe, thời gian nắm bắt ngắn hơn nhiều, và tôi gán điều này cho sự tích lũy kiến ​​thức nhỏ bé của mình bằng nhiều ngôn ngữ. Cho đến khi Haxe tôi chưa bao giờ tìm thấy một người thực sự phù hợp với tôi và điều đó cảm thấy đúng, họ khó hiểu hoặc chỉ đơn giản là vô dụng; ít nhất là vô dụng từ quan điểm của tôi.

Haxe đã cho phép tôi biểu cảm hơn rất nhiều với cách tôi viết, tôi không có nghĩa là 'biểu cảm' như trong chất lượng mà mọi người nói về ngôn ngữ mà tôi có nghĩa là khả năng chỉ có ý tưởng và chạy theo nó, để thử một cái gì đó theo cách tôi cảm thấy là đúng. Cho dù nó thành công hay hoàn toàn thất bại.

Haxe là một đường cong học tập rất dễ dàng đối với tôi, với nền tảng chung về ngôn ngữ c và AS2 / 3, và tôi thực sự không gặp khó khăn gì trong việc chọn nó. Một điều luôn cản trở sự tiến bộ của tôi với một ngôn ngữ mới là hiểu khái niệm đằng sau cú pháp / khung cụ thể đó, nhưng ngay cả khi tôi đã vượt qua rào cản đó, tôi thường sẽ thấy rằng ngôn ngữ bị hạn chế, hạn chế hoặc cả hai. Với Haxe, tôi không bị giới hạn và tôi cũng không tìm thấy ngôn ngữ để giới hạn mình. Với Haxe không có trần kính, nhưng là sàn kính, trong đó không có giới hạn cho những gì bạn có thể làm nhưng bạn có thể thấy rõ bạn đã đến đó bằng cách nào

Nhặt Haxe không giống như nhặt một số que và tạo ra lửa, nhưng cũng không giống như đi ra ngoài và mua một bộ oxyacetylene và bắt đầu một đám cháy với điều đó. Theo nghĩa đó, Haxe gần với một trận đấu hơn, mà bạn có thể sử dụng lại. Nó tuân theo hầu hết tất cả các chuyển đổi của một cái gì đó mà bạn đã sử dụng nhưng thêm các tính năng mới hữu ích. Nhưng để làm như vậy, nó không phát minh lại hoàn toàn bánh xe, nó chỉ sửa các bit bị thối. (ok ít tương tự trong đoạn tiếp theo)

Những điều thiết thực:

Ngôn ngữ đơn giản dễ dàng và được chuẩn hóa, trong khi vẫn cho phép lập trình viên đi xa như họ muốn.

Bạn có thể viết một đoạn mã ở mức rất cao hoặc đi và mân mê các bit và mảnh nhỏ (ở mức độ nghiêm trọng trên một số nền tảng)

Haxe không ra lệnh cho những gì bạn có thể và không thể làm trên bất kỳ một nền tảng nào, nó cho phép (hoặc kế hoạch cung cấp cho bạn) toàn quyền truy cập vào mọi thứ, nhưng ở đó nó có thể bổ sung cách làm việc chuẩn hóa.

Danh sách gửi thư rất hữu ích và đáp ứng và diễn đàn thậm chí đang bắt kịp tốc độ.

Ngôn ngữ liên tục được thay đổi (theo những cách nhỏ) với những điều mới được thêm vào trong mỗi bản phát hành.

Có rất ít lỗi thực sự xảy ra đối với API chính và thậm chí còn ít hơn cho trình biên dịch.

Mọi người đều nói chuyện cởi mở về ngôn ngữ theo hướng của nó và hướng mà họ đề xuất cho Haxe (và tất nhiên tại sao nó nên đi theo hướng đó)

Và cuối cùng, Haxe không phải là một công ty tư nhân lớn của một công ty lớn (hoặc thậm chí nhỏ) để kiếm tiền từ bạn như một nhà phát triển, thay vào đó nó được tạo ra cho tất cả các nhà phát triển sử dụng, xây dựng và cải thiện. Và đó là lý do tại sao tôi cảm thấy Haxe là nơi tôi muốn. (bây giờ để quay lại mã hóa)


13

Nếu bạn muốn có một câu trả lời ngắn gọn: CÓ!

Đối với những người ngoài kia sử dụng Haxe, điều gì làm cho nó hữu ích cho bạn?

Hầu hết thời gian tôi sử dụng Haxe cho phía máy chủ. (Điều này có nghĩa là mục tiêu PHP hoặc neko). Theo tôi, PHP là ngôn ngữ hấp dẫn nhất mà tôi từng sử dụng, đó là lý do tôi bắt đầu sử dụng Haxe: Có một ngôn ngữ có thể sử dụng được.

Một lợi thế lớn khác đối với tôi là, Haxe là nguồn mở.

Nó cung cấp tính di động đáng kể?

Có cùng mã trên các mục tiêu khác nhau! Tôi không thể tưởng tượng bất kỳ cách nào để có thêm tính chân thực.

Di chuyển một trang web từ PHP sang mod_tora , hoạt động nhanh hơn 40-80 lần so với PHP, chỉ cần 5 phút làm việc ???

Một số thế giới thực và có lẽ dưới những lợi thế được đánh giá cao là gì?

  • Ưu điểm lớn nhất là tính di động của mã và các tùy chọn tuyệt vời để giao tiếp giữa các nền tảng, việc xử lý dữ liệu giữa máy khách và máy chủ chưa bao giờ dễ dàng hơn thế. (Hãy xem từ xa phần Từ trong wiki.)
  • Cộng đồng là tuyệt vời . (Nếu bạn thích danh sách gửi thư ít nhất. :-)
  • Một điều nữa là: Nếu bạn cần thực hiện các hoạt động gốc rất nền tảng không được Haxe hỗ trợ (điều này rất hiếm khi xảy ra), Haxe luôn cung cấp cho bạn các tùy chọn để nhắm mục tiêu chúng. Nó được gọi là ma thuật Haxe . Nói cách khác: bạn có thể làm mọi thứ bạn có thể làm bằng ngôn ngữ bản địa của nền tảng + tất cả những điều tốt đẹp mà Haxe cung cấp cho bạn.

Những cạm bẫy hoặc gotchas là gì?

  • Tài liệu, đôi khi cài đặt không hoàn hảo 100%. Sự hỗ trợ cho các IDE có thể được cải thiện rất nhiều.
  • Ngoài ra, mục tiêu JavaScript đôi khi khó sử dụng, vì Haxe cung cấp một ngôn ngữ thực sự tốt, nhưng một số loại khung cho các thao tác DOM phổ biến nhất bị thiếu, nhưng tôi nghĩ rằng một số người đang làm việc trên đó ;-)
  • Nếu tôi phải làm việc cho khách hàng, đôi khi họ không thích ý tưởng để dự án của họ được thực hiện bằng một ngôn ngữ không xác định như vậy.

Tái bút: Tôi nghĩ việc học một ngôn ngữ mới luôn luôn có giá trị, vì nó giúp bạn cải thiện các kỹ năng và kinh nghiệm lập trình.


mode_tora nghe có vẻ thú vị. Nhưng bạn sẽ làm gì nếu bạn không có / muốn httpd của apache? Có một máy chủ ở neko, nhưng tài liệu nói rằng nó chỉ để phát triển.
stesch

8

Vâng, câu hỏi của bạn đã được trả lời nhưng tôi muốn thêm một vài câu ngắn.

Tôi đã học và sử dụng Haxe rất nhiều sau các betas đầu tiên và đã sử dụng nó kể từ đó. Đó là ngôn ngữ đầu tiên tôi học (lúc đó tôi vẫn còn học đại học) thực sự khiến tôi hiểu được sự khác biệt giữa ngôn ngữ và API.

Bạn thấy ở trường đại học lần đầu tiên tôi học AS2, sau đó là PHP, sau đó là một số Javascript. Chúng tôi không có giới thiệu chính thức về lập trình (và dù sao tôi cũng không học ngành khoa học máy tính). Các ngôn ngữ này đều gắn liền với các nền tảng vì vậy khi là một lập trình viên mới, tôi tự động cho rằng những thứ như strlen () là PHP, MovieClip là AS2, ...

Bằng cách sử dụng Haxe, tôi thực sự hiểu giá trị của thiết kế hướng đối tượng, vì nền tảng không còn hạn chế các lớp của tôi nữa. Tôi có thể sử dụng lại mã được viết cho một dự án Flash trong mã web thông thường của mình, nếu tôi tách biệt chúng khỏi các chi tiết cụ thể về nền tảng của chúng.

Do các lớp từ xa tuyệt vời mà bạn có thể sử dụng để giao tiếp giữa các nền tảng, tôi cũng nhận ra rằng XML không phải là tất cả, cũng không phải là JSON, nó hoàn toàn vô nghĩa nếu không có mã tác động đến nó.

Đối với một người như tôi mới bắt đầu lập trình, đó là một tiết lộ khá lớn trong thời điểm XML 'tuyệt vời' và tốt cho mọi thứ ;-)


5

Haxe là một ngôn ngữ vô giá. Nhiều điểm cộng của nó thường bị bỏ qua. Ví dụ, nó có các thư viện tích hợp tuyệt vời giúp cho việc phát triển ứng dụng trở nên dễ dàng hơn nhiều, chẳng hạn như ORM (Neko / PHP) đơn giản nhưng rất mạnh mẽ, từ xa đa nền tảng (Flash / JS / PHP / C ++ / Neko) nền tảng được hỗ trợ có thể giao tiếp dường như với bất kỳ nền tảng nào khác, thư viện biểu thức chính quy vững chắc (hỗ trợ bởi tất cả ngoại trừ Flash <8) và nhiều hơn nữa.

Một lưu ý, gần đây tôi đã viết một ứng dụng sử dụng Haxe cho PHP / JS / Flash và thấy tốc độ phát triển được tăng theo cấp số nhân.

Cấp, Haxe có thể không phải là nhà thiết kế trung tâm, nhưng nó cũng không phải là khó. Haxe rất dễ học và sử dụng lại, và khi số lượng nền tảng mục tiêu tăng lên, các nhà phát triển Haxe cũng có thể nhắm mục tiêu vào những thứ đó mà không phải học bất cứ điều gì mới.


4

Việc sử dụng Haxe chính của tôi vẫn bị giới hạn trong việc phát triển Flash. Tôi chỉ dần dần nóng lên với ý tưởng rằng nó có thể được sử dụng cho các mục tiêu khác. Tôi vẫn không thấy những lợi thế theo hướng đó và thực hiện PHP và JS của tôi trực tiếp trong PHP và JS.

Mặc dù tôi không phát triển cho Neko back-end nhưng đó là sự hỗ trợ tuyệt vời vì điều đó có nghĩa là tôi có thể viết các trường hợp thử nghiệm cho mã và để chúng được tích hợp vào một tập lệnh xây dựng thay vì chỉ có thể chạy chúng trong một trình phát flash. Đây là một lợi thế rất tốt.

Bản chất mở của mã và phát triển cũng là một lợi thế tốt. Tôi thực sự cần một bộ tiền xử lý và vì vậy #linehỗ trợ đã được thêm vào Haxe. Tôi không nghĩ Adobe sẽ thực hiện nghiêm túc yêu cầu của tôi.

Tôi thấy rằng trở thành một ngôn ngữ đánh máy là lợi thế rất lớn so với nhiều ngôn ngữ hiện đại mới.

Có một số cạm bẫy liên quan đến tính nhất quán của ngôn ngữ và tính minh bạch của back-end. Tôi giữ một danh sách những người ảnh hưởng đến tôi ở đây . Tất nhiên không có ngôn ngữ nào là hoàn hảo về mặt này nhưng tôi hơi thất vọng vì một ngôn ngữ mới có rất nhiều ngôn ngữ.


3

Tôi đã mã hóa Haxe trong sử dụng cá nhân và chuyên nghiệp trong khoảng 2 năm. Có một số lợi thế nhất định mà bạn sẽ không có được từ các ngôn ngữ khác, thứ lớn nhất là nó được thiết kế gần như là một trình biên dịch cấp sản xuất hiện đại có thể thích ứng linh hoạt với các nền tảng mới và tận dụng các tính năng độc đáo của chúng . Điều này làm cho nó trở thành thứ gần nhất với phiên bản C. cấp cao hơn Nếu bạn viết mã bằng Haxe, bạn có thể tin tưởng vào nó.

Sự hấp thụ của cộng đồng đã mạnh hơn bạn nghĩ - Tôi đã phân tích một chút về lưu lượng danh sách theo số kilobyte được nén (từ dữ liệu trên http://lists.motion-twin.com/pipermail/haxe/ ) và kết quả cho thấy tăng 25-50% YTD (tháng 1-tháng 9) mỗi năm kể từ năm 2006. Trong sáu tháng qua, lưu lượng truy cập đã thực sự bùng nổ và tôi nghiêm túc xem xét việc tiêu hóa vì nếu không, hộp thư đến của tôi bị ngập hàng trăm tin nhắn trên Haxe nếu tôi rời khỏi nó trong hơn một ngày. Nó không được thổi phồng như các ngôn ngữ khác, nhưng điều đó có nghĩa là những người đi xe ngựa đến Haxe có xu hướng tự tin, lập trình viên giỏi.

Mọi người đã thử nghiệm các trình biên dịch ngôn ngữ sang ngôn ngữ trong các ngữ cảnh khác (Lược đồ ở bất cứ đâu, Python hoặc Ruby trong JS, v.v.) nhưng các ngôn ngữ đó được thiết kế cho một vị trí và mục đích khác và trong bản dịch mất rất nhiều khía cạnh tốt nhất của chúng, khiến cho kết quả hacks mát mẻ, nhưng không thoải mái cho công việc hàng ngày. Haxe không cảm thấy như vậy; mặc dù nó không có sự tiện lợi đến từ việc tích hợp ngôn ngữ / thời gian chạy, nhưng nó có rất nhiều thứ hay ho khác để cung cấp ngay bây giờ .


3

Theo chủ quan, tôi thấy tôi làm việc hiệu quả hơn ở Haxe hơn bất kỳ ngôn ngữ nào khác. Tôi sử dụng Haxe chủ yếu nhắm mục tiêu Neko và JavaScript.

Trình biên dịch tự nó rất nhanh cho phép tôi sử dụng Haxe như một ngôn ngữ kịch bản. Nó dựa vào hướng đối tượng nhưng có một số công cụ chức năng; chức năng hạng nhất, chức năng phù hợp, thư viện lambda.

Tôi thấy tốc độ của Neko là đủ và kích thước hình ảnh nhỏ của nó rất tốt cho các môi trường bị hạn chế. Đó là C FFI rất tuyệt vời - rất đơn giản để thêm chức năng mới.

Tôi sử dụng Haxe cho trình điều khiển phía máy khách JavaScript của mình, thực hiện các sự kiện cho chế độ xem jQuery tiêu chuẩn. Điều này hoạt động thực sự tốt khi bạn có thể gõ đồng thời kiểm tra mã máy khách và mã máy chủ của mình, trong khi vẫn giữ nguyên mã JS chưa được kiểm tra ở mức tối thiểu và giữ lại các lợi ích của các thư viện JS thông thường. Thư viện JSON có sẵn. Btw, mặc dù Haxe không đi kèm với mod_ * cho Apache, v.v., tôi thấy việc sử dụng proxy linh hoạt hơn nhiều, vì vậy tôi có thể thiết lập nhiều phiên bản Neko phía sau máy chủ web.

Nhìn chung, tôi nghĩ rằng nó rất tròn trịa và được nghĩ ra - và thực tế, nó hoạt động như được quảng cáo trên tất cả các nền tảng.


2

vâng, hoàn toàn

NHƯNG nó cần một IDE và tài liệu tốt hơn, việc thiếu một IDE tuyệt vời (như nhật thực dựa trên) đối với tôi tạo ra tất cả sự khác biệt và tôi không thể đạt được mức năng suất tôi làm trong các lang khác do điều này.

ngôn ngữ = tuyệt vời - tốt nhất bởi môi trường phát triển dặm = nghèo (tại thời điểm này và IMHO)


1

Tôi đã có Haxe trên radar kể từ khi nó bắt đầu. Tôi đồng ý rằng nó có vẻ rất hứa hẹn nhưng tôi nhận thấy rằng các nhà phát triển không chấp nhận nó nhanh như bạn mong đợi (so với RoR và thậm chí Flex).

Bất kể Haxe tốt và phù hợp như thế nào đối với bạn ngay bây giờ, bạn vẫn sẽ nằm trong số những người chấp nhận sớm và bạn chắc chắn sẽ đi vào những vấn đề mà những người chấp nhận sớm thường gặp phải.

Mặc dù có một danh sách gửi thư rất tích cực với các thành viên rất hữu ích, tôi vẫn sẽ đợi cho đến khi có nhiều người tham gia hơn và nhiều sách và tài nguyên được viết về nó.

Cuối cùng, Haxe giúp bạn viết bằng một ngôn ngữ duy nhất và nhắm mục tiêu các nền tảng khác nhau (chủ yếu là JS và Flash, và bây giờ NekoVM, PHP và C ++) bạn có thực sự cần điều đó không?!


1
Tôi không chắc đó là một so sánh công bằng cho tỷ lệ chấp nhận. Với Flex, đây là ngôn ngữ được tài trợ từ Adobe. Điều đó tự động mang lại cho nó "tín dụng đường phố";) Ruby là khoảng 10 năm khi Rails xuất hiện. Từ những gì tôi đã thấy, có vẻ như nhiều người chuyển sang RoR sau đó chỉ đơn giản là Ruby. Ngược lại, Haxe khoảng một nửa tuổi như vậy, và mặc dù có rất nhiều khuôn khổ cho Haxe đang phát triển ngoài kia, chắc chắn không có ai đi virus như đường ray.
tylermac

Nghiêm túc?! % Nhà phát triển RoR đã sử dụng Ruby trước khi RoR ra mắt là gì? Và không quan trọng với tôi (với tư cách là nhà phát triển) nếu một nền tảng dev được tài trợ bởi một công ty lớn hay không? Tốc độ thích ứng đang di chuyển rất chậm với HaXe IMO và đây là mối quan tâm chính của tôi về nó
Ammar

Cách tiếp cận mới không phải lúc nào cũng rõ ràng với mọi người, tôi nhớ RoR và papervision cả hai dự án đã mở rộng trong những năm gần đây khiến tôi quan tâm, và tôi phải nói rằng haXe thực sự chứng minh tiềm năng của nó và tôi tin rằng nó sẽ lớn hơn cả .. 2-3yrs sẽ cho biết;)
JLM

Lập luận của tôi vẫn đứng vững: còn quá sớm :)
Ammar

1
@JLM: Đã 4 năm trôi qua, bạn có thể chỉnh sửa câu trả lời của mình và điều chỉnh :)
Janus Troelsen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.