Ngôn ngữ lập trình

GS John Vu06/01/2026 13:00
Ngôn ngữ lập trình

Một sinh viên hỏi tôi: “Ngày nay có bao nhiêu ngôn ngữ lập trình? Ngôn ngữ nào là tốt nhất? Liệu có thể dùng một ngôn ngữ máy tính cho mọi ứng dụng không? Tôi cần biết ngôn ngữ nào?”

Có lẽ có nhiều ngôn ngữ lập trình hơn ngôn ngữ nói trên thế giới ngày nay. Cứ vài tháng, ai đó lại tạo ra một ngôn ngữ lập trình ở đâu đó. Ngôn ngữ lập trình đã tiến hoá từ ngôn ngữ mã máy thế hệ thứ nhất của 0 và 1 sang thế hệ hai được phân loại như “hợp ngữ” nơi mã có thể được viết và được chuyển đổi thành mã máy bằng quá trình gọi là hợp dịch. Ngôn ngữ thế hệ thứ ba có một vài cách nhóm lại: Ngôn ngữ mệnh lệnh như Cobol, Fortran và Pascal; ngôn ngữ hướng đối tượng như Java, C++, và Smalltalk; ngôn ngữ hàm như Lisp và ML; và ngôn ngữ logic như Prolog. Ngày nay, sinh viên cũng quen thuộc với ngôn ngữ thế hệ thứ tư khi họ thiết kế cho các mục đích chuyên dụng như SQL cho truy vấn dữ liệu; Powerbuilder, Delphi, Focus, và Access cho ứng dụng cơ sở  dữ liệu; Visual basic và tcl cho làm bản mẫu; và html và javascript cho miền web toàn cầu.

Không có “ngôn ngữ tốt nhất” vì từng ngôn ngữ phục vụ cho một mục đích và đóng góp cho công nghệ vào thời điểm đó. Khi tôi còn trong trường, tôi đã học Fortran và hợp ngữ nhưng khi tôi bắt đầu làm việc, tôi đã học Ada và tôi nghĩ Ada là rất tốt, đặc biệt trong các ứng dụng nhúng. Khi C và Unix tới cùng và cho phép tôi làm nhiều thứ thế, tôi nghĩ ngôn ngữ này chắc sẽ là hoàn hảo nhưng thế rồi mọi thứ lại thay đổi. Với mọi thế hệ ngôn ngữ lập trình, có cái gì đó tốt hơn, cải tiến nhiều hơn so với thế hệ trước. Tôi chắc chắn có những điều tốt hơn sẽ tới trong tương lai gần nữa.

Tất nhiên, có thể dùng một ngôn ngữ để viết phần mềm ứng dụng. Bạn có thể làm hầu hết mọi thứ bằng ngôn ngữ mã máy. Ngôn ngữ lập trình được tạo ra cho mục đích nào đó và chọn lựa ngôn ngữ tốt hơn quả có tạo ra khác biệt trong bảo trì, hiệu năng và dùng lại phần mềm.  Là kĩ sư phần mềm, cân nhắc then chốt của bạn trong mọi dự án là chi phí, lịch biểu và chất lượng. Không thành vấn đề ngôn ngữ nào được dùng. Đôi khi, khách hàng yêu cầu ngôn ngữ đặc biệt trong dự án nhưng như một tuỳ chọn, bạn có thể xem xét mức kĩ năng của người phát triển trong công ti của bạn. Tốt hơn cả là dùng ngôn ngữ mà người phát triển của bạn đã giỏi. Chi phí của việc học ngôn ngữ mới và thời gian làm chủ chúng có thể không phù hợp cho dự án của bạn. Tất nhiên, bạn có thể chọn ngôn ngữ phù hợp nhất cho miền ứng dụng của mình. Chẳng hạn, Cobol là tốt hơn với các ứng dụng kinh doanh còn Java sẽ tốt hơn cho các ứng dụng web.

Là người kĩ sư phần mềm, bạn có lẽ học C, C++, C# hay Java ở trường. Chúng là các ngôn ngữ lập trình rất phổ biến ngày nay nhưng ngôn ngữ thay đổi qua thời gian, và người kĩ sư phần mềm có kinh nghiệm phải có khả năng học ngôn ngữ mới một cách dễ dàng, và tôi chắc chắn bạn có lẽ học vào ngôn ngữ trong vài năm tới.

English version

Programming Languages

A student asked me: “How many computer programming language exist today? Which one is the best? Is it possible to use one computer language for all applications? What language do I need to know?

There are probably more programming languages than spoken languages in the world today. Every few months, someone creates a programming language somewhere. Programming language has evolved from the first generation machine code language of o and 1 to second generation categorized as “Assembly languages” where the code can be written and converted into a machine code by a process called assembly. The third generation programming languages have several grouping: Imperative languages such as Cobol, Fortran and Pascal; Object-Oriented Languages such as Java, C++, and Smalltalk; Functional languages such as Lisp and ML; and Logic Language like Prolog; Today, students are also familiar with the fourth generation languages as they are designed for special purposes such as SQL for data queries; Powerbuilder, Delphi, Focus, and Access for database applications; Visual basic and tcl for prototyping; and html and javascript for world-wide-web domain.

