7 months ago Google Hangouts sẽ được upgrade thành Google Chat 2 years ago Ứng dụng “Giúp tôi!” liên kết bác sĩ, hỗ trợ người bị ảnh hưởng bởi Covid-19 2 years ago Prosus chấp nhận mua Stack Overflow với cái giá 1,8 tỷ đô la 2 years ago 30 năm thành lập và hoạt động Linux: chất vấn Linus Torvalds về Mã mối cung cấp mở và hơn thế nữa – Phần 2 2 years ago 30 năm thành lập và hoạt động Linux: chất vấn Linus Torvalds về Linux với Git – Phần 1
*

Hãy thuộc điểm qua sự cách tân và phát triển của ngôn ngữ lập trình cùng hãy xem họ học được gì từ bỏ đó. Bài xích được đăng trên blog herbertograca.com.

Bạn đang xem: Lịch sử phát triển của ngôn ngữ lập trình

Những năm 1950 – lập trình sẵn phi cấu trúc

Assembly ~1951

Phát triển ứng dụng (software developement) là một hoạt động khá phức tạp. Bài toán lập trình chỉ được thực hiện ở một vài vị trí trên núm giới. Assembly là một trong những ngôn ngữ thịnh hành thời điểm đó, nó áp dụng các thao tác cấp phải chăng như “add”, “sub”, “goto” và thao tác làm việc trực tiếp các add bộ nhớ. Bài toán xây dựng một ứng dụng dễ dàng rất lừ đừ và khó. Để chế tạo một câu lệnh IF đối chọi giản, đề nghị một vài cái code và so với một vòng lặp, sẽ mất nhiều hơn một vài dòng… Sau đó, khả năng nhóm (grouping) và áp dụng lại những đoạn code đang xuất hiện, với kiểu code rất tuyến đường tính với việc áp dụng lại code chỉ số lượng giới hạn trong phạm vi sao chép, dán trong cùng file hoặc giữa các files.

Những năm 1960 – lập trình tất cả cấu trúc

Algol ~1958, Fortran

Lập trình có cấu tạo ra đời, trình làng các code blocks, các kết cấu cho kết cấu điều khiển (if / then / else, case, for, while, do,…) và các quy trình con. Sau đó, tín đồ ta rất có thể tạo ra các code flows thú vị hơn và đặc trưng hơn. Đã có thể nhóm những mã lệnh (code instruction) và thực hiện lại chúng tuy nhiên còn một số hạn chế như các quy trình con luôn chuyển động trên cùng các biến toàn cục. Đó là thời điểm những ý tưởng thứ nhất về kĩ năng tái áp dụng (reusability) được chuyển vào thực tế.

Những năm 1970 – lập trình thủ tục và lập trình hàm

Pascal ~1970, C ~1972

Lập trình giấy tờ thủ tục (procedural programming) cùng lập trình hàm (functional programming) ra đời vào trong những năm 1970. Trong thời hạn này họ có:

Procedures: Tập hợp những lệnh không trả về dữ liệu; Functions: Tập hợp các lệnh trả về dữ liệu; Cấu trúc dữ liệu: phiên bản ghi, tương tự như như một mảng kết hợp; Mô-đun: những code file rất có thể được nhập (import) vào các code tệp tin khác.

Trong trong năm 1970 cũng là lúc thuật ngữ “Spaghetti code” được để ra, sau lá thư của Edsger W. Dijkstra gởi cho phần tử Truyền thông của Hiệp hội máy vi tính (CACM) vào thời điểm năm 1968, với tiêu đề “Đi đến Tuyên cha được coi là Có hại” (Go lớn Statement Considered Harmful)

Vào cuối trong những năm 1970, phần đông ý tưởng đầu tiên về thiết kế sự kiện (Event Oriented Programming) cùng Trygve Reenskaug viết bài bác báo của bản thân mình về MVC (sử dụng những sự khiếu nại – events).

Với những cách tân này, chúng ta có tài năng tái áp dụng (reusability) xuất sắc hơn, vì các chương trình nhỏ hay subroutines (hàm cùng thủ tục) rất có thể thực hiện thuộc một ngắn gọn xúc tích với các dữ liệu khác nhau. Bọn họ cũng rất có thể sử dụng model domain name concepts bằng phương pháp nhóm những dữ liệu tương quan thành các kết cấu dữ liệu phức tạp. Và, cuối cùng, ta đã gửi ra công việc đầu tiên trong bài toán chia tách và mô-đun hóa, nơi chúng ta có thể tạo code hoàn toàn có thể sử dụng lại trong các tập cùng sự kiện để bóc code khách khỏi xúc tích đang được thực thi.

Những năm 1980 – lập trình hướng đối tượng

Simula ~1965, Smalltalk-71 ~1971, C++ ~1980, Erlang ~1986, Perl ~1987,

Python ~1991, Ruby ~1993, Delphi, Java, Javascript, PHP ~1995

Lý thuyết và đầy đủ manh nha về OOP bắt đầu từ trong những năm 1960, cùng được triển khai lần trước tiên trong trong thời điểm 1960 trong ngôn ngữ Simula.

Tuy nhiên, một trong những năm 1980, câu hỏi sử dụng mô hình lập trình bây giờ đã trở cần tổng quát: Lập trình hướng đối tượng, với các mức độ hiển thị, cách làm (thông báo), đối tượng, lớp và về sau là các gói. Điều này cũng giống như nói tăng tính đóng gói và mô-đun

Visibility levels (Mức độ phạm vi): chất nhận được bạn điều khiển những gì code rất có thể truy cập vào một tập tài liệu cụ thể. Classes (lớp): chất nhận được định nghĩa hay mô hình hóa các domain concepts.Objects (đối tượng): cho phép họ có những instances khác nhau trong thuộc domain concepts.Packages (gói): có thể chấp nhận được nhóm những lớp lại cùng nhau để diễn đạt một domain hay định nghĩa hàm và làm việc cùng nhau trên cùng một ya1c vụ. Methods (phương thức): thay mặt cho những thủ tục và chức năng, tuy nhiên về phương diện khái niệm đề xuất được xem như thể các thông báo (hoặc xuất sắc hơn là các lệnh) có thể được cung cấp cho một loại đối tượng người tiêu dùng cụ thể.

Những năm 1990 – lập trình sẵn hướng chủ đề và cẩn thận (Subject và Aspect Oriented Programming)

Trong trong năm 1990, thiết kế hướng chủ đề và Lập trình hướng theo góc cạnh được gửi ra.

Xem thêm: Cà chua và khoai tây - cách nấu canh khoai tây cà chua

Lập trình hướng chủ thể (Subject Oriented Programming) yêu ước các đại diện thay mặt khác nhau của những đối tượng, tùy theo đối tượng người dùng đang “nhìn” vào nó. Ví dụ, trong những lúc con người có thể nhìn thấy mộc khi quan sát cây, thì một con chim rất có thể nhìn thấy một lượng thức ăn và nơi trú ẩn. Dịch điều đó sang một chương trình, tức là các nằm trong tính với hành vi của đối tượng rất có thể khác nhau, tùy ở trong vào bạn gửi thông tin đến đối tượng người dùng (ai kích hoạt một cách thức trên một đối tượng).

Lập trình hướng theo chu đáo (Aspect Oriented Programming)cố gắng bóc tách biệt trọn vẹn các mọt quan tâm xuyên thấu khỏi xúc tích và ngắn gọn nghiệp vụ thực tế bằng cách đưa mã bổ sung cập nhật vào thời điểm “biên dịch”. Một khía cạnh, ví dụ, một tên phương thức. Ví dụ, một mọt quan tâm xuyên thấu là khai thác gỗ. Thực hiện AOP, cửa hàng chúng tôi có thể chỉ cần thông số kỹ thuật hệ thống để mang mã tiến hành đăng nhập vào toàn bộ các thủ tục tuân theo một mẫu vậy thể, ví dụ: “ghi lại toàn bộ các lệnh call đến các phương thức bao gồm tên bước đầu bằng‘ find ’“. (TYPO3 là một trong những ví dụ về CMS sử dụng AOP)

