State Machine Diagram mô hình behaviour của single object, chứng thật tuần từ các events mà lại object đi qua trong thời hạn sống của chính nó, vấn đáp các events.

Bạn đang xem: State diagram là gì

lấy ví dụ sau State Machine Diagram show những tinh thần mà cửa sổ đi thừa trong thời hạn sống của nó.

*

Door có thể là 1 vào 3 states sau: Opened, Closed hoặc Locked. Nó tương ứng với các sự kiện xuất hiện, Cthua trận, Lochồng với Unloông chồng. Chú ý rằng không phải toàn bộ những events phần lớn là đúng trong toàn bộ những states: ví dụ, nếu như door vẫn ngơi nghỉ state Opened, bạn bắt buộc khóa nó cho đến khi chúng ta đóng nó. Cũng điều này state transition có thể tất cả ĐK đảm bảo an toàn đi kèm: giả dụ door đã là Opened, nó chỉ hoàn toàn có thể tương xứng với việc khiếu nại Event nếu mà doorWay -> isEmpty được bảo vệ. Cú pháp và các nguyên tắc được sử dụng vào State Machine Diagram sẽ tiến hành đàm đạo trong số phần tới.

———————States

State được ký kết hiệu là hình chữ nhật có các góc uốn tròn với thương hiệu của state được viết bên trong.

*

———————-Initial and Final States

Initial State được kí hiệu là 1 hình tròn sơn màu sắc Black và được dán nhãn. Final State được kí hiệu vì hình tròn gồm chấm ở bên phía trong với cũng hoàn toàn có thể được dán nhãn.

*

————————Transitions (Chuyển tiếp)

Transitions từ 1 state này tới state tiếp theo được cam kết hiệu là 1 mặt đường bao gồm mũi tên. Transition có thể là 1 trong trigger, có guard (điều kiện) cùng effect (kết quả), theo như hình sau.

*

"Trigger" là ngulặng nhân của transition, là loại rất có thể là biểu thị, sự kiện, sự chuyển đổi trong điều kiện, hoặc thời hạn. "Guard" là ĐK, nó phải là đúng so với trigger là nguyên nhân của transition. "Effect" là action, nó sẽ tiến hành hotline 1 cách thẳng của object mà lại mua state machine nhỏng hiệu quả của quá trình sự chuyển tiếp giữa.

—————————State Actions

Trong ví dụ nối tiếp trên, Effect có tương quan mang lại transition. Nếu target state có rất nhiều lần chuyến qua rồi new nó, nghỉ ngơi từng transition có thuộc effect tương quan mang lại nó, nó cũng giỏi hơn khi liên kết effect cùng với target state hơn là công việc chuyến qua. Như vậy có thể tiến hành bằng cách định nghĩa entry action đến state. Sơ đồ vật sau show state cùng với entry action cùng exit action.

*

Nó có thể định nghĩa các actions xẩy ra vào events, hoặc actions là cái luôn luôn luôn luôn xẩy ra. Nó hoàn toàn có thể quan niệm bất cứ số lượng actions của từng nhiều loại.

——————————Self-Transitions

State hoàn toàn có thể chuyển cho tới chính nó nhỏng hình sau. Nó hữu dụng nhiều nhất khi effect bao gồm tương quan cho tới transition.

Xem thêm: Chương 111: Cái Tên Trư Bát Giới Tên Thật Là Gì, Trư Bát Giới Tên Thật Là Gì Ở Con Người

*

———————–Compount States (States kết hợp)

State machine diagram rất có thể bao hàm sub-machine diagrams, nhỏng ví dụ dưới đây:

*

Cách khác show thuộc thông báo nlỗi sau:

*

Kí hiệu trong phiên bản bên trên ngầm định rằng chi tiết của Chechồng PIN sub-machine được diễn tả trong separate diagram.

—————————–Entry Point

Đôi dịp bạn không thích vào sub-machine sống Initial State. lấy ví dụ như, vào sub-machine sau nó vẫn bình thường để bước đầu trong Initializing state, nhưng mà vị một vài ba lý do, nó tất yêu triển khai initialization, nó hoàn toàn có thể bước đầu vào Ready state bằng Việc sự chuyển tiếp giữa cho tới Entry point.

*

Theo sơ vật sau show state machine tại mức độ 1:

*

Trong giải pháp tương tự cho tới Entry points, nó rất có thể mang tên biến hóa Exit points. Sơ vật dụng sau cho 1 ví dụ khu vực mà state chạy sau khi quy trình thiết yếu cách xử lý chính state phụ thuộc vào vào định con đường ngoại trừ của state.

———————————Exit Point

*

——————————–Choice Pseudo-State

Choice pseudo-state được vẽ là 1 hình kyên ổn cưng cửng với 1 sự chuyển tiếp giữa, 2 hoặc nhiều hơn. Sơ thiết bị sau biểu hiện state sau khi choice pseudo-state phụ thuộc vào format message được lựa chọn vào quá trình của state trước.

*

——————————–Junction Pseudo-State (Trạng thái đưa lập nối liền)

Junction pseudo-states thường xuyên được sử sử dụng là mắt xích cùng nhau vào đa luồng. Single junction hoàn toàn có thể có một hoặc những incoming cùng 1 hoặc những outgoing transitions và 1 guard hoàn toàn có thể được apply nghỉ ngơi từng transition. Junctions thường sẽ có ngữ nghĩa; junction phân đưa ra luồng incoming thành nhiều luồng outgoing nhận thấy nhánh điều kiện tĩnh nhỏng đối ngược cùng với choice pseudo-state là mẫu phân biệt nhánh ĐK hễ.

*

————————————-Terminate Pseudo-State

Đến terminate pseudo-state ngầm định rằng lifeline của state machine vừa ngừng. Terminate pseudo-state được kí hiệu là lốt nhân.

*

———————————-History States

History state thường dùng để ghi nhớ state trước của state machine khi nó bị ngắt quãng. Sơ đồ gia dụng sau minc họa vấn đề áp dụng history states. lấy một ví dụ là state machine dọc theo vấn đề đồ vật giặt.

*

Trong state machine, lúc đồ vật giặt đang làm việc nó vẫn xử lý từ Washing -> Rinsing -> Spinning. Nếu bị mất điện, thiết bị giặt ngừng cùng sẽ tới state Power nguồn Off. lúc tất cả điện, tinh thần dứt trong History State sẽ khôi phục làm việc state nhưng nó đang chạy.

——————————–Concurrent Regions

State có thể phân chia thành các vùng cất sub-states là mẫu trường tồn cùng chạy thuộc 1 dịp. Ví dụ tiếp sau đây biểu thị vào state "Applying Brakes", trước và sau ngoặc đã chuyển động nhất quán với ko nhờ vào. Chụ phù hợp câu hỏi thực hiện fork và join pseudo-states hơn là choice và merge pseudo-states. Những kí hiệu này thường xuyên được dùng để đồng nhất các luồng cùng chạy 1 thời điểm.

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *