Դուք պատրաստ եք Advance ձեր կարիերան

Մեր ծրագիրը մասնագիտանում է ծրագրային համակարգերի և ծրագրային ապահովման մշակման ոլորտներում ՝ օգտագործելով OOP (Java) և վեբ ծրագրեր ՝ տվյալների գիտության որոշ դասընթացների հետ միասին: Ուսումնասիրության հիմնական ոլորտներն են ՝ առաջադեմ ծրագրային ապահովման մշակում, վեբ կիրառական ծրագրավորում և ճարտարապետություն, տվյալների գիտության որոշ դասընթացներ և կիրառման մի քանի կարևոր ոլորտներ:

Բոլոր դասընթացները նախատեսված են, որոնք կօգնեն ձեզ զարգացնել ձեր կարիերան եւ յուրաքանչյուր դասընթաց պարունակել գործնական հանձնարարություններ: Դիտել ավարտական ​​պահանջներ:

Տվյալների գիտության դասընթացներ

Ստանդարտ Core դասընթացներ

  • Այս դասընթացը ներկայացնում է օբյեկտի վրա հիմնված ծրագրավորման հիմնարար սկզբունքները: Ուսանողները կսովորեն, թե ինչպես պետք է գրել նորից եւ ավելի լավ պահպանվող ծրագրեր, եւ այդ գիտելիքները ինտեգրվել լաբորատոր հանձնարարությունների եւ նախագծերի հետ: Թեմաները ներառում են `օբյեկտի վրա հիմնված ծրագրավորման հիմնարար սկզբունքները եւ մոդելները, UML դասակարգային դիագրամները եւ նախագծման սկզբունքները, որոնք նպաստում են ծրագրային ապահովման կրկնօրինակման եւ կայունության ապահովմանը: (4 միավոր)

  • Այս դասընթացը ներառում է ծրագրային ապահովման համակարգերի լավ նախագծման մեթոդներն ու պրակտիկան: Թեմաները ներառում են `ծրագրային նախագծման նախշերով, շրջանակների, ճարտարապետների եւ նախագծման համակարգեր, որոնք կիրառելու են այս բազմաբնույթ մակարդակները: (2-4 վարկ) Նախադրյալ `CS 401 կամ բաժնի ֆակուլտետի համաձայնությունը:

  • Այս դասընթացը ներկայացնում է ալգորիթմների արդյունավետության վերլուծության մեթոդներ (ներառյալ ամենավատ դեպքերն ու միջին դեպքերի վերլուծությունը) եւ ներկայացնում են մի շարք հայտնի, բարձր արդյունավետ ալգորիթմներ: Ալգորիթմների վերլուծությունը, դիզայնը եւ իրականացումը հավասար շեշտադրում են: Թեմաներ են ներառում տվյալների կառուցվածքների (ներառյալ ցուցակները, hashtables, հավասարակշռված երկուական որոնման ծառեր, առաջնային հերթեր), գրաֆի ալգորիթմների, համադրիչ ալգորիթմների, կրկնության հարաբերությունները, դինամիկ ծրագրավորման, NP- ամբողջական խնդիրների եւ որոշակի հատուկ թեմաների որոնման եւ տեսակավորման, արդյունավետության մասին: թույլ է տալիս: (Հատուկ թեմաներ են `հաշվարկային երկրաչափություն, գաղտնագրման համակարգերի ալգորիթմներ, մոտավորություն, մեծ տվյալների եւ զուգահեռ հաշվարկներ):

  • Այս դասընթացը կենտրոնանում է ավելի մեծ ձեռնարկատիրության ծրագրերի մշակման ժամանակ օգտագործվող սկզբունքներին եւ գործելակերպներին ուսուցանելու վրա: Մենք կքննարկենք այն տարբեր ճարտարապետական ​​շերտերը, որոնք հաճախ օգտագործվում են եւ այդ շերտերի հետ կապված տարբեր տեխնոլոգիաներ, այդ թվում `օբյեկտի հարաբերական քարտեզագրում (ORM), կախվածության ներարկում (DI), օպտիկական կողմնորոշված ​​ծրագրավորում (AOP) եւ այլ ծրագրերի հետ ինտեգրումը վեբ ծառայություններով (RESTfull եւ SOAP), Messaging եւ հեռակա մեթոդի հրավիրում: Պետք է ունենալ աշխատանքային գիտելիքներ հարակից տվյալների բազաների եւ SQL- ի մասին: Եթե ​​դուք չունեք SQL- ի լավ դասընթաց կամ լավ աշխատանքային գիտելիքներ, պետք է գրանցեք CS422 DBMS- ի համար, նախքան EA- ին գրանցելը: (4 միավոր)

  • Ծրագրային ապահովման ճարտարագիտությունը դասընթաց է, որը ուսանողներին ներկայացնում է ծրագրային ապահովման մշակման լավագույն փորձը `ծրագրային ապահովման մշակման մեթոդաբանությամբ: Ուսանողները նախորդ դասընթացներում արդեն ունեցել են որոշակի փորձ `Օբյեկտի վրա հիմնված պարադիգմով եւ օգտագործվել են հիմնական UML դիագրամներից որոշ ծրագրային օբյեկտների միջեւ հարաբերությունների մոդելավորման նպատակով: Ծրագրավորման ճարտարագիտության մեջ ուսանողը կկարողանա հմտություններ զարգացնել այդ գործիքների միասին դնելով կայուն, հեշտությամբ պահպանվող ծրագրային ապահովման համար: Ծրագրային ապահովման մշակման մեթոդաբանությունը նկարագրում է, թե երբ եւ ինչպես պետք է օգտագործվի OO- ի հասկացությունները եւ UML- ի դիագրամները, որպեսզի ապահովեն որակյալ ծրագրային ապահովման ստեղծումը: Դասընթացը կենտրոնում է մի փոքրիկ նախագծի շուրջ, որտեղ դասախոսության ձեւաչափում քննարկվող սկզբունքները կարելի է նկարագրել եւ կիրառել: Դասընթացի ավարտին ուսանողը կունենա վազող ծրագիր, որը կառուցված է RUP (Rational Unified Process) զարգացման մեթոդաբանության բարձր չափանիշներին համապատասխան:

  • Այս դասընթացը կենտրոնացնում է վեբ հավելվածները ձեռնարկության ընդլայնման մեջ: Ընկերության հայտը խոշոր ծրագրային համակարգ է, որը նախատեսված է գործել որպես խոշոր կազմակերպություն, օրինակ `կորպորացիա կամ կառավարություն: Ձեռնարկությունների կիրառական ծրագրերը բարդ են, մասշտաբային, բաղադրիչ վրա հիմնված, բաշխված եւ առաքելություն: Այս դասընթացը CS545- ն կենտրոնանում է կորպորատիվ վեբ հավելվածի ճակատային ավարտին կամ ներկայացման շերտի վրա: CS544 Enterprise Architecture- ը ուղեկցող դասընթաց է, որը կենտրոնանում է հետեւի կամ գործարար շերտի վրա, ներառյալ բիզնես տրամաբանությունը, գործարքները եւ համառությունը: CS472, Web Application Programming- ը նախապայման է, որը ներառում է HTML, CSS, JavaScript, servlets եւ JSP:

    Դասընթացը դասավանդում է սկզբունքներ եւ օրինակներ, որոնք ընդհանուր են հարթակներում եւ շրջանակներում: Դասընթացը կքննարկի եւ աշխատի երկու հիմնական Java վեբ շրջանակների, Java Server Faces- ի (JSF) եւ SpringMVC- ի հետ: JSF- ը բաղադրիչ հիմք է հանդիսանում եւ հանդիսանում է Java Enterprise Edition տեխնոլոգիական բլոկի պաշտոնական ներկայացման շրջանակի հստակեցում: SpringMVC- ը Core Spring- ի շրջանակն է եւ վերջին տարիներին դարձել է առավել լայնորեն կիրառվող Java վեբ շրջանակ: (4 միավոր) Նախադրյալ. CS 472 կամ բաժնի ֆակուլտետի համաձայնությունը:

  • Այս դասընթացը համակարգված ներդնում է ինտերակտիվ և դինամիկ վեբ հավելվածների ծրագրավորումը: Դասընթացը նախատեսված է անհատների համար, ովքեր քիչ են կամ չունեն նախնական վեբ-ծրագրավորման ծրագրավորման փորձ: Այս առաջարկը կօգտագործի Java սերվլետներ և JSP սերվերների կողմից մշակման համար: Դասընթացը կներկայացնի HTML և CSS: JavaScript- ը դասընթացի առանցքն է և ընդգրկված է որպես ֆունկցիոնալ ծրագրավորման լեզու, ներառյալ jQuery, Ajax և JavaScript անվանումները և մոդուլները: Դա նախապայման է CS545 վեբ կիրառական ճարտարապետության համար: Այն չի ընդգրկում AngularJS կամ NodeJS, բայց այստեղ ընդգրկված JavaScript- ը ձեզ կպատրաստի սովորել այդ տեխնոլոգիաները: (4 միավոր)
    Նախադրյալ `CS 220 կամ CS 401 կամ բաժնի ֆակուլտետի համաձայնություն:

  • Ձեր առաջին դասընթացը հատուկ մշակված է հիմք ստեղծելու, թե ինչպես կարող եք դառնալ համակարգչային գիտությունների առաջատար մասնագետ: Դասընթացը հիմնված է տրանսցենդենտալ մեդիտացիայի պրակտիկայում, որը հանգեցնում է ձեր իրական ներուժի իրականացմանը: Դուք կսովորեք TM- ի օգուտների մասին, ներառյալ բարդ խնդիրները լուծելու ունակությունը `բարձրակարգ մտավոր գործառույթով, բարձրացնելով ստեղծագործականությունը և« արկղից դուրս »մտածողությունը: Դասընթացը կկենտրոնանա այն սկզբունքների վրա, որոնք հիմնավորում են գործունեության գագաթնակետային կատարումը `զարգացնելով հանգստի և գործունեության օպտիմալ խառնուրդ: Դուք կմշակեք և կզգաք իդեալական առօրյան, որն աջակցում է կյանքում հաջողությանը: (2 միավոր)

  • Դասընթացի նպատակն է ուսանողներին ապահովել գիտելիքներ եւ հմտություններ առաջնորդության մեջ, ներառյալ հաղորդակցման հմտությունները, որպես ապագա ղեկավարության դերերի նախապատրաստում:

    Դասընթացի ավարտին ուսանողները կկարողանան հասկանալ արդյունավետ ղեկավարության վերաբերյալ հիմնական հարցերի պատասխանները, ներառյալ հետեւյալը.

    Արդյոք «բնականորեն ծնված» առաջնորդներ կան:

    Դուք պետք է ունենաք խարիզմություն արդյունավետ կառավարելու համար:

    Ինչպիսի ակտիվ պետք է լինի առաջնորդ:

    Որն է տարբերությունը կառավարելու եւ ղեկավարելու միջեւ:

    Որոնք են այս դարաշրջանում առաջնորդելու շատ «մտավորականներ»:

    Ինչ է «կառավարման սխալը» եւ ինչպես է այն հանգեցնում ինքնասպասարկման:

    Իմանալով, որ այդ կարծիքը կարեւոր է առաջատար գործընթացի համար, ինչպես ենք ստանում այն ​​վախը տալուց եւ ստանալուց:

    Ինչ է աշխատավայրում հայտնաբերված խնդիրների 80% -ի աղբյուրը:

    Կա՞ արդյոք գիտական ​​հետազոտություն, որն օգնում է կազմակերպությանը բարելավել իր անհատական ​​և թիմային լիդերության հմտությունները:

    Հյուրընկալող բանախոսները կներառեն հեղինակավոր գործարարներ, համակարգչային գիտնականներ, բարերարներ, ակադեմիկոսներ եւ հասարակության մյուս հայտնի առաջնորդներ:

    (2 միավոր)

Լրացուցիչ MSCS դասընթացներ

  • Այս դասընթացը ծրագրավորման լեզուների դիզայնի առաջադեմ թեմաներ է համարում `շեշտադրելով պաշտոնական մեթոդներին եւ քանդման մեխանիզմներին: Թեմաները ներառում են տվյալների եւ վերահսկողության հստակեցում, սինթետիկ եւ սեմինիստական ​​ֆորմատի հստակեցում, ծրագրերի ճշգրտության ապացույցներ, ոչ deterministic ծրագրավորում, առաջադեմ հսկողության կառույցներ եւ հատուկ լեզուների ուսումնասիրություն: (4 միավոր) Նախադրյալ. CS 401 կամ բաժնի ֆակուլտետի համաձայնությունը:

  • Ժամանակակից տեղեկատվության վերամշակումը որոշվում է տվյալների մեծ պաշարներով, որոնք չեն կարող վարվել ավանդական տվյալների բազայի համակարգերով: Այս դասընթացը ներառում է վերջին տեխնոլոգիան, որը մշակվել եւ օգտագործվել է ոլորտի առաջատարների կողմից `այս խնդիրը առավել արդյունավետ լուծելու համար: Հատուկ թեմաները ներառում են MapReduce ալգորիթմներ, MapReduce ալգորիթմների նախագծման նախշերով, HDFS, Hadoop կլաստերային ճարտարապետություն, YARN, computing հարաբերական հաճախություններ, երկրորդական դասավորում, վեբ զննում, անջատված ինդեքսներ եւ ինդեքսի սեղմում, Spark ալգորիթմներ եւ Scala: (4 միավոր) Նախադրյալ `CS 435 ալգորիթմներ:

  • Big Data- ը նոր բնական ռեսուրս է, տվյալները կրկնապատկվում են յուրաքանչյուր 12-18 ամիս: Այս նոր Big Data Analytics դասընթացը ներառում է նոր հասկացություններ ստեղծելու համար խոշոր բազմազան տվյալների հավաքածուների հենքի եւ հիմնական հասկացությունների համար: Դուք կարող եք տիրապետել R լեզվի օգտագործմանը, որպեսզի ստեղծել Wordcloud, Pagerank, Data Visualization, Decision Trees, Regression, Clustering, Neural Networks եւ այլն: Դուք աշխատելու եք մի քանի խոշոր բազմամիլիոն ռեկորդային տվյալների, ինչպես նաեւ Twitter- ի թարմացումների հետ: Դուք կսովորեք Hadoop / MapReduce եւ Streaming Data հասկացությունները եւ կքննարկեք այլ Apache Մեծ Տվյալների նախագծեր, ինչպիսիք են Spark, Flink, Kafka, Storm, Samza, NoSQL- ը անհատական ​​հետազոտական ​​փաստաթղթերի միջոցով: Դուք կաշխատեք Kaggle.com- ից բաց ծրագրերի խմբերում, որպեսզի մրցեք դրամական պարգեւի համար `լուծելու լավագույն տվյալների վերլուծական մարտահրավերները: Դուք նաեւ կսովորեք օգտագործել ոլորտի առաջատար IBM SPSS Modeler- ը եւ բաց կոդով տվյալների հանքարդյունաբերական հարթակները: Այս դասարանում օգտագործվող #1 դասի բեսթսելլերը գրված է հրահանգչի կողմից: Դասընթացը կօգտագործի նաեւ MIT- ի, Coursera- ի, Google- ի եւ այլ տեղերից տեսանյութերի լայն տեսականի: (4 միավոր) Նախադրյալ. Բաժանմունքի ֆակուլտետի համաձայնությունը

  • Մի քանի կարճ տարիների ընթացքում խոշոր տվյալների տեխնոլոգիաներն անցել են նորագույն թվային տարիքի հիմնական բաղադրիչներից մեկը: Այս տեխնոլոգիաները շատ օգտակար են տեղեկատվությունը Գիտելիքի փոխակերպման համար:

    Դասընթացի նպատակն է ձեր զինանոցում ավելացնել մի քանի իսկապես կարևոր գործիքներ, որոնք կօգնեն ձեզ լուծել մեծ տվյալների տարբեր խնդիրներ: Մենք կսկսենք պատասխանել այն հարցերի, ինչպիսիք են «Ի՞նչ է մեծ տվյալները. Ինչու է դա կարևոր կամ օգտակար: Ինչպե՞ս եք պահում այս մեծ տվյալները »: Դրանից հետո մենք կուսումնասիրենք տարբեր գործիքների և ծրագրավորման մոդելների տվյալների մեծ տեխնոլոգիական կույտից, որոնք կօգնեն մեզ վերլուծել տվյալները: Թեմաները ներառում են Hadoop էկոհամակարգի որոշ նախագծեր, ինչպիսիք են MapReduce, Pig, Hive, Sqoop, Flume, HBase (NoSQL DB), Zookeeper և Apache Spark էկոհամակարգի նախագծերը: Մենք նաև կներկայացնենք AWS- ի և EMR- ի ներածությունը: Դուք հիմնականում աշխատելու եք Cloudera- ի Hadoop- ի մեկ հանգույցի բաշխման հետ: (4 միավոր) (նախադրյալներ չկան)

  • Այս դասընթացի նպատակն է սովորել համակարգչային ցանցերի հասկացությունները, ճարտարապետության սկզբունքները և տերմինաբանությունը ՝ ուսումնասիրելով ցանցերի աշխատանքը, զարգացնելով ցանցային ծրագրեր: Այս դասընթացը հետևում է ցանցերը հասկանալու վերևից ներքև մոտեցմանը ՝ օգտագործելով Ինտերնետի ճարտարապետությունն ու արձանագրությունները ՝ որպես ցանցային սկզբունքների իրականացման առաջնային օրինակ: Մենք սկսում ենք կիրառման շերտից և շարունակում ենք համակարգչային ցանցերի տրանսպորտային շերտի, ցանցի շերտի, հղման շերտի և ֆիզիկական շերտի միջով: Ուսանողները մշակում են մի քանի ցանցային ծրագրեր և լրացնում են մի քանի լաբորատորիաներ, որոնք նախատեսված են ինտերնետում օգտագործվող գերակշռող ցանցային արձանագրությունները հետևելու և հասկանալու համար: (4 միավոր) Նախադրյալ ՝ CS 401 կամ բաժնի ֆակուլտետի համաձայնություն:

  • Այս դասընթացը խորապես ներառում է համակարգչային անվտանգության երեք ասպեկտները `գաղտնիությունը, ամբողջականությունը եւ մատչելիությունը: Սովորում են գաղտնի եւ ամբողջական անվտանգության քաղաքականության մի քանի մոդելներ: Գաղտնիության եւ ամբողջականության ապահովման գործում գաղտնագրման դերն ուսումնասիրվում է: Այլ թեմաները ներառում են վավերացում, աուդիտ, ներթափանցման փորձարկում, ընդհանուր խոցելիություններ եւ ներխուժման հայտնաբերում: Դասընթացը եզրափակվում է իրատեսական անվտանգ համակարգի դեպքերի ուսումնասիրությամբ: Ուսանողներին կառաջարկվեն կարդալ փաստաթղթերը անվտանգության գրականության մեջ եւ դրանք կիրառել դասախոսության մեջ ներկայացված նյութի նկատմամբ: (4 վարկ) Նախադրյալ. CS 401 կամ բաժնի ֆակուլտետի համաձայնությունը:

  • Տվյալների բազայի համակարգերը կազմակերպում եւ ստանում են տեղեկատվություն, որը թույլ է տալիս օգտվողին մուտք գործել ցանկալի տեղեկատվությունը հեշտ եւ արդյունավետ: Թեմաներ են ներառում `հարաբերական տվյալների մոդելը. SQL; ER մոդելավորում; հարաբերական հանրահաշիվ; տվյալների կարգավորումը; գործարքներ; տվյալների բազայում օբյեկտներ; տվյալների անվտանգություն եւ ամբողջականություն; տվյալների պահեստավորում, OLAP եւ տվյալների հանքարդյունաբերություն; բաշխված տվյալների բազաներ; եւ ուսումնասիրել կոնկրետ առեւտրային տվյալների բազայի համակարգը: (4 միավոր) Նախադրյալ. CS 401 կամ բաժնի ֆակուլտետի համաձայնությունը:

  • Մեքենայական ուսուցումը ՝ ուսումնադաստիարակչական ոլորտը, որը համակարգիչներին տալիս է տվյալներից սովորելու կարողություն, գրեթե յուրաքանչյուր գիտական ​​առարկայի հիմքում է, իսկ տվյալների ընդհանուրացման (այսինքն ՝ կանխատեսման) ուսումնասիրությունը մեքենայական ուսուցման կենտրոնական թեման է: Այս դասընթացը շրջանավարտ մակարդակով ներկայացնում է մեքենայական ուսուցումը և մեքենայական ուսուցման նոր և առաջադեմ մեթոդների խորը լուսաբանումը, ինչպես նաև դրանց հիմքում ընկած տեսությունը: Այն շեշտադրում է գործնական կարևորություն ունեցող մոտեցումները և քննարկում է մեքենայական ուսուցման մի շարք վերջին կիրառություններ, ինչպիսիք են տվյալների արդյունահանումը (Big Data / Data Science, Data Analytics), Natural Language Processing, Computer Vision, Robotics, Bioinformatics և Text and Web տվյալների մշակումը: Մեքենայական ուսուցումն օգտագործվում է տարբեր արդյունաբերություններում, այդ թվում ՝ Ֆինանսական ծառայություններ, նավթ և գազ, առողջապահություն, մարկետինգ և գովազդ, կառավարություն, ինտերնետ և իրերի ինտերնետ:

    Այս դասընթացն ընդգրկում է ուսման մի շարք պարադիգմներ, ալգորիթմներ, տեսական արդյունքներ և ծրագրեր: Այն օգտագործում է արհեստական ​​ինտելեկտի, տեղեկատվության տեսության, վիճակագրության և կառավարման տեսության հիմնական հասկացությունները այնքանով, որքանով դրանք կարևոր են մեքենայական ուսուցման համար: Թեմաները ներառում են. Վերահսկվող ուսուցում (գեներատիվ / խտրական դասընթաց, պարամետրային / ոչ պարամետրիկ ուսուցում, նեյրոնային ցանցեր, օժանդակ վեկտորային մեքենաներ, որոշումների ծառ, բայեզյան ուսուցում և օպտիմիզացում); չվերահսկվող ուսուցում (կլաստերացում, ծավալայնության կրճատում, միջուկի մեթոդներ); ուսման տեսություն (կողմնակալության / շեղման փոխզիջումներ; VC տեսություն; մեծ լուսանցքներ); ուժեղացման ուսուցում և հարմարվողական վերահսկողություն: Այլ թեմաները ներառում են HMM (Hidden Markov Model), Evolutionary Computing, Deep Learning (Neural Nets) և նախագծման ալգորիթմներ, որոնց կատարումը կարող է խստորեն վերլուծվել մեքենայական ուսուցման հիմնարար խնդիրների համար:

    Դասընթացի կարեւոր մասն է խմբի նախագիծը: Զուգահեռ, բաշխված եւ չափելի մեքենաների ուսուցման համար օգտագործվող հիմնական բաց կոդով գործիքները կարճ ժամանակով կներկայացվեն, որպեսզի ուսանողները օգնի ծրագրերին: (4 միավոր) Նախադրյալ. Ոչ:

  • Շարժական սարքի ծրագրավորման կարեւորությունը վերջին տարիներին առաջացել է որպես ծրագրային ապահովման զարգացման նոր տիրույթ: Այս դասընթացը ուսանողներին պատրաստում է զարգացնել ծրագրեր, որոնք աշխատում են շարժական սարքերում, ինչպիսիք են IPhone, iPad կամ Android հեռախոսները: Սա արագ զարգացող շուկա է: Դասընթացը կենտրոնանում է բջջային ծրագրերի տեղադրման, մշակման, փորձարկման եւ բաշխման վրա: Այս դասընթացի ավարտին ուսանողները կարողանում են մշակել ծրագրեր, որոնք ընդգրկված են, դրանք մոդելավորել, ստուգել դրանք իրական սարքի վրա եւ վերջապես հրատարակել հավելվածի խանութը, օգտագործողների համար մատչելի դարձնելու համար: (4 միավոր) Նախադրյալ. CS472 կամ բաժնի ֆակուլտետի համաձայնությունը:

  • Այս ընթացքում դուք կկարողանաք իմանալ ՍՊԱ (Single Page Web Applications) ռեակտիվ ծրագրավորման ճարտարապետությունը եւ բոլոր անհրաժեշտ հմտությունները `ամբողջական արդի վեբ հավելված ստեղծելու համար: Տեխնոլոգիաները ներառում են `NodeJS, ExpressJS, TypeScript, AngularJS2, Firebase եւ NoSQL տվյալների բազաները (MongoDB): Դասընթացը կներառի.

    • Ինչպես C ++ V8- ի շարժիչն ու ասինխրոն կոդը աշխատում են հանգույցում եւ հանգույցի իրադարձության հանգույցում:
    • Ինչպես կառուցել ձեր կոդը վերագործարկման համար եւ կառուցել հանգստացող API `մոդուլների եւ ExpressJS- ի միջոցով:
    • Ինչպես է գործում NoSQL տվյալների բազա. Mongo Shell, համախմբման հիմունքներ, Replica Sets, Clustering, Shards, Mongoose ORM:
    • Խորը հասկացողություն, թե ինչպես է անկյունային (աջակցում է Google- ի կողմից), փոփոխության հայտնաբերում, ռեակտիվ RxJs- ի ծրագրավորում, դիտորդների եւ առարկաների հետ, ստվերային DOM, գոտիներ, մոդուլներ եւ բաղադրիչներ, մաքսային հրահանգներ եւ խողովակներ, ծառայություններ եւ կախվածության ներարկում, անկյունային կոմպիլյատոր, JIT եւ AOF կազմելը , Ձեւաթղթեր (Կաղապար ղեկավարվող եւ տվյալների վրա հիմնված), Տվյալների ամրագրումը, Ուղղորդումը, Պահպանողները եւ երթուղու պաշտպանությունը, HTTP հաճախորդը, JWT JSON վեբ տեքստային նույնականացումը:

    (4 միավոր)

  • Օպերացիոն համակարգը վերահսկում է համակարգչային համակարգի կենտրոնական ռեսուրսները և դրանք հատկացնում առանձին օգտագործողներին: Դասընթացի թեմաները ներառում են հաջորդական և միաժամանակյա գործընթացներ, փոխադարձ բացառում, ռեսուրսների փոխանակում, գործընթացների համագործակցություն, փակուղի, ռեսուրսների բաշխում, պրոցեսորների պլանավորում, հիշողության կառավարում, սեգմենտավորման և էջերի տեղադրման ալգորիթմներ, ժամանակի բաժանման համակարգեր, ժամանակացույցի ալգորիթմներ և ռեսուրսների պաշտպանություն: (4 միավոր) Նախադրյալ ՝ CS 401 կամ բաժնի ֆակուլտետի համաձայնություն:

  • Բոլոր նոր համակարգիչների ստանդարտ պրոցեսորը այժմ բազմակողմանի պրոցեսոր է, որն ունի ավելի արագ ծրագրեր իրականացնելու ներուժ: Այնուամենայնիվ, օգտագործելու այս ներուժը, ծրագրավորողը պետք է ունենա զուգահեռ ծրագրավորման տեխնիկայի որոշակի գիտելիքներ: Այս դասընթացի ընթացքում ուսանողները կկատարեն ժամանակի մեծ մասը զուգահեռ ծրագրեր գրելու եւ կարգաբերելու համար: Ակնկալվող արդյունքը կլինի գործնական ծրագրավորման հմտության նոր մակարդակի մշակում: Այս հմտությունը ոչ միայն օգտակար կլինի բազմաֆունկցիոնալ պրոցեսորների ծրագրավորման, այլեւ օպերացիոն համակարգերի ծրագրավորման եւ բաշխված տվյալների բազայի ծրագրավորման համար: Այս դասընթացի ընթացքում օգտագործված ծրագրային գործիքները ներառում են Microsoft Visual C / C ++, Java multithreading գրադարան եւ OpenMP սեղմման ստանդարտ: (4 միավոր) Նախադրյալ. Համակարգչային ծրագրավորման իմացություն, օգտագործելով Java, C կամ C ++:

  • Այս ընթացքում մենք կանդրադառնանք միկրոալիքային ծառայություններ օգտագործող ճկուն, լայնածավալ, փորձարկելի եւ ճկուն ծրագրային համակարգերի նախագծման մեթոդներին, սկզբունքներին եւ ձեւերին: Մենք կսովորեցնենք, թե ինչպես կարող ենք խոշոր ծրագրեր բաժանել ավելի փոքր միկրոային ծառայությունների, որոնք ավելի հեշտ են կառուցել եւ այլ առավելություններ, համեմատած մոնոլիտ ձեռնարկությունների ծրագրերի հետ: Բաշխված միկրոալիքային ճարտարապետությունը նույնպես շատ մարտահրավերներ է առաջացնում: Մենք կքննարկենք այդ մարտահրավերները եւ դրանց լուծման ուղիները: Այս դասընթացի թեմաներն են ճարտարապետական ​​ոճերը, ինտեգրման տեխնիկան եւ ձեւերը, տիրույթը հիմնված դիզայնը, միջոցառումների վրա հիմնված ճարտարապետությունը եւ ռեակտիվ ծրագրավորումը: (4 վարկ): (Առանց նախապայմանների)

  • Այս պրակտիկ դասընթացում ուսանողները կատարում են համակարգչային խնդիրներ `տեխնիկական մասնագիտական ​​դիրքում: Կատարված խնդիրները կարող են լինել նոր համակարգերի նախագծման և զարգացման կամ առկա համակարգերի ՝ հատուկ նպատակների կիրառման մեջ: Գործնական աշխատանքի նկարագրությունը ձևակերպվում է գործատուի և ուսանողի կողմից և պահանջում է նախապես հաստատել ամբիոնի շրջանավարտ ֆակուլտետներից մեկը ՝ խորհրդակցելով ուսանողի տեղակայված պրակտիկ հանձնաժողովի ղեկավարի հետ: (Այս դասընթացը հիմնականում նախատեսված է պրակտիկայի կամ համագործակցության ծրագրերի ուսանողների համար:) (0.5-1 միավոր յուրաքանչյուր բլոկի համար `կարող է կրկնվել):

«Առաջին անգամ, երբ լսում էի MSCS ծրագրի մասին, կասկածում էի դրանում: Ես չէի կարող հավատալ, որ նման բան կա: Բայց մի օր իմ ընկերներից մեկը միացավ ծրագրին: Դա այն ժամանակ էր, երբ ես հաստատեցի, որ դա իրական է: Հետո ես վերսկսեցի իմ դիմումի գործընթացը: Դե! Իշտ է, ես այստեղ եմ, ծրագիրն ավարտել եմ և այնքան ուրախ եմ »: