Кіріспе

Бағдарламалық жасақтама үлгісі
Күй үлгісі – бұл мінез-құлқына қарай бағдарламалық жасақтама үлгісі, ол объектінің ішкі күйі өзгерген кезде оның мінез-құлқын өзгертуге мүмкіндік береді. Бұл үлгі шекті күйдегі автоматтары тұжырымдамасына жақын. Күй үлгісі стратегия үлгісі ретінде қарастырылуы мүмкін, ол үлгі интерфейсінде анықталған әдістерді шақыру арқылы стратегияны ауыстыра алады. Күй үлгісі компьютерлік бағдарламалауда бір объектінің ішкі күйіне байланысты әртүрлі мінез-құлқын қамту үшін қолданылады. Бұл объектінің орындалу барысында шартты операторларды қолданбай, мінез-құлқын өзгертудің ыңғайлы тәсілі болуы мүмкін, соның арқасында оны қолдау оңайлатылады.

Құрылымы

Бірлескен Модельдеу Тілі (UML) кластық диаграммасында Context класы мемлекетке тән мінез-құлықты тікелей іске асырмайды. Оның орнына, Context мемлекетке тән мінез-құлықты орындау үшін State интерфейсіне сілтеме жасайды (state.handle), бұл Context-ті мемлекетке тән мінез-құлықтың қалай іске асырылғанына тәуелсіз етеді. ConcreteStateA және ConcreteStateB кластары State интерфейсін іске асырады, яғни әрбір мемлекет үшін мемлекетке тән мінез-құлықты іске асырады (қаптайды). UML реттілік диаграммасы орындалу кезіндегі өзара әрекеттесулерді көрсетеді:

Context объектісі мемлекетке тән мінез-құлықты әртүрлі State объектілеріне жүктейді. Біріншіден, Context өзінің ағымдағы (бастапқы) күй объектісіне (ConcreteStateA) handle(this) деп шақыру жасап, ол операцияны орындайды және Context-тің ағымдағы күйін ConcreteStateB-ге өзгерту үшін setState(ConcreteStateB) деп шақырады. Келесі жолы Context қайтадан өзінің ағымдағы күй объектісіне (ConcreteStateB) handle(this) деп шақыру жасап, ол операцияны орындайды және Context-тің ағымдағы күйін ConcreteStateA-ға өзгертеді.