تعلم مهارات "التدريب العملي" باستخدام أحدث التقنيات في تطوير البرمجيات

هل انت مستعد ل تقدم حياتك المهنية؟

هل أنت مستعد للتقدم في حياتك المهنية؟

بالتشاور مع مستشاريهم ، يختار جميع الطلاب الدورات الأساسية من العمود الأيسر أدناه والدورات المتقدمة من العمود الأيمن.

بناءً على الاختبارات المؤهلة التي تم إجراؤها عند وصولهم إلى الحرم الجامعي ، يقتصر الأمر على الطلاب الموجودين في مسار الدخول التحضيري سيحتاج إلى حضور فصل ممارسات البرمجة الأساسية (CS 4) لمدة 390 أسابيع. مطلوب لـ 506 و CS 401 لجميع الطلاب. عرض متطلبات التخرج >

الدورات الأساسية

  • تم تصميم الدورة التدريبية الأولى الخاصة بك خصيصًا لإنشاء الأساس لكيفية أن تصبح محترفًا في علوم الكمبيوتر عالي الأداء. تعود جذور الدورة إلى ممارسة التأمل التجاوزي الذي يؤدي إلى تحقيق إمكاناتك الحقيقية. سوف تتعلم عن فوائد TM بما في ذلك القدرة على حل المشاكل المعقدة من خلال الأداء العقلي الفائق الذي يعزز الإبداع والتفكير "خارج الصندوق". ستركز الدورة على المبادئ التي تدعم ذروة الأداء في النشاط من خلال تطوير مزيج مثالي من الراحة والنشاط. سوف تطور وتختبر روتينًا يوميًا مثاليًا يدعم النجاح في الحياة. (2 وحدة)

  • تقدم هذه الدورة برنامجًا مركزًا لتعزيز مهارات البرمجة والتحليل في خمسة مجالات: حل المشكلات ، وهياكل البيانات ، والبرمجة الموجهة للكائنات ، ولغة برمجة Java ، واستخدام العودية في برامج Java.

    هذه الموضوعات ذات أهمية خاصة كشرط أساسي للدورات في برنامج الدراسات العليا في علوم الكمبيوتر.

    تشمل الموضوعات: عناصر برمجة Java ، والتصميم الموجه للكائنات والتنفيذ ، وهياكل البيانات (بما في ذلك القوائم ، والمكدسات ، وقوائم الانتظار ، وأشجار البحث الثنائية ، وجداول التجزئة ، والمجموعات) ، والتسلسل الهرمي للاستثناءات ، وملف i / o والتدفقات ، و JDBC. (4 ساعات معتمدة) متطلب سابق: للطلاب الجامعيين: CS 221؛ لطلبة الدراسات العليا: موافقة أعضاء هيئة التدريس بالقسم (4 وحدات).

  • يقدم هذا المساق المبادئ الأساسية للبرمجة الشيئية. سيتعلم الطلاب كيفية كتابة برامج قابلة لإعادة الاستخدام ومحافظة بشكل أفضل ، ودمج هذه المعرفة مع المهام والمشروعات المختبرية. وتشمل الموضوعات: المبادئ الأساسية والنماذج للبرامج الموجهة للكائنات ، والرسوم البيانية لفئة UML ومبادئ التصميم التي تعزز إعادة قابلية الاستخدام وقابلية الصيانة للبرامج. (وحدات 4)

  • تغطي هذه الدورة أساسيات مبادئ تصميم قواعد البيانات ومقدمة لقواعد بيانات SQL و NoSQL.

    وتشمل المواضيع: مبادئ تصميم قاعدة البيانات العلائقية ، الأشكال العادية ، المفاتيح الأساسية والأجنبية والفريدة ؛ استعلامات (تجميع ، ضم ، فرز) ؛ المعاملات مبادئ تصميم قاعدة البيانات المستندة إلى المستندات ، والفهارس ، وقواعد بيانات القياس ؛ التوفر والاسترداد (التفريغ ، الاستعادة ، التصدير ، الاستيراد) ؛ قاعدة البيانات كخدمة. لا توجد متطلبات مسبقة.

    (وحدات 4)

  • تقوم أنظمة قواعد البيانات بتنظيم واسترجاع المعلومات ، مما يسمح للمستخدم بالوصول إلى المعلومات المطلوبة بسهولة وكفاءة. وتشمل المواضيع: نموذج البيانات العلائقية ؛ SQL. نمذجة ER الجبر العلائقي تطبيع البيانات ؛ المعاملات؛ كائنات في قاعدة البيانات ؛ أمن وسلامة البيانات تخزين البيانات ، OLAP ، وتعدين البيانات ؛ قواعد البيانات الموزعة ودراسة نظام قاعدة بيانات تجارية محدد. (وحدات 4) المتطلب السابق: CS 401 أو موافقة هيئة التدريس بالكلية.

  • هندسة البرمجيات هي الدورة التي تقدم الطالب إلى أفضل الممارسات في تطوير البرمجيات من خلال منهجية تطوير البرمجيات. كان لدى الطلاب بالفعل بعض الخبرة في الدورات السابقة باستخدام نموذج Object Oriented واستعملوا بعضًا من الرسوم البيانية UML الأساسية لأغراض نمذجة العلاقات بين كائنات البرامج. في هندسة البرمجيات ، سيقوم الطالب بتطوير مهاراته في وضع هذه الأدوات معًا لإنتاج برامج قوية وسهلة الصيانة. تصف منهجية تطوير البرمجيات متى وكيف ينبغي استخدام مفاهيم OO والرسوم البيانية UML لتحقيق هدف بناء برامج جودة. تركز الدورة حول مشروع صغير يمكن من خلاله تطبيق وتطبيق المبادئ التي تمت مناقشتها في شكل المحاضرة. في نهاية الدورة ، سيكون لدى الطالب تطبيق قيد التشغيل ، يتم بناؤه وفقًا للمعايير العالية لمنهجية تطوير RUP (عملية موحدة موحدة).

  • يقدم هذا المقرر طرقًا لتحليل كفاءة الخوارزميات (بما في ذلك تحليل الحالة الأسوأ ومتوسط ​​الحالة) ويقدم مجموعة متنوعة من الخوارزميات المعروفة عالية الكفاءة. يتم إعطاء تحليل متساوٍ ، وتصميم ، وتنفيذ الخوارزميات. تشمل الموضوعات البحث والفرز ، وكفاءة العمليات على هياكل البيانات (بما في ذلك القوائم ، والقوائم المتداخلة ، وأشجار البحث الثنائية المتوازنة ، وقوائم الانتظار ذات الأولوية) ، والخوارزميات البيانية ، والخوارزميات الاندماجية ، وعلاقات التكرار ، والبرمجة الديناميكية ، ومشاكل NP-complete ، وبعض الموضوعات الخاصة مع مرور الوقت. يسمح. (تشمل الموضوعات الخاصة الهندسة الحسابية ، الخوارزميات لأنظمة التشفير ، التقريب ، البيانات الكبيرة والحوسبة المتوازية).

  • تتعمق هذه الدورة في مفاهيم برمجة الويب غير المتزامنة وتغطي أنماط التصميم الأكثر أهمية لـ JS ، والتي تشمل نمط المراقب ، والمصنع ، والديكور ، وغيرها الكثير. كما يغطي العمل مع Web API وهياكل البيانات غير القابلة للتغيير.

    وتشمل المواضيع: بوابة تعاونية مقدمة إلى TypeScript و Bundlers ؛ جافا سكريبت غير متزامن ؛ حلقة الحدث واجهة برمجة تطبيقات التاريخ ، واجهة برمجة تطبيقات تحديد الموقع الجغرافي ؛ Ajax (HTTP، Ajax، JSON، Fetch، Introduction to CORS، Debugging) ؛ وعود و Async / انتظار ؛ البرمجة التفاعلية المراقبات والمشغلات RxJS ؛ أنماط التصميم: الوحدة النمطية ، النموذج الأولي ، الفردي ، المراقب ، الواجهة ، المصنع ، المصمم ، الوكيل ، الإستراتيجية ، الذاكرة ؛ متصفحات الويب الحديثة. لا توجد متطلبات مسبقة.

    (وحدات 4)

  • مستقبل الحوسبة متوازي. استقرت الزيادة في الأداء التسلسلي حيث وصلت تصميمات المعالجات إلى حدود التصغير وتردد الساعة والطاقة والحرارة. في عام 2005 ، بدأ عدد أنوية المعالجات في الزيادة بشكل مفاجئ من نواة واحدة إلى نوى متعددة ، مما خلق إمكانية تنفيذ البرامج بسرعة أكبر. ومع ذلك ، للاستفادة من هذه الإمكانات ، يجب أن يكون لدى المبرمج بعض المعرفة بتقنيات البرمجة المتوازية.

    يعلم هذا المقرر الدراسي الطلاب المفاهيم الأساسية للبرمجة المتوازية في سياق Java 9. تتيح البرمجة المتوازية للمطورين استخدام أجهزة كمبيوتر متعددة النواة لجعل تطبيقاتهم تعمل بشكل أسرع باستخدام نوى متعددة في نفس الوقت. بنهاية هذه الدورة التدريبية ، سوف تتعلم كيفية استخدام أطر عمل Java المتوازية الشائعة (مثل Multi-Threading و Streams و Executors) لكتابة برامج متوازية لمجموعة واسعة من الأنظمة الأساسية متعددة النواة بما في ذلك الخوادم أو أجهزة الكمبيوتر المكتبية أو الأجهزة المحمولة.

    تشمل أدوات البرامج المستخدمة خلال هذه الدورة Microsoft Visual Studio ومكتبة Java multithreading ومعيار خيوط OpenMP. (4 وحدات) متطلب سابق: معرفة ببرمجة الكمبيوتر باستخدام Java أو C أو C ++.

    لمزيد من المعلومات ، شاهد هذا الفيديو الذي مدته خمس دقائق والذي أعده أستاذ هذه الدورة:

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

  • تقدم هذه الدورة مقدمة منهجية لبرمجة تطبيقات الويب التفاعلية والديناميكية. الدورة مخصصة للأفراد الذين لديهم خبرة قليلة في برمجة تطبيقات الويب السابقة أو ليس لديهم خبرة على الإطلاق. سيستخدم هذا العرض NodeJS و Express framework للمعالجة من جانب الخادم.

    تبدأ الدورة بمراجعة أساسيات HTML و CSS ، مع التركيز بشكل خاص على تخطيط صفحة الويب باستخدام CSS. JavaScript هي لغة البرمجة المستخدمة في الدورة التدريبية بما في ذلك الوظائف والكائنات والوحدات النمطية وإطار عمل jQuery و Ajax و Promises. يقضي الطلاب معظم وقتهم في برمجة سلسلة من مواقع الويب المعقدة والمتطورة بشكل متزايد. يُنشئ مشروع تتويج خلال الأسبوع الأخير من الدورة التدريبية موقعًا إلكترونيًا مزودًا بخلفية قاعدة بيانات SQL يتم الوصول إليها بشكل غير متزامن من قبل العميل لتحقيق الأداء الأمثل.

    هذه الدورة التدريبية هي شرط أساسي لـ CS545 Web Application Architecture و CS572 Modern Web Applications. المتطلب السابق: CS 220 أو CS 401 أو موافقة أعضاء هيئة التدريس بالقسم

    (وحدات 4)

  • يعد تطوير برامج Android تجربة مثيرة ومربحة. يفتح تطوير Android عالم الإبداع للمبرمج. يتيح لك التعبير عن نفسك بطرق لم تحلم بها من قبل في عالم رقمي حيث يمكنك إنشاء منتج وإتاحته لمليارات المستخدمين بنقرة زر واحدة فقط. ستعلمك هذه الدورة كيفية تطوير تطبيقات Android باستخدام لغة برمجة Kotlin.

    تشمل الموضوعات: إعداد جهاز الكمبيوتر الخاص بك لبرمجة Android ؛ أساسيات المانيفست التخطيطات والأنشطة وطرق العرض ومكونات واجهة المستخدم ؛ العمل مع النوايا والأجزاء والتفضيلات المشتركة ؛ عرض الويب و HTML ؛ العمل مع الوسائط المتعددة ؛ مكونات Android Jetpack و Room Database و JSON ؛ مستشعرات مفككة الموقع؛ نشر التطبيق في متجر Google play. (4 وحدات) لا توجد متطلبات مسبقة مطلوبة.

  • تركز هذه الدورة على استخدام JavaScript في الخلفية (NodeJS). سيتعلم الطلاب كيفية عمل NodeJS ويكتسبون فهمًا عميقًا لواجهة برمجة التطبيقات الأساسية (API). تتناول الدورة كيفية عمل محرك مترجم JS (V8) ، وكيفية هيكلة التعليمات البرمجية باستخدام الوحدات النمطية ، وكيفية عمل الشفرة غير المتزامنة في Node و Node event loop. كما تعلم الدورة أيضًا مدير حزمة Node (NPM) ، وكيفية إنشاء خادم ويب ، وكيفية العمل مع إطار عمل Express ، وكيفية استخدام ODM مثل Mongoose لإدارة MongoDB. سيتعلم الطلاب جميع التقنيات التي تحدد تطبيق الويب الحديث ، بما في ذلك مصادقة المستخدمين باستخدام رموز الويب JSON ، والبيانات المستمرة في قاعدة البيانات ، وبناء واجهة برمجة تطبيقات مريحة. يتم أيضًا تناول مفاهيم علوم الكمبيوتر الأخرى.

    وتشمل المواضيع: تصميم HTTP & Rest API ؛ عديمي الجنسية مقابل التطبيقات ذات الحالة ؛ عقدة API ؛ مدير حزمة العقدة (npm) ؛ بنية وحدة التحكم في النموذج ، والإطار السريع ، والأدوات الوسيطة ؛ التوجيه من جانب الخادم ؛ المصادقة القائمة على الرمز المميز. لا توجد متطلبات مسبقة.

    (وحدات 4)

  • البيانات الضخمة هي المورد الطبيعي الجديد: تتضاعف البيانات كل 12-18 شهرًا. تغطي دورة تحليلات البيانات الكبيرة الجديدة هذه المفاهيم والأدوات الأساسية لتعدين مجموعات كبيرة ومتنوعة من البيانات لتوليد رؤى جديدة. سوف تتقن استخدام لغة R لإنشاء Wordcloud و Pagerank وتصور البيانات وأشجار القرار والانحدار والتجميع والشبكات العصبية والمزيد. ستعمل مع بعض مجموعات البيانات الكبيرة التي تبلغ عدة ملايين ، وأيضًا خلاصات Twitter سوف تتعلم مفاهيم Hadoop / MapReduce وتدفق البيانات ، وسوف تستكشف مشاريع Apache Big Data الأخرى مثل Spark و Flink و Kafka و Storm و Samza و NoSQL من خلال أوراق بحثية فردية. ستعمل في مجموعات على مشاريع مفتوحة من Kaggle.com للتنافس على جوائز مالية من خلال حل تحديات تحليل البيانات الأفضل من نوعها. سوف تتعلم أيضًا استخدام IBM SPSS Modeler الرائد في الصناعة ومنصات استخراج البيانات مفتوحة المصدر. ستستخدم الدورة أيضًا مجموعة واسعة من مواد التدريب بالفيديو من MIT و Coursera و Google وأماكن أخرى. (4 وحدات) متطلب سابق: موافقة أعضاء هيئة التدريس بالقسم

  • الهدف من هذه الدورة هو تزويد الطلاب بالمعرفة والمهارات في مجال القيادة ، بما في ذلك مهارات الاتصال والتحضير لأدوار قيادية في المستقبل.

    في نهاية هذه الدورة ، سوف يفهم الطلاب الإجابات على الأسئلة الرئيسية المتعلقة بالقيادة الفعالة ، بما في ذلك ما يلي:

    هل هناك قادة "طبيعيون"؟

    هل يجب أن يكون لديك كاريزما لتؤدي بشكل فعال؟

    ما هو أصل واحد مطلوب ليكون قائدا؟

    ما الفرق بين الإدارة والقيادة؟

    ما هي "الذكاءات" الكثيرة المطلوبة للقيادة في هذا العصر؟

    ما هو "سوء الإدارة الإدارية" وكيف يؤدي إلى التخريب الذاتي؟

    معرفة أن التغذية المرتدة ضرورية للعملية الرائدة ، كيف نتغلب على الخوف من إعطاءها وتلقيها؟

    ما هو مصدر 80٪ من المشاكل الموجودة في مكان العمل؟

    هل هناك بحث علمي متاح لمساعدة المنظمة في تحسين مهاراتها القيادية الفردية والجماعية؟

    سيتضمن المتحدثون الضيوف رواد الأعمال البارزين وعلماء الكمبيوتر ورجال الأعمال الخيرية والأكاديميين وغيرهم من القادة البارزين في المجتمع.

    (وحدات 2)

