क्या आप तैयार हैं कि अपना करियर आगे बढ़ाएं?

हमारा कार्यक्रम ओओपी (जावा), वेब अनुप्रयोगों और डेटा विज्ञान का उपयोग करके सॉफ्टवेयर सिस्टम और सॉफ्टवेयर विकास के क्षेत्रों में माहिर है। अध्ययन के मुख्य क्षेत्रों में शामिल हैं: उन्नत सॉफ्टवेयर विकास, वेब अनुप्रयोग प्रोग्रामिंग और वास्तुकला, बड़े डेटा विश्लेषण और प्रौद्योगिकियां, मशीन सीखने और कई महत्वपूर्ण अनुप्रयोग क्षेत्र।

सभी पाठ्यक्रमों को आपके कैरियर को आगे बढ़ाने में मदद करने के लिए डिज़ाइन किया गया है और प्रत्येक पाठ्यक्रम में व्यावहारिक कार्य शामिल हैं। राय स्नातक आवश्यकताओं।

नया! पुरस्कार जीतना डाटा साइंस ट्रैक

मानक कोर पाठ्यक्रम

  • आधुनिक प्रोग्रामिंग प्रैक्टिस (जावा प्रोग्रामिंग) (CS 401)

    यह कोर्स ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग के मूल सिद्धांतों को प्रस्तुत करता है। छात्र सीखेंगे कि पुन: प्रयोज्य और बेहतर-रखरखाव वाले सॉफ़्टवेयर कैसे लिखें, और इस ज्ञान को प्रयोगशाला असाइनमेंट और प्रोजेक्ट के साथ एकीकृत करें। विषयों में शामिल हैं: मूलभूत सिद्धांतों और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग के मॉडल, यूएमएल वर्ग आरेख और डिजाइन सिद्धांत जो पुन: प्रयोज्य और सॉफ्टवेयर की स्थिरता को बढ़ावा देते हैं। (4 इकाइयाँ)

  • उन्नत सॉफ्टवेयर विकास (CS 525)

    यह पाठ्यक्रम सॉफ्टवेयर सिस्टम के अच्छे डिजाइन के लिए वर्तमान तरीकों और प्रथाओं पर विचार करता है। विषयों में शामिल हैं: सॉफ्टवेयर डिजाइन पैटर्न, चौखटे, आर्किटेक्चर और डिजाइनिंग सिस्टम इन बहु-स्तरीय अमूर्तताओं को लागू करने के लिए। (2-4 क्रेडिट) शर्त: CS 401 या विभाग के शिक्षकों की सहमति।

  • एल्गोरिदम (CS 435)

    यह कोर्स एल्गोरिदम की दक्षता का विश्लेषण करने के लिए तरीके प्रस्तुत करता है (सबसे खराब स्थिति और औसत-केस विश्लेषण सहित) और विभिन्न प्रकार के ज्ञात, अत्यधिक कुशल एल्गोरिदम का परिचय देता है। एल्गोरिदम के विश्लेषण, डिजाइन और कार्यान्वयन को समान बल दिया जाता है। विषयों में खोज और सॉर्टिंग, डेटा संरचनाओं पर संचालन की दक्षता (सूचियों, हैशटेबल्स, संतुलित बाइनरी सर्च ट्री, प्राथमिकता कतारें), ग्राफ एल्गोरिदम, कॉम्बिनेटरियल एल्गोरिदम, पुनरावृत्ति संबंध, डायनामिक प्रोग्रामिंग, एनपी-पूर्ण समस्याएं और कुछ विशेष विषय शामिल हैं। अनुमति देता है। (विशेष विषयों में कम्प्यूटेशनल ज्यामिति, क्रिप्टोकरंसी के लिए एल्गोरिदम, सन्निकटन, बिग डेटा और समानांतर कंप्यूटिंग शामिल हैं)।

  • कंप्यूटर नेटवर्क (CS 450)

    इस कोर्स का लक्ष्य कंप्यूटर अनुप्रयोगों की अवधारणाओं, वास्तुकला सिद्धांतों और शब्दावली को सीखना है, यह पता लगाने के लिए कि नेटवर्क कैसे काम करते हैं और नेटवर्क अनुप्रयोगों को विकसित करते हैं। यह पाठ्यक्रम इंटरनेट के आर्किटेक्चर और प्रोटोकॉल का उपयोग करके नेटवर्क सिद्धांतों को लागू करने के प्राथमिक उदाहरण के रूप में नेटवर्क को समझने के लिए टॉप-डाउन दृष्टिकोण का अनुसरण करता है। हम एप्लिकेशन लेयर पर शुरू करते हैं और ट्रांसपोर्ट लेयर, नेटवर्क लेयर, लिंक लेयर और कंप्यूटर नेटवर्कों की फिजिकल लेयर के माध्यम से जारी रहते हैं। छात्र कई नेटवर्क एप्लिकेशन विकसित करते हैं और इंटरनेट में उपयोग किए जाने वाले प्रमुख नेटवर्क प्रोटोकॉल का पता लगाने और समझने के लिए डिज़ाइन किए गए कई प्रयोगशालाओं को पूरा करते हैं। (4 इकाइयाँ) पूर्वापेक्षाएँ: CS 401 या विभाग के संकाय की सहमति।

  • डेटाबेस प्रबंधन प्रणाली (CS 422)

    डेटाबेस सिस्टम जानकारी को व्यवस्थित और पुनः प्राप्त करते हैं, जिससे उपयोगकर्ता को वांछित जानकारी आसानी से और कुशलता से प्राप्त करने की अनुमति मिलती है। विषयों में शामिल हैं: संबंधपरक डेटा मॉडल; एसक्यूएल; ईआर मॉडलिंग; संबंधपरक बीजगणित; डेटा सामान्यीकरण; लेनदेन; डेटाबेस में वस्तुएँ; डेटा सुरक्षा और अखंडता; डेटा वेयरहाउसिंग, OLAP और डेटा माइनिंग; वितरित डेटाबेस; और एक विशिष्ट वाणिज्यिक डेटाबेस प्रणाली का अध्ययन। (4 इकाइयाँ) पूर्वापेक्षाएँ: CS 401 या विभाग के संकाय की सहमति।

  • सॉफ्टवेयर इंजीनियरिंग (CS 425)

    सॉफ्टवेयर इंजीनियरिंग एक ऐसा कोर्स है जो छात्र को सॉफ्टवेयर विकास पद्धति के माध्यम से सॉफ्टवेयर विकास में सर्वोत्तम प्रथाओं से परिचित कराता है। छात्रों को पहले से ही ऑब्जेक्ट ओरिएंटेड प्रतिमान के साथ पिछले पाठ्यक्रमों में कुछ अनुभव है और सॉफ्टवेयर ऑब्जेक्ट्स के बीच संबंधों को मॉडलिंग करने के उद्देश्य के लिए कुछ बुनियादी यूएमएल आरेखों का उपयोग किया है। सॉफ्टवेयर इंजीनियरिंग में, छात्र मजबूत, आसानी से बनाए रखने योग्य सॉफ्टवेयर का उत्पादन करने के लिए इन उपकरणों को एक साथ रखने में कौशल विकसित करेगा। एक सॉफ्टवेयर विकास पद्धति का वर्णन है कि कब और कैसे ओओ अवधारणाओं और यूएमएल आरेखों का उपयोग गुणवत्ता सॉफ्टवेयर के निर्माण के उद्देश्य को पूरा करने के लिए किया जाना चाहिए। पाठ्यक्रम एक छोटी परियोजना के आसपास है जिसमें व्याख्यान प्रारूप में चर्चा किए गए सिद्धांतों को चित्रित और लागू किया जा सकता है। पाठ्यक्रम के अंत तक, छात्र के पास एक रनिंग एप्लिकेशन होगा, जिसे RUP (तर्कसंगत तर्कसंगत प्रक्रिया) विकास पद्धति के उच्च मानकों के अनुरूप बनाया गया है।

  • वेब एप्लीकेशन आर्किटेक्चर एंड फ्रेमवर्क (CS 545)

    यह पाठ्यक्रम एक उद्यम सेटिंग में वेब अनुप्रयोगों को केंद्रित करता है। एंटरप्राइज़ एप्लिकेशन एक बड़ी सॉफ़्टवेयर प्रणाली है जिसे किसी बड़े संगठन जैसे कि निगम या सरकार में संचालित करने के लिए डिज़ाइन किया गया है। एंटरप्राइज़ अनुप्रयोग जटिल, स्केलेबल, घटक-आधारित, वितरित और मिशन महत्वपूर्ण हैं। यह कोर्स, CS545, एंटरप्राइज़ वेब एप्लिकेशन के फ्रंट एंड या प्रेजेंटेशन लेयर पर केंद्रित है। CS544 एंटरप्राइज आर्किटेक्चर एक साथी कोर्स है, जो व्यापार तर्क, लेनदेन और दृढ़ता सहित बैक एंड बिजनेस परत पर केंद्रित है। CS472, वेब एप्लिकेशन प्रोग्रामिंग, एक शर्त है जो HTML, CSS, जावास्क्रिप्ट, सर्वलेट्स और JSP को कवर करती है।

    पाठ्यक्रम उन सिद्धांतों और पैटर्न को सिखाता है जो प्लेटफार्मों और रूपरेखाओं में सामान्य हैं। पाठ्यक्रम दो प्रमुख जावा वेब फ्रेमवर्क, जावा सर्वर फेस (जेएसएफ) और स्प्रिंगएमवीसी के साथ जांच और काम करेगा। JSF एक घटक आधारित ढांचा है और जावा एंटरप्राइज एडिशन प्रौद्योगिकी स्टैक के लिए आधिकारिक प्रस्तुति ढांचा विनिर्देश है। SpringMVC कोर स्प्रिंग फ्रेमवर्क का हिस्सा है और हाल के वर्षों में सबसे व्यापक रूप से इस्तेमाल किया जाने वाला जावा वेब फ्रेमवर्क बन गया है। (4 इकाइयाँ) पूर्वापेक्षाएँ: CS 472 या विभाग के संकाय की सहमति।

  • वेब अनुप्रयोग प्रोग्रामिंग (CS 472)

    यह कोर्स इंटरएक्टिव और डायनेमिक वेब एप्लिकेशन प्रोग्रामिंग करने के लिए एक व्यवस्थित परिचय प्रदान करता है। कोर्स कम या कोई पूर्व वेब अनुप्रयोग प्रोग्रामिंग अनुभव वाले व्यक्तियों के लिए अभिप्रेत है। यह पेशकश सर्वर साइड प्रोसेसिंग के लिए जावा सर्वलेट्स और जेएसपी का उपयोग करेगी। पाठ्यक्रम HTML और सीएसएस को पेश करेगा। जावास्क्रिप्ट पाठ्यक्रम का एक ध्यान है, और jQuery, Ajax, और जावास्क्रिप्ट नामस्थान और मॉड्यूल सहित एक कार्यात्मक प्रोग्रामिंग भाषा के रूप में कवर किया गया है। यह CS545 वेब एप्लिकेशन आर्किटेक्चर के लिए एक शर्त है। यह AngularJS या NodeJS को कवर नहीं करता है, लेकिन यहां मौजूद जावास्क्रिप्ट आपको उन तकनीकों को सीखने के लिए तैयार करेगा। (4 इकाइयाँ)
    शर्त: CS 220 या CS 401 या विभाग के संकाय की सहमति।

  • कंप्यूटर पेशेवरों के लिए विज्ञान और प्रौद्योगिकी की चेतना (506 के लिए)

    आपका पहला कोर्स विशेष रूप से इस आधार पर स्थापित किया गया है कि आप किस तरह से एक शीर्ष प्रदर्शन करने वाले कंप्यूटर विज्ञान पेशेवर बन सकते हैं। कोर्स ट्रांसेंडेंटल मेडिटेशन के अभ्यास में निहित है जो आपकी वास्तविक क्षमता को पूरा करता है। आप TM के लाभों के बारे में जानेंगे, जिसमें बेहतर मानसिक कार्यप्रणाली द्वारा रचनात्मकता और "बॉक्स से बाहर" सोच द्वारा जटिल समस्याओं को हल करने की क्षमता शामिल है। पाठ्यक्रम उन सिद्धांतों पर ध्यान केंद्रित करेगा जो आराम और गतिविधि का एक इष्टतम मिश्रण विकसित करके गतिविधि में चरम प्रदर्शन को कम करते हैं। आप एक आदर्श दैनिक दिनचर्या का विकास और अनुभव करेंगे जो जीवन में सफलता का समर्थन करता है। (2 इकाइयाँ)

  • तकनीकी प्रबंधकों के लिए नेतृत्व (506B के लिए)

    इस पाठ्यक्रम का लक्ष्य छात्रों को नेतृत्व में ज्ञान और कौशल प्रदान करना है, जिसमें भविष्य के नेतृत्व की भूमिकाओं के लिए तैयारी के रूप में संचार कौशल शामिल हैं।

    इस पाठ्यक्रम के अंत तक, छात्र निम्नलिखित सहित, प्रभावी नेतृत्व के बारे में महत्वपूर्ण सवालों के जवाब समझ जाएंगे:

    क्या born प्राकृतिक-जनित ’नेता हैं?

    क्या आपके पास प्रभावी ढंग से नेतृत्व करने के लिए करिश्मा होना चाहिए?

    एक नेता होने के लिए किस संपत्ति की आवश्यकता है?

    प्रबंधन और अग्रणी के बीच अंतर क्या है?

    इस युग में नेतृत्व करने के लिए कई 'बुद्धिमानी' की आवश्यकता क्या है?

    'प्रबंधन कदाचार' क्या है और यह आत्म-तोड़फोड़ की ओर कैसे ले जाता है?

    यह जानना कि अग्रणी प्रक्रिया के लिए प्रतिक्रिया आवश्यक है, हम इसे देने और प्राप्त करने के भय से कैसे पार पाते हैं?

    कार्यस्थल में पाई जाने वाली 80% समस्याओं का स्रोत क्या है?

    क्या यह व्यक्तिगत और टीम नेतृत्व कौशल में सुधार करने में संगठन की सहायता के लिए वैज्ञानिक अनुसंधान उपलब्ध है?

    अतिथि वक्ताओं में प्रतिष्ठित उद्यमी, कंप्यूटर वैज्ञानिक, परोपकारी, शिक्षाविद और समाज के अन्य प्रमुख नेता शामिल होंगे।

    (एक्सएनएनएक्स इकाइयां)

अतिरिक्त MSCS पाठ्यक्रम

  • उन्नत प्रोग्रामिंग भाषाएँ (CS 505)

    यह पाठ्यक्रम औपचारिक तरीकों और अमूर्त तंत्र पर जोर देने के साथ प्रोग्रामिंग भाषा डिजाइन में उन्नत विषयों पर विचार करता है। विषय डेटा और नियंत्रण अमूर्तता, वाक्यविन्यास और शब्दार्थ के औपचारिक विनिर्देश, कार्यक्रम की शुद्धता के प्रमाण, गैर नियतात्मक प्रोग्रामिंग, उन्नत नियंत्रण संरचना और विशिष्ट भाषाओं के अध्ययन में शामिल हैं। (4 इकाइयाँ) पूर्वापेक्षाएँ: CS 401 या विभाग के संकाय की सहमति।

  • बिग डेटा (डेटा साइंस ट्रैक) (CS 522)

    आधुनिक सूचना प्रसंस्करण को डेटा के विशाल भंडार द्वारा परिभाषित किया जाता है जिसे पारंपरिक डेटाबेस सिस्टम द्वारा नियंत्रित नहीं किया जा सकता है। यह पाठ्यक्रम उद्योग के नेताओं द्वारा विकसित और उपयोग की गई नवीनतम तकनीक को शामिल करता है ताकि इस समस्या को सबसे कुशल तरीके से हल किया जा सके। विशिष्ट विषयों में शामिल हैं MapReduce एल्गोरिदम, MapReduce एल्गोरिदम डिजाइन पैटर्न, HDFS, Hadoop क्लस्टर आर्किटेक्चर, YARN, कंप्यूटिंग रिश्तेदार आवृत्तियों, माध्यमिक छँटाई, वेब क्रॉलिंग, उल्टे अनुक्रमित और सूचकांक संपीड़न, Spas एल्गोरिदम और स्काला। (4 इकाइयाँ) पूर्वापेक्षाएँ: CS 435 एल्गोरिथम।

  • बिग डेटा एनालिटिक्स (डेटा साइंस ट्रैक) (CS 488)

    बिग डेटा नया प्राकृतिक संसाधन है: हर 12-18 महीनों में डेटा दोगुना हो रहा है। इस नए बिग डेटा एनालिटिक्स पाठ्यक्रम में नई अंतर्दृष्टि उत्पन्न करने के लिए बड़े विविध डेटा सेट खनन के लिए मूलभूत अवधारणाओं और उपकरणों को शामिल किया गया है। आप Wordcloud, पेजरैंक, डेटा विज़ुअलाइज़ेशन, निर्णय पेड़, प्रतिगमन, क्लस्टरिंग, तंत्रिका नेटवर्क और अधिक बनाने के लिए R भाषा के उपयोग में महारत हासिल करेंगे। आप कुछ बड़े मल्टी-मिलियन रिकॉर्ड डेटासेट के साथ काम करेंगे, और मेरा ट्विटर फीड भी। आप Hadoop / MapReduce और Streaming Data अवधारणाओं को सीखेंगे, और अन्य Apache Big Data Projects जैसे Spark, Flink, Kafka, Storm, Samza, NoSQL को अलग-अलग शोध पत्रों के माध्यम से देखेंगे। आप सबसे अच्छी नस्ल के डेटा-विश्लेषणात्मक चुनौतियों को हल करके पुरस्कार राशि के लिए प्रतिस्पर्धा करने के लिए कागले डॉट कॉम की खुली परियोजनाओं पर समूहों में काम करेंगे। आप उद्योग के अग्रणी आईबीएम एसपीएसएस मॉडलर, और ओपन-सोर्स डेटा खनन प्लेटफार्मों का उपयोग करना भी सीखेंगे। इस पाठ्यक्रम में प्रयुक्त #1 बेस्टसेलर पाठ्यपुस्तक प्रशिक्षक द्वारा स्वयं लिखी गई है। पाठ्यक्रम में MIT, कर्सरा, Google और अन्य जगहों से वीडियो प्रशिक्षण सामग्री की एक विस्तृत श्रृंखला का उपयोग किया जाएगा। (4 इकाइयाँ) पूर्वापेक्षा: विभाग के संकाय की सहमति

  • बिग डेटा टेक्नोलॉजीज (डेटा साइंस ट्रैक) (CS 523)

    कुछ ही वर्षों में, बड़ी डेटा प्रौद्योगिकियां प्रचार के दायरे से नए डिजिटल युग के मुख्य घटकों में से एक में चली गई हैं। सूचना को ज्ञान में बदलने के लिए ये प्रौद्योगिकियां बहुत उपयोगी हैं।

    पाठ्यक्रम का उद्देश्य आपके शस्त्रागार में कुछ महत्वपूर्ण उपकरण जोड़ना है ताकि आपको विभिन्न बड़ी डेटा समस्याओं को हल करने में मदद मिल सके। हम '' बिग डेटा क्या है '' जैसे सवालों के जवाब देने से शुरुआत करेंगे। यह महत्वपूर्ण या उपयोगी क्यों है? आप इस बड़े डेटा को कैसे स्टोर करते हैं? ”फिर हम बड़े डेटा टेक्नोलॉजी स्टैक से विभिन्न टूल और प्रोग्रामिंग मॉडल का अध्ययन करेंगे, जो डेटा का विश्लेषण करने में हमारी मदद करेंगे। टॉपिक में कुछ प्रोजेक्ट्स शामिल हैं जैसे कि मैप्रेड्यूस, पिग, हाइव, सकोप, फ्लूम, एचबीएस (नूएसक्यू डीबी), ज़ुकीपर और अपाचे स्पार्क इकोसिस्टम प्रोजेक्ट्स। हम AWS और EMR का परिचय भी देंगे। आप मुख्य रूप से Cloudera के एकल नोड Hadoop वितरण के साथ काम करेंगे। (4 इकाइयाँ) (कोई शर्त नहीं)

  • कंप्यूटर सुरक्षा (CS 466)

    यह पाठ्यक्रम कंप्यूटर सुरक्षा के तीन पहलुओं में गहराई से जाता है: गोपनीयता, अखंडता और उपलब्धता। गोपनीय और अखंडता सुरक्षा नीतियों के लिए कई मॉडल का अध्ययन किया जाता है। गोपनीयता और अखंडता को सुनिश्चित करने में क्रिप्टोग्राफी की भूमिका की जांच की जाती है। अन्य विषयों में प्रमाणीकरण, ऑडिटिंग, पैठ परीक्षण, सामान्य कमजोरियां और घुसपैठ का पता लगाना शामिल हैं। पाठ्यक्रम एक यथार्थवादी सुरक्षित प्रणाली के मामले के अध्ययन के साथ समाप्त होता है। छात्रों को सुरक्षा साहित्य से पेपर पढ़ने और उन्हें व्याख्यान में दी गई सामग्री पर लागू करने के लिए कहा जाएगा। (4 क्रेडिट) शर्त: CS 401 या विभाग के संकाय की सहमति।

  • एंटरप्राइज आर्किटेक्चर (CS 544)

    यह पाठ्यक्रम बड़े पैमाने पर उद्यम अनुप्रयोगों को विकसित करते समय उपयोग किए जाने वाले सिद्धांतों और प्रथाओं को पढ़ाने पर केंद्रित है। हम उन विभिन्न वास्तुशिल्प परतों की जांच करेंगे जिनका उपयोग अक्सर किया जाता है और इन परतों से जुड़ी अलग-अलग प्रौद्योगिकियां होती हैं, जिसमें ऑब्जेक्ट रिलेशनल मैपिंग (ORM), डिपेंडेंसी इंजेक्शन (DI), एस्पेक्ट ओरिएंटेड प्रोग्रामिंग (AOP), और वेब सेवाओं (RESTfull) के साथ अन्य अनुप्रयोगों का एकीकरण शामिल है। (SOAP), मैसेजिंग और रिमोट विधि मंगलाचरण। संबंधपरक डेटाबेस और एसक्यूएल का कार्यसाधक ज्ञान होना चाहिए। यदि आपके पास एसक्यूएल का मजबूत कोर्स या अच्छा काम करने का ज्ञान नहीं है, तो आपको ईए के लिए साइन अप करने से पहले CS422 DBMS के लिए साइन अप करना चाहिए। (4 इकाइयाँ)

  • मशीन लर्निंग (डेटा साइंस ट्रैक) (CS 582)

    मशीन लर्निंग, अध्ययन का क्षेत्र जो कंप्यूटर को डेटा से सीखने की क्षमता देता है, लगभग हर वैज्ञानिक अनुशासन के केंद्र में है, और डेटा से सामान्यीकरण (यानी भविष्यवाणी) का अध्ययन मशीन सीखने का केंद्रीय विषय है। यह कोर्स मशीन लर्निंग और मशीन लर्निंग में नए और उन्नत तरीकों के साथ-साथ उनके अंतर्निहित सिद्धांत को स्नातक स्तर का परिचय देता है। यह व्यावहारिक प्रासंगिकता के साथ दृष्टिकोण पर जोर देता है और मशीन लर्निंग के कई हालिया अनुप्रयोगों पर चर्चा करता है, जैसे डेटा माइनिंग (बिग डेटा / डेटा साइंस, डेटा एनालिटिक्स में), प्राकृतिक भाषा प्रसंस्करण, कंप्यूटर विज़न, रोबोटिक्स, जैव सूचना विज्ञान और पाठ और वेब डेटा प्रोसेसिंग। मशीन लर्निंग का उपयोग वित्तीय सेवा, तेल और गैस, स्वास्थ्य देखभाल, विपणन और विज्ञापन, सरकार, इंटरनेट और इंटरनेट ऑफ थिंग्स सहित विभिन्न उद्योगों में किया जाता है।

    इस कोर्स में कई सीखने के प्रतिमान, एल्गोरिदम, सैद्धांतिक परिणाम और अनुप्रयोग शामिल हैं। यह कृत्रिम बुद्धिमत्ता, सूचना सिद्धांत, सांख्यिकी और नियंत्रण सिद्धांत से बुनियादी अवधारणाओं का उपयोग करता है क्योंकि वे मशीन सीखने के लिए प्रासंगिक हैं। विषयों में शामिल हैं: पर्यवेक्षित शिक्षण (जनरेटिव / भेदभावपूर्ण शिक्षा, पैरामीट्रिक / गैर-पैरामीट्रिक शिक्षा, तंत्रिका नेटवर्क, समर्थन वेक्टर मशीनें, निर्णय वृक्ष, बेयसियन सीखने और अनुकूलन); अनिश्चित सीखने (क्लस्टरिंग, आयामीता में कमी, गिरी हुई विधियाँ); सीखने के सिद्धांत (पूर्वाग्रह / विचरण ट्रेडऑफ़; वीसी सिद्धांत; बड़े मार्जिन)। सुदृढीकरण सीखने और अनुकूली नियंत्रण। अन्य विषयों में HMM (हिडन मार्कोव मॉडल), इवोल्यूशनरी कम्प्यूटिंग, डीप लर्निंग (न्यूरल नेट्स के साथ) और डिजाइनिंग एल्गोरिदम शामिल हैं जिनके प्रदर्शन को मौलिक मशीन सीखने की समस्याओं के लिए कड़ाई से विश्लेषण किया जा सकता है।

    पाठ्यक्रम का एक महत्वपूर्ण हिस्सा एक समूह परियोजना है। समानांतर, वितरित और स्केलेबल मशीन लर्निंग के लिए उपयोग किए जाने वाले प्रमुख ओपन सोर्स टूल परियोजनाओं को करने वाले छात्रों की मदद करने के लिए संक्षिप्त रूप से कवर किए जाएंगे। (4 इकाइयाँ) पूर्वापेक्षाएँ: कोई नहीं।

  • मोबाइल डिवाइस प्रोग्रामिंग (CS 473)

    मोबाइल डिवाइस प्रोग्रामिंग का महत्व सॉफ्टवेयर विकास में एक नए डोमेन के रूप में हाल के वर्षों में उभरा है। यह पाठ्यक्रम छात्रों को उन अनुप्रयोगों को विकसित करने के लिए तैयार करता है जो मोबाइल उपकरणों जैसे कि आईफोन, आईपैड या एंड्रॉइड फोन पर चलते हैं। यह तेजी से विकसित हो रहा बाजार है। पाठ्यक्रम मोबाइल अनुप्रयोगों को स्थापित करने, विकसित करने, परीक्षण करने और वितरित करने पर केंद्रित है। इस पाठ्यक्रम के अंत में छात्र कवर किए गए प्लेटफार्मों के लिए एक ऐप विकसित करने में सक्षम हैं, उनका अनुकरण करते हैं, वास्तविक डिवाइस पर उनका परीक्षण करते हैं और अंत में उपयोगकर्ताओं के लिए उपलब्धता बनाने के लिए ऐप स्टोर पर प्रकाशित करते हैं। (4 इकाइयाँ) पूर्वापेक्षाएँ: CS472 या विभाग के संकाय की सहमति।

  • आधुनिक वेब अनुप्रयोग (CS 572)

    इस कोर्स में आप एक पूर्ण आधुनिक वेब अनुप्रयोग के निर्माण के लिए सभी आवश्यक कौशल के साथ एसपीए (सिंगल पेज वेब एप्लिकेशन) के रिएक्टिव प्रोग्रामिंग आर्किटेक्चर को जानेंगे। तकनीकों में शामिल हैं: NodeJS, ExpressJS, टाइपस्क्रिप्ट, AngularJS2, Firebase और NoSQL डेटाबेस (MongoDB)। पाठ्यक्रम को कवर किया जाएगा:

    • कैसे C ++ V8 इंजन और अतुल्यकालिक कोड नोड और नोड ईवेंट लूप में काम करते हैं।
    • मॉड्यूल और एक्सप्रेसजेएस का उपयोग करके पुन: उपयोग के लिए अपने कोड को कैसे संरचना करें और रेस्टफुल एपीआई का निर्माण करें।
    • NoSQL डेटाबेस कैसे काम करता है: मानगो शैल, एकत्रीकरण ढांचा, प्रतिकृति सेट, क्लस्टरिंग, शार्ड, मोंगोज़ ओआरएम।
    • Angular (Google द्वारा समर्थित) कैसे काम करता है, इसकी गहन समझ, वेधशालाओं और विषयों के साथ चेंज डिटेक्शन, रिएक्टिव RxJs प्रोग्रामिंग, द शैडो डोम, जोन, मॉड्यूल्स एंड कंपोनेंट्स, कस्टम डाइरेक्टिव्स एंड पाइप्स, सर्विसेस एंड डिपेंडेंसी इंजेक्शन, Angular Compiler, JIT और AOF Compilation , फॉर्म (टेम्प्लेट ड्रिवेन एंड डेटा ड्रिवेन), डेटा बाइंडिंग, राउटिंग, गार्ड्स एंड रूट प्रोटेक्शन, एचटीटीपी क्लाइंट, जेडब्ल्यूटी जेन्सन वेब टोकन ऑथेंटिकेशन।

    (एक्सएनएनएक्स इकाइयां)

  • ऑपरेटिंग सिस्टम (CS 465)

    एक ऑपरेटिंग सिस्टम कंप्यूटर सिस्टम के केंद्रीय संसाधनों को नियंत्रित करता है और उन्हें अलग-अलग उपयोगकर्ताओं को आवंटित करता है। पाठ्यक्रम के विषयों में अनुक्रमिक और समवर्ती प्रक्रियाएं, आपसी बहिष्कार, संसाधन साझाकरण, प्रक्रिया सहयोग, गतिरोध, संसाधन आवंटन, प्रोसेसर निर्धारण, मेमोरी प्रबंधन, विभाजन और पेजिंग एल्गोरिदम, टाइमशेयरिंग सिस्टम, शेड्यूलिंग एल्गोरिदम और संसाधन सुरक्षा शामिल हैं। (4 इकाइयाँ) पूर्वापेक्षाएँ: CS 401 या विभाग के संकाय की सहमति।

  • समानांतर प्रोग्रामिंग (CS 471)

    सभी नए कंप्यूटरों के लिए मानक प्रोसेसर अब एक मल्टी-कोर प्रोसेसर है, जो प्रोग्रामों को अधिक तेज़ी से निष्पादित करने की क्षमता रखता है। हालांकि, इस क्षमता का उपयोग करने के लिए, एक प्रोग्रामर को समानांतर प्रोग्रामिंग तकनीकों का कुछ ज्ञान होना चाहिए। इस पाठ्यक्रम के दौरान, छात्र अपना अधिकांश समय लेखन और समानांतर कार्यक्रमों को डिबग करने में व्यतीत करेंगे। अपेक्षित परिणाम व्यावहारिक प्रोग्रामिंग कौशल का एक नया स्तर विकसित करना होगा। यह कौशल न केवल मल्टी-कोर प्रोसेसर की प्रोग्रामिंग के लिए उपयोगी होगा, बल्कि ऑपरेटिंग सिस्टम प्रोग्रामिंग और वितरित डेटाबेस प्रोग्रामिंग भी होगा। इस कोर्स के दौरान उपयोग किए जाने वाले सॉफ़्टवेयर टूल में Microsoft Visual C / C ++, Java मल्टीथ्रेडिंग लाइब्रेरी और OpenMP थ्रेडिंग मानक शामिल हैं। (4 इकाइयाँ) पूर्वापेक्षाएँ: जावा, C या C ++ का उपयोग करके कंप्यूटर प्रोग्रामिंग का ज्ञान।

  • सॉफ्टवेयर आर्किटेक्चर (CS 590)

    इस पाठ्यक्रम में हम तकनीकों, सिद्धांतों और पैटर्न को देखेंगे कि कैसे माइक्रोसिस्टिक्स का उपयोग करके लचीला, स्केलेबल, परीक्षण योग्य और लचीला सॉफ्टवेयर सिस्टम डिजाइन किया जाए। हम अध्ययन करेंगे कि कैसे हम बड़े अनुप्रयोगों को छोटे माइक्रोसर्विसेज में विभाजित कर सकते हैं जो अखंड उद्यम अनुप्रयोगों की तुलना में निर्माण और अन्य लाभों के लिए आसान हैं। एक वितरित माइक्रोसिस्टवर्क आर्किटेक्चर कई चुनौतियां भी देता है। हम इन चुनौतियों का अध्ययन करेंगे और उन्हें कैसे संबोधित करेंगे। इस पाठ्यक्रम के विषय वास्तुशिल्प शैली, एकीकरण तकनीक और पैटर्न, डोमेन संचालित डिजाइन, घटना संचालित वास्तुकला और प्रतिक्रियाशील प्रोग्रामिंग हैं। (4 क्रेडिट)। (कोई शर्त नहीं)

  • सॉफ्टवेयर डेवलपमेंट में प्रैक्टिकम (CS 575)

    इस अभ्यास पाठ्यक्रम में, छात्र तकनीकी पेशेवर स्थिति में कंप्यूटर से संबंधित कार्य करते हैं। प्रदर्शन किए गए कार्य नई प्रणालियों के डिजाइन और विकास या विशिष्ट उद्देश्यों के लिए मौजूदा प्रणालियों के अनुप्रयोग में हो सकते हैं। प्रैक्टिकम नौकरी का विवरण नियोक्ता और छात्र द्वारा तैयार किया जाता है, और विभाग के स्नातक संकाय द्वारा अग्रिम में अनुमोदन की आवश्यकता होती है, जहां प्रैक्टिकम पर्यवेक्षक के परामर्श से छात्र को रखा जाता है। (यह कोर्स मुख्य रूप से इंटर्नशिप या सहकारी कार्यक्रमों में छात्रों के लिए है।) (0.5-1 इकाई प्रति ब्लॉक - दोहराया जा सकता है।)

“पहली बार जब मैंने MSCS कार्यक्रम के बारे में सुना, तो मुझे संदेह हुआ। मुझे विश्वास नहीं हो रहा था कि ऐसा कुछ मौजूद है। लेकिन एक दिन, मेरे एक मित्र कार्यक्रम में शामिल हुए। जब मैंने पुष्टि की कि यह वास्तविक है। फिर मैंने अपनी आवेदन प्रक्रिया फिर से शुरू की। कुंआ! यह सच है, मैं यहां हूं, मैंने कार्यक्रम पूरा कर लिया है और मैं बहुत खुश हूं। ”

एडविन ब्वाम्बलेयुगांडा