COURSE TITLE: CS4443 – MODERN PROGRAMMING LANGUAGE – I Credit Hours: 2 (Theory) + 1 (Lab) Pre-requisites: CS3242 – OBJECT ORIENTED PROGRAMMING COURSE OBJECTIVES: The purpose of this course is to provide the solid understanding of the .net technology. The student will learn the basic and advanced programming skills using C#.Net. CLASS POLICY:  A student must reach the class-room in time. Late comers may join the class but are not entitled to be marked present.  Attendance shall be marked at the start of the class and students failing to secure 75% attendance will not be allowed to sit in final exam.  The assignment submission deadline must be observed. In case of late submission, assignment will not be considered.  Those who are absent on the announcement date of assignment/test. Must get the topic/chapter of test/assignment confirmed through their peers.  Mobile phones must be switched-off in the class-rooms. GRADING POLICY: Internal Evaluation Midterm Exam 20% Attendance 10% Assignment/Presentations 10% Quizzes/Tests 10% Total Internal Evaluation 50% Final Term Examination Theory Exam 40% Viva Exam 10% Total Marks 100% TEXT BOOKS:  Beginning C# 6.0 Programming with a Visual Studio 2015, Benjamin Perkins, Wrox Publishers  Professional C# 6 and .NET Core 1.0 by Christian Nagel, Wrox Publishers  “MSDN, http://www.csharphelp.com”
COURSE DESCRIPTION: WEEK NO TOPIC DESCRIPTION ASSESSMENT 1 PART A – THE C# LANGUAGE Chapter 1 – Introducing C#  The C# language  The .Net Architecture and .Net Framework  CLR, MSIL, JITers, FCL, CLS, CTS and GC  C# compare to C++  Development Environment  Console Applications and Windows Form Application  Working with First Hello World Program in C#  Understanding namespaces, using keyword, class keyword, main() method and comments in C# 2 Chapter 2 – C# Language Fundamentals  Basic Datatypes and their mapping to CTS  Variables, Constants, and Operators  Working with Flow Control and Conditional Statements  Type Conversion, String Manipulation and Complex Variable Types Assignment – 1 3 Chapter 2 (continued…)  Arrays in C#  Array Declaration and Initialization  Foreach loop Quiz – 1 4 Chapter 3 – Introduction to OOP  What is Object Oriented Programming  OOP Techniques  OOP in Windows Application 5 Chapter 4 – Classes and Objects  Concept of a Class, Object, Field, Methods  Instantiating a Class  Accessing Members of a Class  Access Modifiers  SYSTEM.OBJECT  Properties  Static Members of a Class  Shallow Copying vs Deep Copying Assignment – 2 6 Chapter 4 (continued)  Constructors and Destructors  Finalize() Method of Object Class Quiz – 2
 Constructor Overloading  Reference Types  Interface Implementation  Partial Class and Method Definitions  The Call Hierarchy Window 7 Chapter 5 – Inheritance and Polymorphism  Implementing Inheritance in C#  The Base Keyword  Protected Access Modifier  Sealed Keyword and Object Class  Multiple Inheritance  Polymorphism  Virtual and Override Keywords  The NEW Keyword  Up-Casting and Down-Casting  Boxing and Un-Boxing 8 Review of the previous course 9 Midterm Exam Week 1 – Week 8 10 Chapter 6 – Structures, Enumeration, Garbage Collection & Nested Classes  Structures  Enumeration  Garbage Collection in .Net  System.GC.Collect() Method  Nested Classes in C# 11 Chapter 7 – Abstract Classes & Interfaces  Abstract Classes  Interfaces  Implementing more than One Interface  Explicit Implementation of Methods  Casting to an Interface using is and as operators  Inheriting Interfaces Assignment – 3 12 Chapter 8 – Arrays, Collections & String Manipulation  Multidimensional Arrays  Understanding Jagged Arrays  Collections  The ArrayList, Stack, Queue Classes  Dictionaries  Working with Hash table  SortedList Class  String Handling in C# Quiz – 3
 String Class and StringBuilder Class 13 Chapter 9 – Exception Handling  Exceptions Basics  Exceptions in C# and .Net  Understanding try…..catch block  Working with Multiple Exceptions  Exception Hierarchy in .Net Framework  Throwing an Exception: the throw Keyword 14 Chapter 10 – Generics  What are Generics?  Using Generics  Defining Generic Types  Variance 15 Chapter 11 – Working with Delegates and Events  Understanding Delegates  Multicast Delegates  Working with Events  Multicast Events 16 Chapter 12 – C# Language Enhancements  Initializers  Type Inference  Anonymous Types  Dynamic Lookup  Advanced Method Parameters  Extension Methods  Lambda Expressions 17 Final Term Exam Whole course

