მზად ხართ წინასწარ შენი კარიერა?

ყველა კურსი განკუთვნილია იმისათვის, რომ ხელი შეუწყოს თქვენს კარიერას და თითოეული კურსი შეიცავს პრაქტიკულ დავალებებს. ნახვა დამთავრების მოთხოვნები.

მონაცემთა მეცნიერების კურსები

სტანდარტული Core კურსები

  • ეს კურსი გთავაზობთ ფოკუსირებულ პროგრამას პროგრამირებისა და ანალიტიკური უნარების ასამაღლებლად ხუთი მიმართულებით: პრობლემის გადაჭრა, მონაცემთა სტრუქტურები, ობიექტზე ორიენტირებული პროგრამირება, ჯავა პროგრამირების ენა და ჯავას პროგრამებში რეკურსის გამოყენება.

    ამ თემებს განსაკუთრებული მნიშვნელობა აქვს, როგორც კომპიუტერული მეცნიერების სამაგისტრო პროგრამაში კურსების წინაპირობა.

    თემებში შედის: Java პროგრამირების ელემენტები, ობიექტზე ორიენტირებული დიზაინი და განხორციელება, მონაცემთა სტრუქტურები (მათ შორის სიები, სტეკები, რიგები, ორობითი საძიებო ხეები, ჰეშის მაგიდები და სიმრავლეები), გამონაკლისის იერარქია, ფაილის i / o და ნაკადები და JDBC. (4 კრედიტი) წინაპირობა: ბაკალავრიატის სტუდენტებისათვის: CS 221; ასპირანტებისთვის: დეპარტამენტის ფაკულტეტის თანხმობა (4 განყოფილება)

  • ეს კურსი წარმოადგენს ობიექტზე ორიენტირებული პროგრამირების ფუნდამენტურ პრინციპებს. მოსწავლეები შეისწავლიან თუ როგორ უნდა დაწერონ ხელსაყრელი და უკეთესად დაცული პროგრამული უზრუნველყოფა და ინტეგრირება ეს ცოდნა ლაბორატორიული დავალებებისა და პროექტების გამოყენებით. თემები მოიცავს: ობიექტზე ორიენტირებული პროგრამირების ფუნდამენტური პრინციპები და მოდელები, UML კლასის დიაგრამები და დიზაინის პრინციპები, რომლებიც ხელს უწყობენ ხელახალი გამოყენებადობას და პროგრამული უზრუნველყოფის შენარჩუნებას. (4 ერთეული)

  • ეს კურსი მიიჩნევს მიმდინარე მეთოდებს და პრაქტიკას პროგრამული სისტემის კარგ დიზაინზე. თემები მოიცავს: პროგრამული დიზაინის ნიმუშებს, ჩარჩოებს, არქიტექტორებს და დიზაინის სისტემებს, რომლებიც გამოიყენება ამ მრავალ დონის აბსტრაქციებზე. (2-4 კრედიტი) წინაპირობა: CS 401 ან დეპარტამენტის ფაკულტეტის თანხმობა.

  • ეს კურსი წარმოადგენს ალგორითმების ეფექტურობის ანალიზს (მათ შორის ყველაზე უარესი და საშუალო შემთხვევების ანალიზი) და აცნობიერებს სხვადასხვა ცნობილი, მაღალეფექტური ალგორითმებით. ალგორითმების ანალიზი, დიზაინი და დანერგვა თანაბარი აქცენტით არის მოცემული. თემები მოიცავს მონაცემთა სტრუქტურებში (მათ შორის სიები, hashtables, დაბალანსებული ორობითი ძიების ხეები, პრიორიტეტული რიგები), გრაფიკული ალგორითმები, კომბინატორი ალგორითმები, განმეორებითი ურთიერთობები, დინამიური პროგრამირება, NP- სრული პრობლემები და ზოგიერთი სპეციალური თემა, საშუალებას იძლევა. (სპეციალური თემები მოიცავს კომპიუტერული გეომეტრიას, ალგორითმს კრიპტოსისტების, დაახლოების, დიდი მონაცემთა და პარალელური გამოთვლითი).

  • ეს კურსი ყურადღებას ამახვილებს სწავლების პრინციპებსა და პრაქტიკებზე, რომლებიც გამოიყენება მსხვილი საწარმოო პროგრამების შემუშავებისას. ჩვენ შევისწავლით სხვადასხვა სახის არქიტექტურულ ფენებს, რომლებიც გამოიყენება ამ ფენებთან, მათ შორის ობიექტის Relational Mapping (ORM), საიმედო ინჟექტორი (DI), ასპექტის ორიენტირებული პროგრამირება (AOP) და სხვა პროგრამებთან ინტეგრაცია Web Services (RESTfull და SOAP), მიმოწერა და დისტანციური მეთოდი invocation. უნდა ჰქონდეს ცოდნა მონაცემთა ბაზებთან და SQL- სთან. თუ არ გაქვთ ძლიერი კურსი ან SQL- ის კარგი ცოდნა, თქვენ უნდა დარეგისტრირდეთ CS422 DBMS- ისთვის EA- სთვის ხელმოწერამდე. (4 ერთეული)

  • პროგრამული საინჟინრო არის კურსი, რომელიც სტუდენტს წარუდგენს პროგრამული უზრუნველყოფის განვითარებას პროგრამული უზრუნველყოფის განვითარების მეთოდოლოგიით. მოსწავლეებს უკვე ჰქონდათ გარკვეული გამოცდილება წინა საგანით, რომლებიც ობიექტზე ორიენტირებულ პარადიგმაში იყვნენ და ზოგიერთ ძირითად UML დიაგრამაზე იყენებდნენ პროგრამული უზრუნველყოფის ობიექტებს შორის მოდელების შექმნის მიზნებს. პროგრამული საინჟინრო, სტუდენტი შეიმუშავებს უნარების ამ ინსტრუმენტების ერთად, რათა წარმოედგინა ძლიერი, ადვილად შენარჩუნება პროგრამული. პროგრამული უზრუნველყოფის დამუშავების მეთოდოლოგია აღწერს, თუ როდის და როგორ უნდა მოხდეს OO კონცეფციები და UML დიაგრამები ხარისხის პროგრამული უზრუნველყოფის შესაქმნელად. კურსი მოიცავს მცირე პროექტს, სადაც ილუსტრირებული და გამოყენებული იქნება ლექციის ფორმატში განხილული პრინციპები. რა თქმა უნდა, სტუდენტს ექნება რბოლის რაციონალური სტანდარტების (რაციონალური ერთიანი პროცესი) განვითარების მეთოდოლოგიის შესაბამისად აშენებული აპლიკაცია.

  • ეს კურსი ფოკუსირებულია ვებ აპლიკაციებში საწარმოს გარემოში. საწარმოს განაცხადის დიდი პროგრამული სისტემის შემუშავება, რომელიც ფუნქციონირებს მსხვილ ორგანიზაციაში, როგორიცაა კორპორაცია ან მთავრობა. საწარმო განაცხადები კომპლექსური, სკალადირებული, კომპონენტირებული, გავრცელებული და მისიის კრიტიკული. ეს კურსი, CS545, ფოკუსირებულია საწარმოს ვებ აპლიკაციის წინა ბოლომდე ან პრეზენტაციაზე. CS544 Enterprise არქიტექტურა არის პარტნიორული კურსი, რომელიც ფოკუსირებულია უკან ბოლომდე ან ბიზნეს ფენის, მათ შორის ბიზნეს ლოგიკაზე, ტრანზაქციებზე და არსებულობაზე. CS472, ვებ პროგრამირება, არის წინაპირობა, რომელიც მოიცავს HTML, CSS, JavaScript, servlets და JSP.

    კურსი ასწავლის პრინციპებსა და ნიმუშებს, რომლებიც ზოგადად პლატფორმებსა და ჩარჩოებშია. კურსი შეისწავლის და იმუშავებს ორ უპირატესი ჯავის ვებ-პროგრამასთან, Java Server Faces (JSF) და SpringMVC- სთან. JSF არის კომპონენტის დაფუძნებული ჩარჩო და არის ოფიციალური პრეზენტაცია ჩარჩო სპეციფიკაცია Java Enterprise Edition ტექნოლოგიის დასტისთვის. SpringMVC არის ნაწილი Core საგაზაფხულო ჩარჩო და გახდა ყველაზე ფართოდ გამოიყენება ჯავის ვებ ფარგლებში ბოლო წლებში. (4 ერთეული) წინაპირობა: CS 472 ან დეპარტამენტის ფაკულტეტის თანხმობა.

  • ეს კურსი გთავაზობთ სისტემურ შესავალს ინტერაქტიული და დინამიური ვებ – პროგრამების პროგრამირებაში. კურსი განკუთვნილია იმ პირებისთვის, რომელთაც მცირე ან საერთოდ არ აქვთ ვებ პროგრამირების პროგრამირების გამოცდილება. ეს შეთავაზება გამოიყენებს ჯავის სერვიტებს და JSP სერვერის დამუშავების პროცესს. კურსში შევა HTML და CSS. JavaScript არის კურსის ფოკუსირება და მოიცავს როგორც პროგრამირების ფუნქციონალურ ენას, მათ შორის jQuery, Ajax და JavaScript სახელების სივრცეები და მოდულები. ეს არის წინაპირობა CS545 ვებ აპლიკაციის არქიტექტურისთვის. ეს არ მოიცავს AngularJS- ს ან NodeJS- ს, მაგრამ აქ მოცემული JavaScript მოამზადებს ამ ტექნოლოგიების შესასწავლად. (4 ერთეული)
    წინაპირობა: CS 220 ან CS XXX ან დეპარტამენტის ფაკულტეტის თანხმობა.

  • თქვენი პირველი კურსი სპეციალურად შექმნილია იმის დასადგენად, თუ როგორ შეგიძლიათ გახდეთ კომპიუტერული მეცნიერების საუკეთესო პროფესიონალი. კურსი დაფუძნებულია ტრანსცენდენტალური მედიტაციის პრაქტიკაში, რაც იწვევს თქვენი რეალური პოტენციალის ასრულებას. თქვენ გაეცნობით TM- ს უპირატესობებს, მათ შორის კომპლექსური პრობლემების გადაჭრის შესაძლებლობას უმაღლესი გონებრივი ფუნქციონირებით, კრეატიულობის ამაღლებისა და ”ყუთში” აზროვნების გზით. კურსი ფოკუსირდება პრინციპებზე, რომლებიც უდევს საფუძვლად საქმიანობის პიკს, დასვენებისა და აქტივობის ოპტიმალური ნაზავის შემუშავებით. თქვენ შეიმუშავებთ და განიცდით იდეალურ ყოველდღიურობას, რომელიც მხარს უჭერს ცხოვრებაში წარმატებას. (2 ერთეული)

  • ამ კურსის მიზანია მოსწავლეებისთვის ცოდნისა და უნარ-ჩვევების უზრუნველყოფა, მათ შორის საკომუნიკაციო უნარ-ჩვევები, როგორც მომავალი ლიდერობის როლებისთვის მომზადება.

    ამ კურსის დასრულების შემდეგ მოსწავლეები გაიგებენ პასუხს საკვანძო კითხვებზე ეფექტური ხელმძღვანელობის შესახებ, მათ შორის:

    არსებობს თუ არა "ბუნებრივი დაბადებული" ლიდერები?

    გაქვთ ქარიზმა ეფექტურად უხელმძღვანელო?

    რომელი აქტივი უნდა იყოს ლიდერი?

    რა განსხვავებაა მმართველობასა და ხელმძღვანელობას შორის?

    რა არის ბევრი "ინტელექტუალური" საჭიროა ამ ეპოქაში?

    რა არის "მენეჯმენტის malpractice" და როგორ ეს გამოიწვევს თვითმმართველობის საბოტაჟი?

    იცის, რომ ეს თემა მნიშვნელოვანია წამყვანი პროცესისთვის, როგორ უნდა მივიღოთ იმის გამო, რომ ჩვენ ვიღებთ შიშის მიცემასა და მიღებას?

    რა არის წყარო სამუშაო ადგილების ნაპოვნი პრობლემების 80%?

    არსებობს სამეცნიერო კვლევა, რომელიც ორგანიზაციას დაეხმარება ინდივიდუალური და გუნდური ხელმძღვანელობის უნარების გაუმჯობესებაში?

    სტუმარს მოიცავს გამოჩენილი მეწარმეები, კომპიუტერის მეცნიერები, ფილანტროპებისტები, მეცნიერები და სხვა გამოჩენილი ლიდერები საზოგადოებაში.

    (2 ერთეული)

დამატებითი MSCS კურსები

  • ეს კურსი ითვალისწინებს წინასწარი თემატიკის პროგრამულ პროგრამებს, აქცენტით ფორმალური მეთოდებისა და აბსტრაქციის მექანიზმებზე. თემები მოიცავს მონაცემთა და კონტროლის აბსტრაქციას, სინტაქსისა და სემანტიკის ფორმალურ სპეციფიკაციას, პროგრამების სისწორეს, არატექნიკური პროგრამირების, მოწინავე კონტროლის სტრუქტურების და კონკრეტული ენების შესწავლის მტკიცებულებებს. (4 ერთეული) წინაპირობა: CS 401 ან დეპარტამენტის ფაკულტეტის თანხმობა.

  • თანამედროვე ინფორმაციის დამუშავება განისაზღვრება მონაცემთა ვრცელი საცავებით, რომლითაც ტრადიციული მონაცემთა ბაზის სისტემები ვერ მოხერხდება. ეს კურსი მოიცავს თანამედროვე ტექნოლოგიების განვითარებას და იყენებს ინდუსტრიის ლიდერებს ამ პრობლემის გადაჭრაში ყველაზე ეფექტური გზით. სპეციალურ თემებზე დაფარული მოიცავს MapReduce ალგორითმები, MapReduce ალგორითმის დიზაინი შაბლონები, HDFS, Hadoop კასეტური არქიტექტურა, YARN, კომპიუტერული ნათესავი სიხშირეები, საშუალო დახარისხება, ვებ მცოცავი, ინვერსიული ინდექსები და ინდექსის შეკუმშვის, Spark ალგორითმები და Scala. (4 ერთეული) წინაპირობა: CS X ალგორითმები.

  • Big Data არის ახალი ბუნებრივი რესურსი: მონაცემები ორმაგდება ყოველ 12-18 თვეში. დიდი მონაცემთა ანალიზის ეს ახალი კურსი მოიცავს ფუნდამენტურ ცნებებსა და ინსტრუმენტებს დიდი მრავალფეროვანი მონაცემთა ნაკრებების მოპოვებისთვის, ახალი წარმოდგენების შესაქმნელად. თქვენ დაეუფლებით R ენის გამოყენებას Wordcloud, Pagerank, მონაცემთა ვიზუალიზაციის, გადაწყვეტილების ხეების, რეგრესიის, კლასტერირების, ნერვული ქსელების და სხვათა შესაქმნელად. თქვენ იმუშავებთ რამდენიმე მრავალმილიონიანი ჩანაწერის მონაცემთა ნაკრებთან და ასევე გააშუქებთ Twitter არხებს. თქვენ შეისწავლით Hadoop / MapReduce და Streaming Data კონცეფციებს და შეისწავლით Apache Big Data პროექტებს, როგორიცაა Spark, Flink, Kafka, Storm, Samza, NoSQL ინდივიდუალური სამეცნიერო ნაშრომების საშუალებით. თქვენ იმუშავებთ ჯგუფებში Kaggle.com– ის ღია პროექტებზე კონკურენციის მისაღებად საპრიზო თანხის მისაღებად საუკეთესო ჯიშის მონაცემთა ანალიტიკური გამოწვევების გადაჭრით. თქვენ ასევე ისწავლით ინდუსტრიაში წამყვანი IBM SPSS მოდელის და ღია წყარო მონაცემების მოპოვების პლატფორმების გამოყენებას. კურსი ასევე გამოიყენებს ვიდეო სასწავლო მასალების ფართო სპექტრს MIT- ისგან, Coursera- სგან, Google- ისგან და სხვაგან. (4 განყოფილება) წინაპირობა: დეპარტამენტის ფაკულტეტის თანხმობა

  • მხოლოდ რამდენიმე მოკლე წლის განმავლობაში, დიდი მონაცემთა ტექნოლოგიები გაიზარდა სფეროში Hype ერთი ძირითადი კომპონენტების ახალი ციფრული ასაკი. ეს ტექნოლოგიები ძალიან სასარგებლოა ინფორმაციის ცოდნაზე.

    კურსის მიზანია თქვენს არსენალში დაამატოთ მართლაც მნიშვნელოვანი ინსტრუმენტები, რომლებიც დაგეხმარებათ დიდი მონაცემების პრობლემების მოგვარებაში. ჩვენ დავიწყებთ კითხვებზე პასუხის გაცემით, როგორიცაა „რა არის დიდი მონაცემები? რატომ არის ეს მნიშვნელოვანი ან სასარგებლო? როგორ ინახავთ ამ დიდ მონაცემებს? ” შემდეგ ჩვენ შეისწავლით სხვადასხვა ინსტრუმენტებს და პროგრამირების მოდელებს დიდი მონაცემთა ტექნოლოგიის დასტისგან, რაც მონაცემთა ანალიზში დაგვეხმარება. თემები მოიცავს Hadoop ეკოსისტემის ზოგიერთ პროექტს, როგორიცაა MapReduce, Pig, Hive, Sqoop, Flume, HBase (NoSQL DB), Zookeeper და Apache Spark ეკოსისტემის პროექტები. ჩვენ ასევე განვახილავთ AWS და EMR შესავალს. თქვენ ძირითადად იმუშავებთ Cloudera– ს ერთი კვანძის Hadoop– ის განაწილებაზე. (4 ერთეული) (წინაპირობები არ არის)

  • მონაცემთა ბაზის სისტემებს ორგანიზება და ინფორმაციის მიღება, რაც საშუალებას მისცემს მომხმარებელს სასურველი ინფორმაციის ხელმისაწვდომობა ადვილად და ეფექტურად. თემები მოიცავს: SQL; ER მოდელირება; რელიგიური ალგებრა; მონაცემთა ნორმალიზაცია; გარიგებები; ობიექტების მონაცემთა ბაზაში; მონაცემთა უსაფრთხოება და მთლიანობა; მონაცემთა სასაწყობო, OLAP და მონაცემთა სამთო; განაწილებული მონაცემთა ბაზები; და კონკრეტული კომერციული მონაცემთა ბაზის სისტემის შესწავლა. (4 ერთეული) წინაპირობა: CS 401 ან დეპარტამენტის ფაკულტეტის თანხმობა.

  • მანქანათმცოდნეობა არის კვლევის სფერო, რომელიც კომპიუტერებს აძლევს მონაცემების სწავლის შესაძლებლობას, არის თითქმის ყველა სამეცნიერო დისციპლინის ცენტრში, ხოლო მონაცემებიდან განზოგადების (ანუ წინასწარმეტყველების) შესწავლა არის მანქანათმცოდნეობის ცენტრალური თემა. ეს კურსი იძლევა სამაგისტრო დონის შესავალს მანქანური სწავლების შესახებ და სიღრმისეული გაშუქება ახალი და მოწინავე მეთოდების მანქანური სწავლების, ისევე როგორც მათი ძირითადი თეორიის შესახებ. იგი ხაზს უსვამს მიდგომებს პრაქტიკულ შესაბამისობაში და განიხილავს მანქანური სწავლების უახლეს აპლიკაციებს, როგორიცაა მონაცემთა მოპოვება (დიდი მონაცემების / მონაცემთა მეცნიერებაში, მონაცემთა ანალიტიკაში), ბუნებრივი ენის დამუშავება, კომპიუტერული ხედვა, რობოტიკა, ბიოინფორმატიკა და ტექსტისა და ვებ მონაცემთა დამუშავება. მანქანათმცოდნეობა გამოიყენება სხვადასხვა ინდუსტრიებში, მათ შორის ფინანსურ მომსახურებაში, ნავთობსა და გაზზე, ჯანდაცვაში, მარკეტინგისა და რეკლამაში, მთავრობაში, ინტერნეტში და ნივთების ინტერნეტში.

    ეს კურსი მოიცავს სხვადასხვა სასწავლო პარადიგმებს, ალგორითმებს, თეორიულ შედეგებსა და პროგრამებს. იგი იყენებს ხელოვნურ ინტელექტის, ინფორმაციის თეორიის, სტატისტიკის და კონტროლის თეორიის ძირითად ცნებებს, რამდენადაც ისინი რელევანტურია მანქანური სწავლისთვის. თემებში შედის: ზედამხედველობის ქვეშ მყოფი სწავლება (გენერაციული / დისკრიმინაციული სწავლება, პარამეტრიული / არამეპარამეტული სწავლება, ნერვული ქსელები, დამხმარე ვექტორული მანქანები, გადაწყვეტილების ხე, ბაიესური სწავლა და ოპტიმიზაცია); ზედამხედველობის გარეშე სწავლა (კლასტერიზაცია, განზომილების შემცირება, ბირთვის მეთოდები); სწავლის თეორია (კომპენსაციის / ვარიანტის ურთიერთგაგება; VC თეორია; დიდი მინდვრები); განმტკიცების სწავლა და ადაპტაციური კონტროლი. სხვა თემებში შედის HMM (დამალული მარკოვის მოდელი), ევოლუციური გამოთვლა, ღრმა სწავლა (ნერვული ქსელებით) და ალგორითმების შემუშავება, რომელთა შესრულებაც შეიძლება მკაცრად გაანალიზდეს მანქანური სწავლების ფუნდამენტური პრობლემების დასადგენად.

    კურსის მნიშვნელოვანი ნაწილია ჯგუფური პროექტი. პარალელური, დისტრიბუციისა და სკალირებადი მანქანების სწავლების ძირითადი საშუალებები მოკლედ დაფარავს სტუდენტებისთვის პროექტების განხორციელებაში. (4 ერთეული) წინაპირობა: არა.

  • მობილური მოწყობილობების პროგრამირების მნიშვნელობა ბოლო წლების განმავლობაში წარმოიშვა როგორც ახალი დომენი პროგრამული უზრუნველყოფის განვითარებაში. ეს კურსი მოსწავლეებს ამზადებს აპლიკაციების განვითარებისთვის, რომლებიც აწარმოებენ მობილურ მოწყობილობებს, როგორიცაა IPhone, iPad ან Android ტელეფონი. ეს არის სწრაფად განვითარებადი ბაზარი. კურსი ყურადღებას ამახვილებს მობილური აპლიკაციების დაყენებაზე, განვითარებაზე, ტესტირებაზე და გავრცელებაზე. ამ კურსის ბოლოს სტუდენტებს საშუალება აქვთ შეიმუშაონ პლატფორმის აპლიკაცია, შეიმუშაონ ისინი, შეამოწმონ ისინი რეალურ მოწყობილობაზე და საბოლოოდ გამოაქვეყნონ აპლიკაციის მაღაზიაში მომხმარებლების ხელმისაწვდომობა. (4 ერთეული) წინაპირობა: CS472 ან დეპარტამენტის ფაკულტეტის თანხმობა.

  • ამ კურსის განმავლობაში თქვენ შეისწავლით SPA- ს (Single Page Web Applications) რეაქტიული პროგრამირების არქიტექტურას, ისევე როგორც ყველა საჭირო უნარით სრული ვებ-გვერდის სრული ვებსაიტის შესაქმნელად. ტექნოლოგიები მოიცავს: NodeJS, ExpressJS, TypeScript, AngularJS2, Firebase და NoSQL მონაცემთა ბაზები (MongoDB). კურსი მოიცავს:

    • როგორ C ++ V8 ძრავა და ასინქრონული კოდი მუშაობს Node და Node Event loop.
    • როგორ სტრუქტურა თქვენი კოდი reuse და ავაშენოთ Restful API გამოყენებით მოდულები და ExpressJS.
    • როგორ ფუნქციონირებს NoSQL მონაცემთა ბაზები: მონგო შელი, აგრეგაციის ჩარჩო, რეპლიკა კომპლექტი, კლასტერული, შარდსი, მონგოეის ORM.
    • ღრმა გაგება, თუ როგორ Angular (მხარდაჭერით Google) მუშაობს, შეცვლა დიაგნოსტიკა, რეაქტიული RxJs პროგრამირების ერთად Observables და სუბიექტები, Shadow DOM, ზონების, მოდულები და კომპონენტები, საბაჟო დირექტივები და მილები, მომსახურება და საიმედო ინჟექტორი, კუთხოვანი შემდგენელი, JIT და AOF Compilation , ფორმები (თარგი დრაივანი და მონაცემთა ორიენტირებული), მონაცემთა აკინძვა, მარშრუტიზაციის, დაცვა და მარშრუტის დაცვა, HTTP კლიენტი, JWT JSON Web Token Authentication.

    (4 ერთეული)

  • ყველა ახალი კომპიუტერის სტანდარტული პროცესორი არის მრავალპროგრამული პროცესორი, რომელსაც აქვს პროგრამების შესრულება უფრო სწრაფად. თუმცა, ამ პოტენციალის გამოყენებისას, პროგრამისტს უნდა ჰქონდეს გარკვეული ცოდნა პარალელური პროგრამირების ტექნიკაზე. ამ კურსის მსვლელობისას მოსწავლეები უმეტესწილად ატარებენ პარალელურ პროგრამებს. მოსალოდნელი შედეგი იქნება პრაქტიკული პროგრამების ახალი უნარის შემუშავება. ეს უნარი არა მხოლოდ სასარგებლოა მრავალპროგრამის დამამუშავებელი პროგრამებისთვის, არამედ ოპერაციული სისტემების პროგრამირების და მონაცემთა ბაზის პროგრამირების განაწილებაზე. პროგრამაში გამოყენებული პროგრამული ინსტრუმენტები მოიცავს Microsoft Visual C / C ++, Java multithreading library და OpenMP threading სტანდარტი. (4 ერთეული) წინაპირობა: კომპიუტერული პროგრამების ცოდნა Java, C, ან C ++.

  • ამ პრაქტიკულ კურსში სტუდენტები ასრულებენ კომპიუტერთან დაკავშირებულ დავალებებს ტექნიკურ პროფესიულ პოზიციაში. შესრულებული ამოცანები შეიძლება იყოს ახალი სისტემების შემუშავება და განვითარება ან არსებული სისტემების კონკრეტული მიზნების გამოყენება. პრაქტიკულ სამუშაოთა აღწერილობა შემუშავებულია დამსაქმებლისა და სტუდენტის მიერ და საჭიროებს წინასწარ დამტკიცებას დეპარტამენტის ერთ-ერთი სამაგისტრო ფაკულტეტის მიერ, პრაქტიკის ხელმძღვანელის კონსულტაციით, სადაც განთავსდება სტუდენტი. (ეს კურსი ძირითადად განკუთვნილია სტაჟირების ან კოოპერატიული პროგრამების სტუდენტებისათვის.) (0.5-1 ერთეული ბლოკზე - შეიძლება განმეორდეს.)

  • ამ კურსში გადავხედავთ ტექნიკას, პრინციპებსა და შაბლონებს, თუ როგორ უნდა შეიმუშავონ მოქნილი, სკალადი, ტესტირებადი და სტაბილური პროგრამული სისტემები, რომლებიც იყენებენ მიკროორგანიზაციებს. ჩვენ შეისწავლით, თუ როგორ შეგვიძლია გაყოფილი მცირე აპლიკაციები პატარა მიკროპროცესებში, რომლებიც უფრო ადვილად ააშენებენ და სხვა უპირატესობებს მონოლითურ საწარმოსთან შედარებით. განაწილებული მიკროსერვის არქიტექტურა ასევე აძლევს უამრავ გამოწვევას. ჩვენ შევისწავლით ამ გამოწვევებს და როგორ მივმართოთ მათ. ამ კურსის თემაა არქიტექტურული სტილები, ინტეგრაციის ტექნიკა და ნიმუშები, დომინანტური დიზაინი, მოვლენათა ორიენტირებული არქიტექტურა და რეაქტიული პროგრამირება. (X კრედიტები). (წინაპირობები არ არის)

”პირველად რომ გავიგე MSCS პროგრამის შესახებ, ამაში ეჭვი მეპარებოდა. არ მჯეროდა, რომ მსგავსი რამ არსებობს. მაგრამ ერთ დღეს, ჩემი მეგობარი შეუერთდა პროგრამას. ეს მაშინ იყო, როდესაც დავამტკიცე, რომ ეს რეალურია. შემდეგ განაახლეთ ჩემი განაცხადის პროცესი. კარგი! მართალია, მე აქ ვარ, პროგრამა დავამთავრე და ძალიან ბედნიერი ვარ. ”