Siz tayyormisiz? Ishga kirishish nimani anglatadi?

Dasturimiz OOP (Java), veb-ilovalar va ma'lumotlar ilmlarini ishlatib, dasturiy ta'minot tizimlari va dasturiy ta'minotni ishlab chiqish sohalarida ixtisoslashgan. Tadqiqotning asosiy yo'nalishlari quyidagilardan iborat: zamonaviy dasturiy ta'minot ishlab chiqish, veb-dasturlarni ishlab chiqish va arxitektura, katta ma'lumot tahlillari va texnologiyalari, kompyuterni o'rganish va bir qancha muhim dastur ob'ektlari.

Barcha kurslar sizning martabangizni rivojlantirishga yordam berish uchun mo'ljallangan va har bir kurs amaliy topshiriqlarni o'z ichiga oladi. Ko'rinish bitiruv talablari.

YaNGI! Mukofot olish Ma'lumotlar fani

Standart asosiy kurslar

  • Zamonaviy dasturlash amaliyoti (Java dasturlash) (CS 401)

    Ushbu kurs ob'ektlarni dasturlashning asosiy tamoyillarini aks ettiradi. Talabalar qayta foydalanish mumkin bo'lgan va yaxshi ta'minlangan dasturiy ta'minotni yozishni o'rganadilar va bu bilimlarni laboratoriya topshiriqlari va loyihalari bilan birlashtiradi. Mavzularga quyidagilar kiradi: dasturiy ta'minotning qayta ishlanganligi va qayta tiklanishini ta'minlaydigan ob'ektga asoslangan dasturlashning asosiy tamoyillari va modellari, UML klassi va dizayn printsiplari. (4 ta)

  • Murakkab dasturiy ta'minotni ishlab chiqish (CS 525)

    Ushbu kurs dasturiy ta'minot tizimlarining yaxshi dizayni uchun joriy usul va amaliyotlarni ko'rib chiqadi. Mavzularga quyidagilar kiradi: dasturiy ta'minot dizayni naqshlari, ramkalar, arxitektura va ushbu ko'p bosqichli abstraktlarni qo'llash uchun dizayn tizimlari. (2-4 credits) Old shart: CS 401 yoki kafedraning roziligi.

  • Algoritmlar (CS 435)

    Bu kurs algoritmlarning samaradorligini tahlil qilish usullarini (jumladan, eng yomon vaziyat va o'rtacha vaziyatni tahlil qilish) va ma'lum bo'lgan, yuqori samarali algoritmlarni taqdim etadi. Algoritmlarni tahlil qilish, loyihalash va amalga oshirishga alohida e'tibor beriladi. Mavzular quyidagilarni o'z ichiga oladi: ma'lumotlar tuzilmalari (ro'yxatlar, hashtables, muvozanatli ikkilik qidiruv daraxtlari, ustuvor navbatchilar), grafik algoritmlari, kombinatorial algoritmlar, takrorlash munosabatlari, dinamik dasturlash, NP-kompleks muammolari va ba'zi maxsus mavzular bo'yicha ma'lumotlarni izlash va ajratish, samaradorlik ruxsat beradi. (Maxsus masalalar hisoblash geometriyasi, kriptosistemalar uchun algoritmlar, yaqinlik, katta ma'lumotlar va parallel hisoblash).

  • Kompyuter tarmoqlari (CS 450)

    Ushbu kursning maqsadi tarmoqlarning ishlashi va tarmoq dasturlarini ishlab chiqish yo'llarini o'rganish orqali kompyuter tarmoqlari tushunchalari, me'morchilik tamoyillari va terminlarini o'rganishdir. Ushbu kurs tarmoq tamoyillarini amalga oshirishning asosiy namunasi sifatida Internet me'morchiligi va protokollarini qo'llash orqali tarmoqlarni tushunish uchun yuqoridan pastga yo'naltirilgan yondashuvdan iborat. Dastur qatlamidan boshlaymiz va transport qatlami, tarmoq sathidan, aloqa katmanından va kompyuter tarmoqlarining fizik qatlamidan foydalanamiz. Talabalar bir nechta tarmoq dasturlarini ishlab chiqishadi va internetda ishlatiladigan tarmoq protokollarining izlanishlari va tushunish uchun mo'ljallangan bir nechta laboratoriyalarni to'ldirishadi. (4 ta) Old shart: CS 401 yoki kafedraning roziligi.

  • Ma'lumotlar bazasini boshqarish tizimlari (CS 422)

    Ma'lumotlar bazasi tizimlari foydalanuvchilarga kerakli ma'lumotlarni osongina va samarali ravishda foydalanish imkonini beradigan ma'lumotni tashkil qiladi va qabul qiladi. Mavzularga quyidagilar kiradi: relatsion ma'lumotlar modeli; SQL; ER modellashtirish; munosabatlar algebra; ma'lumotlar normalizatsiyasi; bitimlar; ma'lumotlar bazasidagi obyektlar; ma'lumotlar xavfsizligi va yaxlitligi; ma'lumotlar omborxonalari, OLAP va ma'lumotni yig'ish; tarqatilgan ma'lumotlar bazalari; va ma'lum bir tijorat ma'lumotlar bazasi tizimini o'rganish. (4 ta) Old shart: CS 401 yoki kafedraning roziligi.

  • Dasturiy injiniring (CS 425)

    Dasturiy injinirlash dasturiy ta'minotni ishlab chiqish metodologiyasi yordamida talabalarni dasturiy ta'minotni ishlab chiqishda eng yaxshi amaliyotga joriy etadigan kursdir. Talabalar oldingi kurslarda Ob'ektga asoslangan paradigma bilan tajriba o'tkazgan va dastur moslamalari o'rtasidagi munosabatlarni modellash uchun asosiy UML diagrammalaridan foydalangan. Dastur muhandisligi sohasida talaba ushbu vositalarni birgalikda mustahkam, osongina saqlab turilishi mumkin bo'lgan dasturiy ta'minotni ishlab chiqarishga ko'maklashadi. Dasturiy ta'minotni ishlab chiqish metodologiyasi OO tushunchalari va UML diagrammalarini qachon va qanday qilib sifatli dasturiy ta'minotni yaratish maqsadiga erishish uchun ishlatilishini tushuntiradi. Kurs, ma'ruza shaklida muhokama qilingan printsiplar tasvirlangan va tatbiq etilishi mumkin bo'lgan kichik loyiha atrofida joylashgan. Kurs oxirida talaba RUP (Rational Unified Process) ishlab chiqish metodologiyasi bo'yicha yuqori standartlarga muvofiq ishlab chiqilgan dasturga ega bo'ladi.

  • Veb-ilovalar arxitekturasi va ramkalar (CS 545)

    Ushbu kurs veb-ilovalarni korporativ muhitda aks ettiradi. Korxona arizasi - korporatsiya yoki hukumat kabi yirik tashkilotda ishlash uchun mo'ljallangan katta dasturiy ta'minot tizimi. Korxona ilovalari murakkab, keng qamrovli, komponentli, taqsimlangan va juda muhim vazifa. Ushbu kurs CS545, korporativ veb-ilovasining oldingi qismini yoki taqdimot ko'rsatadi. CS544 Enterprise Architecture - ishbilarmonlik mantig'i, bitimlar va qat'iyatlilikni o'z ichiga olgan orqa yoki biznes qatlamiga yo'naltirilgan hamkorlik kursidir. CS472, veb-dasturlarni dasturlash, HTML, CSS, JavaScript, servlets va JSP-ni qamrab olgan talab qilinadigan kursdir.

    Kurs, platformalar va ramkalar ichida umumiy bo'lgan printsiplar va naqshlarni o'rgatadi. Kurs Java veb-ramkalari, Java Server Faces (JSF) va SpringMVC bilan birgalikda tekshiriladi va ishlaydi. JSF tarkibiy qismga asoslangan tizim bo'lib, Java Enterprise Edition texnologiyasi to'plamining rasmiy taqdimotining texnik tavsifi hisoblanadi. SpringMVC Core Spring dasturining bir qismidir va so'nggi yillarda eng ko'p ishlatiladigan Java veb-ramkaga aylandi. (4 ta) Old shart: CS 472 yoki kafedraning roziligi.

  • Veb-ilova dasturlash (CS 472)

    Ushbu kurs interaktiv va dinamik veb-ilovalarni dasturlashtirishga muntazam kirish imkonini beradi. Kurs, avvalgi veb-dastur dasturlash tajribasi kam yoki umuman bo'lmagan shaxslar uchun mo'ljallangan. Ushbu taklif server serverlari uchun Java servlets va JSP dan foydalanadi. Kurs HTML va CSS bilan tanishtiradi. JavaScript-bu kursning markazida bo'lib, jQuery, Ajax va JavaScript-ni nomlari va modullari kabi funktsional dasturlash tili sifatida qamrab olinadi. CS545 veb-ilovasi arxitekturasining old sharti. Bu AngularJS yoki NodeJS ni qamrab olmaydi, lekin bu erda joylashgan JavaScript sizni ushbu texnologiyalarni o'rganishga tayyorlaydi. (4 ta)
    Old shart: CS 220 yoki CS 401 yoki kafedraning roziligi.

  • Kompyuter mutaxassislari uchun fan va texnologiya tushunchasi (506 uchun)

    Sizning birinchi kursingiz eng yaxshi kompyuter bilimlari bo'yicha professional bo'lishingiz uchun asos yaratish uchun maxsus mo'ljallangan. Kurs, Transsendental Meditation amaliyotiga asoslangan bo'lib, u sizning haqiqiy salohiyatingizni ro'yobga chiqarishga olib keladi. Siz TMning afzalliklari haqida bilib olasiz, jumladan murakkab muammolarni oliy darajadagi aqliy qobiliyatlarni kuchaytiruvchi ijodkorlik va "quti tashqarisida" fikrlash orqali hal qilish qobiliyati. Kurs, dam olish va faoliyatning optimal aralashmasini ishlab chiqish orqali faoliyatning eng yuqori ko'rsatkichini qo'llab-quvvatlaydigan tamoyillarga qaratiladi. Siz hayotdagi muvaffaqiyatni qo'llab-quvvatlaydigan ideal kundalik hayotni rivojlantirasiz va boshdan kechirasiz. (2 ta)

  • Texnik menedjerlarga rahbarlik (506B uchun)

    Ushbu kursning maqsadi talabalarga etakchilik va bilimlarni rivojlantirish, shuningdek, kelgusidagi etakchilik rollariga tayyorgarlik sifatida muloqot ko'nikmalarini etkazishdir.

    Ushbu dars oxirida talabalar samarali rahbarlik masalalari bilan bog'liq asosiy savollarga, shu jumladan quyidagilarga javoblarni tushunadilar:

    "Tabiiy tug'ilgan" rahbarlar bormi?

    Samarali yo'l tutish uchun sizda hizmatga ega bo'lishingiz kerakmi?

    Bir etakchi bo'lish uchun nima kerak?

    Etakchi va etakchi o'rtasidagi farq nima?

    Ushbu davrda etakchilik qilishlari kerak bo'lgan ko'pchilik "aql" nima?

    "Boshqarishning yomonligi" nima va u o'z-o'zini sabotaj qilishga qanday olib keladi?

    Etaklaydigan jarayonlar uchun bu fikr-mulohazaning muhimligini bilish, uni berish va qabul qilishdan qo'rqishning qanday yo'llarini topamiz?

    Ish joyida topilgan muammolarning 80% manbai nima?

    Tashkilotga shaxsiy va jamoaviy etakchilik qobiliyatini yaxshilashda yordam berish uchun ilmiy tadqiqotlar mavjudmi?

    Mehmon ma'ruzachilari taniqli tadbirkorlar, kompyuter olimlari, xayr-ehsonchilar, akademiklar va jamiyatning boshqa taniqli rahbarlarini o'z ichiga oladi.

    (2 ta)

Qo'shimcha MKSS kurslari

  • Murakkab dasturlash tillari (CS 505)

    Ushbu kurslar dasturiy tilni ishlab chiqishda ilg'or mavzularni rasmiy usullar va ajralmaslik mexanizmlariga urg'u bilan ko'rib chiqadi. Mavzularga ma'lumot va nazoratni ajralmaslikka, sintaksik va semantiklarning rasmiy spetsifikatsiyasi, dasturning to'g'riligining isboti, deterministik dasturlash, rivojlangan nazorat tuzilmalari va ma'lum tillarni o'rganish kiradi. (4 ta) Old shart: CS 401 yoki kafedraning roziligi.

  • Katta ma'lumotlar (Data Science) (CS 522)

    Zamonaviy axborotni qayta ishlash an'anaviy ma'lumotlar bazalari tizimlarida ishlov berilmagan ma'lumotlarni keng omborlarda aniqlanadi. Ushbu kurs eng so'nggi texnologiyani o'z ichiga oladi va ishlab chiqilgan va sanoat rahbarlari tomonidan ushbu muammoni eng samarali tarzda hal qilish uchun ishlatiladi. Xususan, MapReduce algoritmlari, MapReduce algoritmi dizayn naqshlari, HDFS, Hadoop klaster me'morchiligi, YARN, hisoblash nisbatan chastotalar, ikkilamchi tartiblash, veb-brauzerlar, invert indekslar va indeks siqishni, Spark algoritmlari va Scala. (4 ta) Old shart: CS 435 algoritmlari.

  • Big Data Analytics (Data Science) (CS 488)

    Big Data - bu yangi tabiiy resurs: ma'lumotlar har bir 12-18 oyda ikki barobar ortadi. Ushbu yangi Big Data Analytics kursi yangi tushunchalar yaratish uchun turli xil ma'lumotlarni to'plash uchun asosiy tushunchalar va vositalarni o'z ichiga oladi. WordCloud, Pagerank, Data Visualizatsiya, Decision Trees, Regression, Clustering, Neylon Networks va boshqalarni yaratish uchun R tilidan foydalanishni o'zlashtirasiz. Siz bir necha milliondan ortiq rekord ma'lumotlar to'plamlari bilan ishlayapsiz, shuningdek, mening Twitter-da ovqatlanaman. Siz Hadoop / MapReduce va Streaming Data kontseptsiyalarini bilib olasiz va shaxsiy tadqiqotlar qog'ozlari orqali Spark, Flink, Kafka, Storm, Samza, NoSQL kabi boshqa Apache Big Data loyihalarini o'rganasiz. Kaggle.com dan ochiq loyihalar bo'yicha guruhlarda ishlashni eng yaxshi ma'lumotli analitik muammolarni hal qilish yo'li bilan pul mukofoti uchun raqobatlashasiz. Siz shuningdek, sohaning etakchi IBM SPSS Modeler va ochiq manba ma'lumotlarini qidirish platformalaridan foydalanishni o'rganasiz. Ushbu kursda ishlatiladigan #1 bestseller kitobi o'qituvchi tomonidan yoziladi. Kurs, shuningdek, MIT, Coursera, Google va boshqa joylardan video materiallarning keng ko'lamini ishlatadi. (4 ta) Old shart: Kafedraning roziligi

  • Katta ma'lumot texnologiyalari (Data Science) (CS 523)

    Bir necha yillar mobaynida katta axborot texnologiyalari shamlardan bo'lgan hududdan yangi raqamli davrning asosiy tarkibiy qismlaridan biriga aylandi. Ushbu texnologiyalar axborotni bilimga aylantirish uchun juda foydali.

    Kursning maqsadi, turli katta ma'lumotlar muammolarini hal qilishga yordam berish uchun sizning arsenalingizdagi ba'zi muhim vositalarni kiritishdir. "Katta ma'lumot nima?" Kabi savollarga javob berish bilan boshlaymiz. Nima uchun bu muhimmi yoki foydalidir? Ushbu katta ma'lumotni qanday saqlaysiz? "Keyin ma'lumotlar tahlil qilishimizga yordam beradigan katta ma'lumotlar texnologiyalari to'plamidan turli xil vositalar va dasturiy modellarni o'rganamiz. Masalan, MapReduce, Pig, Hive, Sqoop, Flume, HBase (NoSQL Db), Zookeeper va Apache Spark ekotizim loyihalari kabi Hadoop ekotizimidagi ba'zi loyihalar mavjud. Shuningdek, biz AWS va EMR ga kirishni o'z ichiga olamiz. Siz, asosan, Cloudera ning Hadoop tarqatishning bitta tugmasi bilan ishlaysiz. (4 ta) (old shartlar yo'q)

  • Kompyuter xavfsizligi (CS 466)

    Ushbu dars kompyuter xavfsizligining uch jihatiga chuqur kiradi: maxfiylik, yaxlitlik va mavjudlik. Maxfiylik va yaxlitlik xavfsizlik siyosati uchun bir necha modellar o'rganiladi. Maxfiylik va yaxlitlikni kafolatlashda kriptografiyaning roli tekshiriladi. Boshqa mavzular orasida autentifikatsiya, auditorlik, penetratsion sinov, umumiy zaiflik va tajovuzlarni aniqlash kiradi. Bu kurs haqiqiy xavfsiz tizimning ishini o'rganish bilan yakunlanadi. Talabalarga xavfsizlik adabiyotlaridan maqolalar o'qish va ularni ma'ruzalarda berilgan materiallarga qo'llash talab qilinadi. (4 credits) Old shart: CS 401 yoki kafedraning roziligi.

  • Korxona me'morchiligi (CS 544)

    Ushbu kurs katta miqyosli korporativ dasturlarni ishlab chiqishda foydalaniladigan printsiplar va amaliyotlarni o'rgatishga qaratilgan. Ob'ektni o'zaro bog'liqlashtiradigan (ORM), bog`likni qarshi (DI), aspektga asoslangan dasturlash (AOP) va boshqa ilovalar bilan Web Servislari (RESTfull (RESTfull)) orqali integratsiyalashgan turli me`yoriy me`yorlarni ko`rib chiqamiz. va SOAP), Messaging va masofadan boshqarish usuli. İlişkisel ma'lumotlar bazalari va SQL haqida ish bilimlari bo'lishi kerak. Agar sizda kuchli kurs yoki SQL haqida yaxshi ma'lumot bo'lmasa, EAga ro'yxatdan o'tishdan oldin siz CS422 DBMS uchun ro'yxatdan o'tishingiz kerak. (4 ta)

  • Mashinasozlik (Ma'lumot Bilimi) (CS 582)

    Mashinani o'rganish, kompyuterlarni ma'lumotlardan o'rganish qobiliyatiga ega bo'lgan o'rganish sohasi, deyarli barcha ilmiy intizomlarning markazida, va ma'lumotlardan umumlashma (ya'ni taxmin qilish) o'rganish mashinani o'rganishning asosiy mavzusi. Bu kurs mashinani o'qitish va mashinani o'qitishning yangi va ilg'or usullarini, shuningdek ularning asosiy nazariyasini chuqur qamrab olish uchun magistr darajasida kirishni taqdim etadi. Bu amaliy ahamiyatga ega bo'lgan yondashuvlarga urg'u beradi va Data Mining (Big Data / Data Science, Data Analytics), Natural Language Processing, Computer Vision, Robotics, Bioinformatics, Text and Web Ma'lumotlarni ishlash kabi kompyuterdan foydalanishning bir nechta ilovalarini muhokama qiladi. Mashinani o'rganish moliya xizmatlari, neft va gaz, sog'liqni saqlash, marketing va reklama, davlat, Internet va Internet narsalar kabi turli sohalarda qo'llaniladi.

    Ushbu kurs turli xil paradigmalar, algoritmlar, nazariy natijalar va ilovalarni qamrab oladi. Sun'iy razvedka, axborot nazariyasi, statistika va nazorat nazariyasidagi asosiy tushunchalarni mashina o'qitish bilan bog'liq bo'lganidek foydalanadi. Mavzular quyidagilarni o'z ichiga oladi: boshqariladigan o'rganish (generative / discriminative learning, parametric / non-parametric learning, nerv tarmoqlari, qo'llab-quvvatlovchi vektorli mashinalari, qaror daraxti, bayes o'rganish va optimallashtirish); tekshirilmagan o'rganish (klasterlash, o'lchamlarni kamaytirish, yadro usullari); o'rganish nazariyasi (bios / variance-mulohazalar, VC nazariyasi, katta chegaralar); takomillashtirish va adaptiv nazorat. Boshqa mavzular orasida HMM (Yashirin Markovlar modeli), Evolyutsion hisoblash, Deep Learning (Neural Nets bilan) va ishlashi asosiy kompyuterni o'rganish muammolari uchun qat'iyan tahlil qilinishi mumkin algoritmlarni o'z ichiga oladi.

    Kursning muhim qismi - guruh loyihasi. Parallel, taqsimlanadigan va ölçeklenebilir kompyuter ta'lim uchun ishlatiladigan asosiy ochiq-oydin manba vositalari, loyiha qilgan talabalarga yordam berish uchun qisqacha qamrab olinadi. (4 ta). Talablar: yo'q.

  • Mobil qurilma dasturlash (CS 473)

    Mobil qurilma dasturlarining ahamiyati so'nggi yillarda dasturiy ta'minotni ishlab chiqishda yangi domen sifatida paydo bo'ldi. Ushbu kurs talabalarni iPhone, IPad yoki Android telefon kabi mobil qurilmalarda ishlaydigan ilovalarni ishlab chiqishga tayyorlaydi. Bu tez rivojlanayotgan bozor. Kurs mobil ilovalarni o'rnatish, ishlab chiqish, sinovdan o'tkazish va tarqatishga qaratilgan. Kursning oxirida talabalar yopiq platformalar uchun ilovani ishlab chiqishlari, ularni simulyatsiya qilishlari, haqiqiy qurilmada sinab ko'rishlari va foydalanuvchilarning mavjudligi uchun ilovalar do'konida nashr etishlari mumkin. (4 ta) Old shart: CS472 yoki kafedraning roziligi.

  • Zamonaviy veb-ilovalar (CS 572)

    Ushbu kursda SPA (Rezultiv dasturlash me'morchiligi) va yagona Zamonaviy veb-ilovani yaratish uchun barcha kerakli ko'nikmalar bilan tanishasiz. Texnologiyalar quyidagilardir: NodeJS, ExpressJS, TypeScript, AngularJS2, Firebase va NoSQL ma'lumotlar bazalari (MongoDB). Kurs quyidagilarni qamrab oladi:

    • C ++ V8 dvigatellari va asenkron kodi Node va tugun hodisasi aylanasida qanday ishlaydi?
    • O'zingizning kodingizni qayta ishlatish va modullar va ExpressJS yordamida Restful APIni qurish uchun qanday qurish kerak.
    • NoSQL ma'lumotlar bazalari qanday ishlaydi: Mongo Shell, yig'ish asoslari, replikatsiya to'plamlari, kümeleme, sharslar, Mongoose ORM.
    • Ruxsat etilgan RxJs dasturlari va mavzular, Soya DOM, Mintaqalar, Modul va Komponentlar, Maxsus Direktifler va Quvurlar, Xizmatlar va Bağımlılık qarshi, burchakka Derleyici, JIT va AOF Derleme bilan qanday ishlashini anglab (Google tomonidan qo'llab-quvvatlanadigan), chuqur tushunish. , Shakllar (Template Driven and Data Driven), Ma'lumot ulash, Yonaltiruvchi, Himoyachilar va Route Protection, HTTP mijozi, JWT JSON Web-Token Authentication.

    (4 ta)

  • Operatsion tizimlar (CS 465)

    Operatsion tizim kompyuter tizimining markaziy resurslarini boshqaradi va ularni alohida foydalanuvchilarga ajratadi. Kurs mavzularida ketma-ketlik va bir-biriga o'xshash jarayonlar, o'zaro dışlama, manba almashish, protsedura hamkorlik, qulflash, resurslarni taqsimlash, protsessor rejalashtirish, xotira boshqaruvi, segmentatsiya va diskretlashtirish algoritmlari, vaqtni boshqarish tizimlari, rejalashtirish algoritmlari va resurslarni muhofaza qilish kiradi. (4 ta) Old shart: CS 401 yoki kafedraning roziligi.

  • Parallel dasturlash (CS 471)

    Barcha yangi kompyuterlar uchun standart protsessor endi ko'p yadroli protsessor bo'lib, dasturlarni juda tez bajarish imkoniyatiga ega. Shu bilan birga, ushbu potentsialdan foydalanish uchun dasturchilar parallel dasturlash texnikasi haqida bilishlari kerak. Ushbu kurs davomida talabalar paralel dasturlarni yozish va disk raskadrovka qilishning ko'p vaqtini o'tkazadilar. Kutilayotgan natija amaliy dasturiy ko'nikmalarning yangi bosqichini ishlab chiqishdan iborat bo'ladi. Bu ko'nikma ko'p yadroli protsessorlarni dasturlash uchungina emas, balki operatsion tizimlarni dasturlash va ma'lumotlar bazasini tarqatish uchun ham foydali bo'ladi. Ushbu kurs davomida ishlatiladigan dasturiy vositalar orasida Microsoft Visual C / C ++, Java multithreading kutubxonasi va OpenMP threading standarti mavjud. (4 ta) Old shart: Java, C yoki C ++ yordamida kompyuter dasturlarini bilish.

  • Dasturiy ta'minot arxitekturasi (CS 590)

    Ushbu kursda biz mikroservislarni ishlatib, moslashuvchan, o'lchovli, testlangan va moslashuvchan dasturiy tizimlarni ishlab chiqishning texnikasi, tamoyillari va naqshlarini ko'rib chiqamiz. Katta hajmli ilovalarni bir tekis korporativ dasturlarga nisbatan kichikroq mikroservislarga ajratish va boshqa afzalliklarni qanday bo'lishini o'rganamiz. Bir tarqatilgan mikroservis arxitekturasi ham ko'plab qiyinchiliklarni keltirib chiqarmoqda. Biz ushbu muammolarni va ularga qanday murojaat qilishni o'rganamiz. Kursning mavzusi me'moriy uslublar, integratsiya texnikasi va naqshlari, domenga yo'naltirilgan dizayn, hodisalarga asoslangan arxitektura va reaktiv dasturlashdir. (4 credits). (Old shartlar yo'q)

  • Dasturiy ta'minotni ishlab chiqishda amaliyot (CS 575)

    Ushbu amaliy kursda talabalar texnik vazifalarni bajarish uchun kompyuter bilan bog'liq vazifalarni bajaradilar. Qo'yilgan vazifalar yangi tizimlarni ishlab chiqishda va ishlab chiqishda yoki muayyan maqsadlar uchun mavjud tizimlarni qo'llashda bo'lishi mumkin. Amaliy ish ta'riflari ish beruvchi va talaba tomonidan shakllantiriladi va talabaning joylashtirilgan amaliyot maslahatchisi bilan maslahatlashuvida kafedraning bitiruvchi fakultetidan birining oldindan roziligini talab qiladi. (Bu kurs asosan stajirovka yoki kooperativ dasturlarda talabalar uchun mo'ljallangan) (har bir blok uchun 0.5-1 bloklar - takrorlanishi mumkin).

"MSCS dasturini birinchi marotaba eshitganimga shubha qildim. Men bunga o'xshash biror narsaga ishonmayman. Lekin, bir kun mening do'stim dasturga qo'shildi. Bu haqiqat ekanligini tasdiqlaganimda edi. Keyin mening ariza berish jarayonini qaytadan boshladim. Yaxshi! To'g'ri, men shu erdaman, dasturni tugatdim va men juda baxtliman. "

Edwin BwambaleUganda