CS4443 - Modern Programming Language I

  • 1.
    COURSE TITLE: CS4443– MODERN PROGRAMMING LANGUAGE – I Credit Hours: 2 (Theory) + 1 (Lab) Pre-requisites: CS3242 – OBJECT ORIENTED PROGRAMMING COURSE OBJECTIVES: The purpose of this course is to provide the solid understanding of the .net technology. The student will learn the basic and advanced programming skills using C#.Net. CLASS POLICY:  A student must reach the class-room in time. Late comers may join the class but are not entitled to be marked present.  Attendance shall be marked at the start of the class and students failing to secure 75% attendance will not be allowed to sit in final exam.  The assignment submission deadline must be observed. In case of late submission, assignment will not be considered.  Those who are absent on the announcement date of assignment/test. Must get the topic/chapter of test/assignment confirmed through their peers.  Mobile phones must be switched-off in the class-rooms. GRADING POLICY: Internal Evaluation Midterm Exam 20% Attendance 10% Assignment/Presentations 10% Quizzes/Tests 10% Total Internal Evaluation 50% Final Term Examination Theory Exam 40% Viva Exam 10% Total Marks 100% TEXT BOOKS:  Beginning C# 6.0 Programming with a Visual Studio 2015, Benjamin Perkins, Wrox Publishers  Professional C# 6 and .NET Core 1.0 by Christian Nagel, Wrox Publishers  “MSDN, http://www.csharphelp.com”
  • 2.
    COURSE DESCRIPTION: WEEK NOTOPIC DESCRIPTION ASSESSMENT 1 PART A – THE C# LANGUAGE Chapter 1 – Introducing C#  The C# language  The .Net Architecture and .Net Framework  CLR, MSIL, JITers, FCL, CLS, CTS and GC  C# compare to C++  Development Environment  Console Applications and Windows Form Application  Working with First Hello World Program in C#  Understanding namespaces, using keyword, class keyword, main() method and comments in C# 2 Chapter 2 – C# Language Fundamentals  Basic Datatypes and their mapping to CTS  Variables, Constants, and Operators  Working with Flow Control and Conditional Statements  Type Conversion, String Manipulation and Complex Variable Types Assignment – 1 3 Chapter 2 (continued…)  Arrays in C#  Array Declaration and Initialization  Foreach loop Quiz – 1 4 Chapter 3 – Introduction to OOP  What is Object Oriented Programming  OOP Techniques  OOP in Windows Application 5 Chapter 4 – Classes and Objects  Concept of a Class, Object, Field, Methods  Instantiating a Class  Accessing Members of a Class  Access Modifiers  SYSTEM.OBJECT  Properties  Static Members of a Class  Shallow Copying vs Deep Copying Assignment – 2 6 Chapter 4 (continued)  Constructors and Destructors  Finalize() Method of Object Class Quiz – 2
  • 3.
     Constructor Overloading Reference Types  Interface Implementation  Partial Class and Method Definitions  The Call Hierarchy Window 7 Chapter 5 – Inheritance and Polymorphism  Implementing Inheritance in C#  The Base Keyword  Protected Access Modifier  Sealed Keyword and Object Class  Multiple Inheritance  Polymorphism  Virtual and Override Keywords  The NEW Keyword  Up-Casting and Down-Casting  Boxing and Un-Boxing 8 Review of the previous course 9 Midterm Exam Week 1 – Week 8 10 Chapter 6 – Structures, Enumeration, Garbage Collection & Nested Classes  Structures  Enumeration  Garbage Collection in .Net  System.GC.Collect() Method  Nested Classes in C# 11 Chapter 7 – Abstract Classes & Interfaces  Abstract Classes  Interfaces  Implementing more than One Interface  Explicit Implementation of Methods  Casting to an Interface using is and as operators  Inheriting Interfaces Assignment – 3 12 Chapter 8 – Arrays, Collections & String Manipulation  Multidimensional Arrays  Understanding Jagged Arrays  Collections  The ArrayList, Stack, Queue Classes  Dictionaries  Working with Hash table  SortedList Class  String Handling in C# Quiz – 3
  • 4.
     String Classand StringBuilder Class 13 Chapter 9 – Exception Handling  Exceptions Basics  Exceptions in C# and .Net  Understanding try…..catch block  Working with Multiple Exceptions  Exception Hierarchy in .Net Framework  Throwing an Exception: the throw Keyword 14 Chapter 10 – Generics  What are Generics?  Using Generics  Defining Generic Types  Variance 15 Chapter 11 – Working with Delegates and Events  Understanding Delegates  Multicast Delegates  Working with Events  Multicast Events 16 Chapter 12 – C# Language Enhancements  Initializers  Type Inference  Anonymous Types  Dynamic Lookup  Advanced Method Parameters  Extension Methods  Lambda Expressions 17 Final Term Exam Whole course