دورات متقدمة

  • Project Management introduces the student to learn through practical development of a project, lectures, reading, experiencing the Project Management Framework,  its body of knowledge areas (10 knowledge areas and related processes) and deployment.  Students work through a real project implementation and experience the role of project management in all phases of the Software Development Life Cycle using an application development methodology.

    Students get real experience in project planning, requirements management, scope management, coding standards, cost estimations for module / code in terms of dollar value as well as in terms of the man hours, schedules management, quality management, risk management and communications management.  By the end of the course, students will have a running application that is developed using the PM processes used in industry. (Starting from requirements through production deployment).  The project is developed using the latest Java Technologies and their frameworks with the Web services and Design Patterns.

  • يتناول هذا المقرر الموضوعات المتقدمة في تصميم لغة البرمجة مع التركيز على الطرق الرسمية وآليات التجريد. وتشمل الموضوعات البيانات وتجريد السيطرة ، والمواصفات الرسمية للبناء والدلالات ، والدليل على صحة البرنامج ، والبرمجة غير الحتمية ، وهياكل التحكم المتقدمة ، ودراسة لغات معينة. (وحدات 4) المتطلب السابق: CS 401 أو موافقة هيئة التدريس بالكلية.

  • ستغطي هذه الدورة أنماط البرمجة السحابية وستسمح للطلاب بالتدرب على العمل مع مختلف خدمات الويب السحابية ، بما في ذلك وظائف AWS Serverless.

    تشمل الموضوعات: إدارة الهوية والوصول (IAM) ؛ السحابة الخاصة الافتراضية (VPC) ، قوائم التحكم في الوصول إلى الشبكة - NACL ، والشبكات الفرعية ، ومناطق التوفر ، وخدمة التخزين البسيطة (S3) ، والحساب السحابي المرن (EC2) ، وخدمة الإخطار البسيطة (SNS) ، وموازن التحميل المرن (ELB) ، والتحجيم التلقائي ، الطريق 53 ، API في السحابة ؛ AWS Lambda ، Serverless ؛ خدمات الويب؛ نشر التطبيق ، المشروع النهائي. (4 ساعات معتمدة). (لا توجد شروط مسبقة)

  • يتم تعريف معالجة المعلومات الحديثة من خلال مستودعات هائلة للبيانات التي لا يمكن التعامل معها بواسطة أنظمة قواعد البيانات التقليدية. يغطي هذا المساق أحدث التقنيات التي تم تطويرها واستخدامها من قبل قادة الصناعة لحل هذه المشكلة بأكثر الطرق فعالية. وتشمل الموضوعات المحددة التي تمت تغطيتها خوارزميات MapReduce ، وأنماط تصميم خوارزمية MapReduce ، و HDFS ، ومعمارية كتلة Hadoop ، و YARN ، والترددات النسبية للحوسبة ، والفرز الثانوي ، والزحف على الويب ، والفهارس المقلوبة وضغط الفهرس ، و Spark algorithms و Scala. (وحدات 4) المتطلب السابق: خوارزميات CS 435.

  • في غضون سنوات قليلة فقط ، انتقلت تقنيات البيانات الضخمة من عالم الضجيج إلى أحد المكونات الأساسية للعصر الرقمي الجديد. هذه التقنيات مفيدة جدًا لتحويل المعلومات إلى معرفة. الهدف من الدورة هو إضافة بعض الأدوات المهمة إلى ترسانتك لمساعدتك في حل مختلف مشاكل البيانات الضخمة.

    تبدأ الدورة بإعطاء إجابات لأسئلة مثل "ما هي البيانات الضخمة وأهميتها؟ كيف تخزن البيانات الضخمة بموثوقية وبتكلفة زهيدة؟ ما الأدوات التي يجب استخدامها للعثور على معلومات مفيدة من هذه البيانات الضخمة؟ إلخ." في هذا المساق ، سيدرس الطلاب أدوات ونماذج برمجة مختلفة لتحليل البيانات الضخمة. تشمل الموضوعات مشاريع نظام Hadoop البيئي مثل MapReduce و Pig و Hive و Sqoop و Flume و HBase (NoSQL DB) و Zookeeper بالإضافة إلى مشاريع النظام البيئي Apache Spark مثل Spark SQL و Spark Streaming. يُمنح الطلاب أيضًا فرصة لبناء مسار كامل للبيانات الضخمة بدءًا من جمع البيانات في الوقت الفعلي والمعالجة والتحليل وعرض النتائج أخيرًا في تنسيق رسومي على لوحات المعلومات. سيعمل الطلاب بشكل أساسي مع مجموعة Hadoop أحادية العقدة لتوزيع Cloudera. (4 وحدات) (MPP هو الشرط الأساسي الوحيد)

  • مع النمو السريع للبيانات من مصادر مختلفة ، أصبحت معظم الشركات والمؤسسات تعتمد بشكل كبير على البيانات. يعد استخراج المعلومات الأساسية من هذه البيانات وتحويلها إلى معرفة وذكاء الوظيفة الرئيسية لتحليلات البيانات الضخمة. هذا هو السبب في أن المزيد من الشركات تنفق المزيد من الأموال بشكل متزايد على تحليلات البيانات. يتم تسريع هذا الآن من خلال النمو السريع التحول الرقمي. تغطي دورة تحليلات البيانات الكبيرة هذه المفاهيم الأساسية للتحليلات والخوارزميات والأدوات لتعدين مجموعات كبيرة ومتنوعة من البيانات لتوليد رؤى تجارية جديدة.

    جميع التحليلات الرئيسية - بما في ذلك وصفية ، تنبؤية ، وصفية وتشخيصية سوف يتم تغطيته. سيغطي المناهج الخوارزمية لتحليل مجموعات البيانات الكبيرة (غير المهيكلة ، المختلطة ، المنظمة ، الرسم البياني والتدفق): التعلم الآلي (الشبكات العصبية ، التعلم العميق ، أشجار القرار ، الغابة العشوائية والمزيد) ، الذكاء الاصطناعي ، معالجة اللغة الطبيعية (NLP) ، الإحصاء و خوارزميات التدفق ، عبر منصات التحليل الموزعة الحديثة (مثل MapReduce و Hadoop و Spark) للانحدار (التنبؤ) والتصنيف والتجميع وأنظمة التوصية والمزيد. تحليلات البيانات الضخمة المتقدمة، لا سيما التحليلات السببية سيتم أيضًا تغطيتها. سيتم استخدام لغات برمجة Python / R في الغالب. سيقوم الطلاب أيضًا بمشروع جماعي لحل مشكلة واقعية باستخدام تحليلات البيانات الضخمة.

    (4 وحدات) متطلب سابق: موافقة أعضاء هيئة التدريس بالقسم

  • يتناول هذا المقرر الأساليب والممارسات الحالية للتصميم الجيد لأنظمة البرمجيات. تشمل الموضوعات أنماط تصميم البرامج ، والأطر ، والبنى ، وأنظمة التصميم لتطبيق هذه التجريدات متعددة المستويات. (2-4 ساعات معتمدة) متطلب سابق: CS 401 أو موافقة كلية القسم.

  • يركز هذا المقرر الدراسي على تدريس المبادئ والممارسات المستخدمة عند تطوير تطبيقات الشركات على نطاق واسع. سنقوم بفحص الطبقات المعمارية المختلفة التي يتم استخدامها بشكل متكرر والتقنيات المختلفة المرتبطة بهذه الطبقات ، بما في ذلك رسم الخرائط العلائقية للكائنات (ORM) ، وحقن التبعية (DI) ، والبرمجة الموجهة إلى الجانب (AOP) ، والتكامل مع التطبيقات الأخرى من خلال خدمات الويب (RESTfull) و SOAP) ، واستدعاء الرسائل والطريقة البعيدة. يجب أن يكون لديك معرفة عملية بقواعد البيانات العلائقية و SQL. إذا لم يكن لديك دورة تدريبية قوية أو معرفة عملية جيدة بـ SQL ، فيجب عليك الاشتراك في CS422 DBMS قبل الاشتراك في EA. (4 وحدات)

  • تركز هذه الدورة التدريبية على تطبيقات الويب في إعداد المؤسسة. تطبيق المؤسسة هو نظام برمجي كبير مصمم للعمل في منظمة كبيرة مثل شركة أو حكومة. تطبيقات المؤسسات معقدة وقابلة للتطوير ومكونة وموزعة ومهمة حرجة. يركز هذا المساق ، CS545 ، على الواجهة الأمامية أو طبقة العرض التقديمي لتطبيق ويب المؤسسة. CS544 Enterprise Architecture عبارة عن دورة مصاحبة تركز على الواجهة الخلفية أو طبقة الأعمال ، بما في ذلك منطق الأعمال والمعاملات والمثابرة. CS472 ، برمجة تطبيقات الويب ، هي دورة تدريبية أساسية تغطي HTML و CSS و JavaScript و servlets و JSP.

    تعلم الدورة المبادئ والأنماط التي تكون عامة عبر المنصات والأطر. ستدرس هذه الدورة العمل مع إطارين جافا المهيمنين على Java ، وهما Java Server Faces (JSF) و SpringMVC. JSF هو إطار عمل يعتمد على المكونات وهو عبارة عن مواصفات إطار العرض التقديمي الرسمي لمجموعة مكدسات Java Enterprise Edition. يعتبر SpringMVC جزءًا من إطار عمل Core Spring وأصبح إطار الويب Java الأكثر استخدامًا في السنوات الأخيرة. (وحدات 4) المتطلب السابق: CS 472 أو موافقة هيئة التدريس بالكلية.

  • React هي المكتبة الأكثر شيوعًا لبناء تطبيقات ويب قوية. في هذه الدورة ، سيتعلم الطلاب كيفية استخدام React و ES6 لبناء تطبيقات قوية وقابلة للتطوير من الألف إلى الياء باستخدام أحدث أنماط Redux للحفاظ على حالة التطبيق الخاصة بهم.

    تشمل الموضوعات: تطوير تطبيقات الويب القائمة على المكونات ، وأنماط تصميم المكونات ، واستهلاك واجهات برمجة التطبيقات المتبقية ، والمثابرة مع واجهة برمجة تطبيقات المتصفح ، و JSX و React API (الدعائم ، والأنماط ، والأحداث ، والمراجع) ، وتدفق بيانات التطبيق ، ونشر تطبيقات React. المتطلبات الأساسية WAP أو CS 477.

    (وحدات 4)

  • في هذه الدورة ، يتعلم الطلاب هندسة البرمجة التفاعلية لتطبيقات الويب ذات الصفحة الواحدة (SPA) جنبًا إلى جنب مع جميع المهارات اللازمة لبناء تطبيق ويب حديث كامل باستخدام TypeScript و Angular. يكتسب الطلاب فهمًا عميقًا لكيفية عمل Angular ، بما في ذلك: اكتشاف التغيير ؛ برمجة RxJs التفاعلية مع الأشياء التي يمكن ملاحظتها والموضوعات ؛ الظل DOM ؛ المناطق. الوحدات والمكونات والتوجيهات المخصصة والأنابيب ؛ الخدمات وحقن التبعية ؛ المترجم الزاوي: تجميع JIT و AOF ؛ النماذج (النموذجية المعتمدة على البيانات) ؛ التوجيه والحراس وحماية الطريق ؛ عميل HTTP ومصادقة JWT JSON Web Token. المتطلبات الأساسية: WAP أو CS 477.

    (وحدات 4)

  • تنتقل هذه الدورة التدريبية من تطوير الويب إلى تطوير تطبيقات الأجهزة المحمولة باستخدام React Native ، وهو إطار عمل شائع من Facebook يتيح تشغيل التطبيقات المحلية عبر الأنظمة الأساسية باستخدام JavaScript بدون Java أو Swift. تقدم الدورة التدريبية JavaScript - JavaScript XML (JSX) - امتداد JavaScript. يكتسب الطلاب خبرة مع React Native ونماذجها وبنية التطبيق وواجهات المستخدم. تتوج الدورة بمشروع نهائي يقوم فيه الطلاب بتنفيذ تطبيق جوال بالكامل من تصميمهم الخاص. المتطلبات الأساسية: WAA أو CS568.

    (وحدات 4)

  • في هذه الدورة سوف تتعلم هندسة البرمجة التفاعلية في SPA (تطبيقات الويب صفحة واحدة) جنبا إلى جنب مع جميع المهارات اللازمة لبناء تطبيق ويب الحديث الكامل. تتضمن التقنيات: قواعد بيانات NodeJS و ExpressJS و TypeScript و AngularJS2 و Firebase و NoSQL (MongoDB). سوف تغطي الدورة:

    • كيف يعمل محرك C ++ V8 و رمز غير متزامن في عقدة و عقدة الحدث عقدة.
    • كيفية بناء التعليمات البرمجية الخاصة بك لإعادة الاستخدام وبناء API مريحة باستخدام وحدات و ExpressJS.
    • كيف تعمل قواعد بيانات NoSQL: Mongo Shell، Aggregation framework، Replica Sets، Clustering، Shards، Mongoose ORM.
    • فهم عميق لكيفية عمل Angular (المدعوم من Google) ، وتغيير الكشف ، وبرمجة RxJs التفاعلية مع المراقبين والموضوعات ، و Shadow DOM ، والمناطق ، والمكونات والمكونات ، والتوجيهات المخصصة والأنابيب ، والخدمات وحقن التبعية ، المترجم الزاوي ، JIT و AOF Compilation ، نماذج (قالب مدفوعة وبيانات مدفوعة) ، ربط البيانات ، التوجيه ، الحراسة وحماية الطريق ، عميل HTTP ، JWT JSON Web Token Authentication.

    (وحدات 4)

  • في هذا المساق العملي ، يقوم الطلاب بأداء المهام المتعلقة بالحاسوب في منصب مهني تقني. قد تكون المهام التي يتم أداؤها في تصميم وتطوير أنظمة جديدة أو تطبيق الأنظمة الحالية لأغراض محددة. يتم صياغة التوصيف الوظيفي العملي من قبل صاحب العمل والطالب ، ويتطلب موافقة مسبقة من قبل أحد أعضاء هيئة التدريس في القسم ، بالتشاور مع مشرف التدريب العملي حيث يتم وضع الطالب. (هذه الدورة هي في المقام الأول للطلاب في برامج التدريب أو التعاونية.) (0.5-1 وحدة لكل كتلة - يمكن تكرارها.)

  • التعلم الآلي هو مجال الدراسة الذي يمنح أجهزة الكمبيوتر القدرة على التعلم من البيانات ، ويقع في قلب كل تخصص علمي تقريبًا ، ودراسة التعميم (أي التنبؤ) من البيانات هي الموضوع الرئيسي للتعلم الآلي. تقدم هذه الدورة التدريبية مقدمة على مستوى الخريجين للتعلم الآلي وتغطية متعمقة للطرق الجديدة والمتقدمة في التعلم الآلي ، بالإضافة إلى نظريتهم الأساسية. يركز على المناهج ذات الصلة العملية ويناقش عددًا من التطبيقات الحديثة للتعلم الآلي ، مثل التنقيب في البيانات (في البيانات الضخمة / علوم البيانات ، وتحليلات البيانات) ، ومعالجة اللغة الطبيعية ، ورؤية الكمبيوتر ، والروبوتات ، والمعلوماتية الحيوية ، ومعالجة النص وبيانات الويب. يستخدم التعلم الآلي في العديد من الصناعات بما في ذلك الخدمات المالية والنفط والغاز والرعاية الصحية والتسويق والإعلان والحكومة والإنترنت وإنترنت الأشياء.

    تغطي هذه الدورة مجموعة متنوعة من نماذج التعلم والخوارزميات والنتائج النظرية والتطبيقات. يستخدم مفاهيم أساسية من الذكاء الاصطناعي ، ونظرية المعلومات ، والإحصاء ، ونظرية التحكم بقدر ارتباطها بالتعلم الآلي. تشمل الموضوعات: التعلم الخاضع للإشراف (التعلم التوليدي / التمييزي ، التعلم البارامترية / غير المعلمي ، الشبكات العصبية ، آلات ناقلات الدعم ، شجرة القرار ، التعلم Bayesian والتحسين) ؛ التعلم غير الخاضع للإشراف (التجميع ، تقليل الأبعاد ، طرق النواة) ؛ نظرية التعلم (مقايضات التحيز / التباين ؛ نظرية VC ؛ هوامش كبيرة) ؛ التعلم المعزز والتحكم التكيفي. تشمل الموضوعات الأخرى HMM (نموذج ماركوف المخفي) ، والحوسبة التطورية ، والتعلم العميق (باستخدام الشبكات العصبية) وتصميم الخوارزميات التي يمكن تحليل أداؤها بدقة لحل مشكلات التعلم الآلي الأساسية.

    جزء مهم من الدورة هو مشروع جماعي. سيتم تغطية أدوات المصدر المفتوح الرئيسية المستخدمة في التعلم الآلي المتوازي والموزع والقابل للتطوير لفترة وجيزة لمساعدة الطلاب في تنفيذ المشاريع. (وحدات 4) المتطلب السابق: لا شيء.

  • الذكاء الاصطناعي (AI) هو النظام الذي يحاول بناء وفهم الأنظمة الذكية. سيكون لأجهزة الكمبيوتر ذات الذكاء البشري تأثير كبير على المجتمع. ينمو وكلاء البرامج الذكية والأنظمة متعددة الوكلاء بسرعة ويساعدون في العديد من المجالات مثل التحول الرقمي والأتمتة وأنظمة المحادثة وبحث الويب والروبوتات والتصنيع والصحة والأدوية والمصارف وسلسلة التوريد والقيادة الذاتية والإعلان والألعاب ، فقط من أجل غيض من فيض. يقود الذكاء الاصطناعي صناعة تقدر بمليارات الدولارات. ستقوم هذه الدورة بتدريس أسس الذكاء الاصطناعي وإعطاء الطلاب فهمًا عمليًا للمجال. تشمل الموضوعات المفاهيم الأساسية للذكاء الاصطناعي - الوكلاء الأذكياء ، الأنظمة متعددة الوكلاء ، البحث الذكي ، منطق الترتيب الأول والأعلى ، تمثيل المعرفة ، التفكير ، الإدراك ، التعلم ، الدلالات (البرمجة اللغوية العصبية ، الصورة ، الكائن ..) ، التخطيط ، اتخاذ القرار ، التمثيل ، رد الفعل ، التداول ، العقلاني ، التكيف ، التواصل والتفاعل. تؤكد الدورة على الأساليب ذات الصلة العملية وتناقش عددًا من التطبيقات الشائعة الحديثة للذكاء الاصطناعي. سيتم تغطية الأدوات الرئيسية مفتوحة المصدر ولغات البرمجة للذكاء الاصطناعي (بما في ذلك التعليمات البرمجية المنخفضة وعدم وجود رمز) بإيجاز. سيقوم الطلاب أيضًا بتنفيذ مشروع جماعي لحل مشكلة واقعية باستخدام الذكاء الاصطناعي.

    (4 وحدات) متطلب سابق: موافقة أعضاء هيئة التدريس بالقسم

  • في هذه الدورة ، سنلقي نظرة على تقنيات ومبادئ وأنماط كيفية تصميم أنظمة برمجية مرنة وقابلة للتطوير وقابلة للاختبار ومرنة باستخدام خدمات ميكروية. سوف ندرس كيف يمكننا تقسيم التطبيقات الكبيرة إلى خدمات ميكروية أصغر يسهل بناءها ومزايا أخرى مقارنة بتطبيقات المؤسسات المتجانسة. هندسة معمارية موزعة كما يعطي العديد من التحديات. سوف ندرس هذه التحديات وكيفية معالجتها. موضوعات هذه الدورة هي الأنماط المعمارية وأساليب التكامل وأنماطه وتصميمه المدفوع والمجال القائم على الأحداث والبرامج التفاعلية. (اعتمادات 4). (لا توجد متطلبات مسبقة)

  • تكريمًا لـ 50 عامًا من تعليم MIU ، يسعد قسم علوم الكمبيوتر ببدء سلسلة Golden Jubilee ComPro Tech Talks الجديدة.

    هذه السلسلة الشهرية ينظمها ويديرها البروفيسور رينوكا موهانراج.

    المحادثات متوفرة في https://www.youtube.com/playlist?list=PLoBuI1C_-EtrAMdD45sldMnd8HXNhmyBQ.

    شاهد حديثنا المسجل الأخير ، من السبت 28 مايو 2022:

    قام مدرب علوم الكمبيوتر في MIU Unubold Tumenbayar ، وهو مهندس حلول احترافي معتمد من AWS ، بتغطية هذه الموضوعات في أحدث إصدار من ComPro Tech Talk:
    o إنشاء تطبيق مكدس كامل في دقائق في السحابة
    o مناقشة حول التقنيات الحديثة
    o GraphQL
    س رد
    o NoSQL باستخدام خدمات وأدوات AWS

    راجع شرائح Unbold هنا.

    هذا الحديث هو معاينة جيدة لدينا دورة الحوسبة السحابية (CS 516).

