Logo

BITM Dot Net Programming

bitmsemester 8Elective

Dot Net Programming

Subject Code: IT275

Course Title: Dot Net Programming

Course No: IT275

Nature of Course: Theory & Practical

Full Marks: 60

Pass Marks: 30

Credit Hours: 3

Course Description

This course provides an intensive knowledge and skills to C#.NET programming, with an emphasis on ASP.NET web development and application development. The introductory course provides comprehensive coverage of critical principles, pragmatic methodologies, and optimal approaches that are essential for developing reliable and expandable software systems.

Course Objective

The main objective of this course is to explain the .NET Framework ecosystem for GUI application development, develop an understanding of object-oriented programming and C# language structure, and create user-friendly applications and functional web solutions.

Course Contents

Course Contents Teaching Methodology Teaching Hours
Unit 1: Introduction to Dot NET (4 Hrs.)
Dot NET Framework: Features and Architecture Lecture/Lab
Dot NET Components: Common Language Runtime, Class Library
Dot NET Framework and .NET Core: A Comparative Overview
Visual Studio and Visual Studio Code IDE: Overview and Features
Setting up Visual Studio Development Environment
Leveraging IntelliSense for Efficient Coding
Project Types in .NET Development
Unit 2: Basics of C# (12 Hrs.)
Concept of C# Data Types, Operators, and Variables Lecture/Lab
Control Statements: Flow Control in C#
Exploring Arrays and their Usage in C#
Object-Oriented Concepts: Classes, Structures, and Enumerations
Advanced Class Concepts: Partial, Static, and Sealed Classes
Constructors and Destructors in C#
Inheritance and Polymorphism: Concepts and Implementations
Interfaces: Defining and Implementing Interfaces in C#
Virtual Methods and Abstract Classes: Utilizing Polymorphism
Exception Handling: Strategies for Error Management in C#
Unit 3: Delegates and String (6 Hrs.)
Delegates: Utilization and Implementation in C# Lecture/Lab
Lambda Expressions: Application and Integration in C#
Event Handling: Managing Events and Delegates for Asynchronous Tasks
String Manipulation: Techniques for Efficient String Operations
StringBuilder: Enhanced String Handling for Performance Optimization
Collections: Generic and Non-Generic Varieties in C#
Unit 4: Entity Framework and LINQ (6 Hrs.)
Entity Framework Introduction: Exploring its Purpose and Functionality Lecture/Lab
Database First Approach: Understanding and Implementing Database-Driven Development
Code First Approach: Building Database Schema from Code
Model First Approach: Designing Data Models for Applications
LINQ Fundamentals: Introduction to Language Integrated Query
LINQ Implementation: Utilizing LINQ for Data Manipulation and Querying
Unit 5: Introduction to ASP.NET (10 Hrs.)
ASP.NET vs ASP.NET Core Lecture/Lab
ASP.NET Frameworks for Web Applications: Web Forms, ASP.NET MVC, and ASP.NET Web Pages
creating a simple Web Forms application
Understanding ASP.NET MVC architecture
creating models, views, controllers and URL routing in ASP.NET MVC
creating a basic layout for ASP.NET Web Pages
Razor syntax for embedding code in HTML
Working with variables, loops and logical expressions
Database interaction with ASP.NET MVC
Unit 6: Database Programming (10 Hrs.)
Introduction to ADO.NET Lecture/Lab
ADO.NET architecture
DataReader, Dataset, DataTable and DataAdapter
Database Connection and working with Database Specific Classes (SqlConnection, SqlCommand, SqlTransaction)
Accessing data with ADO.NET
implementing CRUD operations
Executing Commands (ExecuteNonQuery(), ExecuteReader(), ExecuteScalar())
Stored Procedure and working with Stored Procedures
Database, and Entity Framework

Text Books

1. Albahari, J. (2022). C# 10 in a nutshell (1st ed.). O'Reilly.
2. Freeman, A. (2023). Pro ASP.NET Core 7 (10th ed.). Manning Publications.
3. Skeet, J., & Lippert, E. (2019). C# in depth (4th ed.). Manning Publications.
4. Smith, J. P. (2021). Entity Framework Core in action (2nd ed.). Manning Publications.
5. Stellman, A., & Greene, J. (2021). Head First C#: A learner's guide to real-world programming with C# and .NET Core (4th ed.). O'Reilly Media.
6. Troelsen, A. W., & Japikse, P. (2022). Pro C# 10 with .NET 6: Foundational principles and practices in programming (11th ed.). Apress.
7. White, M. B. (2019). Mastering C#: A step-by-step guide for the beginner.

Lab Works

Laboratory works should be done covering all the topics mentioned above. Each topic must be followed by a practical session. It must cover the Control Flow, Class and object, Static and Dynamic binding, Constructor and destructors, OOPs and implementation of key features, Delegates, Events and Lambda, Collections, Entity framework and LINQ, ASP.NET Frameworks for GUI applications, ADO.net and Entity framework related examples and lab work.