ОО2 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
(Stranica predmeta)
 
Нема описа измене
 
(Није приказана једна међуизмена 6 корисника)
Ред 1: Ред 1:
{{tocright}}
{{Предмет
'''Објектно оријентисано програмирање 2''' је обавезан предмет у четвртом семестру, настављајући се на [[ОО1|Објектно оријентисано програмирање 1]].
| назив    = Објектно оријентисано програмирање 2
| шифра    = 13С112ОО2, 13Е112ОО2
| семестар  = 4
| статус    = обавезни
| страница  = [https://rti.etf.bg.ac.rs/rti/ir2oo2/ rti.etf.rs/rti/ir2oo2]
| одсек    = СИ, РТИ
| претходни = ОО1
| следећи  = Пројектовање софтвера
}}
'''Објектно оријентисано програмирање 2''' је обавезан предмет у четвртом семестру за СИ и РТИ, настављајући се на [[ОО1|Објектно оријентисано програмирање 1]]. Наводи су нетачни.


== Странице ==
== Корисне везе ==
* [https://rti.etf.bg.ac.rs/rti/ir2oo2/ Страница предмета]
* [https://eclipse.org/downloads/ Преузимање ''Eclipse'', развојног окружења које се користи на вежбама]
<!--* [http://elearning.rcub.bg.ac.rs Moodle курс]-->
* [https://drive.google.com/open?id=1ymKiC-jmr66-FRMDYwP-p15SrVgSNu65 '''Скрипта са свим презентацијама комбинованим у једном документу, спремно за штампу'''] ([https://docs.google.com/document/d/1LZ1pqkOWJ6gH2F2cnYn9s6uE_bfiYXIf изворни ''Word'' документ])
* [https://drive.google.com/open?id=1tsApPhN_66xrdBYYFg_4PAivufJ4cBVQ ETF SI] (питалице, стари лабови)
* [https://app.box.com/s/0r50je333z1qyypz0h3rm0iqb9s0d64f/folder/8381893109 ETF Materijali (Box)]


== Корисне везе ==
== Настава ==
{{Материјали
Као наставак [[ОО1#Настава|ОО1]], на предмету се обрађују сличне области али на програмским језицима Java и C#:
| suetf          = ir2oo2
* '''Први блок:''' Објекти и класе, извођење и проширивање класа
| vuk            = 1tsApPhN_66xrdBYYFg_4PAivufJ4cBVQ
* '''Други блок:''' Интерфејси, набрајања, изузеци, угнежђени типови, ламбда изрази (до ове области на колоквијуму за РТИ), нити и конкурентно програмирање
| box            = 8381893109
* '''Трећи блок:''' Графички кориснички интерфејс и догађаји, генерици, .NET концепти, разлике C# у односу на Java, својства, делегати, догађаји
}}
Презентације из области зрна и нити на језику C# се обично не предају током семестра и не могу доћи на испиту у прва два испитна рока, али могу после тога.
<!--
 
== Предавања ==
На вежбама се програмира у Java програмском језику, у окружењу ''Eclipse''. Градиво вежби прати градиво предавања. Пред крај се такође ради језик C#, али закључно са нитима, те C# не долази у обзир за лабораторијске вежбе.
Овде се наводе све битне информације у вези са предавањима на предмету, као и потребни материјали.


== Вежбе ==
Овде се наводе све битне информације у вези са вежбама на предмету, као и потребни материјали.
-->
== Домаћи ==
== Домаћи ==
Исто као и на ОО1.
Домаћи задаци се раде пре лабораторијских вежби и услов су за бодове на лабораторијским вежбама, али сами по себи углавном не носе бодове. Постоји могућност да се са предатим празним домаћим задатком дође на лабораторијску вежбу и на њој ради цео домаћи, али ово се не препоручује због временског ограничења. Домаћи задаци претходних година могу се пронаћи [https://rti.etf.bg.ac.rs/rti/ir2oo2/lab/ на страници предмета.] Један пример решења из 2021/2022. године може се наћи [[github:lordofdestiny/OO2Domaci|овде]].


== Лаб вежбе ==
== Лабораторијске вежбе ==
Исто као и на ОО1.
Исто као и на [[ОО1#Лаб вежбе|ОО1]]. Лабораторијске вежбе се раде искучиво на програмском језику Јава.
; Градиво:
* Прва (показна) лабораторијска вежба - Објекти и класе, извођење, проширивање класа, интерфејси, набрајања, изузеци, угнежђени типови, ламбда изрази
* Друга лабораторијска вежба - Области за прву лабораторијску вежбу
* Трећа лабораторијска вежба - Целокупно градиво обрађено на програмском језику Јава
; Оцењивање:
* Друга лабораторијска вежба се оцењује аутоматски, коришћењем ''JUnit''-а. Свака класа се бодује засебно. За сваку од метода постоји неколико тестова који укључују обичне и граничне случајеве. Број поена на тестовима представља максимум поена који се могу освојити, али се због грешака у коду могу додатно умањити поени.
* Трећа лабораторијска вежба се оцењује тако што се програм покрене и тестирају се могућности дефинисане поставком лабораторијске вежбе. На самој вежби је доступан кључ за бодовање по ком ће асистенти оцењивати. Као и са тестовима на другој лабораторијској вежби, ово представља максимум поена, а уочене грешке у коду повлаче одређено умањење.
 
Следеће модификације са претходних лабораторијских вежби су доступне:
{{#dpl:
| titleregexp    = ОО2/Лаб
| noresultsheader = Тренутно нема модификација.
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,
}}


== Испитни рокови ==
== Испитни рокови ==
Слична прича као и за ОО1.
Слична прича као и за [[ОО1#Испитни рокови|ОО1]].
 
Уколико желите да додате рок, посетите '''[[Project:Направи#Moodle|страницу за прављење рока]]'''.
 
=== Пробни тестови ===
=== Пробни тестови ===
Овде се налазе пробни тестови дати за вежбу пред колоквијум на Moodle платформи.
Овде се налазе пробни тестови дати за вежбу пред колоквијум на ''Moodle'' платформи.
{{#dpl:
{{#dpl:
| titleregexp    = ОО2/Пробни тестови
| titleregexp    = ОО2/Пробни тестови
| noresultsheader = Тренутно нема решених рокова.
| noresultsheader = Тренутно нема решених рокова.
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,
}}
}}
=== Колоквијум 1 ===
=== Колоквијум 1 ===
{{#dpl:
{{#dpl:
| titleregexp    = ОО2/К1
| titleregexp    = ОО2/К1
| noresultsheader = Тренутно нема решених рокова.
| noresultsheader = Тренутно нема решених рокова.
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,
}}
 
=== Колоквијум ===
{{#dpl:
| titleregexp    = ОО2/К \d+
| noresultsheader = Тренутно нема решених рокова.
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,
}}
}}
=== Колоквијум 2 ===
=== Колоквијум 2 ===
{{#dpl:
{{#dpl:
| titleregexp    = ОО2/К2
| titleregexp    = ОО2/К2
| noresultsheader = Тренутно нема решених рокова.
| noresultsheader = Тренутно нема решених рокова.
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,
}}
}}
=== Испит ===
=== Испит ===
{{#dpl:
{{#dpl:
| titleregexp    = ОО2/.* \d+$
| titleregexp    = ОО2/.* \d+$
| nottitleregexp  = ОО2/К\d
| nottitleregexp  = ОО2/К\d
| nottitleregexp  = ОО2/К \d
| nottitleregexp  = ОО2/Пробни тестови
| nottitleregexp  = ОО2/Пробни тестови
| nottitleregexp  = ОО2/Лаб
| nottitleregexp  = ОО2/Лаб
| noresultsheader = Тренутно нема решених рокова.
| noresultsheader = Тренутно нема решених рокова.
| format          = ,* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]]\n,,
| format          = ,\n* [[%PAGE%|²{#invoke:String¦sub¦%PAGE%¦5¦-1}²]],,
}}
}}


== Начин оцењивања ==
== Начин оцењивања ==
Исто као и на ОО1.
Исто као и на [[ОО1#Начин оцењивања|ОО1]]. Могуће је радити и испит у јуну и поправну трећу лабораторијску вежбу (детаљи на ОО1 страници).


== Литература ==
== Литература ==
Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима:
Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима, док су збирке од мањег значаја након увођења новог формата колоквијума.
* '''[https://akademska-misao.rs/index.html#/info/book/576 Програмски језик Java са решеним задацима]''' 3. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''
* '''[https://akademska-misao.rs/product/programski-jezik-java-sa-resenim-zadacima-3-izdanje-jse-13/ Програмски језик Java са решеним задацима]''' 3. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''
* '''[https://akademska-misao.rs/index.html#/info/book/308 Програмски језик C# са решеним задацима]''' 1. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''
* '''[https://akademska-misao.rs/product/programski-jezik-c-sa-resenim-zadacima-2/ Програмски језик C# са решеним задацима]''' 1. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''
Збирке су од мањег значаја након увођења новог формата колоквијума:
* '''[https://akademska-misao.rs/product/reseni-zadaci-iz-programskog-jezika-java-sa-resenim-zadacima-5-izdanje/ Решени задаци из програмског језика Java]''' 5. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''
* '''[https://akademska-misao.rs/index.html#/info/book/678 Решени задаци из програмског језика Java]''' 5. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''
* '''[https://akademska-misao.rs/product/reseni-zadaci-iz-programskog-jezika-c-ii-izdanje/ Решени задаци из програмског језика C#]''' 2. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''
* '''[https://akademska-misao.rs/index.html#/info/book/9 Решени задаци из програмског језика C#]''' 2. издање, Ласло Краус, ''Издавач: Академска Мисао, Београд''


[[Категорија:Четврти семестар]]
== Потребна помоћ ==
[[Категорија:Обавезни предмети]]
* {{zadaci|postavke}}
[[Категорија:ОО2]]
** Од користи су такође модификације добијене на лабораторијским вежбама, како би студенти знали отприлике шта их на лабораторијским вежбама чека.

Тренутна верзија на датум 1. април 2024. у 07:33

Објектно оријентисано програмирање 2 је обавезан предмет у четвртом семестру за СИ и РТИ, настављајући се на Објектно оријентисано програмирање 1. Наводи су нетачни.

Корисне везе

Настава

Као наставак ОО1, на предмету се обрађују сличне области али на програмским језицима Java и C#:

  • Први блок: Објекти и класе, извођење и проширивање класа
  • Други блок: Интерфејси, набрајања, изузеци, угнежђени типови, ламбда изрази (до ове области на колоквијуму за РТИ), нити и конкурентно програмирање
  • Трећи блок: Графички кориснички интерфејс и догађаји, генерици, .NET концепти, разлике C# у односу на Java, својства, делегати, догађаји

Презентације из области зрна и нити на језику C# се обично не предају током семестра и не могу доћи на испиту у прва два испитна рока, али могу после тога.

На вежбама се програмира у Java програмском језику, у окружењу Eclipse. Градиво вежби прати градиво предавања. Пред крај се такође ради језик C#, али закључно са нитима, те C# не долази у обзир за лабораторијске вежбе.

Домаћи

Домаћи задаци се раде пре лабораторијских вежби и услов су за бодове на лабораторијским вежбама, али сами по себи углавном не носе бодове. Постоји могућност да се са предатим празним домаћим задатком дође на лабораторијску вежбу и на њој ради цео домаћи, али ово се не препоручује због временског ограничења. Домаћи задаци претходних година могу се пронаћи на страници предмета. Један пример решења из 2021/2022. године може се наћи овде.

Лабораторијске вежбе

Исто као и на ОО1. Лабораторијске вежбе се раде искучиво на програмском језику Јава.

Градиво
  • Прва (показна) лабораторијска вежба - Објекти и класе, извођење, проширивање класа, интерфејси, набрајања, изузеци, угнежђени типови, ламбда изрази
  • Друга лабораторијска вежба - Области за прву лабораторијску вежбу
  • Трећа лабораторијска вежба - Целокупно градиво обрађено на програмском језику Јава
Оцењивање
  • Друга лабораторијска вежба се оцењује аутоматски, коришћењем JUnit-а. Свака класа се бодује засебно. За сваку од метода постоји неколико тестова који укључују обичне и граничне случајеве. Број поена на тестовима представља максимум поена који се могу освојити, али се због грешака у коду могу додатно умањити поени.
  • Трећа лабораторијска вежба се оцењује тако што се програм покрене и тестирају се могућности дефинисане поставком лабораторијске вежбе. На самој вежби је доступан кључ за бодовање по ком ће асистенти оцењивати. Као и са тестовима на другој лабораторијској вежби, ово представља максимум поена, а уочене грешке у коду повлаче одређено умањење.

Следеће модификације са претходних лабораторијских вежби су доступне:

Испитни рокови

Слична прича као и за ОО1.

Уколико желите да додате рок, посетите страницу за прављење рока.

Пробни тестови

Овде се налазе пробни тестови дати за вежбу пред колоквијум на Moodle платформи.

Колоквијум 1

Колоквијум

Колоквијум 2

Испит

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

Исто као и на ОО1. Могуће је радити и испит у јуну и поправну трећу лабораторијску вежбу (детаљи на ОО1 страници).

Литература

Предмет је могуће положити са највишом оценом без коришћења литературе. Градиво предмета покривено је у ширини у уџбеницима, док су збирке од мањег значаја након увођења новог формата колоквијума.

Потребна помоћ

  • На овом предмету фале поставке рокова. Помозите викију памћењем/преписивањем рокова и постављањем на вики.
    • Од користи су такође модификације добијене на лабораторијским вежбама, како би студенти знали отприлике шта их на лабораторијским вежбама чека.