Skip to main content

Lập trình dựa trên dòng chảy là gì?

Lập trình dựa trên dòng chảy là một phương pháp thiết kế các ứng dụng và kiến trúc máy tính không giống như các phương pháp thiết kế ứng dụng có cấu trúc truyền thống trong đó dữ liệu được dự định sẽ được xử lý trong một luồng bởi các thành phần không được kết nối với nhau và sử dụng hệ thống nhắn tin bên ngoài đểgiao tiếp.Theo lập trình dựa trên luồng, trọng tâm được đặt vào việc chuyển đổi dữ liệu bằng cách sử dụng các thành phần khác nhau, về cơ bản là các mô-đun hoặc chức năng được đóng gói không có kết nối trực tiếp với các thành phần khác trong chương trình.Mỗi luồng dữ liệu và các sự kiện khác được quản lý bởi một hệ thống thông báo bên ngoài không giống như một số loại giao thức mạng, trong đó gói thông tin (IP) được gửi đến một mô -đun thông qua việc sử dụng một cổng trừu tượng.Chế độ xem thiết kế dựa trên thành phần này cho phép một ứng dụng đã phát triển các mô-đun mã riêng biệt chỉ cần phản hồi thông báo hệ thống, xử lý IP và sau đó phát hành IP trở lại hệ thống.Cách tiếp cận này hữu ích trên các hệ thống phân tán, mạng và với các kiến trúc chương trình dựa trên Internet và web như máy chủ thương mại điện tử. Một trong những khối xây dựng cơ bản của lập trình dựa trên dòng chảy là ý tưởng về một nút, quy trình hoặc mô-đun bị cô lập.Điều này có thể được coi là một phần của mã nguồn chương trình không có bất kỳ phụ thuộc trực tiếp nào vào bất kỳ mô-đun nào khác, gần như biến mô-đun thành một phần độc lập của ứng dụng có thể được gọi bất cứ khi nào cần thiết.Mỗi thành phần không có sự phụ thuộc vào việc được gọi là tuần tự với một thành phần khác, do đó các thành phần của ứng dụng có thể được sắp xếp và sử dụng theo bất kỳ thứ tự nào, cho phép nhiều dữ liệu duy nhất tồn tại khi thông tin di chuyển qua hệ thống.Lập trình dựa trên việc chấp nhận dữ liệu thông qua một giao diện trừu tượng được gọi là cổng, hoạt động giống như một cổng dữ liệu trong mạng máy tính.Dữ liệu được gửi đến một cổng thông qua bộ đệm có kích thước giới hạn nhưng biến nhiều IP thành một luồng liên tục được đưa vào cổng.Một cổng duy nhất có thể liên quan đến một số trường hợp của một thành phần duy nhất, giúp cấu trúc dễ sử dụng trên hệ thống phân tán hoặc để xử lý song song. Dữ liệu có trong gói thông tin được điều khiển qua các mô -đun bởi hệ thống nhắn tin bên ngoài.Trong lập trình dựa trên dòng chảy, hệ thống nhắn tin này tách biệt với các mô-đun và IPS và chỉ quản lý luồng chương trình thông qua việc sử dụng các bộ đệm được liên kết với các cổng.Hệ thống nhắn tin về cơ bản không có kiến thức về các mô-đun hoặc đang làm gì và không có mối quan tâm thực sự nào về dữ liệu nào được chứa trong IPS, các mô-đun đang xử lý.Cho vay tốt cho các quy trình như gỡ lỗi và phát triển theo định hướng nhóm.Phần lớn mã được gói gọn, vì vậy mã nguồn có tiềm năng tái sử dụng cao.Điều này cũng có nghĩa là việc nâng cấp hoặc chia tỷ lệ một ứng dụng sử dụng lập trình dựa trên dòng chảy có thể dễ dàng hơn so với ứng dụng tích hợp hơn, bởi vì hệ thống nhắn tin, các mô-đun và hệ thống cổng có thể được thay đổi độc lập mà không ảnh hưởng đến chương trình lớn hơn.