Sự khác biệt giữa trình biên dịch và IDE – Difference between popular compliers and IDEs

complier

Chúng ta thường nhầm lẫn về sự khác biệt giữa trình biên dịch (Complier) và môi trường phát triển tích hợp (IDE). Có lẽ đó là do thực tế các IDE thường đi kèm với một trình biên dịch. Bài viết này sẽ nêu ra một số điểm khác biệt giữa compliers và IDEs để chúng ta hiểu rõ hơn về 2 khái niệm này.

Trước khi đi vào so sánh complier và IDE thì ta nên tìm hiểu về khái niệm của chúng.

1. Trình biên dịch (complier)

300px-Compiler.svg

Trình biên dịch, còn gọi là phần mềm biên dịch, compiler, là một chương trình máy tính làm công việc dịch một chuỗi các câu lệnh được viết bằng một ngôn ngữ lập trình (mã nguồn), thành một chương trình tương đương nhưng ở dưới dạng một ngôn ngữ máy tính mới (ngôn ngữ đích) và thường là ngôn ngữ ở cấp thấp hơn, như ngôn ngữ máy. Chương trình mới được dịch này gọi mã đối tượng. Cuối cùng tạo ra được file thực thi mà bạn có thể chạy

2.  Môi trường phát triển tích hợp (IDE):

– IDE là viết tắt của (Integrated Development Environment) tức môi trường phát triển tích hợp. image

– IDE là một loại phần mềm máy tính có công dụng giúp đỡ các lập trình viên trong việc phát triển phần mềm. (ví dụ như NetBeans IDE).

– IDE thường đi kèm với một trình biên dịch (complier) cũng như gỡ lỗi và một số tính năng cao cấp như tìm kiếm, thay thế, tự động hoàn tất (auto-completion).

–  Một IDE thông thường gồm:

  • Một trình soạn thảo dùng để viết mã.
  • Một trình biên dịch (complier) hoặc thông dịch (interpreter).
  • Trình gỡ lỗi (debuger) hỗ trợ dò tìm lỗi….

3. So sánh complier và IDE:

–  Compliers

+ Có rất nhiều trình biên dịch phổ biến, trong đó có GNU Complier Collection (GCC) bao gồm gcc và g++ (GNU C complier và GNU C++ complier) và Microsoft Visual C và Visual C++ comGNUpliers.

 GNU là viết tắt của GUJARAT NATIONAL UNIVERSITY.

     +   Có rất nhiều trình biên dịch có các tính chất khác nhau như: Borland C/ C++, Intel C++ và [Open]Watcom complier. Chúng ta sẽ tập trung vào gcc và Visual C trong bài viết này vì nó là phổ biến nhất.

 

– gcc / g++:

  • Miễn phí, nguồn mở – gcc có thể được sửa đổi, và nó có thể được phát triển bởi hoặc phân phối bởi bất kỳ ai theo cấp phép của GNU General Public License (GPL).
  • Đa nền tảng (cross-platform) – gcc là một mã nguồn mở (open source), do đó nó thành công trong việc chuyển đến nhiều nền tảng khác nhau như: Linux, Microsoft, MAC OS. Nếu bạn đang sử dụng Linux thì gần như chắc chắn gcc đã được cài đặt sẵn. Bạn có thể cài đặt g++ một cách riêng biệt.
  • Nhanh – hiện đại, tối ưu hóa trình biên dịch gcc cung cấp các mã tương đối hiệu quả.

–  Microsoft visual C/ C++

  • Thường có một phiên bản miễn phí nằm trong bộ Visual Express và bản tính phí nằm trong bản chính thức của bộ visual studio.
  • Trình gỡ lỗi (debugger) – thông thường thì trình gỡ lỗi của bộ visual studio rất mạnh và được cộng đồng lập trình ca ngợi.

–  Trình biên dịch khác

Tồn tại song song với những trình biên dịch kể trên, phải kể đến OpenWatcom và Intel C++. Watcom là đa nền tảng (Windows, MS-Dos, Linux…) tối ưu hóa các trình biên dịch có thể cung cấp mã 16 bit (điều này gcc không thể làm được). Intel C++ là một trình biên dịch cung cấp rất kỹ lưỡng khả năng tối ưu hóa.

– IDE (Integrated Development Environment)

Các IDE phổ biến gồm:

  • DEV-C++ (lưu ý: bạn có thể sử dụng wxDev-C++ thay vì Dev-C++ vì đã rất lâu Dev-C++ chưa có bản cập nhật nào).visual studio
  • Code:: Bocks.
  • NetBeans.
  • Microsoft Visual Studio (phiên bản mới nhất hiện nay là Visual studio 2010).
  • Eclipse.
  • KDevelop.

(Tham khảo cplusplus.com)

Advertisements

About thanhcuong1990

Handsome and talent!! ^^
This entry was posted in General Knowledge. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s