Ngôn ngữ lập trình: tại sao chúng xuất hiện, đại diện nổi bật, cách chọn ngôn ngữ. Tổng quan về ngôn ngữ lập trình

Trước khi muốn học bất kỳ ngôn ngữ lập trình nào, bạn cần biết một chút về lịch sử của chúng và nơi chúng được sử dụng.

Tôi trình bày cho bạn một cái nhìn tổng quan ngắn gọn về 25 ngôn ngữ lập trình nổi tiếng. Bắt đầu từ nổi tiếng nhất đến ít phổ biến nhất. Bài viết được thực hiện cho người mới bắt đầu trong lĩnh vực lập trình. Bạn có thể đọc về từng ngôn ngữ và chọn ngôn ngữ bạn thích nhất để học.

Trước khi bắt đầu học ngôn ngữ lập trình, tôi khuyên bạn nên tham gia một khóa học về .

1. JavaScript

Ngôn ngữ lập trình kịch bản hướng nguyên mẫu. JavaScript ban đầu được tạo ra để làm cho các trang web “sống động”. Trong trình duyệt, chúng kết nối trực tiếp với HTML và ngay khi tải trang, chúng sẽ được thực thi ngay lập tức.

Khi JavaScript được tạo ra, ban đầu nó có một tên khác: “LiveScript”. Nhưng sau đó ngôn ngữ Java rất phổ biến và các nhà tiếp thị quyết định rằng một cái tên tương tự sẽ khiến ngôn ngữ mới trở nên phổ biến hơn.

Người ta đã lên kế hoạch rằng JavaScript sẽ là một loại “em trai” của Java. Tuy nhiên, lịch sử đã có cách đi riêng của nó, JavaScript đã phát triển rất nhiều và giờ đây nó là một ngôn ngữ hoàn toàn độc lập, có đặc tả riêng và không liên quan gì đến Java.

2. Java


Một ngôn ngữ lập trình hướng đối tượng được đánh máy mạnh mẽ. Các ứng dụng Java thường được dịch sang mã byte tùy chỉnh để chúng có thể chạy trên mọi kiến ​​trúc máy tính bằng Máy ảo Java.

Ưu điểm của phương pháp thực thi chương trình này là tính độc lập hoàn toàn của mã byte với hệ điều hành và phần cứng, cho phép bạn chạy các ứng dụng Java trên bất kỳ thiết bị nào có máy ảo tương ứng tồn tại. Một tính năng quan trọng khác của công nghệ Java là hệ thống bảo mật linh hoạt, trong đó việc thực thi chương trình được kiểm soát hoàn toàn bởi máy ảo.

Ngôn ngữ này ban đầu được gọi là Oak và được phát triển bởi James Gosling để lập trình cho các thiết bị điện tử tiêu dùng. Sau đó nó được đổi tên thành Java và được sử dụng để viết các ứng dụng máy khách và phần mềm máy chủ.

3.PHP


Nó là một ngôn ngữ thông dịch phổ biến, mã nguồn mở, có mục đích chung (ngôn ngữ kịch bản). PHP được tạo riêng để phát triển web và mã của nó có thể được nhúng trực tiếp vào mã HTML. Cú pháp của ngôn ngữ này đến từ C, Java và Perl và rất dễ học.

Mục đích chính của PHP là cung cấp cho các nhà phát triển web khả năng tạo nhanh các trang web được tạo động, nhưng phạm vi của PHP không giới hạn ở điều này.

4.Python

Ngôn ngữ lập trình đa năng cấp cao nhằm cải thiện năng suất của nhà phát triển, khả năng đọc mã và phát triển ứng dụng web. Cú pháp cốt lõi của Python là tối giản. Mã trong Python được tổ chức thành các hàm và lớp, có thể kết hợp thành các mô-đun.

5. C#


Ngôn ngữ lập trình hướng đối tượng. Được phát triển vào năm 1998-2001 bởi một nhóm kỹ sư do Anders Hejlsberg dẫn đầu tại Microsoft dưới dạng ngôn ngữ phát triển ứng dụng cho Microsoft .NET Framework. C# thuộc họ ngôn ngữ có cú pháp giống C, trong đó cú pháp của nó gần nhất với C++ và Java.

Ngôn ngữ này có kiểu gõ tĩnh, hỗ trợ đa hình, nạp chồng toán tử, đại biểu, thuộc tính, sự kiện, thuộc tính, kiểu và phương thức chung, trình vòng lặp, hàm ẩn danh có hỗ trợ đóng, LINQ, ngoại lệ, nhận xét ở định dạng XML.

6. C++


Một ngôn ngữ lập trình đa năng được biên dịch và gõ tĩnh. Đây là một trong những ngôn ngữ được sử dụng rộng rãi nhất trên thế giới. Google Chrome, Mozilla Firefox, Winamp và dòng sản phẩm Adobe được phát triển bằng C++. Ngoài ra, một số trò chơi và hệ điều hành hiện đại đã được phát triển bằng C++ do tốc độ xử lý và biên dịch nhanh.

7. Hồng ngọc


Một ngôn ngữ lập trình đơn giản và dễ đọc nhằm phát triển các ứng dụng web. Được thiết kế bởi Yukihiro Matsumto vào năm 1995. Ngôn ngữ này có triển khai đa luồng độc lập với hệ điều hành, gõ động nghiêm ngặt và trình thu gom rác.

Mục đích chính của Ruby là tạo ra các chương trình đơn giản và đồng thời dễ hiểu, trong đó tốc độ của chương trình không quan trọng mà là thời gian phát triển ngắn, sự rõ ràng và đơn giản của cú pháp. Ngôn ngữ tuân theo nguyên tắc "ít bất ngờ nhất": chương trình phải hoạt động như người lập trình mong đợi.

8.CSS


Cascading Style Sheets là ngôn ngữ chính thức để mô tả hình thức của tài liệu được viết bằng ngôn ngữ đánh dấu.
Nó chủ yếu được sử dụng như một phương tiện mô tả và thiết kế giao diện của các trang web được viết bằng ngôn ngữ đánh dấu HTML và XHTML, nhưng cũng có thể được áp dụng cho bất kỳ tài liệu XML nào.

9. C


Một ngôn ngữ lập trình có mục đích chung được biên dịch, gõ tĩnh. Ngôn ngữ C được phát triển bởi Dennis Ritchie vào năm 1972 tại Bell Labs. Nó là tiền thân của các ngôn ngữ lập trình như C++, Java, C#, JavaScript và Perl. Vì lý do này, việc học ngôn ngữ này sẽ dẫn đến việc hiểu các ngôn ngữ khác. Ngôn ngữ C được sử dụng để phát triển các ứng dụng cấp thấp vì nó được coi là gần gũi nhất với phần cứng.

10. Mục tiêu-C


Một ngôn ngữ lập trình hướng đối tượng được biên dịch được sử dụng bởi Tập đoàn Apple, được xây dựng trên mô hình ngôn ngữ C và Smalltalk. Ngôn ngữ Objective-C là siêu ngôn ngữ của ngôn ngữ C, vì vậy mã C hoàn toàn có thể hiểu được bởi trình biên dịch Objective-C. Ngôn ngữ này được sử dụng chủ yếu cho Mac OS X (Cocoa) và GNUstep - triển khai giao diện OpenStep hướng đối tượng. Ngôn ngữ này cũng được sử dụng cho iOS (Cocoa Touch).

11. Vỏ

Nó không hẳn là một ngôn ngữ mà là một trình thông dịch lệnh (ngôn ngữ lệnh). Các tập lệnh của nó được sử dụng để tự động cập nhật phần mềm. Chứa các cấu trúc tiêu chuẩn cho các khai báo vòng lặp, phân nhánh và hàm. Họ hệ điều hành UNIX sử dụng SHELL làm ngôn ngữ kiểm soát công việc tiêu chuẩn.

12. R