There is no “best language” as each serve a purpose and contribute to the technology at that time. When I was in school, I learned Fortran and Assembly languages but when I started to work, I have to learn Ada and I thought Ada was very good, especially in the embedded applications. When C and Unix come along and allowed me to do so many things, I though this language would be perfect but then everything changed again. For every generation of programming language, there are something better, much improve over previous one. I am sure there are better things to come in the near future too.

Of course, it is possible to use one language to write software applications. You can do almost anything with machine code language. Programming language is created for certain purpose and better language choice does make a difference is in software maintenance, performance, and reuse.  As software engineers, your key considerations in every project are cost, schedule, and quality. It does not matter which programming language is used. Sometime, customers require specific language in the project but as an option, you may want to consider the skill level of your developers in your company. It is better to use a language that your developers are already good at. The cost of learning new languages and the time to master them may not be suitable for your projects. Of course, you may select a language that best suits the domain of your application. For example, Cobol is better with business application and Java would be better for web application.

As software engineer, you probably learn C, C++, C# or Java in school. They are very popular programming languages today but language does change over time, an experienced software engineer should be able to learn a new language easily, and I am sure you probably learn several new languages in the next few years

 


Gửi bình luận
(0) Bình luận
1

Lời khuyên về giáo dục

Theo một nghiên cứu toàn cầu mới, năm nay các công ti sẽ thuê nhiều sinh viên tốt nghiệp đại học hơn năm ngoái nhưng chỉ với những bằng cấp nào đó. Khoa học máy tính, kĩ nghệ phần mềm, y học và chăm sóc sức khoẻ là NÓNG.
2

Vấn đề với cách tiếp cận Agile

Một người phát triển phần mềm hỏi tôi: “Người quản lí của tôi nói rằng hoạt động chính của Agile chỉ là viết mã và kiểm thử. Bạn không cần tài liệu cho nên chúng tôi có thể hoàn thanh nhanh và đó là lí do tại sao cái tên “Agile – mau lẹ” tới. Điều đó có đúng không?”
3

Chương trình bằng cấp chuyên sâu

Có vài lí do mà sinh viên muốn tiếp tục theo đuổi các bằng cấp chuyên sâu như Thạc sĩ hay Tiến sĩ. Nhiều người muốn chuyên sâu tri thức của họ và đẩy mạnh giáo dục của họ nhưng một số người không biết làm cái gì, cho nên họ quyết định ở lại trường.

Công nghiệp phần mềm ở Trung Quốc 2010

Tuần trước, tôi đã dạy kĩ nghệ phần mềm ở Trung Quốc. Sau đây là tóm tắt điều tôi đã quan sát năm nay.

Lời khuyên cho năm mới 2

Khi các bạn tiến bộ trong nghề nghiệp chuyên môn, bạn cần nghĩ về đại học và các giáo sư của mình.

Lời khuyên cho năm mới 1

Khi các sinh viên phần mềm mới tốt nghiệp và bắt đầu làm việc trong công nghiệp, họ sẽ thấy rằng có nhiều điều nữa cần học hơn là họ tưởng.

Kiểm điểm phần mềm

Mọi người phát triển phần mềm đều muốn dự án của họ được đúng thời gian, trong ngân sách và có chất lượng cao. Vậy mà nhiều dự án tiếp tục bị chậm, chi phí cao, chất lượng thấp, với ít chức năng hơn được yêu cầu.

Six sigma

Six Sigma là một trong những phương pháp luận quản lí chất lượng phổ biến nhất được dùng trong công nghiệp ngày nay.

Xu hướng công nghiệp

Theo dự báo công nghiệp mới nhất, chi tiêu công nghệ thông tin toàn cầu sẽ tăng trưởng quãng 6% trong 2010, nâng đầu tư công nghệ toàn thế giới lên $3.4 nghìn tỉ đô la và tiếp tục tăng lên trong năm năm tới.

Giữ người

Điều gì xảy ra khi dự án của bạn mất vài người then chốt?

Việc làm trong thời khó khăn

Theo dự báo gần đây của chính phủ Mĩ, lương của những nhà chuyên môn kinh doanh dường như sụt giảm dần trên khắp thế giới.

Thần đồng 15 tuổi đỗ đại học, trở thành thiên tài thi ca nhưng cuộc đời khép lại ở tuổi 25

Phong cách sống - Thiên An - 15/08/2026 10:00
Cuộc đời của một trong những nhà thơ tài hoa nhưng đoản mệnh nhất Trung Quốc hiện đại vẫn còn để lại nhiều suy ngẫm cho đến tận ngày nay.
HẠT GIỐNG TÂM HỒN
2019 Bản quyền thuộc về hatgiongtamhon.com.vn. Phát triển bởi ONECMS