Системско и инфраструктурно програмирање

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

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

Детална содржина по поглавја и единици

  1. Вовед во системско и инфраструктурно програмирање
  2. Системски интерфејси и протоколи
  3. Програмирање на ниско ниво
  4. Мрежно програмирање
  5. Управување со системи во облак
  6. Детекција и решавање на проблеми
  7. Документирање и одржување на системи
  8. Методи за интеграција на системи
  9. Регулaтиви и протоколи во ИКТ

Резултати од учењето:

  1. Вовед во системско и инфраструктурно програмирање: Студентите ќе ги научат основните концепти и принципи на системско и инфраструктурно програмирање. Ќе ги разликуваат различните видови на програмирање и ќе ги разбираат нивните соодноси и значење во рамките на компјутерските системи. Ќе ги анализираат историските и современите тенденции во областа на системското програмирање.
  2. Системски интерфејси и протоколи: Студентите ќе развијат вештини за дизајнирање и имплементација на системски интерфејси и протоколи. Ќе бидат во можност да анализираат и да изберат соодветни протоколи за комуникација помеѓу компонентите на системот. Ќе ги програмираат системските интерфејси во согласност со индустриските стандарди и најдобрите практики.
  3. Програмирање на ниско ниво: Студентите ќе стекнат вештини за програмирање и скриптирање со јазици на ниско ниво. Ќе бидат во можност да изработат ефикасен системски код и да го разбираат влијанието на изборот на програмски јазик на нивото на изворен код.
  4. Мрежно програмирање: Студентите ќе развијат вештини за програмирање на мрежни апликации и комуникација помеѓу различни компјутерски системи. Ќе бидат во можност да проектираат и да развиваат мрежни апликации во согласност со протоколите за мрежна комуникација. Ќе ги применуваат безбедносните принципи во мрежното програмирање.
  5. Управување со системи во облак: Студентите ќе ги научат концептите и технологиите поврзани со програмирањето во облак. Ќе бидат во можност да дизајнираат, имплементираат и управуваат со апликации и услуги во облак. ○ Ќе ги развиваат вештините за управување со ресурси и апликации во облак.
  6. Детекција и решавање на проблеми: ○ Студентите ќе развијат аналитички вештини за детекција и анализа на системски проблеми. ○ Ќе бидат во можност да применуваат стратегии за решавање на системски проблеми и да избегнуваат негативни влијанија на работата на системите. ○ Ќе развиваат вештини за примена на алатки и методологии за дебагирање и одржување на стабилност на системите.
  7. Документирање и одржување на системи: ○ Студентите ќе развијат вештини за документирање на системски код и апликации. ○ Ќе бидат во можност да дефинираат и да следат процеси за одржување на системите. ○ Ќе ги развиваат вештините за поддршка и надградба на системите во различни компјутерски околини.
  8. Методи за интеграција на системи: ○ Студентите ќе бидат во состојба да ги идентификуваат и анализираат различните методи за интеграција на системите. ○ Ќе бидат во можност да ги проектираат и програмираат интерфејсите за комуникација помеѓу различни системски компоненти. ○ Ќе развиваат вештини за интеграција на системите во различни околини, вклучувајќи ги и услугите во облак.
  9. Регулативи и протоколи во ИКТ: ○ Студентите ќе ги разберат регулативите што се однесуваат на информациските и комуникациските технологии. ○ Ќе бидат во можност да ги анализираат и да ги програмираат системите во согласност со протоколите и стандардите во ИКТ. ○ Ќе развиваат вештини за безбедносно програмирање и спроведување на протоколи за заштита на информациите во различни системски апликации.

Методи на настава

Теоретска настава, аудиториски вежби, лабораториски вежби, групно учество на студенти во изработка на проекти, самостојна изработка на проектни и самостојни задачи, одржување консултации.
Неделни часови 5 часови
Вкупен фонд 150 часови
Услови за потпис нема

Наставни активности

ШифраАктивностЧасови
16.1Предавања- теоретска настава. часови45
16.2Вежби (лабораториски, аудиториски), семинари, тимска работа: часови30
16.3Пракса: часови0

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

ШифраАктивностЧасови
17.1Проектни задачи: часови15
17.2Самостојни задачи: часови10
17.3Домашно учење - задачи50

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

писмено

Компоненти на оценување

ШифраКомпонентаПоени
19.1Тестови: бодови0
19.2Семинарска работа/проект, презентација писмена и усна: бодови10
19.3Завршен испит: бодови90

Скала на оценување

Опсег на поениОцена
до 50 бода5 (пет) (F)
51 х до 60 бода6 (шест) (E)
61 х до 70 бода7 (седум) (D)
од 71 до 80 бода8 (осум) (C)
од 81 до 90 бода9 (девет) (B)
од 91 до 100 бода10 (десет) (A)
Евалуација и самоевалуација

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

Ред.АвториНасловИздавачГодина
1Randal E. Bryant and David R. O'HallaronComputer Systems: A Programmer's PerspectivePearson2015
2Robert LoveLinux System Programming: Talking Directly to the Kernel and C LibraryO'Reilly Media2013
3Gene Kim, Jez Humble, Patrick Debois, and John WillisThe DevOps Handbook: How to Create World-Class Agility, Reliability, iability, & Security in Technology OrganizationsIT Revolution Press2016

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

Ред.АвториНасловИздавачГодина
1Brendan GreggSystems Performance: Enterprise and the CloudPrentice Hall2013