Tài nguyên và công cụ tốt để phát triển JavaScript nặng, hiện đại? [đóng cửa]


22

Tôi quan tâm đến việc thực hiện một số dự án liên quan đến việc sử dụng JavaScript nhiều. Cụ thể là các trò chơi canvas dựa trên HTML5, cũng có khả năng sử dụng node.js. Tôi quan tâm đến việc học các thực tiễn, công cụ và tài nguyên tốt nhất hiện đại cho JavaScript.

JavaScript rất khó để nghiên cứu vì cuối cùng bạn phải lội qua rất nhiều tài liệu thực sự lỗi thời, được ca ngợi từ thời "JavaScript" là một từ có bốn chữ cái.

Nếu bạn tham gia nhiều vào lập trình JavaScript ...

  • Bạn sử dụng trình soạn thảo văn bản hoặc IDE nào?
  • Bạn sử dụng khung kiểm tra đơn vị nào?
  • Bạn có sử dụng Selenium, hoặc cái gì khác?
  • Bạn sử dụng công cụ nào khác?
  • Những cộng đồng nào tồn tại mà thảo luận về những tiến bộ gần đây trong JavaScript?
  • Những cuốn sách bạn đọc / tham khảo?
  • Bạn đọc blog nào?


Một vài blog tuyệt vời mà tôi đọc: Dailyjs.com - Một số bài viết tuyệt vời liên quan đến các thư viện và khung công tác mới trong lĩnh vực JS với trọng tâm nặng nề về Node.js. perfectionkills.com - Không được cập nhật thường xuyên nhưng khi Kangax viết một bài báo, anh ấy thực sự đi sâu, bạn sẽ nhận ra rằng bạn không biết bao nhiêu JS .
Matt Molnar

Trình chỉnh sửa web Adobe Brackets: github.com/adobe/brackets - được viết chủ yếu bằng javascript sử dụng khung nhúng crom. Cũng là một bài viết thú vị về cách họ xây dựng mà biên tập viên Chân đế (nói về các công cụ, khung được sử dụng): ec2-174-129-28-157.compute-1.amazonaws.com/2012/06/26/...
Czarek Tomczak

Wow câu hỏi này có thể sử dụng một bản cập nhật.
Erik Reppen

Câu trả lời:


19

Danh sách của tôi sẽ là:

Sách đã lỗi thời ngay khi chúng lên kệ (thông thường).


7
Trên đó tôi cũng sẽ thêm trung tâm tài liệu mozilla trong phần tham khảo.
Trezoid

2
+1, đó là khá nhiều danh sách của tôi, nhưng tôi cũng đã thêm Trình nén YUI (hoặc trình biên dịch đóng cửa của Google).
Demian Brecht

Pagespeed cũng là một ứng dụng tốt cho tùy chọn "Hồ sơ có thể xóa được hồ sơ". Không hoàn toàn là một công cụ mã hóa JS, nhưng vẫn rất hữu ích.
Ed James

2
@RDL - bạn có sử dụng plugin javascript nào cho vim không?
Mike H

Tôi nhận thấy rằng không có công cụ / khung kiểm tra đơn vị nào được đề xuất ở đây, mặc dù được đánh giá rất cao ...
NT3RP

9

Bạn sử dụng trình soạn thảo văn bản hoặc IDE nào?

Tất cả đều có hỗ trợ cho các tính năng phát triển ứng dụng web hoàn chỉnh (javascript, HTML, CSS, v.v.). Chọn Aptana, nếu bạn đang tìm kiếm giải pháp phần mềm miễn phí.

