Ngôn ngữ lập trình

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

Một sinh viên năm thứ nhất hỏi tôi: “Tôi phải học ngôn ngữ lập trình nào? Tôi có phải học mọi ngôn ngữ lập trình hay chỉ vài ngôn ngữ thôi?”

Tôi bảo anh ta: “Không ai có thể học mọi ngôn ngữ lập trình được vì có nhiều lắm. Tuy nhiên, nếu bạn học một ngôn ngữ cho tốt, sẽ dễ dàng học ngôn ngữ khác. Tôi tin người lập trình tốt nên thấy thoải mái với một số ngôn ngữ khác nhau và người lập trình phải có khả năng dùng tri thức nền tảng của một ngôn ngữ và áp dụng cho các ngôn ngữ khác tương đối nhanh chóng. Ngày nay hầu hết các trường đều dạy về C, C++ và Java như các ngôn ngữ lập trình nền tảng cho sinh viên của họ. Tất nhiên, có nhiều ngôn ngữ lập trình hơn nhưng chúng KHÔNG phổ biết hay được dùng rộng rãi trong công nghiệp phần mềm.

Nếu bạn hỏi ý kiến cá nhân của tôi, tôi muốn nói C là ngôn ngữ mà mọi người phải biết. C có thể được xem như “hợp ngữ”, vì nó phơi ra máy phần cứng nền tảng và buộc sinh viên phải hiểu rõ ràng mối quan hệ giữa phần mềm và phần cứng. Hiệu năng trong ngôn ngữ C là tuyệt hảo vì tốn kém cho mọi câu lệnh phẩn mềm là rõ ràng. Cuối cùng, trình biên dịch làm dễ dàng cho việc kiểm tra mã hợp ngữ được sinh ra, lại chính là công cụ tuyệt hảo cho hiểu ngôn ngữ và kiến trúc máy.

C++ thực tế là khái niệm nền tảng của kĩ nghệ phần mềm hiện đại và cách tiếp cận hướng đối tượng: bao bọc với các lớp và che giấu thông tin qua dữ liệu và phép toán private, lập trình bằng mở rộng qua phương pháp ảo và lớp suy dẫn. C++ cũng làm cho việc quản lí bộ nhớ thành một nhiệm vụ dễ dàng.

Java là ngôn ngữ phổ biến, đặc biệt cho những người xây dựng ứng dụng web. Tôi nghĩ rằng Java giữ vai trò quan trọng trong mọi chương trình kĩ nghệ phần mềm và khoa học máy tính. Bằng nghiên cứu Java, sinh viên sẽ biết nhiều hơn về lập trình song hành và hiểu rằng chương trình có thể được phối trí để xem xét trạng thái riêng của nó và để xác định hành vi riêng của nó trong môi trường thay đổi.

Tôi tin ngôn ngữ lập trình là nền tảng cho MỌI chương trình công nghệ thông tin. Bạn KHÔNG thể đi xa được nếu bạn KHÔNG làm chủ ít nhất một ngôn ngữ lập trình. Mọi việc làm trong lĩnh vực công nghệ thông tin đều yêu cầu tri thức và kĩ năng trong ngôn ngữ lập trình. Nếu bạn không thể là nhà toán học, nhà tài chính, hay kế toán viên, nếu bạn KHÔNG hiểu số học thì bạn cũng không thể là người kĩ sư phần mềm, người phát triển phần mềm, người quản lí hệ thông tin nếu bạn KHÔNG biết cách lập trình ít nhất trong một ngôn ngữ lập trình.

English version

Programming language

A first year student asked me: “Which programming language that I should learn? Should I learn all programming languages or only a few? I told him: “No one can learn all programming languages as there are so many. However, If you learn one programming language well, it would be easier to learn another. I believe a good programmer should be comfortable with a number of different languages and that the programmer must be able to use the fundamental knowledge of one language and apply to another relatively quickly. Today most schools are teaching C, C++ and Java as the fundamental programming languages to their students. Of course, there are much more programming languages but they are NOT popular or widely used in the software industry.

If you ask for my personal opinion, I would say C is the language that everyone must know. C can be seen as an “assembly language”, as it exposes the underlying hardware machine and forces the student to understand clearly the relationship between software and hardware. Performance in C language is excellent because the cost of every software statement is clear. Finally, compilers make it easy to examine the generated assembly code, which is an excellent tool for understanding machine language and architecture.

C++ is actually the fundamental concepts of modern software engineering and object-oriented approach: encapsulation with classes and information hiding through protected and private data and operations, programming by extension through virtual methods and derived classes. C++ also make storage management such as an easy task.

Java is a popular language, especially to the people who build web applications. I think that Java has an important role to play in all software engineering and computer science programs. By study Java, students will know more about concurrent programming and understand that a program can be instrumented to examine its own state and to determine its own behavior in a dynamically changing environment.