Ngôn ngữ lập trình để xử lý dữ liệu thống kê và đồ họa, cũng như môi trường điện toán nguồn mở và miễn phí trong dự án GNU. R được sử dụng rộng rãi làm phần mềm thống kê để phân tích dữ liệu và đã trở thành tiêu chuẩn thực tế cho các chương trình thống kê. R sử dụng giao diện dòng lệnh.

13. Perl


Một ngôn ngữ lập trình đa năng năng động được giải thích ở cấp độ cao. Tên của ngôn ngữ này là từ viết tắt của từ viết tắt của Practice Extraction and Report Language - “ngôn ngữ thực tế để trích xuất dữ liệu và viết báo cáo”. Tính năng chính của ngôn ngữ này là khả năng làm việc với văn bản phong phú, bao gồm cả việc làm việc với các biểu thức chính quy được tích hợp trong cú pháp. Hiện tại, nó được sử dụng cho nhiều nhiệm vụ, bao gồm quản trị hệ thống, phát triển web, lập trình mạng, trò chơi, tin sinh học, phát triển giao diện người dùng đồ họa.

14. Scala


Một ngôn ngữ lập trình đa mô hình được thiết kế ngắn gọn và an toàn về kiểu để tạo phần mềm dựa trên thành phần một cách dễ dàng và nhanh chóng, kết hợp các khả năng của lập trình chức năng và hướng đối tượng. Các chương trình Scala tương tự như các chương trình Java ở nhiều điểm và có thể tương tác tự do với mã Java.

15. Đi


Một ngôn ngữ lập trình đa luồng được biên dịch do Google phát triển. Ngôn ngữ Go được phát triển làm ngôn ngữ lập trình hệ thống để tạo các chương trình hiệu quả cao chạy trên các hệ thống phân tán hiện đại và bộ xử lý đa lõi. Nó có thể được coi là một nỗ lực nhằm tạo ra sự thay thế cho ngôn ngữ C. Trong quá trình phát triển, người ta đặc biệt chú ý đến việc đảm bảo việc biên soạn có hiệu quả cao. Các chương trình Go được biên dịch thành mã đối tượng và không yêu cầu máy ảo để thực thi.

16.SQL

Structured Query Language. một ngôn ngữ lập trình chính thức, phi thủ tục được sử dụng để tạo, sửa đổi và thao tác dữ liệu trong cơ sở dữ liệu quan hệ tùy ý được quản lý bởi hệ thống quản lý cơ sở dữ liệu thích hợp. SQL chủ yếu là ngôn ngữ logic thông tin được thiết kế để mô tả, sửa đổi và truy xuất dữ liệu được lưu trữ trong cơ sở dữ liệu quan hệ. Mỗi câu lệnh SQL là một yêu cầu dữ liệu từ cơ sở dữ liệu hoặc một lệnh gọi đến cơ sở dữ liệu khiến dữ liệu trong cơ sở dữ liệu thay đổi.

17. Haskell


Một ngôn ngữ lập trình có mục đích chung, thuần túy, chức năng và được tiêu chuẩn hóa. Đây là một trong những ngôn ngữ lập trình phổ biến nhất có hỗ trợ tính toán lười biếng. Một đặc điểm khác biệt của ngôn ngữ là thái độ nghiêm túc khi gõ phím. Haskell là một ngôn ngữ tuyệt vời để học và thử nghiệm các kiểu dữ liệu chức năng phức tạp.

18. Nhanh


Một ngôn ngữ lập trình mở, đa mô hình, được biên dịch, có mục đích chung. Được Apple tạo ra chủ yếu dành cho các nhà phát triển iOS và OS X, Swift hoạt động với các framework Cocoa và Cocoa Touch, đồng thời tương thích với cơ sở mã Objective-C cốt lõi của Apple. Swift được dự định là một ngôn ngữ dễ đọc và ít lỗi hơn so với ngôn ngữ tiền nhiệm của nó, Objective-C. Swift vay mượn khá nhiều từ Objective-C, nhưng nó được xác định không phải bằng con trỏ mà bằng các loại biến mà trình biên dịch xử lý. Nhiều ngôn ngữ kịch bản hoạt động theo nguyên tắc tương tự.

19. Matlab


Ngôn ngữ lập trình thông dịch cấp cao bao gồm các cấu trúc dữ liệu dựa trên ma trận, nhiều tính năng, môi trường phát triển tích hợp, khả năng hướng đối tượng và giao diện với các chương trình được viết bằng các ngôn ngữ lập trình khác. Các chương trình viết bằng MATLAB có hai loại - hàm và tập lệnh. Các hàm có các đối số đầu vào và đầu ra cũng như không gian làm việc riêng để lưu trữ các biến và kết quả tính toán trung gian. Các tập lệnh sử dụng một không gian làm việc chung. Cả tập lệnh và hàm đều được lưu dưới dạng tệp văn bản và được biên dịch động thành mã máy.

20. Trực quan cơ bản


Ngôn ngữ lập trình và môi trường phát triển phần mềm tích hợp được phát triển bởi Tập đoàn Microsoft. Ngôn ngữ Visual Basic kế thừa tinh thần, phong cách và cú pháp của tổ tiên nó - ngôn ngữ BASIC, có nhiều phương ngữ. Đồng thời, Visual Basic kết hợp các thủ tục và các thành phần của ngôn ngữ lập trình hướng đối tượng và hướng thành phần.

Visual Basic cũng là một công cụ tốt để phát triển nhanh các ứng dụng cơ sở dữ liệu RAD cho hệ điều hành Microsoft Windows. Nhiều thành phần làm sẵn được cung cấp cùng với môi trường được thiết kế để giúp lập trình viên bắt đầu ngay lập tức phát triển logic nghiệp vụ của ứng dụng mà không chuyển hướng chú ý sang việc viết mã khởi chạy chương trình.

21. Delphi


Một ngôn ngữ lập trình hướng đối tượng, có cấu trúc, mệnh lệnh với kiểu gõ biến tĩnh mạnh mẽ. Lĩnh vực sử dụng chính là viết phần mềm ứng dụng.

Ngày nay, cùng với việc hỗ trợ phát triển các chương trình 32 và 64 bit cho Windows, người ta có thể tạo các ứng dụng cho Apple Mac OS X, cũng như cho Google Android (được thực thi trực tiếp trên bộ xử lý ARM).

22. Hấp dẫn


Một ngôn ngữ lập trình hướng đối tượng được thiết kế cho nền tảng Java như một sự bổ sung cho ngôn ngữ Java với các khả năng của Python, Ruby và Smalltalk. Groovy sử dụng cú pháp giống Java với khả năng biên dịch động mã byte JVM và hoạt động trực tiếp với các thư viện và mã Java khác. Ngôn ngữ này có thể được sử dụng trong bất kỳ dự án Java nào hoặc làm ngôn ngữ kịch bản.

23. Visual Basic .NET


Một ngôn ngữ lập trình hướng đối tượng, có thể được coi là vòng phát triển tiếp theo của Visual Basic, được triển khai trên nền tảng Microsoft .NET. VB.NET không tương thích ngược với phiên bản cũ hơn (Visual Basic 6.0). Chỉ có thể phát triển các dự án phiên bản cũ hơn (*.vbp) sau khi chuyển đổi sơ bộ sang định dạng VB.NET bằng một trình hướng dẫn đặc biệt (Trình hướng dẫn di chuyển); tuy nhiên, sau khi chuyển đổi, cần phải sửa đổi văn bản một cách thủ công đáng kể.

24.D

Một ngôn ngữ lập trình được biên soạn đa mô hình được tạo bởi Walter Bright của Digital Mars. D ban đầu được hình thành như một sự tái cấu trúc của ngôn ngữ C++, tuy nhiên, bất chấp ảnh hưởng đáng kể của C++, nó không phải là một biến thể của nó. Ngôn ngữ này cũng bị ảnh hưởng bởi các khái niệm từ các ngôn ngữ lập trình Python, Ruby, C#, Java và Eiffel.

