Những tính năng nào của một IDE sẽ làm cho nó hữu ích hơn một trình soạn thảo mục đích chung


10

Tôi là tác giả của một IDE cho ngôn ngữ Lua. Tôi thấy rằng nhiều lập trình viên không thích sử dụng IDE và thích VIM (hiện đang thịnh hành), SCiTE, hoặc.

Khi cố gắng giành được một số chia sẻ tâm trí, tôi quan tâm đến những tính năng mà IDE có thể cung cấp sẽ làm cho nó trở thành một sự thay thế hấp dẫn cho một trình soạn thảo mục đích chung.

Có "ứng dụng sát thủ" nào để nói về một IDE sẽ biến nó thành "phải có" không?

Điều này có thể được coi là đảo ngược của

Các tính năng hữu ích nhất của VIM không phải là tiêu chuẩn trong IDE

Tôi sẽ không liên kết với IDE của mình trừ khi có ai đó hỏi - nhưng bạn có thể tìm tên Google và tìm nó.

EDIT: IDE của tôi thực sự là một plugin ngôn ngữ cho một IDE hiện có, vì vậy tôi thừa hưởng nhiều tính năng từ IDE máy chủ - ở một mức độ nào đó mặc dù hỗ trợ ngôn ngữ của tôi là một IDE - ít nhất là về khía cạnh ngôn ngữ cụ thể lo âu.

Câu trả lời:


19
  1. Cơ sở tái cấu trúc (Đổi tên ảnh hưởng đến phụ thuộc / Phương thức trích xuất / Giao diện trích xuất, v.v.)
  2. Intellisense (hoặc bất kỳ chức năng hoàn thành mã nào khác)
  3. Kiểm tra lỗi (IDE thực sự biết các ký hiệu của nó)
  4. Không có rắc rối thiết lập
  5. Trình biên dịch tích hợp
  6. Trình gỡ lỗi tích hợp
  7. Điều hướng tốt hơn đến và từ các tài liệu tham khảo / khai báo
  8. Mẫu dự án / mẫu tệp
  9. Trình xây dựng GUI
  10. Có thể tự động tạo mã nồi hơi
  11. Nó trực quan và có thể được sử dụng mà không cần biết tất cả các phím ma thuật (hey, đó là lý do tại sao GUI trở nên thành công ngay từ đầu)

Nhìn chung, như @Thomas Owens đã nói, ưu điểm lớn nhất của IDE là tích hợp công cụ với các hiệu ứng tổng hợp của nó, trong khi nó vẫn trực quan và dễ sử dụng.


3
Nhìn chung, tôi muốn nói rằng tích hợp công cụ nói chung - tích hợp với kiểm soát phiên bản, máy chủ tích hợp liên tục, trình theo dõi lỗi, trình biên dịch, trình gỡ lỗi, trình lược tả, phân tích tĩnh, v.v. Tôi có thể nói trình biên dịch và trình gỡ lỗi tích hợp là một vấn đề lớn, nhưng có tất cả mọi thứ trong một gói nhỏ gọn gàng, hữu ích.
Thomas Owens

@Thomas Owens: Rất đúng, nhưng tôi không liệt kê kiểm soát nguồn chẳng hạn, vì bạn có thể tích hợp kiểm soát nguồn dễ dàng trong vim, vì vậy đó không phải là vấn đề lớn, sau tất cả, đó chỉ là một cuộc gọi dòng lệnh và tôi ví dụ như Rùa tốt hơn hơn AnkhSVN. Tôi đã liệt kê các trình biên dịch nhưng không phải tất cả các IDE đều đi kèm với một (ví dụ như VS không có gì ngoài hộp). Số liệu là một điểm tốt, nhưng một lần nữa, chỉ có VS mới nhất cung cấp cho nó afaik.
Falcon

Trong Eclipse và NetBeans, rất nhiều thứ tôi đã đề cập là dựa trên trình cắm thêm, mặc dù có rất nhiều trình cắm (hoặc mô-đun hoặc phần mở rộng) cho vim và emacs, với các khả năng khác nhau. Tôi nghĩ đó là điều tốt đẹp về tất cả các công cụ - thật dễ dàng để chọn những gì bạn muốn cho bạn làm việc hiệu quả.
Thomas Owens

Tôi nghĩ rằng tôi có hầu hết danh sách đó ở mức độ này hay mức độ khác. Ngoài ra, định dạng mã. và thậm chí hỗ trợ trợ giúp tích hợp cho các thư viện và API tùy chỉnh. Danh sách của bạn là khá toàn diện mặc dù. Có lẽ cuối cùng nó cũng thuộc về sở thích cá nhân, và tôi không thể làm gì nhiều hơn nữa. (IDE của tôi là một plugin IntelliJ - có lẽ đó là quá nhiều đối với một số người)
sylvanaar

2
Tôi sẽ làm rõ rằng những thứ như Refactor / Đổi tên là nhiều tệp (toàn dự án) - khi tôi đổi tên một phương thức hoặc biến, PyCharm (chẳng hạn) sẽ áp dụng đổi tên trên mỗi tệp trong dự án, không chỉ là tệp hiện đang được chỉnh sửa như một biên tập viên sẽ làm. Nếu không, tôi chắc chắn đồng ý với danh sách này. Tôi đã mua và bắt đầu sử dụng PyCharm gần đây, và càng tìm hiểu về nó, tôi càng thích nó (mặc dù thỉnh thoảng bị trục trặc :)
Cyclops

