COBOL là gì?

COBOL - ngôn ngữ lập trình hiện đã 60 tuổi - giờ đây đang chuyển mình. Nhiều máy tính mainframe của hệ thống chính phủ Mỹ chạy COBOL và đã phải vật lộn để đối phó với sự gia tăng nhu cầu trong hoàn cảnh hiện tại. Đặc biệt, hệ thống thất nghiệp của bang New Jersey được quản lý bởi một mainframe COBOL đã 40 tuổi.

Với sự gia tăng tỷ lệ thất nghiệp liên quan đến COVID-19, hệ thống đang phải vật lộn để theo kịp tình hình thực tế. Thống đốc Murphy đã xác định việc đào tạo các lập trình viên COBOL là một nhu cầu bị đánh giá thấp.

COBOL là gì?

Năm 1959, Committee on Data Systems Languages đã thiết kế COBOL. Họ muốn thiết kế một ngôn ngữ lập trình chuẩn để chạy trên nhiều máy tính mainframe khác nhau.

Vào thời điểm đó, nhiều ngôn ngữ lập trình mới đang được phát triển, và việc dịch ngôn ngữ lập trình để chạy trên phần cứng mới đang trở nên quá đắt đỏ. COBOL (Common Business-Oriented Language) là giải pháp cho vấn đề này.

COBOL dựa trên ngôn ngữ lập trình FLOW-MATIC, được tạo ra bởi Grace Hopper
COBOL dựa trên ngôn ngữ lập trình FLOW-MATIC, được tạo ra bởi Grace Hopper

COBOL dựa trên ngôn ngữ lập trình FLOW-MATIC, được tạo ra bởi Grace Hopper. Đây là ngôn ngữ lập trình đầu tiên sử dụng các thuật ngữ tiếng Anh để xử lý dữ liệu thay vì ký hiệu toán học.

Tương tự, COBOL sử dụng các thuật ngữ tiếng Anh và được thiết kế để dễ đọc. Tuy nhiên, một số người đã chỉ trích nó vì quá dài dòng. Ví dụ, trong C, bạn có thể viết như sau để thêm hai số:

int result = 1 + number;

Code làm nhiệm vụ tương tự trong COBOL sẽ được viết là:

ADD 1 TO number GIVING result

Giống như C, COBOL là một ngôn ngữ lập trình thủ tục. Điều này đơn giản có nghĩa là các chương trình COBOL được thiết kế để tuân theo những bước tuần tự. COBOL cũng là một ngôn ngữ self-documenting (tự tạo tài liệu), điều này làm tăng thêm tính khả dụng của nó. Tuy nhiên, tính năng nổi tiếng nhất của COBOL là có thể xử lý số lượng dữ liệu lớn.

COBOL đã được chấp nhận rộng rãi, đặc biệt là bởi các doanh nghiệp, chính phủ và những tổ chức tài chính. Được áp dụng rộng rãi đến mức nó thậm chí vẫn được sử dụng ở nhiều nơi ngày nay.

Tại sao COBOL lại trở nên ít phổ biến hơn?

Trái với sự phổ biến trong quá khứ của COBOL, hiện nay rất ít người biết đến ngôn ngữ này. Ngày nay có nhiều ngôn ngữ lập trình tập trung vào các lệnh tiếng Anh và sở hữu nhiều tính năng hơn COBOL. Rất ít lập trình viên tạo chương trình mới trong COBOL. Công dụng chính của ngôn ngữ này là duy trì những chương trình kế thừa.

Một sự chỉ trích đối với COBOL là các lập trình viên có xu hướng viết mã spaghetti. Mã spaghetti là một thuật ngữ để chỉ code có cấu trúc kém. Thủ phạm chính của code có cấu trúc kém là lệnh GOTO.

Như đã đề cập trước đó, COBOL là ngôn ngữ lập trình thủ tục, vì vậy máy tính đọc từng dòng code, từ trên xuống dưới theo thứ tự. Lệnh GOTO cho phép lập trình viên yêu cầu chương trình nhảy sang một dòng khác. Việc sử dụng kém lệnh GOTO có thể làm cho code COBOL trở nên phức tạp.

Một lý do khác khiến COBOL không phổ biến là nó ít được giảng dạy tại các trường đại học. COBOL được tạo ra bởi cộng đồng doanh nghiệp, không mang tính học thuật. Nó được thiết kế để giải quyết các vấn đề kinh doanh và được tối ưu hóa cho các vấn đề như xử lý dữ liệu. Giới học thuật thường quan tâm đến các câu hỏi khác nhau, và do đó, thúc đẩy các ngôn ngữ lập trình khác nhau.

Tuy nhiên, một trong những vấn đề lớn nhất với COBOL là mặc dù được thiết kế để trở thành một ngôn ngữ chung nhưng thực tế không phải vậy. Khi ngôn ngữ phát triển, nhiều phương ngữ khác nhau đã được tạo ra! Điều này gây ra thử thách cho các lập trình viên.

Tại sao COBOL lại quan trọng?

Vì COBOL được sử dụng rộng rãi bởi các doanh nghiệp và chính phủ, nên vẫn còn nhiều hệ thống COBOL cần được bảo trì. Legacy code nổi tiếng là khó bảo trì, vì các chương trình lớn và phức tạp. Vì vậy, việc các lập trình viên có hiểu biết sâu sắc về ngôn ngữ là điều cần thiết để duy trì các chương trình.

Năm 2020, COVID-19 đã tạo ra một vấn đề lập trình mới. Hệ thống thất nghiệp của Hoa Kỳ chạy trên COBOL, rất khó khăn và tốn kém để thực hiện các thay đổi đối với chương trình.

Năm 1959, Committee on Data Systems Languages đã thiết kế COBOL
Năm 1959, Committee on Data Systems Languages đã thiết kế COBOL

Hệ thống COBOL không thể thay đổi đủ nhanh để ứng phó với các tình huống khủng hoảng. Vấn đề còn phức tạp hơn vì không có đủ người được đào tạo về COBOL để giúp tăng cường việc bảo trì cần thiết để hỗ trợ hệ thống trong thời kỳ khủng hoảng. Những người được đào tạo về COBOL, đều đã nghỉ hưu hoặc sắp nghỉ hưu.

Học COBOL ở đâu?

Để giúp giải quyết nhu cầu ngày càng tăng đối với các lập trình viên COBOL, IBM đã tạo ra một khóa học COBOL miễn phí. Khóa học bao gồm một loạt video, câu đố và bài tập trong phòng thí nghiệm, mất 16 giờ để hoàn thành và bạn sẽ nhận được huy hiệu khi kết thúc.

Nếu bạn đã là một lập trình viên COBOL có kinh nghiệm, IBM cũng cung cấp một diễn đàn mạng COBOL. Tại đó, các lập trình viên có kinh nghiệm có thể được kết nối với những tổ chức, doanh nghiệp có nhu cầu.

COBOL không phải là một ngôn ngữ lập trình hợp thời như Python, nhưng nó là một ngôn ngữ quan trọng. Phần lớn mọi thứ vẫn chạy bằng COBOL. Nếu bạn đang nghĩ đến việc học một ngôn ngữ lập trình, hãy xem xét việc học COBOL.

Xem thêm:

Thứ Hai, 16/11/2020 08:15
4,86 👨 2.136
0 Bình luận
Sắp xếp theo