25. Người lắp ráp


Ngôn ngữ hướng máy cấp thấp với các lệnh không phải lúc nào cũng tương ứng với lệnh máy, có thể cung cấp các tính năng bổ sung như macro; mã hóa tự động được mở rộng bởi các cấu trúc ngôn ngữ lập trình cấp cao, chẳng hạn như biểu thức, macro và các phương tiện đảm bảo tính mô đun của chương trình.

Hợp ngữ là một hệ thống ký hiệu được sử dụng để thể hiện các chương trình được viết bằng mã máy ở dạng con người có thể đọc được. Hợp ngữ cho phép lập trình viên sử dụng các mã thao tác ghi nhớ theo thứ tự bảng chữ cái, gán tên tượng trưng cho các thanh ghi và bộ nhớ máy tính theo ý mình, đồng thời thiết lập các sơ đồ địa chỉ thuận tiện cho bản thân. Ngoài ra, nó cho phép sử dụng các hệ thống số khác nhau để biểu diễn các hằng số và có thể gắn nhãn các dòng chương trình bằng các tên tượng trưng để chúng có thể được tham chiếu.

Lập trình cho người mới bắt đầu

Để bắt đầu, tôi muốn nói rằng bất kỳ ai cũng có thể vận hành máy tính và tạo chương trình. Bạn không cần trí thông minh phi thường hay bằng cấp về toán để tạo ra các chương trình máy tính. Tất cả những gì bạn cần là mong muốn tìm ra điều gì đó và kiên nhẫn để không bỏ cuộc.

Khả năng viết chương trình cũng giống như khả năng bơi lội, khiêu vũ hoặc tung hứng. Một số người thực sự làm điều đó tốt hơn nhiều so với những người khác, nhưng bất kỳ ai cũng có thể đạt được những kết quả nhất định nếu thực hành đúng cách. Chính vì lý do này mà trẻ em trở thành những chuyên gia lập trình ngay từ khi còn nhỏ. Trẻ em không nhất thiết phải là thiên tài; họ chỉ đơn giản là có xu hướng học hỏi những điều mới và không ngại mắc sai lầm.

Mặc dù máy tính có vẻ giống như những con quái vật điện tử rất phức tạp nhưng hãy thư giãn. Rất ít người biết chính xác cách thức hoạt động của các công cụ tìm kiếm, cho phép bạn nhanh chóng tìm thấy thông tin bạn cần trên Internet và một số người thậm chí còn chưa biết lái xe ô tô. Tương tự như vậy, hầu hết mọi người đều có thể học cách tạo chương trình mà không cần phải đi sâu vào chi tiết về cách thức hoạt động chính xác của máy tính.

Nói chung, một chương trình sẽ cho máy tính biết cách giải quyết một vấn đề cụ thể. Bởi vì thế giới đầy rẫy những vấn đề nên số lượng chương trình con người có thể viết là vô tận.

Tuy nhiên, để bảo máy tính cách giải một bài toán lớn, bạn thường phải nói cho máy tính cách giải một loạt bài toán nhỏ tạo nên bài toán lớn.
Trên thực tế, lập trình không hề khó và cũng không phải là điều gì đó huyền bí hay siêu nhiên. Nếu bạn có thể viết hướng dẫn từng bước để cho phép một người tìm thấy ngôi nhà của bạn, bạn có thể viết một chương trình máy tính.

Phần khó nhất của lập trình là xác định những vấn đề nhỏ tạo nên vấn đề bạn cần giải quyết. Vì máy tính hoàn toàn ngu ngốc nên bạn phải chỉ cho chúng cách thực hiện mọi thứ.

Nếu bạn nghĩ rằng việc tạo một chương trình thú vị hơn việc sử dụng nó thì bạn có mọi thứ bạn cần để tạo các chương trình máy tính. Nếu bạn muốn học cách viết chương trình máy tính, bạn cần có ba phẩm chất sau.

Truy đuổi. Nếu bạn muốn thứ gì đó đủ tệ, bạn sẽ có được nó (nhưng nếu bạn làm điều gì đó bất hợp pháp, bạn có nguy cơ phải ngồi tù rất nhiều thời gian). Nếu bạn muốn học cách lập trình, mong muốn của bạn chắc chắn sẽ giúp ích cho bạn, cho dù có bao nhiêu trở ngại cản đường bạn.

Sự tò mò. Một sự tò mò lành mạnh có thể thúc đẩy mong muốn thử nghiệm và tiếp tục cải thiện kỹ năng lập trình của bạn ngay cả sau khi đọc cuốn sách này. Sự tò mò sẽ khiến việc học lập trình bớt nhàm chán và thú vị hơn. Và nếu bạn quan tâm, bạn chắc chắn sẽ nghiên cứu và ghi nhớ nhiều thông tin hơn bất kỳ người hoàn toàn không quan tâm nào (ví dụ như sếp của bạn).
Sự tưởng tượng. Tạo ra các chương trình máy tính là một kỹ năng, nhưng trí tưởng tượng có thể giúp kỹ năng đó trở nên tinh tế và tập trung hơn. Một lập trình viên mới vào nghề có trí tưởng tượng dồi dào sẽ luôn tạo ra các chương trình thú vị và hữu ích hơn nhiều so với một lập trình viên giỏi nhưng không có trí tưởng tượng. Nếu bạn không biết phải làm gì với kỹ năng lập trình của mình, tài năng của bạn sẽ chết nếu không có trí tưởng tượng.

Động lực, sự tò mò và trí tưởng tượng là ba phẩm chất quan trọng nhất mà mỗi lập trình viên nên có. Nếu có chúng, bạn chỉ phải lo lắng về những điều nhỏ nhặt: nên học ngôn ngữ lập trình nào (ví dụ: C++), vấn đề toán học là gì, v.v.

Trong số nhiều ngôn ngữ lập trình, bạn luôn có thể tìm thấy chính xác ngôn ngữ phù hợp để giải quyết một vấn đề nhất định. Khi một loại vấn đề mới nảy sinh, người ta sẽ tạo ra những ngôn ngữ mới.

Tất nhiên, máy tính thực sự chỉ hiểu được một ngôn ngữ, được tạo thành từ số 1 và số 0, gọi là ngôn ngữ máy. Thông thường, một chương trình được viết bằng ngôn ngữ máy trông giống như sau:

0010 1010 0001 1101

LHQ 1100 1010 1111

0101 CNTT 1101 0101

1101 1111 0010 1001

Hơn nữa, điều rất quan trọng là ngôn ngữ được chọn nhằm mục đích gì - để dạy lập trình hoặc để giải quyết một vấn đề ứng dụng cụ thể. Trong trường hợp đầu tiên, ngôn ngữ phải dễ hiểu, chặt chẽ và nếu có thể thì không có cạm bẫy. Thứ hai - mặc dù phức tạp nhưng là một công cụ hiệu quả và mang tính biểu cảm dành cho một chuyên gia biết mình muốn gì.

Bây giờ tôi muốn giải thích cho bạn rằng ngôn ngữ lập trình (Basic, Pascal) nên được phân biệt với việc triển khai nó, ngôn ngữ này thường được trình bày như một phần của môi trường lập trình (Quick Basic, Virtual Pascal) - một bộ công cụ để chỉnh sửa văn bản nguồn , tạo mã thực thi, gỡ lỗi, quản lý dự án, v.v. Cú pháp và ngữ nghĩa của ngôn ngữ lập trình được cố định trong tiêu chuẩn ngôn ngữ. Mỗi môi trường lập trình cung cấp trình thông dịch hoặc trình biên dịch riêng cho ngôn ngữ này, thường cho phép sử dụng các cấu trúc không cố định trong tiêu chuẩn.

Hãy xem xét các ngôn ngữ lập trình chính và phổ biến

Trình biên dịchĐây là đại diện sáng giá nhất của các ngôn ngữ cấp thấp, tập hợp các khái niệm dựa trên việc triển khai phần cứng. Đây là một công cụ tự động hóa để lập trình trực tiếp bằng mã bộ xử lý. Các lệnh máy được mô tả dưới dạng các thao tác ghi nhớ, giúp có thể đạt được khả năng sửa đổi mã khá cao. Vì tập lệnh trên các bộ xử lý khác nhau là khác nhau nên không cần phải nói về khả năng tương thích. Nên sử dụng trình biên dịch mã trong trường hợp cần tương tác trực tiếp với phần cứng hoặc để đạt được hiệu quả cao hơn đối với một số phần của chương trình do có khả năng kiểm soát tốt hơn đối với việc tạo mã.

COBOL- Ngôn ngữ lập trình cấp cao được phát triển vào cuối những năm 1950. hiệp hội CADASIL để giải quyết các vấn đề thương mại và kinh tế. Nó có các công cụ nâng cao để làm việc với các tập tin. Vì các lệnh trong các chương trình được viết bằng ngôn ngữ này chủ động sử dụng từ vựng và cú pháp tiếng Anh thông thường nên Cobol được coi là một trong những ngôn ngữ lập trình đơn giản nhất. Hiện đang được sử dụng để giải quyết các vấn đề kinh tế, thông tin và các vấn đề khác.

Fortran- Ngôn ngữ lập trình cấp cao được IBM phát triển vào năm 1956 để mô tả các thuật toán giải quyết các vấn đề tính toán. Thuộc loại ngôn ngữ hướng thủ tục. Các phiên bản phổ biến nhất của ngôn ngữ này là Fortran IV, Fortran 77 và Fortran 90. Nó được sử dụng trên tất cả các loại máy tính. Phiên bản mới nhất của nó cũng được sử dụng trên các máy tính có kiến ​​trúc song song.

Ada- Ngôn ngữ lập trình cấp cao, được định hướng sử dụng trong các hệ thống thời gian thực và được thiết kế để tự động hóa các tác vụ quản lý quy trình và/hoặc thiết bị, ví dụ như trong các máy tính trên tàu (tàu, hàng không, v.v.). Được phát triển theo sáng kiến ​​của Bộ Quốc phòng Mỹ vào những năm 1980. Được đặt theo tên nhà toán học người Anh Ada Augusta Byron (Lovelace), sống từ năm 1815 đến năm 1851.

NỀN TẢNG(Mã hướng dẫn biểu tượng đa năng dành cho người mới bắt đầu) Ra đời vào những năm 60 ở Mỹ. BASIC được hình thành như một ngôn ngữ đơn giản để học nhanh. BASIC đã trở thành tiêu chuẩn thực tế cho Máy vi tính chính xác vì tính đơn giản trong cả việc học và triển khai. Tuy nhiên, đối với To Để đạt được chất lượng này, một số quyết định đã được đưa ra (thiếu gõ, đánh số dòng và GOTO phi cấu trúc, v.v.), ảnh hưởng tiêu cực đến phong cách lập trình của sinh viên. một số lượng lớn các phương ngữ ngôn ngữ không tương thích với nhau.Các phiên bản BASIC hiện đại, chuyên biệt (chẳng hạn như Visual Basic), mặc dù đã có được “cấu trúc” nhưng vẫn có những khuyết điểm giống nhau, chủ yếu là sơ suất trong mối quan hệ với các loại và mô tả. sử dụng ở giai đoạn đầu học tập, như một công cụ tự động hóa (trong trường hợp nó được tích hợp vào các hệ thống tương ứng) hoặc như một phương tiện để tạo nhanh các ứng dụng.

PascalĐược phát triển bởi nhà lý thuyết nổi tiếng N. Wirth dựa trên ý tưởng của ALGOL-68, Pascal chủ yếu được thiết kế để dạy lập trình. Được xây dựng trên nguyên tắc “cần và đủ”, nó có khả năng kiểm soát kiểu chặt chẽ, các cấu trúc để mô tả các cấu trúc dữ liệu tùy ý và một tập hợp nhỏ nhưng đầy đủ các toán tử lập trình có cấu trúc. Thật không may, mặt trái của sự đơn giản và chặt chẽ là sự rườm rà trong việc mô tả các cấu trúc ngôn ngữ. Triển khai nổi tiếng nhất - Turbo/Borland Pascal - bất chấp những khác biệt so với tiêu chuẩn Pascal, là một môi trường và một bộ thư viện đã biến ngôn ngữ giáo dục thành một hệ thống công nghiệp để phát triển các chương trình trong môi trường MS-DOS.

C và C++ Ngôn ngữ C dựa trên yêu cầu của người lập trình hệ thống: truy cập đầy đủ và hiệu quả vào tất cả tài nguyên máy tính, công cụ lập trình cấp cao, khả năng di chuyển chương trình giữa các nền tảng và hệ điều hành khác nhau. C++, trong khi vẫn duy trì khả năng tương thích với C, giới thiệu khả năng lập trình hướng đối tượng bằng cách thể hiện ý tưởng về một lớp (đối tượng) dưới dạng kiểu do người dùng xác định. Nhờ những đặc tính này, C/C++ đã chiếm được vị trí là ngôn ngữ phổ quát cho mọi tác vụ. Nhưng việc sử dụng nó có thể trở nên không hiệu quả khi cần đạt được kết quả sẵn sàng sử dụng trong thời gian ngắn nhất hoặc khi bản thân phương pháp tiếp cận theo quy trình trở nên không có lợi.

Delphi- đây không phải là sản phẩm kế thừa của Borland Pascal / Borland C, vị trí thích hợp của nó là i.e. tạo ứng dụng nhanh chóng (Phát triển ứng dụng nhanh, RAD). Những công cụ như vậy cho phép bạn nhanh chóng tạo một chương trình làm việc từ các thành phần làm sẵn mà không tốn nhiều công sức vào những việc vặt vãnh. Một vị trí đặc biệt trong các hệ thống như vậy bị chiếm giữ bởi khả năng làm việc với cơ sở dữ liệu.

nói ngọng- Một ngôn ngữ thuật toán được J. McCarthy phát triển vào năm 1960 và dùng để thao tác danh sách các thành phần dữ liệu. Nó được sử dụng chủ yếu trong các phòng thí nghiệm của trường đại học Hoa Kỳ để giải quyết các vấn đề liên quan đến trí tuệ nhân tạo. Ở châu Âu, họ thích sử dụng Prolog hơn cho công việc về trí tuệ nhân tạo.

Lời mở đầu- Ngôn ngữ lập trình khai báo cấp cao được thiết kế để phát triển các chương trình và hệ thống trí tuệ nhân tạo. Thuộc loại ngôn ngữ thế hệ thứ năm. Nó được phát triển vào năm 1971 tại Đại học Marseille (Pháp), và là một trong những ngôn ngữ được sử dụng rộng rãi và không ngừng phát triển. Phiên bản mới nhất của nó là Prolog 6.0

LOGO- Ngôn ngữ lập trình cấp cao được phát triển tại Viện Công nghệ Massachusetts vào khoảng năm 1970 với mục đích giảng dạy các khái niệm toán học. Nó cũng được sử dụng trong trường học và người dùng PC khi viết chương trình tạo bản vẽ trên màn hình và điều khiển máy vẽ bút.

Java Là một ví dụ điển hình về chuyên môn hóa, ngôn ngữ Java nổi lên nhằm đáp ứng nhu cầu về một ngôn ngữ di động lý tưởng trong đó các chương trình có thể chạy hiệu quả trên phía máy khách WWW. Do môi trường cụ thể, Java có thể là lựa chọn tốt cho hệ thống được xây dựng trên công nghệ Internet/Intranet.

