6주차-1

yeezze·2022년 4월 9일
0
post-custom-banner

목차

  1. User Interface Design
  2. Constrains

1. User Interface Design

  • User Event → System Reaction

유저가 발생시키는 이벤트 소스를 이벤트 타겟으로 받아오고 제약조건에 따라서 알맞은 리액션이 실행될 수 있도록 프로그램을 설계해야한다.

  • Shape Drawing
    • N Point
      • (Click Move) * Double Click
    • 2 Point
      • Press → Drag → Release

2. Constrains (제약조건)

  • tool selection : toolbar에서 어떤 버튼이 클릭되는지에 따라 결정된다.
  • multi-event action → atomicity (원자성 보존)
    • transaction
    • mutual exclusion

다수의 이벤트가 한번에 발생하는 작업의 경우 다른 작업이 개입하면 안된다. 현재 실행되고 있는 원자성(atomicity)을 보존해줘야 한다. 수업에서 설계한 프로그램에서는 state를 enum으로 만들어주고 if문을 활용하여 다른 작업이 개입하는 경우가 발생하지 않도록 설계했다.

private enum EDrawingState {
	eIdle,   // Idle : 프로세스가 실행하고 있지 않은 상태
	e2PointDrawing,
	eNPointDrawing
}
profile
백엔드 개발자 😊
post-custom-banner

0개의 댓글