Սովորեք «գործնական» հմտություններ ՝ ծրագրաշարերի մշակման վերջին տեխնոլոգիաներով

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

Պատրա՞ստ եք առաջ մղել ձեր կարիերան:

Խորհրդակցելով իրենց խորհրդատուների հետ՝ բոլոր ուսանողներն ընտրում են Հիմնարար դասընթացներ ներքևի ձախ սյունակից, իսկ առաջադեմ դասընթացները՝ աջակողմյան սյունակից:

Համալսարան ժամանելիս ընդունված որակավորման քննությունների հիման վրա միայն ուսանողներն են Նախապատրաստական ​​մուտքի ուղի անհրաժեշտ կլինի մասնակցել 4-շաբաթյա Հիմնական ծրագրավորման պրակտիկաների (CS 390) դասընթացին: FOR 506-ը և CS 401-ը պարտադիր են բոլոր ուսանողների համար: Դիտեք ավարտական ​​պահանջները >

Հիմնարար դասընթացներ

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

  • FPP դասընթացը տրամադրում է կենտրոնացված ծրագիր հինգ ոլորտներում ծրագրավորման և վերլուծական հմտությունների ընդլայնման համար՝ խնդիրների լուծում, տվյալների կառուցվածքներ, օբյեկտի վրա հիմնված ծրագրավորում, Java ծրագրավորման լեզու և ռեկուրսիայի օգտագործում Java ծրագրերում:

    Այս թեմաները հատկապես կարևոր են `որպես Համակարգչային գիտությունների ասպիրանտուրայի դասընթացների նախապայման:

    Թեմաները ներառում են. Java ծրագրավորման տարրեր, օբյեկտիվ կողմնորոշված ​​ձևավորում և իրականացում, տվյալների կառուցվածքներ (ներառյալ ցուցակները, կույտերը, հերթերը, երկուական որոնման ծառեր, հեշ սեղաններ և հավաքածուներ), բացառությունների հիերարխիա, ֆայլերի ներգաղթ և հոսքեր և JDBC: (4 կրեդիտ) Նախադրյալ. Բակալավրիատ ուսանողների համար ՝ CS 221; ասպիրանտների համար. բաժանմունքի ֆակուլտետի համաձայնությունը (4 միավոր)

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

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

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

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

  • Համակարգչային ապագան զուգահեռ է: Հերթական կատարողականի աճը կտրուկ աճել է, քանի որ պրոցեսորների դիզայնը հասել է մանրանկարչության, ժամացույցի հաճախականության, հզորության և ջերմության սահմաններին: 2005 թվականին պրոցեսորային միջուկների թիվը կտրուկ սկսեց աճել մեկ միջուկից մինչև մի քանի միջուկներ՝ ստեղծելով ծրագրերը շատ ավելի արագ իրականացնելու ներուժ: Այնուամենայնիվ, այս ներուժն օգտագործելու համար ծրագրավորողը պետք է որոշակի գիտելիքներ ունենա զուգահեռ ծրագրավորման տեխնիկայի վերաբերյալ:

    Այս դասընթացը ուսանողներին սովորեցնում է զուգահեռ ծրագրավորման հիմնարար հասկացությունները Java 9-ի համատեքստում: Զուգահեռ ծրագրավորումը ծրագրավորողներին հնարավորություն է տալիս օգտագործել բազմամիջուկ համակարգիչներ, որպեսզի իրենց հավելվածներն ավելի արագ աշխատեն՝ օգտագործելով մի քանի միջուկներ միաժամանակ: Այս դասընթացի ավարտին դուք կսովորեք, թե ինչպես օգտագործել հանրաճանաչ զուգահեռ Java շրջանակները (օրինակ՝ Multi-Threading, Streams և Executors) զուգահեռ ծրագրեր գրել բազմամիջուկ հարթակների լայն շրջանակի համար, ներառյալ սերվերները, աշխատասեղանները կամ շարժական սարքերը:

    Այս դասընթացի ընթացքում օգտագործվող ծրագրային գործիքները ներառում են Microsoft Visual Studio-ն, Java multithreading գրադարանը և OpenMP threading ստանդարտը: (4 միավոր) Նախապայման՝ համակարգչային ծրագրավորման իմացություն՝ օգտագործելով Java, C, կամ C++:

    Լրացուցիչ տեղեկությունների համար դիտեք այս դասընթացի պրոֆեսորի կողմից պատրաստված այս հինգ րոպեանոց տեսանյութը.

    https://www.youtube.com/watch?v=dWcWAnn0Ppc

  • Այս դասընթացը համակարգված ներածություն է տալիս ինտերակտիվ և դինամիկ վեբ հավելվածների ծրագրավորմանը: Դասընթացը նախատեսված է այն անհատների համար, ովքեր վեբ հավելվածների ծրագրավորման նախնական փորձ չունեն կամ չունեն: Այս առաջարկը կօգտագործի NodeJS-ը և Express շրջանակը սերվերի կողմից մշակման համար:

    Դասընթացը սկսվում է HTML-ի և CSS-ի հիմունքների վերանայմամբ՝ հատուկ ուշադրություն դարձնելով CSS-ի օգտագործմամբ վեբ էջի դասավորությանը: JavaScript-ը ծրագրավորման լեզու է, որն օգտագործվում է դասընթացի ընթացքում՝ ներառյալ գործառույթները, օբյեկտները, մոդուլները, jQuery Framework, Ajax և Promises: Ուսանողները իրենց ժամանակի մեծ մասը ծախսում են մի շարք ավելի բարդ և բարդ կայքերի ծրագրավորման վրա: Դասընթացի վերջին շաբաթվա ընթացքում գագաթնակետային նախագիծը ստեղծում է SQL տվյալների բազայի վեբկայք, որը հաճախորդի կողմից ասինխրոն հասանելի է դառնում օպտիմալ կատարման համար:

    Այս դասընթացը նախապայման է CS545 Web Application Architecture-ի և CS572 Modern Web Applications-ի համար: Նախապայման՝ CS 220 կամ CS 401 կամ ամբիոնի դասախոսի համաձայնությունը

    (4 միավոր)

  • Android ծրագրերի մշակումը հետաքրքիր և պոտենցիալ շահութաբեր փորձ է: Android-ի մշակումը ծրագրավորողի համար բացում է ստեղծագործական աշխարհը: Այն թույլ է տալիս արտահայտվել այնպիսի ձևերով, որոնց մասին երբեք չէիք երազել թվային աշխարհում, որտեղ դուք կարող եք ստեղծել ապրանք և այն հասանելի դարձնել միլիարդավոր օգտատերերի՝ կոճակի ընդամենը մեկ սեղմումով: Այս դասընթացը կսովորեցնի, թե ինչպես մշակել Android հավելվածներ՝ օգտագործելով Kotlin ծրագրավորման լեզուն:

    Թեմաները ներառում են. Ձեր համակարգչի կարգավորումը Android ծրագրավորման համար; Դրսեւորել հիմունքները; Դասավորություններ, Գործունեություններ, Դիտումներ և UI բաղադրիչներ; Աշխատեք մտադրությունների, հատվածների և ընդհանուր նախապատվությունների հետ; Վեբ դիտում և HTML; Մուլտիմեդիայի հետ աշխատելը; Android Jetpack բաղադրիչներ, սենյակների տվյալների բազա և JSON; Ընկալող սենսորներ; Տեղայնացում; Հավելվածի հրապարակում Google Play Store-ում: (4 միավոր) Նախադրյալներ չեն պահանջվում:

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

  • Ծրագրային ապահովման մշակումը համակարգված գործընթաց է, որը ենթադրում է, հստակեցնում, վերլուծում, նախագծում, ծրագրավորում, փորձարկում, փաստաթղթավորում և պահպանում, որը ներգրավված է որոշակի Համակարգի կամ Կիրառական Ծրագրերի արտադրության մեջ:

    Այս դասընթացի ընթացքում ուսանողները կսովորեն, թե ինչպես արտադրել ձեռնարկատիրական կարգի ծրագրային լուծումներ՝ հաշվի առնելով պահանջները գաղափարից մինչև վերլուծություն, նախագծում, ներդրում և փորձարկում մինչև աշխատանքային ծրագրակազմի առաքում և տեղակայում: Այն կսովորեցնի մի շարք սկզբունքներ, լավագույն փորձը և հարակից գործիքներն ու տեխնոլոգիաները, և թե ինչպես են դրանք օգտագործվում և կիրառվում բարձրորակ, ամուր ծրագրային լուծումների արտադրության մեջ: Ծածկված տեխնիկան և գործիքները հիմնականում կենտրոնացած են լինելու Java ծրագրային ապահովման հարթակի շուրջ, թեև ոչ միայն:

    Մենք կուսումնասիրենք ծրագրային արտադրանքի համար ճիշտ պահանջները բացահայտելու և առաջացնելու մեթոդները, ինչպես վերլուծել այդ պահանջները և ընտրել համապատասխան ծրագրային լուծումների ճարտարապետություն և ստեղծել համապատասխան դիզայն: Եվ ինչպես իրականացնել դիզայնը կոդով, ներառյալ թեստավորումը և, ի վերջո, ինչպես կառուցել և փաթեթավորել ստացված արտեֆակտը առաքման/տեղակայման համար: Մենք կդիտարկենք տեղակայման տարբեր ժամանակակից մեխանիզմներ, ներառյալ Cloud-ը: Նախապայման՝ CS 401

    Թեմաները կներառեն.

    • Տվյալների բազայի ձևավորում և մշակում
    • Օբյեկտ կողմնորոշված ​​վերլուծություն և ձևավորում
    • Դոմենի մոդելավորում
    • Համակարգերի ճարտարապետություն
    • Վեբ հավելվածների մշակում Spring Web MVC-ի միջոցով
    • Համակարգի ներդրում և փորձարկում; ներառյալ միավորի թեստավորում, ծաղրում և ինտեգրման թեստավորում
    • Ծրագրային ապահովման անվտանգություն՝ ներառյալ ինքնության և մուտքի կառավարումը
    • Կոնտեյներացման և կոնտեյներային տեխնոլոգիաներ

    (4 միավոր)

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

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

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

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

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

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

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

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

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

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

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

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

    (2 միավոր)

Խորացված դասընթացներ

  • Ծրագրի կառավարումը ուսանողին ծանոթացնում է սովորելու ծրագրի գործնական մշակման, դասախոսությունների, ընթերցանության, Ծրագրի կառավարման շրջանակի, դրա գիտելիքների ոլորտների (10 գիտելիքի ոլորտներ և հարակից գործընթացներ) և տեղակայման միջոցով զգալու միջոցով: Ուսանողները աշխատում են իրական նախագծի իրականացման միջոցով և զգում են ծրագրի կառավարման դերը Ծրագրային ապահովման մշակման կյանքի ցիկլի բոլոր փուլերում՝ օգտագործելով հավելվածների մշակման մեթոդաբանությունը:

    Ուսանողները իրական փորձ են ստանում նախագծի պլանավորման, պահանջների կառավարման, շրջանակի կառավարման, կոդավորման ստանդարտների, մոդուլի/կոդի ծախսերի գնահատման մեջ՝ դոլարային արժեքի, ինչպես նաև աշխատաժամանակի, ժամանակացույցի կառավարման, որակի կառավարման, ռիսկերի կառավարման և հաղորդակցության կառավարման առումով: Դասընթացի ավարտին ուսանողները կունենան գործող հավելված, որը մշակված է արդյունաբերության մեջ օգտագործվող PM գործընթացների միջոցով: (Սկսած պահանջներից մինչև արտադրության տեղակայում): Նախագիծը մշակվել է՝ օգտագործելով Java-ի վերջին տեխնոլոգիաները և դրանց շրջանակները՝ վեբ ծառայությունների և դիզայնի ձևանմուշների միջոցով:

  • Այս դասընթացը կներառի ամպային ծրագրավորման օրինաչափությունները և ուսանողներին հնարավորություն կտա աշխատել տարբեր վեբ ամպային ծառայությունների հետ, ներառյալ AWS Serverless գործառույթները:

    Թեմաները ներառում են. Ինքնության և մուտքի կառավարում (IAM); Վիրտուալ մասնավոր ամպ (VPC), ցանցի մուտքի վերահսկման ցուցակներ – NACL, ենթացանցեր, մատչելիության գոտիներ, պարզ պահպանման ծառայություն (S3), էլաստիկ ամպային հաշվարկ (EC2), պարզ ծանուցման ծառայություն (SNS), առաձգական բեռի հավասարակշռող (ELB), ավտոմատ մասշտաբացում, Երթուղի 53, API ամպի մեջ; AWS Lambda, առանց սերվերի; Վեբ ծառայություններ; Հավելվածի տեղակայում, վերջնական նախագիծ: (4 կրեդիտ): (Առանց նախադրյալների)

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

  • Ընդամենը մի քանի տարվա ընթացքում մեծ տվյալների տեխնոլոգիաները հիփի ոլորտից անցել են նոր թվային դարաշրջանի հիմնական բաղադրիչներից մեկը: Այս տեխնոլոգիաները շատ օգտակար են տեղեկատվությունը Գիտելիքի վերածելու համար: Դասընթացի նպատակն է մի քանի կարևոր գործիքներ ավելացնել ձեր զինանոցում, որոնք կօգնեն ձեզ լուծել մեծ տվյալների տարբեր խնդիրներ:

    Դասընթացը սկսվում է այնպիսի հարցերի պատասխաններով, ինչպիսիք են «Ի՞նչ է մեծ տվյալները և դրա կարևորությունը: Ինչպե՞ս եք հուսալի և էժան պահում մեծ տվյալները: Ո՞ր գործիքներն օգտագործել այս մեծ տվյալներից օգտակար տեղեկատվություն գտնելու համար: և այլն»: Այս դասընթացում ուսանողները կուսումնասիրեն մեծ տվյալների վերլուծության տարբեր գործիքներ և ծրագրավորման մոդելներ: Թեմաները ներառում են Hadoop էկոհամակարգային նախագծեր, ինչպիսիք են MapReduce, Pig, Hive, Sqoop, Flume, HBase (NoSQL DB), Zookeeper, ինչպես նաև Apache Spark էկոհամակարգի նախագծեր, ինչպիսիք են Spark SQL և Spark Streaming: Ուսանողներին նաև հնարավորություն է տրվում կառուցել ամբողջական մեծ տվյալների խողովակաշար՝ սկսած տվյալների հավաքագրումից իրական ժամանակում, մշակելով, վերլուծելով և վերջապես արդյունքները գրաֆիկական ձևաչափով դիտելով վահանակների վրա: Ուսանողները հիմնականում կաշխատեն Cloudera բաշխման մեկ հանգույցի Hadoop կլաստերի հետ: (4 միավոր) (MPP-ն միակ նախապայմանն է)

  • Տարբեր աղբյուրներից ստացվող տվյալների արագ աճի պայմաններում ձեռնարկությունների և կազմակերպությունների մեծ մասը դարձել է տվյալների վրա հիմնված: Նման տվյալներից հիմնական տեղեկատվության կորզումը և դրանք գիտելիքի և բանականության վերածելը Big Data Analytics-ի հիմնական գործառույթն է: Ահա թե ինչու ավելի շատ ձեռնարկություններ գնալով ավելի շատ գումար են ծախսում տվյալների վերլուծության վրա: Սա այժմ ավելի արագանում է արագ աճով Թվային տրանսֆորմացիա. Big Data Analytics-ի այս դասընթացն ընդգրկում է վերլուծության, ալգորիթմների և գործիքների հիմնարար հասկացությունները՝ մեծ բազմազան տվյալների հավաքածուներ հանելու համար՝ նոր բիզնես պատկերացումներ ստեղծելու համար:

    Բոլոր հիմնական վերլուծությունները, ներառյալ Նկարագրող, կանխատեսող, հրահանգիչ և ախտորոշիչ ծածկվելու է։ Այն կներառի տվյալների մեծ հավաքածուների (չկառուցվածքային, խառը, կառուցվածքային, գրաֆիկական և հոսքային) վերլուծության ալգորիթմական մոտեցումները. հոսքային ալգորիթմներ, ժամանակակից բաշխված վերլուծության հարթակներում (օրինակ՝ MapReduce, Hadoop, Spark,) ռեգրեսիայի (կանխատեսման), դասակարգման, կլաստերավորման, առաջարկությունների համակարգերի և այլնի համար: Ընդլայնված Մեծ տվյալների վերլուծություն, Հատկապես, Պատճառային վերլուծություն նույնպես լուսաբանվելու է։ Հիմնականում օգտագործվելու են Python/R ծրագրավորման լեզուները։ Ուսանողները նաև կկատարեն խմբային նախագիծ՝ իրական կյանքի խնդիր լուծելու համար՝ օգտագործելով Big Data Analytics:

    (4 միավոր) Նախապայման՝ ամբիոնի պրոֆեսորադասախոսական կազմի համաձայնությունը

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

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

  • Այս դասընթացը կենտրոնացնում է վեբ հավելվածները ձեռնարկության ընդլայնման մեջ: Ընկերության հայտը խոշոր ծրագրային համակարգ է, որը նախատեսված է գործել որպես խոշոր կազմակերպություն, օրինակ `կորպորացիա կամ կառավարություն: Ձեռնարկությունների կիրառական ծրագրերը բարդ են, մասշտաբային, բաղադրիչ վրա հիմնված, բաշխված եւ առաքելություն: Այս դասընթացը 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 կամ բաժնի ֆակուլտետի համաձայնությունը:

  • Այս ընթացքում դուք կկարողանաք իմանալ ՍՊԱ (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 միավոր)

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

  • Մեքենայական ուսուցումը (ML) ուսումնասիրության ոլորտ է, որը համակարգիչներին տալիս է տվյալներից սովորելու ունակություն, գտնվում է գրեթե բոլոր գիտական ​​առարկաների հիմքում, իսկ տվյալներից ընդհանրացման (այսինքն՝ կանխատեսման) ուսումնասիրությունը մեքենայական ուսուցման կենտրոնական թեման է։ . Այս դասընթացը շրջանավարտների մակարդակով ներածություն է տալիս մեքենայական ուսուցմանը և մեքենայական ուսուցման նոր և առաջադեմ մեթոդների խորը լուսաբանմանը, ինչպես նաև դրանց հիմքում ընկած տեսությանը: Այն ընդգծում է գործնական նշանակություն ունեցող մոտեցումները և քննարկում մեքենայական ուսուցման մի շարք վերջին կիրառություններ, ինչպիսիք են Տվյալների հանքարդյունաբերությունը (մեծ տվյալների/տվյալների գիտության, տվյալների վերլուծության մեջ), բնական լեզվի մշակումը, համակարգչային տեսլականը, ռոբոտաշինությունը, բիոինֆորմատիկան և տեքստի և վեբ տվյալների մշակումը: Մեքենայի ուսուցումն օգտագործվում է տարբեր ոլորտներում, ներառյալ ֆինանսական ծառայություններ, նավթ և գազ, առողջապահություն, շուկայավարություն և գովազդ, կառավարություն, ինտերնետ և իրերի ինտերնետ:

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

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

  • Արհեստական ​​ինտելեկտը (AI) այն կարգն է, որը փորձում է կառուցել և հասկանալ Խելացի համակարգերը: Մարդկային մակարդակի ինտելեկտով համակարգիչները հսկայական ազդեցություն կունենան հասարակության վրա։ Խելացի ծրագրային գործակալները և բազմագործակալական համակարգերը արագորեն զարգանում են և օգնում են բազմաթիվ ոլորտներում, ինչպիսիք են թվային փոխակերպումը, ավտոմատացումը, խոսակցական համակարգերը, վեբ որոնումը, ռոբոտաշինությունը, արտադրությունը, առողջապահությունը, դեղագործությունը, բանկային գործը, մատակարարման շղթան, ինքնավար մեքենա վարելը, գովազդը, խաղերը: անվանեք մի քանիսը. AI-ն առաջ է մղում մի քանի տրիլիոն դոլարանոց արդյունաբերություն: Այս դասընթացը կսովորեցնի AI-ի հիմունքները և ուսանողներին գործնական պատկերացում կհաղորդի ոլորտին: Թեմաները ներառում են AI-ի հիմնական հասկացությունները՝ խելացի գործակալներ, բազմագործակալական համակարգեր, խելացի որոնում, առաջին և բարձր կարգի տրամաբանություն, գիտելիքների ներկայացում, պատճառաբանություն, ընկալում, ուսուցում, իմաստաբանություն (NLP, պատկեր, օբյեկտ...), պլանավորում, որոշումների կայացում, գործող, ռեակտիվ, խորհրդակցական, ռացիոնալ, հարմարվողական, հաղորդակցություն և փոխազդեցություն: Դասընթացը շեշտը դնում է գործնական նշանակություն ունեցող մոտեցումների վրա և քննարկում է AI-ի վերջին հայտնի կիրառությունները: AI-ի հիմնական բաց կոդով գործիքներն ու ծրագրավորման լեզուները (ներառյալ ցածր կոդ և առանց կոդ) համառոտ կներկայացվեն: Ուսանողները նաև կկատարեն խմբային նախագիծ՝ AI-ի միջոցով իրական կյանքի խնդիր լուծելու համար:

    (4 միավոր) Նախապայման՝ ամբիոնի պրոֆեսորադասախոսական կազմի համաձայնությունը

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

  • Ի պատիվ MIU-ի կրթության 50-ամյակի՝ Համակարգչային գիտության բաժինը ուրախ է նախաձեռնել մեր նոր՝ Golden Jubilee ComPro Tech Talks շարքը:

    Զրույցները հասանելի են այստեղ.