خيارات الدراسة

هناك 3 خيارات للدراسة للطلاب الدوليين.
يوفر كل منها ماجستير في علوم الكمبيوتر.
جميعها لها تواريخ دخول في يناير أو أبريل أو أغسطس أو أكتوبر.

البرامجشهور من الدراسة في الحرم الجامعيالتدريب العملي مدفوع الأجرالتعليم عن بعد (DE) أثناء التدريب العملي
CPT8-9حتى سنوات 2 CPT4 دورات DE
الأراضي الفلسطينية المحتلة9-10تصل إلى أشهر شنومك CPT + 3 سنوات الأراضي الفلسطينية المحتلة (اختياري)3 دورات DE
بدوام كامل في الحرم الجامعي12-133 سنوات الأراضي الفلسطينية المحتلة خيارNA

"في المرة الأولى التي سمعت فيها عن برنامج MSCS ، شككت في ذلك. لم أستطع أن أصدق أن شيئًا كهذا موجود. لكن ذات يوم ، انضم صديق لي إلى البرنامج. كان ذلك عندما أكدت أنه حقيقي. ثم استأنفت عملية تقديم الطلب. حسنا! هذا صحيح ، أنا هنا ، لقد أكملت البرنامج وأنا سعيد جدًا ".

هل أنت جاهز لبدء مهنة جديدة؟

أوقات انتظار مقابلة السفارة الأمريكية وأوقات معالجة طلبات MSCS

لقد وجدنا أن العديد من البلدان لديها مواعيد مقابلة متأخرة جدًا. لطفا أنظر أوقات انتظار موعد التأشيرة (state.gov) لمعرفة المدة الزمنية للحصول على موعد مقابلة لبلدك / مدينتك.

إذا كان وقت انتظار المقابلة أكثر من شهرين ، فنحن نشجعك على تقديم طلبك وإكماله على الفور ، حتى إذا كنت تخطط لتقديم طلب دخول في المستقبل. بهذه الطريقة يمكنك إكمال عملية التقديم ، والحصول على نموذج I-2 الخاص بك ، ثم الحصول على موعد للمقابلة. يجب أن يكون لديك نموذج I-20 للحصول على تاريخ المقابلة. إذا كان التاريخ أبكر مما كنت تخطط للمجيء إلى الولايات المتحدة ، فيمكنك دائمًا تأجيل موعد وصولك بمجرد حصولك على التأشيرة. سنصدر لك نموذج I-20 جديدًا لتاريخ الدخول الذي تخطط للحضور فيه.

للأسئلة المتعلقة بهذه المعلومات ، يرجى الاتصال بمكتب القبول لدينا على csadmissions@miu.edu.

اسأل نفسك هذه الأسئلة الأربعة:

  1. هل لديك درجة البكالوريوس في مجال تقني؟ نعم ام لا؟

  2. هل حصلت على درجات جيدة في درجة البكالوريوس؟ نعم ام لا؟

  3. هل لديك ما لا يقل عن 6 أشهر من الخبرة العملية المدفوعة الأجر بدوام كامل كمطور برامج بعد درجة البكالوريوس؟ نعم ام لا؟

  4. هل أنت متاح للمجيء إلى الولايات المتحدة لحضور الفصول الدراسية (هذا البرنامج غير متوفر عبر الإنترنت)؟ نعم ام لا؟

إذا أجبت بـ "نعم" على جميع الأسئلة أعلاه ، يمكنك التقديم (على الرغم من أن هذا لا يضمن قبولك.)