I believe programming language is the foundation of ALL information technology programs. You can NOT go far if you do NOT mastering at least one programming language. Every jobs in information technology field require a knowledge and skills in programming language. If you cannot be a mathematician, a financier, or an accountant if you do NOT understand arithmetic then you also cannot be a software engineer, a software developer, or an information system manager if you do NOT know how to program at least one programming language.

 


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

Vòng đời kiểm thử

Nhiều người trong các bạn đã hỏi tôi về kiểm thử và mối quan hệ của nó với vòng đời phát triển phần mềm. Về căn bản kiểm thử tuân theo vòng đời tương ứng với mọi pha của vòng đời phát triển.
2

Cách đo và độ đo

Tôi nhận được một email người gửi viết: “Cái gì là khác biệt giữa cách đo và độ đo và có bao nhiêu cách đo hay độ đo phần mềm?”
3

Thành công ở đại học

Thành công nghĩa là đạt tới mục đích của bạn, dù chúng là bất kì cái gì.
4

Cách đo

Tôi nhận được một email từ một sinh viên: “Tại sao chúng ta phải đo công việc của mình? Đo là khó và phí thời gian vì nó không cung cấp cho tôi giá trị. Nếu chúng ta có lỗi, chúng ta có thể sửa chúng về sau bất kể chúng có bao nhiêu. Tôi không biết tại sao chúng ta cần đo?”
5

Quy trình phần mềm

Tôi nhận được một email mà người gửi hỏi: “Khác biệt giữa qui trình phần mềm và qui trình được xác định là gì? Khác biệt giữ qui trình được xác định và qui trình cá nhân là gì?”

CMU như trường đại học nổi tiếng miền Đông

Giáo dục bậc cao của Mĩ được coi là một trong những hệ thống giáo dục tốt nhất trên thế giới.

Trắc nghiệm và kiểm nghiệm

Tôi nhận được một email mà người gửi viết: “Khác biệt giữa trắc nghiệm – Verification và kiểm nghiệm Validation (V&V) là gì và có bao nhiêu kĩ thuật V&V?”

Con đường nghề nghiệp

Nhiều sinh viên tới đại học để học tri thức và kĩ năng mức cao hơn với hi vọng sẽ đưa tới nghề nghiệp tốt hơn và cuộc sống tốt hơn.

Lời khuyên cho sinh viên đại học năm thứ nhất

Hôm nay khi các bạn vào năm học đầu tiên trong đại học, các bạn kích động về cuộc sống mới là sinh viên đại học nhưng một số trong các bạn có thể cảm thấy chút ít không thoải mái bởi vì có khác biệt giữa đại học và trung học. Tôi muốn cho các bạn vài lời khuyên mà có thể giúp bạn trong bốn năm tới:

Kỹ sư phần mềm là...

Khi năm học mới bắt đầu, tôi yêu cầu sinh viên của tôi tới với định nghĩa về kĩ sư phần mềm hay người phát triển phần mềm.

Làm việc tổ trong dự án lớn

Ngày nay nhiều dự án phần mềm là lớn và làm việc tổ đang trở nên quan trọng hơn để giữ mọi người làm việc cùng nhau. Không may nhiều người quản lí không được đào tạo về làm việc theo tổ cho nên khi dự án gặp vấn đề, họ không biết cách giải quyết nó. Điều đầu tiên người quản lí có thể làm là tạo điều kiện cho cuộc họp nơi mọi người có thể nói với nhau.

Xếp hạng đại học năm 2011

14 năm liên tiếp Carnegie Mellon được xếp hạng trong những trường hàng đầu.

Hãy phản biện và sáng tạo hơn khi sử dụng AI

Hôm qua một người bạn kể với tôi rằng anh vừa ghi danh cho đứa con mười hai tuổi, vào một khóa học dạy về Trí Thông Minh Nhân Tạo (AI) để chuẩn bị cho tương lai khi con của anh vào đại học. Anh tin rằng nó sẽ có khả năng và ưu thế hơn các bạn đồng lứa.

Không khóc giữa nhân gian: Gặp lại chính mình trong vô lượng khổ đau

"Không khóc giữa Nhân gian" không phải là một quyển sách chữa lành, mà là lời nhắn nhủ chánh niệm rằng chúng ta đừng sợ nỗi buồn. Nỗi buồn không đáng sợ, cái đáng sợ là hiểu sai và có thái độ chưa đúng với nỗi buồn mình đang trải qua.

Ưu tiên cho người quản lý dự án phần mềm

Blog GS John VU - GS John Vu - 13/07/2026 11:00
Phần lớn những người quản lí dự án được đào tạo để hội tụ vào lịch biểu nhưng theo kinh nghiệm của tôi, có lẽ điều quan trọng nhất là về đặt ưu tiên dự án.

10 câu trích dẫn ý nghĩa dành cho những ai đang cảm thấy lạc lối

Suy ngẫm - Trinh Quang - 13/07/2026 10:00
Khi bạn không thích những người xung quanh, cách tốt nhất để thể hiện sự không thích đó không phải là tranh cãi với họ, mà là chủ động rời bỏ họ.

Bức ảnh bữa cơm gia đình của tỷ phú Jensen Huang khiến nhiều người suy ngẫm

Truyền cảm hứng - Mi Vân - 13/07/2026 09:00
Một bữa cơm gia đình giản dị của Jensen Huang - CEO Nvidia và là một trong những tỷ phú giàu nhất thế giới - đang khiến nhiều người suy ngẫm về giá trị của gia đình giữa cuộc sống hiện đại.

Không khóc giữa nhân gian: Gặp lại chính mình trong vô lượng khổ đau

Từ sách - Phim - TĐ - 13/07/2026 08:00
"Không khóc giữa Nhân gian" không phải là một quyển sách chữa lành, mà là lời nhắn nhủ chánh niệm rằng chúng ta đừng sợ nỗi buồn. Nỗi buồn không đáng sợ, cái đáng sợ là hiểu sai và có thái độ chưa đúng với nỗi buồn mình đang trải qua.

Một dòng mã

Blog GS John VU - GS John Vu - 12/07/2026 10:00
Khi tôi là sinh viên khoa học máy tính, tôi chưa bao giờ học về Quản lí cấu hình phần mềm Software Configuration Management (SCM).

10 câu trích dẫn giúp bạn khi lạc lối

Suy ngẫm - Trinh Quang - 12/07/2026 09:00
Một khi đã đánh mất điều gì đó, bạn sẽ không bao giờ có thể lấy lại được. Có những việc, nếu bạn không làm ngay bây giờ, bạn sẽ không bao giờ làm lại được nữa.

Không khóc giữa nhân gian - Làm sao để hết khổ?

Từ sách - Phim - FN - 12/07/2026 08:00
Đau khổ vốn không trừ một ai, và nó có trăm hình vạn trạng: một sự mất mát, cảm giác cô độc giữa đám đông, hay đơn giản là nỗi thất vọng khi không đạt được thứ mà mình mong chờ. Vậy phải làm sao để ta hết khổ? Đau khổ có thực sự đáng sợ như người ta vẫn nghĩ? Hay chúng ta vẫn có thể nhìn đau khổ dưới một góc độ bao dung hơn?

Cách đo và độ đo

Blog GS John VU - GS John Vu - 11/07/2026 11:00
Tôi nhận được một email người gửi viết: “Cái gì là khác biệt giữa cách đo và độ đo và có bao nhiêu cách đo hay độ đo phần mềm?”

Không thích ai đó, cách khéo léo để xử lý việc này là thông qua "Phương pháp Sedona"

Suy ngẫm - PV - 11/07/2026 10:00
Trong cuộc sống, chúng ta sẽ luôn gặp những người mình không thích: đó có thể là một đồng nghiệp luôn nhắm vào bạn ở nơi làm việc, một người quen giả tạo và hay buôn chuyện, hoặc một người lạ có giá trị sống trái ngược với bạn và bạn không thể hòa hợp.

Mẹ tỷ phú Elon Musk chỉ cách nuôi dạy con thành tài: điều tuyệt đối không nên làm

Phong cách sống - Hân Ly - 11/07/2026 09:00
Mẹ của người giàu nhất thế giới cho rằng việc nuôi dạy con không nằm ở sự áp đặt, mà ở điều này cực kỳ quan trọng và cần thiết.

Sắp phát hành: Hồi ký của hy vọng

Tủ sách - PV - 11/07/2026 08:00
Hồi ký của hy vọng (Saving Five: A Memoir of Hope) thu hút sự chú ý của truyền thông quốc tế không chỉ bởi câu chuyện có thật của Amanda Ngọc Nguyễn, mà còn bởi cách cô kể lại cuộc đời mình vượt ra ngoài khuôn mẫu của một hồi ký về sang chấn.

Bạn không cần thêm thành tựu đâu, điều bạn cần là nghỉ ngơi

Suy ngẫm - TĐ - 10/07/2026 11:00
 Có những người dành cả tuổi trẻ để thoát khỏi nghèo khó, nhưng rồi khi đã bước ra khỏi nó, họ lại không biết làm thế nào để dừng việc “sống sót”.

Thành công ở đại học

Blog GS John VU - GS John Vu - 10/07/2026 10:00
Thành công nghĩa là đạt tới mục đích của bạn, dù chúng là bất kì cái gì.

Cuộc sống bình dị thích mặc đồ cũ, ăn cơm bụi của 'tượng đài điện ảnh' Châu Nhuận Phát

Phong cách sống - Ngọc Thanh - 10/07/2026 09:00
Dù nắm trong tay khối tài sản khổng lồ, tài tử Châu Nhuận Phát vẫn giữ lối sống giản dị đến mức khó tin.

‘Không khóc giữa nhân gian’ - Học cách bình yên đi qua nỗi buồn

Từ sách - Phim - FN - 10/07/2026 08:00
​​​​​​​Chúng ta lầm tưởng rằng sở hữu càng nhiều thì càng hạnh phúc, nhưng đâu ngờ càng nắm chặt, càng mong cầu thì khổ lụy càng chất chồng.
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