Ուսումնասիրության ընտրանքները

Միջազգային ուսանողների համար ուսման 3 տարբերակ կա:
Յուրաքանչյուրն ապահովում է համակարգչային գիտության մագիստրոսի կոչում:
Բոլորն ունեն մուտքի ամսաթվեր՝ փետրվար, մայիս, օգոստոս կամ նոյեմբեր:

ԾրագրերՀամալսարանի ուսումնառության ամիսներՎճարովի պրակտիկաՀեռավար կրթություն (DE) Պրակտիկայի ընթացքում
CPT8-9Մինչեւ 2 տարի CPT4 DE դասընթացներ
Ընտրել8-9Մինչեւ 11.5 ամիս CPT + 3 տարի Ընտրել (Ընտրանքայինl)4 DE դասընթացներ
Ամբողջ դրույքով համալսարանում12-133 տարի Ընտրել տարբերակNA

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

Պատրա՞ստ եք սկսել նոր կարիերա:

նոր Հավաքագրման շրջագայություն Արևմտյան և Հյուսիսային Աֆրիկա դեկտեմբերի 7-22

> Տեսեք մանրամասները և ամրագրեք ձեր անվճար տոմսը

(Տոմսերն այժմ հասանելի են բոլոր 5 իրադարձությունների համար)

