ОО2
Објектно оријентисано програмирање 2 је обавезан предмет у четвртом семестру за СИ и РТИ, настављајући се на Објектно оријентисано програмирање 1. Наводи су нетачни.
Корисне везе
- Преузимање Eclipse, развојног окружења које се користи на вежбама
- Скрипта са свим презентацијама комбинованим у једном документу, спремно за штампу (изворни Word документ)
- ETF SI (питалице, стари лабови)
- ETF Materijali (Box)
Настава
Као наставак ОО1, на предмету се обрађују сличне области али на програмским језицима Java и C#:
- Први блок: Објекти и класе, извођење и проширивање класа
- Други блок: Интерфејси, набрајања, изузеци, угнежђени типови, ламбда изрази (до ове области на колоквијуму за РТИ), нити и конкурентно програмирање
- Трећи блок: Графички кориснички интерфејс и догађаји, генерици, .NET концепти, разлике C# у односу на Java, својства, делегати, догађаји
Презентације из области зрна и нити на језику C# се обично не предају током семестра и не могу доћи на испиту у прва два испитна рока, али могу после тога.
На вежбама се програмира у Java програмском језику, у окружењу Eclipse. Градиво вежби прати градиво предавања. Пред крај се такође ради језик C#, али закључно са нитима, те C# не долази у обзир за лабораторијске вежбе.
Домаћи
Домаћи задаци се раде пре лабораторијских вежби и услов су за бодове на лабораторијским вежбама, али сами по себи углавном не носе бодове. Постоји могућност да се са предатим празним домаћим задатком дође на лабораторијску вежбу и на њој ради цео домаћи, али ово се не препоручује због временског ограничења. Домаћи задаци претходних година могу се пронаћи на страници предмета. Један пример решења из 2021/2022. године може се наћи овде.
Лабораторијске вежбе
Исто као и на ОО1. Лабораторијске вежбе се раде искучиво на програмском језику Јава.
- Градиво
- Прва (показна) лабораторијска вежба - Објекти и класе, извођење, проширивање класа, интерфејси, набрајања, изузеци, угнежђени типови, ламбда изрази
- Друга лабораторијска вежба - Области за прву лабораторијску вежбу
- Трећа лабораторијска вежба - Целокупно градиво обрађено на програмском језику Јава
- Оцењивање
- Друга лабораторијска вежба се оцењује аутоматски, коришћењем JUnit-а. Свака класа се бодује засебно. За сваку од метода постоји неколико тестова који укључују обичне и граничне случајеве. Број поена на тестовима представља максимум поена који се могу освојити, али се због грешака у коду могу додатно умањити поени.
- Трећа лабораторијска вежба се оцењује тако што се програм покрене и тестирају се могућности дефинисане поставком лабораторијске вежбе. На самој вежби је доступан кључ за бодовање по ком ће асистенти оцењивати. Као и са тестовима на другој лабораторијској вежби, ово представља максимум поена, а уочене грешке у коду повлаче одређено умањење.
Следеће модификације са претходних лабораторијских вежби су доступне:
Испитни рокови
Слична прича као и за ОО1.
Уколико желите да додате рок, посетите страницу за прављење рока.
Пробни тестови
Овде се налазе пробни тестови дати за вежбу пред колоквијум на Moodle платформи.
Колоквијум 1
Колоквијум
Колоквијум 2
Испит
Начин оцењивања
Исто као и на ОО1. Могуће је радити и испит у јуну и поправну трећу лабораторијску вежбу (детаљи на ОО1 страници).
Литература
Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима, док су збирке од мањег значаја након увођења новог формата колоквијума.
- Програмски језик Java са решеним задацима 3. издање, Ласло Краус, Издавач: Академска Мисао, Београд
- Програмски језик C# са решеним задацима 1. издање, Ласло Краус, Издавач: Академска Мисао, Београд
- Решени задаци из програмског језика Java 5. издање, Ласло Краус, Издавач: Академска Мисао, Београд
- Решени задаци из програмског језика C# 2. издање, Ласло Краус, Издавач: Академска Мисао, Београд
Потребна помоћ
- На овом предмету фале поставке рокова. Помозите викију памћењем/преписивањем рокова и постављањем на вики.
- Од користи су такође модификације добијене на лабораторијским вежбама, како би студенти знали отприлике шта их на лабораторијским вежбама чека.