ALGOL- Ngôn ngữ lập trình cấp cao tập trung vào việc mô tả các thuật toán để giải quyết các vấn đề tính toán. Nó được tạo ra vào năm 1958 bởi các chuyên gia từ các nước Tây Âu để nghiên cứu khoa học. Phiên bản ALGOL-60 của ngôn ngữ này được Hội nghị quốc tế tại Paris (1960) thông qua và được sử dụng rộng rãi trên các máy tính thế hệ thứ 2. Phiên bản ALGOL-68, được phát triển bởi một nhóm chuyên gia từ Liên đoàn xử lý thông tin quốc tế (IFIP) vào năm 1968, đã nhận được danh hiệu ngôn ngữ lập trình phổ quát quốc tế tập trung vào việc giải quyết không chỉ các vấn đề về tính toán mà còn cả thông tin. Mặc dù Algol hiện không được sử dụng trên thực tế, nhưng nó đóng vai trò là nền tảng hoặc có ảnh hưởng đáng kể đến sự phát triển của các ngôn ngữ hiện đại hơn, ví dụ như Ada, Pascal, v.v.

Không có ngôn ngữ tốt nhất. Nếu muốn trở thành một lập trình viên chuyên nghiệp, bạn sẽ cần phải học một trong những ngôn ngữ lập trình cấp cao (ngôn ngữ lập trình phổ biến nhất là C++) cũng như một trong các ngôn ngữ lập trình cơ sở dữ liệu (ví dụ: SQL) . Khi bạn học ngôn ngữ lập trình C++, bạn sẽ không thể mắc sai lầm. Biết ngôn ngữ này, bạn luôn có thể tìm được việc làm ở bất kỳ công ty lập trình nào.
Bất chấp sự phổ biến rộng rãi của ngôn ngữ lập trình C++, các ngôn ngữ khác cũng thường được sử dụng. Nhiều máy tính cũ vẫn chạy các chương trình được viết bằng ngôn ngữ lập trình COBOL. Vì vậy, chúng tôi cần những lập trình viên có thể cải tiến các chương trình này và viết các chương trình mới. Rất thường xuyên, các công ty lớn trả lương cao cho những lập trình viên như vậy.
Nếu bạn định tự mình làm việc, tốt nhất bạn nên học cách tạo các chương trình cơ sở dữ liệu của riêng mình. Để làm được điều này, bạn sẽ cần học các ngôn ngữ lập trình như SQL hoặc VBA, được sử dụng trong Microsoft Access. Để tạo các trang Web, bạn cần biết HTML, cũng như một số kiến ​​thức về Java, JavaScript, VBScript và các ngôn ngữ lập trình Internet khác. Ngôn ngữ lập trình cần thiết nhất sẽ là ngôn ngữ cho phép bạn giải quyết các nhiệm vụ được giao một cách dễ dàng và nhanh chóng. Đây có thể là ngôn ngữ lập trình như C++, BASIC, Java, SQL hoặc hợp ngữ.

Tóm lại, chúng tôi lưu ý rằng từ quan điểm chuyên môn, việc lập trình viên làm việc bằng ngôn ngữ nào và trong môi trường nào không quá quan trọng mà là cách anh ta thực hiện công việc của mình. Phần cứng và hệ điều hành đang thay đổi. Các vấn đề mới phát sinh từ nhiều lĩnh vực chủ đề khác nhau. Chúng trở thành quá khứ và những ngôn ngữ mới xuất hiện. Nhưng mọi người vẫn còn - những người viết và những người viết chương trình mới cho họ và những yêu cầu về chất lượng của họ vẫn giữ nguyên bất chấp những thay đổi này.
Vì vậy, chúng tôi đã xem xét những điều cơ bản về lập trình và các ngôn ngữ lập trình chính.

Chúc các bạn thành thạo lập trình thành công!

Cũng như sự phát triển của công nghệ máy tính không đứng yên, phương pháp và ngôn ngữ lập trình không ngừng được cải tiến. Hãy xem xét những ngôn ngữ tồn tại trong lĩnh vực máy tính hiện đại và cách phân loại của chúng.

Thông tin chung

Danh sách các ngôn ngữ lập trình rất rộng và đa dạng nên việc sắp xếp nó một cách hoàn chỉnh là một nhiệm vụ gần như bất khả thi. Trong số tất cả các ngôn ngữ, có thể phân biệt ba nhóm chính:

  • máy (ngôn ngữ lập trình cấp thấp);
  • hướng máy (hợp ngữ);
  • máy độc lập (mức cao);

Các ngôn ngữ lập trình chính sau đây là phổ biến nhất trong số các nhà phát triển phần mềm hiện đại. Danh sách được đưa ra theo thứ tự mức độ phổ biến giảm dần:

  1. Java.
  2. HTML.
  3. Ngôn ngữ lập trình.
  4. Delphi.

Danh sách các ngôn ngữ lập trình này vẫn chưa đầy đủ, nhưng đây là những ngôn ngữ phổ biến nhất mà lập trình viên có thể yêu cầu kiến ​​thức khi đi xin việc. Tất cả đều là ngôn ngữ lập trình cấp cao.

Cơ bản về lập trình

Ngôn ngữ lập trình cấp thấp là những ngôn ngữ yêu cầu xem xét loại và khả năng của bộ xử lý. Toán tử và phương thức hoạt động của các ngôn ngữ lập trình như vậy khá gần với mã máy, chúng đòi hỏi kiến ​​thức về cấu trúc bộ nhớ của máy tính cá nhân và cách bộ xử lý truy cập nó.

Thật khó để gọi tên các ngôn ngữ lập trình cấp thấp khác nhau. Danh sách vẫn sẽ được rút gọn thành một ngôn ngữ chính - ngôn ngữ lắp ráp. Vì nó cho phép bạn soạn mã chương trình theo các ký hiệu gần với mã máy, nên trình biên dịch mã được sử dụng riêng khi viết phần mềm hệ thống, chẳng hạn như hệ điều hành, trình điều khiển thiết bị và khi lập trình mã điều khiển của vi mạch.

Nhược điểm của các ngôn ngữ lập trình như vậy là các chương trình trong chúng được viết để thực hiện các tác vụ cụ thể trên một thiết bị cụ thể và việc thực thi chúng là không thể nếu được chuyển sang bộ xử lý khác.

Phát triển ứng dụng

Danh sách các ngôn ngữ lập trình để tạo ứng dụng tùy chỉnh, cũng như để phát triển và triển khai phần mềm tùy chỉnh, chứa hàng nghìn mục. Như bạn hiểu, sự đa dạng như vậy là do một ngôn ngữ cụ thể phù hợp để giải quyết một số vấn đề nhất định.

Mặc dù các ngôn ngữ lập trình này được phân loại thành một nhóm riêng biệt nhưng chúng được thực thi bằng mã máy. Để thực thi từng dòng chương trình đã hoàn thành và dịch nó sang, các chương trình đặc biệt được sử dụng - trình thông dịch. Nếu việc dịch mã chương trình từ ngôn ngữ này sang ngôn ngữ khác được thực hiện mà không thực hiện lệnh thì chương trình biên dịch sẽ thực hiện việc này. Nói chung, các chương trình được thiết kế để dịch các chương trình bằng văn bản từ ngôn ngữ lập trình chính thức này sang ngôn ngữ lập trình chính thức khác được gọi là trình dịch.

Chúng ta hãy xem xét kỹ hơn các ngôn ngữ lập trình cấp cao. Chúng tôi sẽ không lập danh sách mà chỉ viết chi tiết hơn một chút về từng danh sách phổ biến nhất.

SQL

Một ngôn ngữ lập trình chuyên dụng chủ yếu nhằm mục đích làm việc với các hệ thống quản lý cơ sở dữ liệu và lập trình của chúng. SQL dịch là "chuyên biệt" Vì thị trường DBMS đã phát triển theo cấp số nhân trong những thập kỷ gần đây, nên sự phổ biến của ngôn ngữ này không có gì đáng ngạc nhiên.

