Објектно оријентисана парадигма

ID: 1490
Врста предмета: научно-стручни
Носилац предмета: Лазовић М. Горан
Извођачи: Лазовић М. Горан
Контакт особа: Лазовић М. Горан
Ниво студија: Мастер академске студије – Машинско инжењерство
ЕСПБ: 6
Облик завршног испита: писмени+усмени
Катедра: Катедра за информационе технологије у машинству

Извођења

Циљ

Упознавање са парадигмом ООП. Сврсисходна употреба класе, објекта, наслеђивања, учаурења, метода и скривања. Стицање основних знања о класама, изведеним класама, методима. Објектно оријентисана методологија пројектовања структура података и апликативних програма. Проблеми који се природно решавају коришћењем објектно оријентисане методологије пројектовања и програмирања.

Исход

После успешног одслушаног програма који је предвиђен овим предметом студент може: да препозна услове за примену објектно оријентисане методологије пројкетовања и програмирања, да испројектује једноставне корисничке класе и повеже их са системским класама, да испројектује једноставне корисничке методе и употреби у њиховом пројектовању системске методе, да успешно користи програмске језике C++ и JAVA.

Садржај теоријске наставе

Преводиоци, интерпретатори и машине. Слабо и јако типизирани програмски језици. Објекат и класа, међусобни однос и примери из реалног живота и технике. Природно дефинисање класа, подкласа, надкласа. Појам инстанце - објекта. Основе програмског језика C++. Разлике између програмских језика C и C++. Дефинисање класа у програмском језику C++. Примена операција и стварање објеката. Објектно оријентисан дизајн података, операција, и проблеми у програмирању и имплементацији. Животни век објекта. Основе програмског језика JAVA. Разлике између програмских језика C++ и ЈАVA. Дефинисање класа, надкласа и подкласа у програмским језицима C++ и JAVA. Наслеђивање у C++ и ЈАВА, предности и недостаци. Преоптерећење оператора и стварање нити и струја, као посебних структура у језику JAVA. Проблем учаурења објеката и класа. Предности и недостаци.

Садржај практичне наставе

Састоји се из аудиторних, лабораторијских вежби које прате садржај предмета. Подсећање на програмирање програмским језиком PHP. Основни примери програмског језика С++ и ЈАVA.

Услов похађања

Знање С језика. Познавање основа методологије пројектовања програма. Основе софтверског инжењерства.

Ресурси

Неопходан софтвер за овај предмет је под GNU лиценцом - бесплатан је. Уколико користите LINUX неопходни C++ односно JAVA Вам је одмах доступна. Уколико користите други оперативни систем C++ можете преузети са одговарајуће WEB локације (види URL) или на самом URL-u. За покретање неопходног софтвера довољно је поседовати најједноставнији PC рачунар.

Фонд часова

Укупан фонд часова: 75

Активна настава (теоријска)

Ново градиво: 20
Разрада и примери (рекапитулација): 10

Активна настава (практична)

Аудиторне вежбе: 1
Лабораторијске вежбе: 19
Рачунски задаци: 0
Семинарски рад: 5
Пројекат: 2
Консултације: 0
Дискусија/радионица: 3
Студијски истраживачки рад: 0

Провера знања

Преглед и оцена рачунских задатака: 0
Преглед и оцена лабораторијских извештаја: 0
Преглед и оцена семинарских радова: 7
Преглед и оцена пројекта: 0
Колоквијум са оцењивањем: 0
Тест са оцењивањем: 3
Завршни испит: 5

Провера знања (укупно 100 поена)

Активност у току предавања: 5
Тест/колоквијум: 35
Лабораторијска вежбања: 0
Рачунски задаци: 0
Семинарски рад: 30
Пројекат: 0
Завршни испит: 30
Услов за излазак на испит (потребан број поена): 35

Литература

E. Gamma, R. Helm, R. Johnson, and J. Vlissides; Design Patterns: Elements of Reusable Object-Oriented Software; Addison-Wesley Professional;1994