ԱՄՆ ԴԵՍՊԱՆԱՏԱՆ ՀԱՐՑԱԶՐՈՒՅՑՆԵՐԻ ՍՊԱՍՈՒՄ ԵՎ MSCS ԴԻՄՈՒՄՆԵՐԻ ՄՇԱԿՄԱՆ ԺԱՄԱՆԱԿՆԵՐԸ

Մենք պարզել ենք, որ շատ երկրներում հարցազրույցների ժամկետները շատ են հետաձգվում: Խնդրում եմ, նայիր Վիզայի նշանակման սպասման ժամանակներ (state.gov) ձեր երկրի/քաղաքի համար հարցազրույցի ամսաթիվ ստանալու ժամանակը պարզելու համար:

Եթե ​​հարցազրույցի սպասման ժամանակը 2 ամսից ավելի է, մենք ձեզ խրախուսում ենք անմիջապես դիմել և լրացնել ձեր դիմումը, նույնիսկ եթե նախատեսում եք դիմել ապագա մուտքի համար: Այս կերպ Դուք կարող եք լրացնել դիմումի գործընթացը, ստանալ ձեր I-20-ը, այնուհետև ստանալ հարցազրույցի ամսաթիվ: Հարցազրույցի ամսաթիվը ստանալու համար դուք պետք է ունենաք I-20: Եթե ​​ամսաթիվը ավելի վաղ է, քան դուք նախատեսում եք գալ ԱՄՆ, դուք միշտ կարող եք հետաձգել ձեր ժամանման ամսաթիվը վիզա ստանալուց հետո: Մենք պարզապես ձեզ կտրամադրենք նոր I-20 մուտքի ամսաթվի համար, որի համար նախատեսում եք գալ:

Այս տեղեկատվության հետ կապված հարցերի համար խնդրում ենք կապվել մեր ընդունելության գրասենյակ էլ admissionsdirector@miu.edu.

Ինքներդ ձեզ տվեք այս 5 հարցերը.

  1. Ունե՞ք բակալավրի կոչում տեխնիկական ոլորտում: Այո կամ Ոչ?

  2. Ձեր բակալավրիատում լավ գնահատականներ ունեցե՞լ եք: Այո կամ Ոչ?

  3. Ձեր բակալավրի կոչումից հետո ունե՞ք առնվազն 12 ամիս լրիվ դրույքով, վճարովի աշխատանքային փորձ՝ որպես ծրագրավորող: Այո կամ Ոչ?

  4. Դուք այժմ աշխատում եք որպես ծրագրաշարի մշակող: Այո կամ Ոչ?

  5. Դուք պատրաստ եք գալ ԱՄՆ դասերի (այս ծրագիրը հասանելի չէ առցանց): Այո կամ Ոչ?

Եթե ​​վերը նշված բոլոր հարցերին պատասխանել եք «այո», կարող եք դիմել (Չնայած դա չի երաշխավորում, որ դուք կընդունվեք):