Ngôn ngữ lập trình (programming language) là dạng ngôn ngữ được chuẩn hóa theo một hệ thống các quy tắc riêng, sao cho qua đó người lập trình có thể mô tả các chương trình làm việc dành cho thiết bị điện tử mà cả con người và các thiết bị đó đều hiểu được.
Contents
Các ngôn ngữ lập trình web phổ biến
Bất cứ ai mới tiếp xúc với lập trình cũng sẽ đặt ra câu hỏi, “Nên học ngôn ngữ lập trình nào trước tiên?” Nếu tìm trong các nhóm hoặc cộng đồng developer, bạn sẽ ngay lập tức nhận được rất nhiều câu trả lời khác nhau. Nhưng hãy tỉnh táo để nhận ra một điều: “tín đồ” của ngôn ngữ nào sẽ bình chọn cho ngôn ngữ đó. Vì vậy sau đây chúng tôi sẽ cung cấp cho bạn thông tin về các loại ngôn ngữ lập trình phổ biến nhất để bạn có thể có được sự lựa chọn phù hợp nhất cho mình.
Go
Google phát triển Go để giúp các nhà phát triển của mình xây dựng các hệ thống cho lượng người dùng cực lớn. Go cũng được rất nhiều lập trình viên yêu thích vì tính dễ đọc và dễ nhân rộng.
C
Ngôn ngữ kinh điển này được sáng chế ra vào năm 1972 và vẫn thịnh hành cho đến ngày nay, không chỉ bởi khả năng hoạt động trên tất cả các nền tảng điện toán mà còn bởi tính ổn định và dễ hiểu với hầu hết các lập trình viên từ khắp nơi trên thế giới.
C#
C# được đọc là “C-sharp”, tương tự như một nốt trong âm nhạc. Ngoài ra, nguồn gốc của C# được Microsoft phát triển và cũng là một biến thể của ngôn ngữ C. C# được yêu chuộng vì khả năng đưa những ý tưởng “rất Java” vào cách lập trình của mình.
CSS
Viết tắt của “Cascading Style Sheets”, CSS là ngôn ngữ dùng cho thiết kế định dạng và layout website. Rất nhiều menu trên website và ứng dụng di động đều được viết bởi CSS kết hợp cùng JavaScript và HTML.
C++
Được phát minh ra vào năm 1983 như một lựa chọn thay thế ngôn ngữ C truyền thống, C++ thực sự rất phổ biến với các nhà phát triển trên toàn cầu. Microsoft Windows, Google Chrome hay các phần mềm cho phi cơ chiến đấu đều được viết bằng C++.
PHP
PHP đã quá phổ biến trong thiết kế website. Theo một ước tính không chính thức, PHP hiện được sử dụng cho 1/3 số lượng website trên toàn cầu. Các nền tảng lớn như WordPress, Facebook, Yahoo đều được phát triển bằng PHP. Tuy vậy cũng có không ít người ghét PHP, điển hình là nhà sáng lập Stack Exchange Jeff Atwood khi khẳng định “PHP không phải một ngôn ngữ lập trình mà đúng hơn phải là một đống tạp nham các từ khóa và function.”
Ruby
Các nhà phát triển yêu thích ngôn ngữ lập trình 24 năm tuổi này bởi độ dễ đọc, dễ viết. Đi kèm với nó là Rails, một framework add-on giúp cho việc xây dựng ứng dụng web trở nên dễ dàng hơn bao giờ hết. Khẩu hiệu của Ruby chính là “người bạn tốt nhất của các lập trình viên.”
Python
Với xuất phát điểm từ năm 1989, cũng như Ruby, Python được ưa chuộng bởi tính dễ đọc. Nhiều lập trình viên còn cho rằng đây là ngôn ngữ dễ học nhất bên cạnh Ruby.
Java
Được Oracle phát minh ra vào năm 1991, Java nay đã trở thành ngôn ngữ lập trình phổ biến nhất thế giới. Java chính là phần thiết yếu trong phát triển ứng dụng Android, phần mềm doanh nghiệp hay TV thông minh.
>> Xem thêm: Ngôn ngữ lập trình Java: Khái niệm, Đặc điểm,Ứng dụng cơ bản
JavaScript
Ngôn ngữ siêu phổ biến này thường được dùng vào thiết kế ứng dụng web. Tuy tên giống nhau nhưng JavaScript không liên quan gì nhiều đến Java. JavaScript chạy trên web hiện đại nhưng đôi khi nó cũng là thủ phạm làm chậm tốc độ trình duyệt hay đẩy người dùng vào nhiều lỗ hổng bảo mật hơn.
Ngôn ngữ lập trình dùng để làm gì?
Hiển nhiên, ngôn ngữ lập trình dùng để viết nên các chương trình phần mềm. Vậy, một ngôn ngữ này được cấu tạo bởi những bộ phận cơ bản nào để thực hiện được điều này?
Mỗi ngôn ngữ lập trình có thể được xem như là một tập hợp của các chi tiết kỹ thuật chú trọng đến cú pháp, từ vựng, và ý nghĩa của ngôn ngữ.
Những chi tiết kỹ thuật này thường bao gồm:
- Dữ liệu và cấu trúc dữ liệu.
- Câu lệnh và dòng điều khiển.
- Các tên và các tham số.
- Cơ chế tham khảo và sự tái sử dụng.
Các kiểu dữ liệu trong ngôn ngữ lập trình
Một hệ thống đặc thù mà theo đó các dữ liệu được tổ chức sắp xếp trong một chương trình gọi là hệ thống kiểu của ngôn ngữ lập trình. Việc thiết kế và nghiên cứu các hệ thống kiểu được biết như là lý thuyết kiểu.
Nhiều ngôn ngữ định nghĩa sẵn các kiểu dữ liệu thông dụng như:
- Integer: rất thông dụng, được dùng để biểu diễn các số nguyên.
- Char: biểu diễn các ký tự đơn lẻ.
- String: biểu diễn chuỗi các ký tự, hay còn gọi là chuỗi, để tạo thành câu hay cụm từ.
Cấu trúc dữ liệu của ngôn ngữ lập trình
Hầu hết các ngôn ngữ đều cung cấp các cách thức để lắp ráp các cấu trúc dữ liệu phức tạp từ các kiểu sẵn có và để liên kết các tên với các kiểu mới kết hợp (dùng các kiểu mảng, danh sách, hàng đợi hay tập tin).
Các mệnh lệnh và dòng điều khiển
Khi dữ liệu đã được định rõ, máy tính phải được chỉ thị làm thế nào để tiến hành các phép toán trên dữ liệu đó. Những mệnh đề cơ bản có thể được cấu trúc thông qua việc sử dụng các từ khóa (đã được định nghĩa bởi ngôn ngữ lập trình) hoặc là có thể tạo thành từ việc dùng và kết hợp các cấu trúc ngữ pháp hay cú pháp đã được định nghĩa. Những mệnh đề cơ bản này gọi là các câu lệnh.
Tùy theo ngôn ngữ, các câu lệnh có thể được kết hợp với nhau theo trật tự nào đó. Điều này cho phép thiết lập được các chương trình thực hiện được nhiều chức năng. Hơn nữa, ngoài các câu lệnh để thay đổi và điều chỉnh dữ liệu, còn có những kiểu câu lệnh dùng để điều khiển dòng xử lý của máy tính như là phân nhánh, định nghĩa bởi nhiều trường hợp, vòng lặp, hay kết hợp các chức năng. Đây là các thành tố không thể thiếu của một ngôn ngữ lập trình.
>> Xem thêm: Flutter là gì? Tại sao nên học, sử dụng ngôn ngữ lập trình Flutter?
Các tên và các tham số của ngôn ngữ lập trình
Muốn cho chương trình chạy được thì phải có phương pháp xác định được các vùng trống của bộ nhớ để làm kho chứa dữ liệu. Phương pháp được biết nhiều nhất là thông qua tên của các biến.
Tùy theo ngôn ngữ, các vùng trống gián tiếp có thể bao gồm các tham chiếu, mà trên thực tế, chúng là các con trỏ (pointer) chỉ đến những vùng chứa khác của bộ nhớ, được cài đặt trong các biến hay nhóm các biến. Phương pháp này gọi là đặt tên kho nhớ.
Tương tự với phương pháp đặt tên kho nhớ, là phương pháp đặt tên những nhóm của các chỉ thị. Hầu hết các ngôn ngữ lập trình đều cho phép gọi các macro hay các chương trình con như là các câu lệnh để chạy nội dung mô tả trong các macro hay chương trình con này thông qua tên. Việc dùng tên như thế này cho phép các chương trình đạt tới một sự linh hoạt cao và có giá trị lớn trong việc tái sử dụng mã nguồn (vì người viết mã không cần phải lặp lại những đoạn mã giống nhau mà chỉ việc định nghĩa các macro hay các chương trình con).
Các tham chiếu gián tiếp đến các chương trình khả dụng hay các bộ phận dữ liệu đã được xác định từ trước cho phép nhiều ngôn ngữ định hướng ứng dụng tích hợp được các thao tác khác nhau.
Cơ chế tham khảo và việc tái sử dụng mã nguồn
Mỗi ngôn ngữ lập trình đều có một bộ các cú pháp quy định việc lập trình sao cho mã nguồn được thực thi. Theo đó, mỗi nhà sản xuất các ngôn ngữ này sẽ cung cấp một bộ các cấu trúc ngữ pháp cho các câu lệnh, một khối lượng lớn các từ vựng quy ước được định nghĩa từ trước, và một số lượng các thủ tục hay hàm cơ bản.
Ngoài ra, để giúp lập trình viên dễ dàng sử dụng, nhà sản xuất còn phải cung cấp các tài liệu tra cứu về đặc tính của ngôn ngữ mà họ phát hành. Những tài liệu tra cứu này bao gồm hầu hết các đặc tả, tính chất, các tên (hay từ khoá) mặc định, phương pháp sử dụng, và nhiều khi là các mã nguồn để làm ví dụ. Do sự không thống nhất trong các ý kiến về việc thiết kế và sử dụng từng ngôn ngữ nên có thể xảy ra trường hợp mã nguồn của cùng một ngôn ngữ chạy được cho phần mềm dịch này nhưng không tương thích được với phần mềm dịch khác.
Ví dụ là các mã nguồn C viết cho Microsoft C (phiên bản 6.0) có thể không chạy được khi dùng trình dịch Borland (phiên bản 4.5) nếu không biết cách thức điều chỉnh. Đây cũng là lý do các kỳ hội nghị chuẩn hóa ngôn ngữ lập trình được tiến hành. Ngoài công việc chính là phát triển ngôn ngữ đặc thù, hội nghị còn tìm cách thống nhất hóa ngôn ngữ bằng cách đưa ra các tiêu chuẩn, các khuyến cáo thay đổi về ngôn ngữ trong tương lai hay các đổi mới về cú pháp của ngôn ngữ.
Hãy lựa chọn ngôn ngữ lập trình phù hợp với bạn
Trong lập trình, việc lựa chọn ngôn ngữ phù hợp rất quan trọng vì việc này không chỉ ảnh hưởng đến bảo mật mà còn liên quan đến sự thông dụng trong việc sửa chữa. Nếu là một nhà quản lý, khi bạn đã chọn một ngôn ngữ như C++ thì việc bạn sau này tuyển thêm những nhân viên lập trình khác cũng phải yêu cầu là C++. Nếu bạn tuyển một anh chàng Php về không chỉ không phù hợp với những gì bạn và đội ngũ của bạn đã lập trình trong quá khứ mà có khi phải viết lại tất cả các đoạn mã từ đầu.
Tuy nhiên, ngôn ngữ càng cao thì cũng giúp bạn không ít trong việc bảo mật dữ liệu của bạn. Hãy lựa chọn một ngôn ngữ phù hợp với bạn nhé!