Bạn sử dụng khung kiểm tra đơn vị nào?

  • Selen

    1. Có nhiều trình duyệt hỗ trợ [IE, Firefox, Chrome, Safari, Opera và Konqueror] trên nhiều nền tảng [Windows, Linux, Macintosh, v.v.].
    2. Hỗ trợ nhiều ngôn ngữ lập trình để viết các trường hợp thử nghiệm [HTML, Java, C #, Perl, PHP, Python, Ruby, v.v.].
    3. Thực thi từ xa (trường hợp kiểm tra nằm trên một máy và thực thi trên trình duyệt có thể xảy ra ở một máy khác).
    4. Bạn cũng có thể chạy hồi quy ngay cả trong chế độ thu nhỏ trình duyệt

Bạn sử dụng công cụ nào khác?

  • Firebug, IE Dev Tool Bar, v.v., các công cụ dựng sẵn trong trình duyệt để gỡ lỗi
  • Bạn có thể sử dụng một số khung thư viện UI như JQuery, YUI, ExtJS, v.v để phát triển nhanh.
  • Fiddler / HTTP Watch để gỡ lỗi yêu cầu và phản hồi HTTP.
  • JSLint để xác minh một số vấn đề cú pháp javascript.
  • YUICompressor để thu nhỏ mã HTML, CSS và Javascript.
  • DynaTrace / YSlow / Tốc độ trang - để kiểm tra hiệu suất
  • SIEve để phát hiện rò rỉ bộ nhớ
  • IE Tester để kiểm tra ứng dụng của bạn trên các phiên bản IE khác nhau.

Những cuốn sách bạn đọc / tham khảo?

Hơn


1
Selenium là một công cụ kiểm tra tích hợp, không phải kiểm thử đơn vị! Phần còn lại của điều này là khá nhiều điểm theo quan điểm của tôi mặc dù: D
Ed James

1
jQuery là một thư viện cho nhiều thứ hơn UI, jQueryUI là một thư viện hoàn toàn riêng biệt.
StuperUser

@StuperUser nói dối. jQuery là một thư viện để thao tác DOM, bất cứ thứ gì khác đang sử dụng nó như một cái búa lớn và là "công cụ vàng giải quyết mọi vấn đề"
Raynos

@Raynos, jQuery là một cái búa lớn khi nó được sử dụng để thao tác DOM khi JavaScript sẽ làm. Nó chắc chắn đã đạt được trạng thái xứng đáng với meme vì danh tiếng của nó như một liều thuốc chữa bách bệnh. Như cả hai chúng tôi đã nói, gọi nó là "Thư viện UI" là không chính xác.
Người sử dụng Stuper

@StuperUser: Tôi cho rằng anh ta thực sự có nghĩa là Giao diện người dùng jQuery
Lie Ryan

6

Tôi vẫn cảm thấy như các công cụ có sẵn để phát triển JavaScript nghiêm trọng nằm phía sau nơi chúng nên có nhưng đây là một vài trong số những công cụ mà tôi sử dụng.

  • Để phát triển tôi sử dụng VIM nhưng bạn có thể thấy netbeans đáng để thử.
  • Đối với hoa nhài thử nghiệm đơn vị là tốt nhưng không hoàn hảo.
  • EnvJ có thể cung cấp cho bạn một cách hay để chạy các bài kiểm tra đơn vị của bạn trên dòng lệnh
  • Tôi đánh giá cao phần webdo của selenium 2
  • Bộ đóng cửa google đầy đủ rất hữu ích
  • Tôi cũng khuyên bạn nên biết cách sử dụng google chrome và IE để gỡ lỗi dọc theo con bọ lửa vì tất cả chúng đều có những đặc điểm riêng có thể đưa bạn xuống tất cả các con hẻm mù.
  • Có một số thư viện tuyệt vời cho JavaScript khá cần thiết cho sự phát triển nghiêm túc. Tôi khuyên bạn nên bắt đầu với jQuery nhưng có nhiều thứ khác cũng tốt như vậy.
  • John Resig, tác giả của jQuery cũng có một blog hữu ích

câu hỏi tương tự như tôi vừa đặt ra cho RDL: bạn sử dụng plugin vim nào (nếu có) cho javascript?
Mike H

@Mike Tôi không sử dụng bất kỳ plugin cụ thể javascript nào cho vim. Tôi muốn giới thiệu jsctags sẽ tích hợp với bất kỳ plugin nào sử dụng ctags, ví dụ: taglist-plus
Duncan Grant

5

Chà ... mặc dù còn lâu mới hoàn thành, tôi hiện là nhà phát triển chính cho một dự án nguồn mở đa nền tảng mới:

Xưởng vẽ

Đây là một ảnh chụp màn hình:

Một số tính năng đầy đủ hơn các tính năng khác ... nhưng đây là các mục tiêu dự định:

  • Làm nổi bật cú pháp (khá nhiều hoàn thành)
  • Tổ chức dự án (thực hiện một phần)
  • Tự động hoàn thành (bao gồm hoàn thành cho các khung công tác JS phổ biến như jQuery, v.v.)
  • Xây dựng hệ thống (để kết hợp các tệp, thu nhỏ, v.v.)
  • GUI mở rộng (thông qua tiện ích mở rộng JavaScript)
  • Đánh số dòng (sắp xếp hoàn chỉnh), bao bọc từ, màu có thể định cấu hình để tô sáng cú pháp

Tôi đã thiết lập các bản dựng hàng ngày cho Windows và bạn có thể tìm thấy bản dựng gần đây nhất tại đây: http://files.quickmediasolutions.com/jsstudio/


Điều này có vẻ thú vị. Tôi đã tìm kiếm một IDE JavaScript tốt. Có bất kỳ nhị phân có thể được tải xuống? Tôi đã không nhìn thấy bất kỳ trên trang web.
Jonas

@Jonas: Thật không may, ở giai đoạn đầu này, chỉ có một tệp nhị phân cho Ubuntu. Nhưng hy vọng tôi sẽ có thời gian để tạo ra một nhị phân Windows trong tương lai.
Nathan Osman

@Jonas: Windows xây dựng rất sớm ở đây - một số thứ chưa hoạt động, nhưng ít nhất bạn có thể mở / lưu tệp và một vài thứ khác.
Nathan Osman

bất kỳ phát triển mới trên mặt trận này?
Noctis

@Noctis: Đáng buồn thay, không. Tôi gặp phải một số phức tạp khi thực hiện hoàn thành mã và dự án về cơ bản đã không hoạt động trong một hoặc hai năm qua.
Nathan Osman

4

Trong danh mục 'các công cụ khác', tôi sử dụng CoffeeScript (một ngôn ngữ biên dịch thành JavaScript), vì nó làm mất đi những cú pháp mà Javascript gây ra cho tôi.

list.sort (a, b) -> a.isSmaller(b)

đấu với

list.sort(function(a, b) { return a.isSmaller(b) });

Người ta có thể tranh luận, về mặt kỹ thuật đó không còn là javascript nữa, nhưng "cảm giác" của coffescript là, nó chỉ là một lớp mỏng.


3

API cho thư viện jQuery http://api.jquery.com/ và một bản sao được đánh dấu tốt, được tô sáng của jQuery In Action . Đọc bìa để che và sau đó theo dõi http://twitter.com/jquery để nhận các bản cập nhật trong bản phát hành mới.

Bạn đã nói rằng sách đã hết hạn, nhưng bạn sẽ cần có kiến ​​thức cơ bản để xây dựng, sau đó khi bạn bắt kịp tốc độ, hãy cập nhật.

Qunit để kiểm tra đơn vị và Firebirdtô sáng cú pháp JavaScript cho Fireorms để gỡ lỗi.



0

Hy vọng sẽ không bị ảnh hưởng quá nhiều cho việc này, nhưng nếu những thứ như IDE và công cụ là quan trọng đối với bạn, thì tôi thực sự khuyên bạn nên xem Google Web Toolkit . Bạn viết mã của mình bằng Java trong Eclipse, điều này thực sự giúp viết mã của bạn. Nó cung cấp hoàn thành mã hiệu quả cao, tái cấu trúc các tiện ích và giúp gỡ lỗi và điều hướng thông qua cơ sở mã của bạn.

Bạn vẫn có thể vào Javascript thô khi bạn cần.

Mã của bạn sau đó được biên dịch thành tối ưu hóa, tối thiểu hóa JS. Tôi đã sử dụng cách tiếp cận này thành công trong môi trường DOMless JS giống như node.js.

Đối với các trò chơi HTML5, hãy xem PlayN , một thư viện sử dụng chính xác GWT.


Dù sao đi nữa, nếu bạn định biên dịch sang JavaScript từ một ngôn ngữ khác, có rất nhiều sự lựa chọn - bạn hoàn toàn không phải sử dụng Java! Ví dụ: chúng tôi đang sử dụng js_of_ocaml tại nơi làm việc để chúng tôi có thể viết mã của mình bằng OCaml và chạy nó trên trình duyệt.
Tikhon Jelvis

0

Tôi làm rất nhiều việc phát triển JavaScript. Rất nhiều trong số này được đề cập nhưng, đây là những gì tôi sử dụng:

  • Notepad ++
  • Bọ lửa
  • Trình gỡ lỗi IE (F12) và trình gỡ lỗi Chrome (F12 trên Windows)
  • Tôi sử dụng Stack Overflow chủ yếu cho các câu hỏi. Đến đây đã được chứng minh là hữu ích là tốt.
  • Cuốn sách đầu tiên tôi sử dụng là JavaScript: Hướng dẫn dứt khoát trở lại khi. Hiện tại tôi không sử dụng sách nhiều như tôi sử dụng các trang web như tài liệu MDN hoặc MSDN.
  • Chúng tôi sử dụng một số jQuery ở những nơi mà nó làm cho cuộc sống của chúng tôi cũng dễ dàng hơn.
  • Đối với thử nghiệm đơn vị, chúng tôi xây dựng khai thác thử nghiệm riêng của chúng tôi.

0

Tôi có thể giới thiệu bản tin hàng tuần của JavasScript . nó là

Một email miễn phí, một lần cập nhật hàng tuần các tin tức và bài viết về JavaScript.

Tôi chưa đọc sách của John Resig, nhưng tôi đã nghe và đọc phản hồi tốt. Cuốn sách mới Secrets of the JavaScript Ninja của anh sẽ sớm được xuất bản.


Ai đó có thể giải thích downvote?
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.