Шаблони за дизајн на софтвер

Шаблони за дизајн на софтвер

1.

Наслов на наставниот предмет

Шаблони за дизајн на софтвер

Software Design Patterns

2.

Код

SI-Z-03

3.

Студиска програма

Софтверско инженерство, Софтверско инженерство, Пресметување во облак, Data science in computer science and engineering, Управување во информатички технологии, Биоинформатика, Безбедност, криптографија и кодирање, Едукација со ИКТ, Еко-информатика, Интелигентни системи, Интернет технологии и сајбер безбедност, Компјутерски науки, Софтвер за вградливи системи, Пресметување во облак, Управување во информатички технологии, Биоинформатика, Безбедност, криптографија и кодирање, Статистика и аналитика на податоци, Статистика и аналитика на податоци,

4.

Организатор на студиската програма (единица, односно институт, катедра, оддел)

Факултет за информатички науки и компјутерско инженерство

5.

Степен (прв, втор, трет циклус)

Втор циклус

6.

Академска година / семестар

5 / Зимски

7. Број на ЕКТС кредити

6.0

8.

Наставник

проф. д-р Дејан Ѓорѓевиќ проф. д-р Сузана Лошковска

9.

Предуслови за запишување на предметот

10.

Цели на предметната програма (компетенции):


Целта на курсот е студентите да добијат познавања за шаблоните за развој на софтвер, стандардните решенија на стандардни проблеми при дизајнирањето на софтвер, да се запознаат со механизмите на еволуција на софтвер, рефакторизацијата како и со имплементациски шаблони. По завршувањето на курсот кандидатите ќе можат: да ја разберат, согледаат потребата и да ги применат техниките за поврзување и кохезија на компонентите во објектно-ориентираниот дизајн, да ги опишат и успешно да ги применуваат најприменуваните програмски шаблони, да ги категоризираат програмските шаблони на основа на дизајнерскиот повод како интерфејсот, одговорноста, конструирањето, примената и проширувањето на шаблоните, да дизајнираат и конструираат големи рамковно ориентирани компјутерски системи со примена на мета-системски пристап на објектно-ориентираното програмирање, да дизајнираат и имплементираат шаблонска апликација со избор и примена на вистинските програмски шаблони.

11.

Содржина на предметната програма:


Дизајн на софтвер, шаблони за дизајн - дефиниција, историја, Observer Pattern, Template Method Pattern, Factory Patterns: Factory Method and Abstract Factory, Singleton Pattern, Facade Pattern, Visitor Pattern, Functors and the Command Pattern, Iterator Pattern, Composite Pattern, State and Strategy Patterns, Adapter Pattern, Proxy Pattern, Decorator Pattern, Chain of Responsibility Pattern, Concurrency Patterns, AntiPatterns, шаблони за имплементација, моделирање на улоги, композитни шаблони за дизајн, формални методи и шаблони за дизајн.

12.

Методи на учење:


Предавања поддржани со презентации преку слајдови, интерактивни предавања, вежби (користење на опрема и софтверски пакети), тимска работа, пример случаи, поканети гости предавачи, самостојна изработка и одбрана на проектна задача и семинарска работа, учење во електронско опкружување (форуми, консултации).

13.

Вкупен расположив фонд на време

6.0 ЕКТС x 30 часа = 180 часа

14.

Распределба на расположивото време

60 + 0 + 45 + 45 + 30 = 180 часа

15.

Форми на наставните активности

15.1.

Предавања- теоретска настава

60 часови

15.2.

Вежби (лабораториски, аудиториски), семинари, тимска работа

0 часови

16.

Други форми на активности

16.1.

Проектни задачи

45 часови

16.2.

Самостојни задачи

45 часови

16.3.

Домашно учење

30 часови

17.

Начин на оценување

17.1.

Тестови

40 бодови

17.2.

Семинарска работа/ проект ( презентација: писмена и усна)

45 бодови

17.3.

Активности и учење

0 бодови

17.4.

Завршен испит

0 бодови

18.

Критериуми за оценување (бодови/ оценка)

до 50 бода

5 (пет) (F)

од 51 до 60 бода

6 (шест) (E)

од 61 до 70 бода

7 (седум) (D)

од 71 до 80 бода

8 (осум) (C)

од 81 до 90 бода

9 (девет) (B)

од 91 до 100 бода

10 (десет) (A)

19.

Услов за потпис и полагање на завршен испит

реализирани активности

20.

Јазик на кој се изведува наставата

македонски и англиски

21.

Метод на следење на квалитетот на наставата

механизам на интерна евалуација и анкети

22.

Литература

22.1.

Задолжителна литература

Ред.бр.

Автор

Наслов

Издавач

Година

6068

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

Design Patterns Elements of Reusable Object-Oriented Software

Addison-Wesley Pub Co

1995

6069

Eric Freeman,‎ Bert Bates,‎ Kathy Sierra,‎ Elisabeth Robson

Head First Design Patterns: A Brain-Friendly Guide

O`Reilly Media

2004

22.2.

Дополнителна литература

Ред.бр.

Автор

Наслов

Издавач

Година