Vượt qua OOP

Sau khi ra đời OOP, trung tâm lớn là điều chỉnh phiên bản thân để lập trình đến web, cách tân và phát triển các ngữ điệu hiện có, tạo nên các ngữ điệu mới chuyên được sự dụng cho phát triển web, trở nên tân tiến các frameworks, điều chỉnh các công nạm và bản vẽ xây dựng cho số lượng lớn những yêu cầu và tài liệu ngày nay. .

Đã có một vài nỗ lực để cải tiến và phát triển Ngôn ngữ lập trình, như Lập trình phía theo chủ đề (hành vi của đối tượng người tiêu dùng là khác nhau, tùy trực thuộc vào chủ thể kích hoạt hành vi) hoặc Lập trình phía theo cẩn thận (chèn mã tại thời khắc biên dịch), cơ mà về thực chất là quy mô ngôn ngữ lập trình không đổi khác nhiều vì công ty chúng tôi vẫn sử dụng OOP cho phần nhiều các ngôi trường hợp, mặc dù các ngữ điệu chức năng trong khi đã được một vài người áp dụng vào cuối năm nay (có thể là cường điệu?).

Kết luận

Trên đấy là những cầm tắc gần như thập kỷ thứ nhất của lịch sử hào hùng phát triển phần mềm. Các ngôn ngữ thiết kế đã cải cách và phát triển để hỗ trợ khả năng tái sử dụng, tuy thế cũng để sẵn sàng cho phần mềm chuyển đổi (có thể là biến đổi chức năng, cấu tạo lại hoặc hoán thay đổi hoàn toàn 1 phần mã ), chúng cách tân và phát triển theo hướng Modularity (ghép nối thấp) cùng Encapsulation (gắn kết cao).

*
*

*

*
*

Ngôn ngữ lập trình là 1 trong những tập nhỏ của ngôn từ máy tính. Đây là 1 trong dạng ngôn ngữ được thiết kế theo phong cách và chuẩn hóa nhằm truyền những chỉ thị mang đến máy tính. Ngôn từ lập trình rất có thể được dùng để làm tạo ra những chương trình nhằm mục đích mục đích điều khiển máy tính hoặc bộc lộ cácthuật toánđể fan khác phát âm hiểu.

Trên nắm giới hiện giờ có không hề ít ngôn ngữ lập trình, và không tồn tại “ngôn ngữ giỏi nhất” bởi mỗi ngữ điệu lập trình giao hàng cho một mục tiêu và đóng góp cho technology vào những thời gian khác nhau. Bạn cũng có thể được học tập C, C++, C# hay Java ngơi nghỉ trường. Nhưng điều đó là không đủ, vì ngôn ngữ biến đổi qua thời gian, với nếu là 1 trong người kĩ sư phần mềm có ghê nghiệm, chúng ta phải có chức năng học ngôn từ mới một giải pháp dễ dàng.

Bạn có muốn biết ngôn ngữ lập trình thứ nhất trên trái đất là gì không? Và thân phụ đẻ của những ngôn ngữ thịnh hành nhất hiện giờ là ai? bằng phương pháp nào hoàn toàn có thể thực hiện câu hỏi lập trình một cách an toàn? toàn bộ sẽ được tổng hợp tronginfographicdưới đây.

*

*

*

*


1 2 3 4 5 6 7 8 9>>
| | | |

ĐỐI TÁC CỦA CHÚNG TÔI.

*
*
*
*
*
*
*
*

TRUNG TÂM TIN HỌC ICT HÀ NỘI (NIIT - ICT HÀ NỘI)

uia.edu.vn.edu.vn