Skip to content

Commit

Permalink
Refactor State.md and remove unnecessary changes in workspace.xml
Browse files Browse the repository at this point in the history
  • Loading branch information
nguyenphuc22 committed Feb 21, 2024
1 parent 7ef1fcb commit b3fee79
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 21 deletions.
16 changes: 1 addition & 15 deletions .idea/workspace.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

31 changes: 25 additions & 6 deletions Writerside/topics/State.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,32 @@ stateDiagram-v2

## Cấu trúc

Các thành phần chính trong State Pattern:

- Context: lớp chứa tham chiếu đến trạng thái hiện tại.

- State: interface chung cho các trạng thái.
```mermaid
classDiagram
class Context {
-State state
+setState(State state)
+request()
}
class State {
+handle()
}
class ConcreteStateA {
+handle()
}
class ConcreteStateB {
+handle()
}
Context --> State : has
State <|-- ConcreteStateA : implements
State <|-- ConcreteStateB : implements
```

- ConcreteState: các lớp triển khai cụ thể cho mỗi trạng thái.
Trong sơ đồ này:
- `Context` là lớp môi trường chứa một thể hiện của các trạng thái khác nhau (`State`).
- `State` là lớp trừu tượng hoặc interface định nghĩa phương thức `handle()` mà mỗi trạng thái cụ thể (`ConcreteStateA`, `ConcreteStateB`) sẽ triển khai.
- `ConcreteStateA``ConcreteStateB` là các lớp cụ thể triển khai các hành vi khác nhau tương ứng với từng trạng thái của `Context`.

## Cách triển khai

Expand Down

0 comments on commit b3fee79

Please sign in to comment.