Có nhiều ý kiến ​​​​khác nhau về tương lai của ngôn ngữ này. Người ta chắc chắn tin rằng công nghệ tạo cơ sở dữ liệu quan hệ đang ở mức tốt nhất, nhưng thời của nó không còn nhiều nữa. Nhu cầu phát triển liên quan đến khối lượng dữ liệu được xử lý ngày càng tăng khiến các chuyên gia nghĩ rằng trong tương lai nhân loại chỉ cần chuyển đổi từ công nghệ quan hệ sang công nghệ hậu quan hệ, nhưng phải tính đến việc duy trì khả năng tương thích với các ngân hàng dữ liệu hiện có.

Javascript

Nó đứng thứ hai trong số các ngôn ngữ lập trình cấp cao. Dễ học, thuận tiện sử dụng. Khả năng thích ứng với lập trình ngày càng tăng so với tổ tiên của nó dẫn đến thực tế là hàng triệu người trên thế giới làm việc với ngôn ngữ này. Một ngôn ngữ hướng đối tượng dựa trên C++, được điều chỉnh để tạo ra các chương trình và ứng dụng có khả năng xử lý các luồng thông tin khổng lồ trong các môi trường chuyên biệt và có tính đến các đặc điểm cụ thể của môi trường triển khai của sản phẩm hoàn chỉnh.

Công nghệ Java là nền tảng cho phép mở rộng không giới hạn cơ sở hạ tầng của các doanh nghiệp, công ty, có khả năng liên kết các hệ thống có quy mô khác nhau với nhau, từ kết nối mạng điện thoại qua Wi-Fi đến siêu máy tính.

XML

Là hậu duệ của HTML, công nghệ này là ngôn ngữ đánh dấu có thể mở rộng. Nó được điều chỉnh để giải thích các tài liệu. Nó thực hiện các chuyển đổi và thay đổi phức tạp đối với tài liệu. Ngôn ngữ XML được sử dụng để truyền và lưu trữ tạm thời dữ liệu khi làm việc với nhiều cơ sở dữ liệu quan hệ khác nhau qua Internet.

XML đã đạt đến mức có thể khẳng định là công nghệ nền tảng để xây dựng mạng công ty.

Lập trình bằng tiếng Nga

Hầu hết các ngôn ngữ lập trình phổ biến đều sử dụng từ vựng tiếng Anh. Tuy nhiên, bên cạnh chúng còn có các ngôn ngữ lập trình tiếng Nga. Danh sách bằng tiếng Nga rất ít và lĩnh vực chủ đề mà chúng được sử dụng rất chuyên sâu. Hãy đưa ra một số ví dụ.

  • 1C:Doanh nghiệp. Toàn bộ hệ thống được thiết kế để quản lý một tổ chức trong mọi lĩnh vực hoạt động. Bạn thường có thể tìm thấy “Lập trình viên 1C” trong các quảng cáo việc làm.
  • Động từ. Một sự tương tự của Pascal tiếng Anh.
  • Robik. Một ngôn ngữ lập trình chuyên biệt được thiết kế để dạy trẻ em những điều cơ bản về lập trình.
  • Rapier. Một ngôn ngữ dựa trên thủ tục.

Như bạn có thể thấy, danh sách các ngôn ngữ lập trình rất rộng và đa dạng đến mức không thể bao quát nó bằng bất kỳ phân loại hay danh sách nào. Nếu bạn quyết định theo học lập trình ở cấp độ nghiệp dư hoặc chuyên nghiệp, thì hãy nhớ rằng lập trình viên là một nghề sáng tạo không chỉ đòi hỏi kiến ​​​​thức mà còn cả trí tưởng tượng, trí tưởng tượng, trực giác và thậm chí là một chút may mắn.

Có nhiều cách để đo mức độ phổ biến của một ngôn ngữ lập trình cụ thể. Nhưng chúng tôi tin rằng việc phân tích nhu cầu chuyên gia là chính xác nhất. Nó chứng minh rõ ràng cho các nhà phát triển những kỹ năng cần thiết để cải thiện triển vọng nghề nghiệp của họ.

Chúng tôi đã phân tích các công việc đăng trên Indeed.com để xác định bảy ngôn ngữ lập trình có nhu cầu cao nhất năm 2018. Một số ngôn ngữ, chẳng hạn như Swift và Ruby, không lọt vào top 7 vì chúng có nhu cầu thấp hơn đối với các nhà tuyển dụng.

Nhu cầu về Java năm 2018 giảm khoảng 6.000 vị trí tuyển dụng so với năm 2017. Nhưng ngôn ngữ lập trình này vẫn được ưa chuộng. Java đã được hàng triệu nhà phát triển và hàng tỷ thiết bị trên khắp thế giới sử dụng trong hơn 20 năm. Nó có thể chạy trên mọi phần cứng và hệ điều hành thông qua Máy ảo Java.

Tất cả các ứng dụng Android đều dựa trên Java. 90% công ty Fortune 500 sử dụng Java làm ngôn ngữ lập trình phía máy chủ của họ.

2.Python

Mức độ phổ biến của Python đã tăng lên khoảng 5.000 cơ hội việc làm. Nó là một ngôn ngữ lập trình có mục đích chung được sử dụng để phát triển web. Nó cũng được sử dụng rộng rãi trong tính toán khoa học và khai thác dữ liệu. Nhu cầu liên tục về các nhà phát triển máy học đang thúc đẩy nhu cầu về Python.

3. JavaScript

Ngày nay, JavaScript đã phổ biến như năm 2017. Ngôn ngữ lập trình này được hơn 80% nhà phát triển và 95% tất cả các trang web sử dụng để xây dựng các yếu tố động trên các trang web. Một số framework JavaScript front-end như React và AngularJS có tiềm năng rất lớn. IoT và các thiết bị di động đang ngày càng trở nên phổ biến, vì vậy chúng tôi nghi ngờ rằng chúng ta sẽ sớm thấy nhu cầu về lập trình viên JavaScript giảm.

4. C++

Nhu cầu về C++ ít thay đổi so với năm 2017. Ngôn ngữ lập trình này được sử dụng để tạo phần mềm hệ thống/ứng dụng, phát triển trò chơi, trình điều khiển, ứng dụng máy khách-máy chủ. Nhiều lập trình viên coi C++ phức tạp hơn các ngôn ngữ lập trình như Python hay JavaScript. Nhưng nó vẫn được sử dụng trong nhiều hệ thống cũ ở các doanh nghiệp lớn.

5. C#

Mức độ phổ biến của C# (phát âm là "C Sharp") đã giảm nhẹ trong năm nay. C# là ngôn ngữ lập trình hướng đối tượng được thiết kế để phát triển trên nền tảng Microsoft.NET.

C#, giống như C++, được sử dụng trong phát triển trò chơi điện tử, vì vậy những người mới lập trình nên thành thạo cả hai ngôn ngữ cùng một lúc.

6.PHP

Ngôn ngữ lập trình phía máy chủ này đã tăng lên vị trí thứ sáu trong bảng xếp hạng của chúng tôi (so với năm ngoái). Hầu hết các nhà phát triển sử dụng PHP để triển khai các tính năng mà HTML không hỗ trợ. Và cũng để tương tác với cơ sở dữ liệu MySQL.

7. Perl

Nhu cầu về Perl đã giảm khoảng 3.000 vị trí tuyển dụng và nó vẫn ở vị trí thứ bảy trong bảng xếp hạng của chúng tôi. Perl tiếp tục được các quản trị viên hệ thống và mạng ưa chuộng.

Một cái nhìn về tương lai

Đây là những ngôn ngữ lập trình chưa được chúng tôi xếp hạng. Nhưng vào năm 2018 chúng đã trở nên phổ biến hơn. Hãy để mắt đến họ trong tương lai!

  • Swift: Ngôn ngữ lập trình dành cho iOS và macOS được Apple phát hành vào năm 2014, đứng thứ 14 trong bảng xếp hạng của chúng tôi. Điều này là do thực tế là nhiều công việc của nhà phát triển nêu yêu cầu là “iOS” mà không chỉ định ngôn ngữ cụ thể. Swift đang dần trở nên phổ biến.
  • R: chiếm vị trí thứ 11 trong bảng xếp hạng của chúng tôi. Nhưng chúng tôi hy vọng ngôn ngữ lập trình này sẽ phát triển trong một vài năm nữa. Nó đang trở nên phổ biến cả trên phạm vi quốc tế và ở Hoa Kỳ. Nhu cầu ngày càng tăng đối với các nhà phát triển R là do việc sử dụng ngôn ngữ này trong phân tích dữ liệu ngày càng tích cực.
  • Rust: Mặc dù Rust xếp hạng thấp trong bảng xếp hạng của chúng tôi nhưng nó đang tăng trưởng đều đặn theo Google Trends.

Các công nghệ khác bạn cần biết

Các công nghệ được liệt kê dưới đây không phải là ngôn ngữ lập trình chính thức. Nhưng chúng đều nằm trong danh sách yêu cầu mà nhà tuyển dụng đặt ra cho các nhà phát triển.

  • SQL: Ngôn ngữ truy vấn tiêu chuẩn được thiết kế để lưu trữ và xử lý thông tin trong cơ sở dữ liệu. Kiến thức về SQL đang có nhu cầu cao đối với các nhà tuyển dụng. Ông được nhắc đến trong hơn 30 nghìn vị trí tuyển dụng.
  • .NET: Nền tảng của Microsoft để phát triển chương trình cho máy tính để bàn, thiết bị di động và ứng dụng web. Nó được sử dụng bởi các ngôn ngữ lập trình như C#, Visual Basic và F#. Và việc triển khai công nghệ đa nền tảng sẽ mở rộng .NET cho iOS, Linux và Android.
  • Nút: Một khung nguồn mở cho phép bạn chạy mã JavaScript ở phía máy chủ. Điều này cung cấp khả năng sử dụng một ngôn ngữ lập trình cho toàn bộ ứng dụng web. Chúng tôi khuyên bạn nên dành chút thời gian tìm hiểu Node.js.
  • MEAN: Ngăn xếp MEAN (MongoDB, ExpressJS, AngularJS và Node.js) đứng thứ 18 trong bảng xếp hạng của chúng tôi. Sử dụng ngăn xếp cho phép bạn tạo các ứng dụng chính thức bằng JavaScript. Học MEAN sẽ cung cấp nền tảng để phát triển bằng một trong những ngôn ngữ lập trình phổ biến nhất trên thế giới.

Bản dịch của bài viết "7 ngôn ngữ lập trình có nhu cầu cao nhất năm 2018"đã được chuẩn bị bởi nhóm dự án thân thiện.

Tốt xấu

2) Ngôn ngữ lập trình là gì trang 2

3) Ngôn ngữ lập trình dùng để làm gì? trang 3

4) Ngôn ngữ lập trình nào tồn tại trang 4 – 7

5) Trình biên dịch và trình thông dịch là gì trang 8

6) Tài liệu tham khảo trang 9

Giới thiệu

Cho đến giữa những năm 60, máy tính là những cỗ máy quá đắt tiền, chỉ được sử dụng cho những nhiệm vụ cụ thể và chỉ thực hiện một nhiệm vụ tại một thời điểm (cái gọi là máy tính). xử lý hàng loạt).

Các ngôn ngữ lập trình của thời đại này, giống như các máy tính mà chúng được sử dụng, được thiết kế cho các nhiệm vụ cụ thể, chẳng hạn như tính toán khoa học. Vì máy móc đắt tiền và mỗi lần chỉ thực hiện một nhiệm vụ nên thời gian sử dụng máy rất tốn kém - vì vậy tốc độ thực hiện chương trình được đặt lên hàng đầu.

Tuy nhiên, trong những năm 60, giá máy tính bắt đầu giảm đến mức ngay cả các công ty nhỏ cũng có thể mua được; Tốc độ của máy tính không ngừng tăng lên và đã đến lúc chúng thường bắt đầu đứng yên mà không có nhiệm vụ gì. Để ngăn điều này xảy ra, họ bắt đầu giới thiệu các hệ thống với chia sẻ thời gian(chia sẻ thời gian).

Trong các hệ thống như vậy, thời gian của bộ xử lý được “cắt lát” và tất cả người dùng lần lượt nhận được các phần thời gian ngắn này. Máy đủ nhanh để khiến mỗi người dùng tại thiết bị đầu cuối cảm thấy như thể họ đang vận hành hệ thống một mình. Ngược lại, máy ít hoạt động hơn vì nó không thực hiện một mà nhiều tác vụ cùng một lúc. Chia sẻ thời gian giúp giảm đáng kể chi phí về thời gian sử dụng máy vì một máy có thể được chia sẻ bởi hàng trăm người dùng.

Trong những điều kiện này - khi năng lượng trở nên rẻ và sẵn có - những người tạo ra ngôn ngữ lập trình ngày càng bắt đầu nghĩ đến viết dễ dàng các chương trình, và không chỉ tốc độ thực hiện của chúng. Các hoạt động “nhỏ” (nguyên tử) được thực hiện trực tiếp bởi các thiết bị máy móc đã được kết hợp thành các hoạt động “lớn hơn”, cấp cao và toàn bộ cấu trúc giúp con người làm việc dễ dàng và thuận tiện hơn nhiều.

Ngôn ngữ lập trình là gì

Ngôn ngữ lập trình- một hệ thống ký hiệu chính thức được thiết kế để mô tả các thuật toán ở dạng thuận tiện cho người thực hiện (ví dụ: máy tính). Ngôn ngữ lập trình xác định một tập hợp các quy tắc từ vựng, cú pháp và ngữ nghĩa được sử dụng để soạn thảo một chương trình máy tính. Nó cho phép lập trình viên xác định chính xác những sự kiện nào máy tính sẽ phản ứng, cách dữ liệu sẽ được lưu trữ và truyền đi cũng như những hành động nào sẽ được thực hiện trên máy tính trong các trường hợp khác nhau.

Kể từ khi tạo ra những cỗ máy lập trình đầu tiên, nhân loại đã nghĩ ra hơn hai nghìn rưỡi ngôn ngữ lập trình. Mỗi năm số lượng của họ được bổ sung thêm những cái mới. Một số ngôn ngữ chỉ được sử dụng bởi một số ít nhà phát triển của riêng họ, trong khi những ngôn ngữ khác được hàng triệu người biết đến. Các lập trình viên chuyên nghiệp đôi khi sử dụng hơn chục ngôn ngữ lập trình khác nhau trong công việc của mình.

Người sáng tạo ngôn ngữ diễn giải khái niệm này theo cách khác ngôn ngữ lập trình. Trong số các cộng đồng địa điểm được hầu hết các nhà phát triển công nhận là:

  • Chức năng: Ngôn ngữ lập trình được dùng để viết các chương trình máy tính được sử dụng để truyền hướng dẫn đến máy tính nhằm thực hiện một quy trình tính toán cụ thể và tổ chức điều khiển các thiết bị riêng lẻ.
  • Nhiệm vụ: Ngôn ngữ lập trình khác với ngôn ngữ tự nhiên ở chỗ nó được thiết kế để truyền lệnh và dữ liệu từ người sang máy tính, trong khi ngôn ngữ tự nhiên chỉ được sử dụng để con người giao tiếp với nhau. Về nguyên tắc, chúng ta có thể khái quát định nghĩa về “ngôn ngữ lập trình” - đây là một cách truyền tải mệnh lệnh, mệnh lệnh, hướng dẫn hành động rõ ràng; trong khi ngôn ngữ của con người cũng dùng để trao đổi thông tin.
  • Chấp hành: Ngôn ngữ lập trình có thể sử dụng các cấu trúc đặc biệt để xác định và thao tác các cấu trúc dữ liệu cũng như kiểm soát quá trình tính toán.

Ngôn ngữ lập trình để làm gì?

Quá trình vận hành máy tính bao gồm việc thực thi một chương trình, tức là một tập hợp các lệnh rất cụ thể theo một thứ tự rất cụ thể. Dạng lệnh máy, bao gồm số 0 và số 1, cho biết chính xác hành động mà bộ xử lý trung tâm sẽ thực hiện. Điều này có nghĩa là để cung cấp cho máy tính một chuỗi hành động mà nó phải thực hiện, bạn cần chỉ định một chuỗi mã nhị phân cho các lệnh tương ứng. Các chương trình mã máy bao gồm hàng nghìn lệnh. Viết những chương trình như vậy là một công việc khó khăn và tẻ nhạt. Người lập trình phải nhớ sự kết hợp giữa số 0 và số 1 trong mã nhị phân của mỗi chương trình, cũng như mã nhị phân của địa chỉ dữ liệu được sử dụng khi thực thi chương trình. Việc viết một chương trình bằng một số ngôn ngữ gần với ngôn ngữ tự nhiên của con người sẽ dễ dàng hơn nhiều và giao phó công việc dịch chương trình này sang mã máy cho máy tính. Đây là cách phát sinh các ngôn ngữ được thiết kế đặc biệt để viết chương trình - ngôn ngữ lập trình.

Có rất nhiều ngôn ngữ lập trình khác nhau có sẵn. Trên thực tế, bạn có thể sử dụng bất kỳ cách nào trong số đó để giải quyết hầu hết các vấn đề. Các lập trình viên có kinh nghiệm biết nên sử dụng ngôn ngữ nào là tốt nhất để giải quyết từng vấn đề cụ thể, vì mỗi ngôn ngữ có khả năng, định hướng riêng cho một số loại vấn đề nhất định và cách mô tả các khái niệm và đối tượng được sử dụng trong giải quyết vấn đề riêng.

Tất cả nhiều ngôn ngữ lập trình có thể được chia thành hai nhóm: ngôn ngữ cấp thấpcác ngôn ngữ bậc cao.

Các ngôn ngữ cấp thấp bao gồm các ngôn ngữ hợp ngữ (từ tiếng Anh toassemble - lắp ráp, lắp ráp). Hợp ngữ sử dụng các lệnh tượng trưng, ​​dễ hiểu và dễ nhớ. Thay vì một chuỗi các mã lệnh nhị phân, các ký hiệu tượng trưng của chúng được viết và thay vì địa chỉ nhị phân của dữ liệu được sử dụng khi thực thi lệnh, tên tượng trưng của dữ liệu này do lập trình viên chọn sẽ được viết. Hợp ngữ đôi khi còn được gọi là mã ghi nhớ hoặc mã tự động.

Hầu hết các lập trình viên đều sử dụng ngôn ngữ cấp cao để viết chương trình. Giống như ngôn ngữ thông thường của con người, ngôn ngữ này có bảng chữ cái riêng - một tập hợp các ký hiệu được sử dụng trong ngôn ngữ đó. Những ký hiệu này được sử dụng để tạo nên cái gọi là từ khóa của ngôn ngữ. Mỗi từ khóa thực hiện chức năng riêng của nó, giống như trong ngôn ngữ quen thuộc của chúng ta, các từ được tạo thành từ các chữ cái trong bảng chữ cái của một ngôn ngữ nhất định có thể thực hiện các chức năng của các phần khác nhau của lời nói. Các từ khóa được liên kết với nhau thành câu theo những quy tắc cú pháp nhất định của ngôn ngữ. Mỗi câu xác định một chuỗi hành động nhất định mà máy tính phải thực hiện.

Ngôn ngữ cấp cao đóng vai trò trung gian giữa con người và máy tính, cho phép con người giao tiếp với máy tính theo cách quen thuộc hơn với con người. Thông thường ngôn ngữ như vậy giúp lựa chọn phương pháp phù hợp để giải quyết vấn đề.

Trước khi viết chương trình bằng ngôn ngữ bậc cao, người lập trình phải viết thuật toán giải quyết một vấn đề, tức là một kế hoạch hành động từng bước cần được hoàn thành để giải quyết vấn đề này. Vì vậy, các ngôn ngữ yêu cầu biên dịch sơ bộ thuật toán thường được gọi là ngôn ngữ thuật toán.

Có những ngôn ngữ lập trình nào?

Fortran

Ngôn ngữ lập trình bắt đầu xuất hiện vào giữa những năm 50. Một trong những ngôn ngữ đầu tiên thuộc loại này là ngôn ngữ Fortran (FORTRAN tiếng Anh từ FORmulaTRANslator - trình dịch công thức), được phát triển vào năm 1957. Fortran được sử dụng để mô tả một thuật toán giải quyết các vấn đề khoa học và kỹ thuật bằng máy tính kỹ thuật số. Cũng giống như những chiếc máy tính đầu tiên, ngôn ngữ này chủ yếu nhằm mục đích thực hiện các phép tính toán học và khoa học tự nhiên. Ở dạng cải tiến, ngôn ngữ này đã tồn tại cho đến ngày nay. Trong số các ngôn ngữ cấp cao hiện đại, nó là một trong những ngôn ngữ được sử dụng nhiều nhất trong nghiên cứu khoa học. Các biến thể phổ biến nhất là Fortran-II, Fortran-IV, EASICFortran và các dạng tổng quát của chúng.

ALGOL

Sau Fortran năm 1958-1960, ngôn ngữ Algol (Algol-58, Algol-60) (ALGOL tiếng Anh từ ALGOrithmicLanguage - ngôn ngữ thuật toán) xuất hiện. Algol được cải tiến vào năm 1964-1968 - Algol-68. Algol được phát triển bởi một ủy ban trong đó bao gồm các nhà khoa học châu Âu và Mỹ. Đây là ngôn ngữ cấp cao và cho phép bạn dễ dàng dịch các công thức đại số thành các lệnh chương trình. Algol phổ biến ở châu Âu, bao gồm cả Liên Xô, trong khi Fortran tương đương lại phổ biến ở Mỹ và Canada. Algol có ảnh hưởng đáng kể đến tất cả các ngôn ngữ lập trình được phát triển sau này và đặc biệt là ngôn ngữ Pascal. Ngôn ngữ này, giống như Fortran, nhằm giải quyết các vấn đề khoa học và kỹ thuật. Ngoài ra, ngôn ngữ này còn được sử dụng như một phương tiện giảng dạy kiến ​​thức cơ bản về lập trình - nghệ thuật viết chương trình.

Thông thường thuật ngữ ALGOL có nghĩa là ngôn ngữ ALGOL-60, trong khi ALGOL-68được coi là một ngôn ngữ độc lập. Ngay cả khi Algol gần như không còn được sử dụng để lập trình, nó vẫn là ngôn ngữ chính thức để xuất bản các thuật toán.

COBOL

Năm 1959 – 1960, ngôn ngữ COBOL được phát triển (tiếng Anh COBOL từ COMmom Business Oriented Language - một ngôn ngữ định hướng kinh doanh phổ biến). Đây là ngôn ngữ lập trình thế hệ thứ ba, chủ yếu nhằm phát triển các ứng dụng kinh doanh. Cobol cũng nhằm giải quyết các vấn đề kinh tế, xử lý dữ liệu cho các ngân hàng, công ty bảo hiểm và các tổ chức khác thuộc loại này. Nhà phát triển tiêu chuẩn Cobol thống nhất đầu tiên là Grace Hopper ( bà ngoại cobola).

COBOL thường bị chỉ trích vì dài dòng và cồng kềnh, vì một trong những mục tiêu của những người tạo ra ngôn ngữ này là làm cho các cấu trúc càng gần với tiếng Anh càng tốt. (Cobol vẫn được coi là ngôn ngữ lập trình được viết nhiều dòng mã nhất). Đồng thời, COBOL có cơ sở vật chất tuyệt vời để làm việc với các cấu trúc dữ liệu và tệp vào thời đó, điều này đảm bảo tuổi thọ lâu dài của nó trong các ứng dụng kinh doanh, ít nhất là ở Hoa Kỳ.