8

Sự khác biệt lớn giữa IDE và trình soạn thảo văn bản chung là IDE hiểu ngôn ngữ lập trình bạn đang làm việc và có thể tự động hoàn thành các chức năng / phương thức, kiểm tra các lỗi như loại sai và ngữ pháp không chính xác. Một IDE cũng có các công cụ như trình biên dịch được tích hợp để bạn có thể biên dịch và chạy chương trình của mình bằng các lệnh trong IDE.

Nhưng tôi nghĩ VIM có thể làm nhiều hơn một trình soạn thảo văn bản chung, có thể bạn có thể xem nó như một IDE trong một số trường hợp.


2
+1 cho "hiểu ngôn ngữ". Hầu hết mọi thứ khác theo sau điều này, tôi nghĩ.
Dean Harding

có - việc thực hiện hỗ trợ ngôn ngữ của tôi là cả về mặt cú pháp và ngữ nghĩa.
sylvanaar

4

Công cụ tái cấu trúc

Lý do duy nhất tại sao tôi không sử dụng trình soạn thảo văn bản mục đích chung yêu thích của mình để mã hóa. Bởi vì nếu bạn cần macro các cấu trúc lại mã phổ biến trong mục đích chung yêu thích của mình thì bạn cũng có thể đang sử dụng một IDE có các công cụ này được cài đặt.

Ít nhất để nói rằng hầu hết các IDE đều có chức năng hữu ích mà emacs có, nó chỉ bị chôn vùi trong một số tổ hợp phím tùy ý.


2

Rất vui khi có các tính năng của IDE không có trong trình soạn thảo văn bản: 1. Intellisense (tự động hoàn thành & đề xuất)

  1. Tích hợp với trình biên dịch

  2. Tích hợp với hệ thống gỡ lỗi

  3. Tích hợp với kiểm soát phiên bản

  4. Tích hợp với hệ thống cơ sở dữ liệu

  5. Kiểm tra và trợ giúp cú pháp nhanh chóng

  6. Tô màu cú pháp

  7. Xử lý các dự án không chỉ các tập tin mã

  8. Tìm nơi sử dụng một phương thức và vẽ biểu đồ (không tìm thấy trong hầu hết các IDE cho đến nay)

  9. Các thành phần đăng ký (tùy thuộc vào ngôn ngữ của bạn)

  10. Tích hợp với (các) Trình soạn thảo GUI

  11. Đoạn mã đánh dấu

  12. Nguồn an toàn và chia sẻ giữa các nhà phát triển

  13. Khôi phục dự án cho các phiên bản trước

  14. Nhiều cấu hình dự án (thử nghiệm, phát triển, sản xuất)

  15. Các tính năng IDE có thể được cấu hình

  16. So sánh mã nguồn thông minh

  17. Tự động đổi tên vars, phương thức, vv

Tôi không nghĩ việc tạo một IDE mới là hữu ích.


Tôi nên đã đề cập nó là một plugin cho một IDE hiện có. Tôi sẽ chỉnh sửa câu hỏi của tôi.
sylvanaar

2

Tôi rất thích có một IDE với trình soạn thảo hoàn toàn tùy biến như Emacs. Tôi không muốn viết plugin và sau đó khởi động lại IDE để kiểm tra chúng. Tôi muốn xác định các hành động trong một ngôn ngữ kịch bản (ví dụ: python, ruby) và có thể sử dụng chúng ngay lập tức, liên kết chúng với các chuỗi chính, v.v. Ngôn ngữ sẽ có thể điều khiển toàn bộ không gian làm việc.


1

3 điều luôn quyết định tôi có sử dụng IDE cụ thể hay không:

  • Tự động hoàn thành
  • Trình xây dựng GUI trực quan
  • Công cụ dữ liệu cho một số loại ORM tích hợp

Tôi thường sử dụng IDE có hầu hết các tính năng này hoặc chúng hoạt động tốt nhất. Đây là ba điều có xu hướng tăng khả năng sản xuất nhiều nhất bằng cách giảm mã hóa nồi hơi (GUI và DAL) và bằng cách giảm thời gian suy nghĩ (tự động hoàn thành cho phép tôi bỏ qua rất nhiều API dò dẫm).


Tôi đã xếp hạng các công cụ tái cấu trúc cao hơn nhiều so với các trình xây dựng GUI. Không phải tất cả các chương trình đều có GUI, nhưng tất cả chúng có thể là chủ đề tái cấu trúc tại một số điểm.
Thất vọngWithFormsDesigner

@FrustratedWithFormsDesigner - Tôi đoán mỗi người. Tôi hiếm khi sử dụng các công cụ tái cấu trúc. Tôi không thực sự có bất cứ điều gì chống lại họ; Tôi chỉ thường thích tái cấu trúc bằng tay để đảm bảo tôi không phá vỡ bất cứ thứ gì.
Morgan Herlocker

Tôi cũng đã từng làm điều đó, tôi đoán lúc đầu tôi không tin vào những công cụ như vậy. Và đúng là nếu chúng được triển khai kém, tốt hơn là nên tái cấu trúc bằng tay, nhưng khi các công cụ này được thực hiện đúng thì chúng TUYỆT VỜI !
Thất vọngWithFormsDesigner
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.