0% found this document useful (0 votes)
6 views

OOP2-Lecture-Week-01

The document outlines the course orientation for CSC 3115: Object Oriented Programming 2 at AIUB, detailing the vision, mission, and goals of both the university and the Computer Science department. It includes information about the course structure, objectives, evaluation criteria, classroom policies, and the importance of online instruction during shutdowns. The course aims to develop skills in C# and .NET technologies, with specific topics and resources provided for students to succeed.

Uploaded by

yeaqubali.root
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

OOP2-Lecture-Week-01

The document outlines the course orientation for CSC 3115: Object Oriented Programming 2 at AIUB, detailing the vision, mission, and goals of both the university and the Computer Science department. It includes information about the course structure, objectives, evaluation criteria, classroom policies, and the importance of online instruction during shutdowns. The course aims to develop skills in C# and .NET technologies, with specific topics and resources provided for students to succeed.

Uploaded by

yeaqubali.root
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 54

Course Orientation & General

Discussion
Course Code: CSC 3115 Course Title: Object Oriented Programming 2

Dept. of Computer Science


Faculty of Science and Technology

Lecture No: 01 Week No: 01 Semester: Fall 2020-21


Lecturer: Victor Stany Rozario, [email protected]
Lecture Outline

• Vision, Mission & Goals of AIUB


• Vision, Mission & Goals of CS
• The Instructor
• The Course
• Books & References
• Evaluation Criteria's
• Class Policies
• Grading Policies & General Info.
• Consultation
Vision & Mission of AIUB

VISION
AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH (AIUB) envisions promoting professionals
and excellent leadership catering to the technological progress and development needs of the
country.

MISSION
AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH (AIUB) is committed to provide quality and
excellent computer-based academic programs responsive to the emerging challenges of the time. It
is dedicated to nurture and produce competent world class professional imbued with strong sense
of ethical values ready to face the competitive world of arts, business, science, social science and
technology.
Goals of AIUB

Sustain Sustain development and progress of the university

Continue to upgrade educational services and facilities responsive of the demands for change and needs
Continue of the society

Inculcate professional culture among management, faculty and personnel in the attainment of the
Inculcate institution's vision, mission and goals

Enhance research consciousness in discovering new dimensions for curriculum development and
Enhance enrichment

Implement meaningful and relevant community outreach programs reflective of the available resources
Implement and expertise of the university

Establish strong networking of programs, sharing of resources and expertise with local and international
Establish educational institutions and organizations

Accelerate the participation of alumni, students and professionals in the implementation of educational
Accelerate programs and development of projects designed to expand and improve global academic standards
Vision & Mission of Computer
Science Department

VISION
Provides leadership in the pursuit of quality and excellent computer education and
produce highly skilled and globally competitive IT professionals.

MISSION
Committed to educate students to think analytically and communicate effectively;
train them to acquire technological, industry and research-oriented accepted skills;
keep them abreast of the new trends and progress in the world of information
communication technology; and inculcate in them the value of professional ethics.
Goals of Computer
Science Department
Enrich the computer education curriculum to suit the needs of the industry-
Enrich wide standards for both domestic and international markets

Equip the faculty and staff with professional, modern technological and
Equip research skills

Upgrade continuously computer hardware's, facilities and instructional


Upgrade materials to cope with the challenges of the information technology age

Initiate and Initiate and conduct relevant research, software development and outreach
conduct services.

Establish linkage with industry and other IT-based organizations/institutions for


Establish sharing of resources and expertise, and better job opportunities for students
About Me

MSC (Information and Database Management)


American International University-Bangladesh

BSC (Computer Science and Engineering)


American International University-Bangladesh
Contact Details

Assistant Professor
Department of Computer Science
FST, AIUB
Email – [email protected]
Office – D01A08
Possible List of Advantages of
Online Instruction During Shutdown:
1. Continued schooling ensures graduation/ completion on a stipulated time.
2. Maximizes time, making it productive and beneficial to future career.
3. Learning on student’s pace, as they can review the lectures after the online
class.
4. Ensures safe, convenient and a secured environment at home.
5. Avoid risk of contamination of the deadly corona virus due to group and face
to face contacts with other students/individuals.
6. Lessen parent’s anxiety on security and health
7. Develops self confidence and independence as students can express their ideas
without hesitation being away from the direct face-to-face presence of
classmates avoiding embarrassment when the answer/response is not correct, or
a mistake is committed.
Possible List of Advantages of
Online Instruction During Shutdown:
8. Develops the creative ability of the students in the learning process with the use of
technology.
9. Enhances teachers’ creativity in motivating students to learn using different
platforms and presentations to suit students’ interest and ability.
10. Work assignment, practical exercises, problem solving are easily accomplished
with the aid of technology.
11. Performance assessment/evaluation is made easy, practical and immediate so that
remedial measures can be provided easily and directly through one-on-one approach.
12. Less expense in personal, social and miscellaneous expenses.
13. Online learning skills enhance cognitive knowledge and ability to cope with
industry/employer’s emerging requirements and new approach in hiring of graduates.
14. Teachers availability by email and Teams
The Course
Course Title: OBJECT ORIENTED PROGRAMMING 2

Course Code: CSC 3115

Credit Hour: 3/1

Prerequisite: (CSC 2209: Object Oriented Programming 1)


Objectives
At the end of the course, the following objectives should be achieved:

 Develop classes and describe how to declare a class


 Create .Net Technology applications that leverage the object-oriented features of the C#
language, such as encapsulation, inheritance, polymorphism and abstraction.
 Use .Net technology data types and expressions
 Use arrays and other data collections
 Use the concept of Assembly
 Implement error-handling techniques using exception handling
 Perform multiple operations on database tables, including creating, reading, updating and
deleting using MSSQL.
 Create an event-driven graphical user interface using Windows Form: panels, buttons,
labels, text fields, and text areas.
 Learn .Net Framework 4.5.
Importance of the
course

This will allow you to understand and


take full advantage of the upcoming
courses like Advanced Programming
with .NET etc
Topics to be covered

• IDE OVERVIEW
• .NET OVERVIEW
• OOP OVERVIEW IN .NET
• C# BASICS
• SOFTWARE DESIGN PATTERN
• LAYERED ARCHITECTURE DESIGN
• SOFTWARE DEVELOPMENT
Books/References
1.C# 4.0 The Complete Reference; Herbert Schildt; McGraw-Hill Osborne Media; 2010

2. The C# Programming Language (Covering C# 4.0); Anders Hejlsberg, Mads


Torgersen, Scott Wiltamuth, Peter Golde; Addison-WesleY; 2010
3. Headfirst C# by Andrew Stellman

4. Fundamentals of Computer Programming with CSharp – Nakov v2013

5. MSDN Library; URL: http://msdn.microsoft.com/library

6. C# Language Specification; URL:


http://download.microsoft.com/download/0/B/D/0BDA894F-
2CCD-4C2C-B5A7-4EB1171962E5/CSharp%20Language%20Specixfication.doc
Course Requirements

These are the things need to be accomplished properly by the


students during the term such as:
• Attending at least 80% of the classes
• Attending quizzes, presentation sessions and term exams
• Submission of the assignments, lab tasks in due time, etc.
Quiz & Assignments
• N number of quizzes and assignments in a term
• N-1 will be counted for the final grading of each term

• Assignment

• You should not miss any deadline.


• 50% marks will be deducted for each day in case of late
submission
• Quiz

-No request will be entertained if you miss any quiz.


Final Project
You will be assigned a group project at the end of the course which will contribute 50-
100% of the final grade
Group Members: Min :3 , Max : 4

*** Proposal Submission: Within 5th week of midterm


*** Prototype Submission: Within 9th week
*** Submission Deadline: week after the final term
(Exact dates will be announced later)
Evaluation
Theory Quiz (Best N-1) 30%
Mid term Assignment/Final term Project 40%

Lab Lab. works/Assignments/Lab Exam 30%

TOTAL 100
Midterm 30% of Lab + 70% of Theory
Final Term 30% of Lab + 70% of Theory
Grand Total 40% of Midterm + 60% of Final Term
Classroom Policies
• Must be present inside the class in due time
• Late in Class: max 10 minutes, after that you will not be able to enter into the
classroom.
• Class Break: I would prefer giving a break in the middle of the class.
• Every class will start with a question-answer session about the last lecture. So
students must be prepared with the contents and exercises from the last
lecture.
• Students are suggested to ask questions during or after the lecture.
• Do not hesitate to ask any question any number of time about the lecture

*** Additional/bonus marks may be given to any good performances during the
class.
Classroom Policies:
Attendance
• At least 80% presence is required by the student. Absent classes must be
defended by the student through application and proper documentation to
the course teacher.
• Single absences or absences within 20% range will be judged by the course
teacher.
• Long absences/irregular presence/absences out of 20% range must go
through application procedures via department Head (+ probation office, if
student is in probation) to attend the following classes.
• Acceptance of an application for absence only gives permission to attend
the following classes. This might still result in deduction of marks (for
attendance) which will be judged by the course teacher.
• Informing regarding Absence: Must be informed through email.
Classroom Policies:
Inside the Classroom
• You do not need to ask permission to go out or come inside the class. Just try to
keep it quiet
• You need not stand to talk with me
• Your cellphone should be in silent mode during the class hours
• No call receiving or calling inside the class room.
• No use of laptops or tabs or cell phones inside class rooms unless it is instructed or
required for class related specific tasks.
• No side talk or discussion unless it is instructed.
• Never take food or drink coffees, soft drinks except water during the ongoing class
time.
• Finally be gentle and keep calm and approach modestly and nicely
Classroom Policies:
Laboratory
• Laboratory Classes
- First 0.5 – 1 hour will be spent explaining the problems/task/experiment to be performed.
- Next 1 – 1.5 hour(s) will be spent by the students to complete the experiment.
- Next 0.5 – 1 hour will be spent in checking, marking, and discussing the solution.
- Students are not allowed to discuss with each other in solving problems.
- The checking (executing/viva) & marking will be with individual students only.
• Laboratory Exam
- Laboratory exams are scheduled in the week before the major exams during the normal laboratory
hours.
- Generally students are given one/more problems to be solved of which at least one part is solved
using computers.
- One hour is given to the students to solve the problem. And half hour to submit and viva. Generally 20
students in the first 1.5 hours and the other 20 students in the rest 1.5 hours.
- Students may be given choices to select the problem. At most 3 selection can be given to a student
with 0, 2, and 4 marks deduction as a penalty for each selection respectively.
- Only in case of unavoidable circumstances, the laboratory exams may be taken in the off days or week
after the major exams.
Classroom Policies:
Makeup Evaluation
• There will be no makeup quiz as long as a student have appeared in (n-1) quizzes.
• Makeup for missing evaluations like quizzes/assignment submission date/presentation date/viva
date/etc., must go through valid application procedure with supporting document within the
deadline of the actual evaluation date.
• Makeup for missing Midterm/Final term must go through Set B form along with the supporting
document within the 1st working day after exam week. The set B exam is generally scheduled from
the 2nd working day after the exam week. Must get signature and exam date from the course teacher
and get it approved by the department Head (monetary penalty might be imposed).
• Students unable to attend the set B exam may apply for set C exam within the same time limit as set
B. Such applications must be supported by very strong reason and documentation, as they are
generally rejected.
• The course teacher will be the judge of accepting/rejecting the request for makeup.
*** Students absent for more than two weeks before midterm or after midterm and missing more than
one evaluation categories are suggested to drop the course.
Grading Policies
All the evaluation categories & marks will be uploaded to the VUES within one week
of the evaluation process except the attendance & performance, which will be
uploaded along with the major (mid/final term) written exam marks.
Letter grades ‘A+’ through ‘F’ is counted as grades. Other grades ‘I’ and ‘UW’ are
considered as temporary grades which are counted/calculated as ‘F’ grade in the
CGPA. These grades must/will be converted to the actual grades, i.e. ‘A+’ through ‘F’.
‘I: INCOMPLETE’ is given to students who have missed at most 30% of evaluation
categories (quiz/assignment/etc.). Students must contact the course teacher for
makeup, through valid application procedures immediately after grade release.
‘UW: UNOFFICIAL WITHDRAW’ is given when the missing evaluation categories are
too high (more than 30%) to makeup. A student getting ‘UW’ has no option but to
drop the course immediately after grade release
Grading Policies
contd..

• Once a student’s gets ‘I’ or ‘UW’ and unable to fulfill the requirements with the
course teacher for makeup, must drop the course within officially mentioned time
period from the registration department.
• Students in probation or falls into the probation due to ‘I’/’UW’ grade are not
allowed to drop the course.
• Unable to do so will result in the automatic conversion of the grades ‘I’/’UW’ to ‘F’
grade after the 4th week of the following semester.

• Any problem with the mark/grade must be consulted with the course teacher
within one week of the release of grades.
IMPORTANT!!

• Never Come to my office with the request for an extra grade.

• Never miss any deadline.

• Marks will be deducted, even worse can happen if you copy assignment
WELCOME TO
OBJECT ORIENTED
PROGRAMMING 2
Lecture Outline

• Introduction and Overview of .NET Architecture


and .Net Framework
• Introduction to C#
• Introduction to Visual Studio
Overview of .NET
.NET Architecture

What is .NET Framework


• The .Net framework is a software development platform developed by
Microsoft.

• The framework was meant to create applications, which would run


primarily on the Windows Platform.

• The first version of the .Net framework was released in the year 2002.

• The .Net framework can be used to create any kind of applications -


Form based, Web based, Mobile applications
Overview of .NET
.NET Architecture

VB C++ C# JScript …
• Enormous
Common Language Specification platform

Visual Studio.NET
• Over 10000++
ASP.NET: Web Services Windows types
and Web Forms Forms • Well-defined
ADO.NET: Data and XML sub-systems
and
Base Classes partitioning of
responsibility
Common Language Runtime
Overview of .NET
.Net Framework
.NET Architecture

Architecture
Overview of .NET
.NET Architecture
What is .NET platform?

 C# is the language for .NET platform


 Microsoft .NET is a platform for developing
“managed” software
 Traditional practice of compiling to an executable
file that contains machine code and how that file
is loaded and executed by the operating system.
 This “unmanaged” compilation-to-execution
process.
 In the traditional compilation process, the
executable file is binary and can be executed by
the operating system immediately.
.NET platform

 In the managed environment of .NET, the file


produced by the compiler (the C# compiler in our
case) is not an executable binary. Instead, it is an
assembly, which contains metadata and
intermediate language (IL) code.
 An assembly contains intermediate language and
metadata rather than binary code. This
intermediate language is called Microsoft
Intermediate Language (MSIL), which is
commonly referred to as IL. IL is a high-level,
component-based assembly language. IL
supports a common type system and multiple
languages in the same platform.
.NET Execution Model

Source Visual Basic C# C++


code
Unmanaged
Compiler Compiler Compiler
Component

Managed Assembly Assembly Assembly


code IL Code IL Code IL Code

Common Language Runtime

JIT Compiler

Native Code

Operating System Services


MSIL, IL & JIT

Microsoft Intermediate Language (MSIL), the intermediate code produced by


the compiler after compiling the source code. This intermediate code is known
as MSIL.
Intermediate Language (IL) is also known as MSIL (Microsoft Intermediate
Language) or CIL (Common Intermediate Language).
Just In-Time Compiler (JIT), responsible for converting the CIL(Common
Intermediate Language ) into machine code using the Common Language
Runtime environment.
Common Language Runtime (CLR) provides an environment to execute .NET
applications on target machines. The responsibilities of CLR are listed as
follows:
• Automatic memory management
• Garbage Collection
• Code Access Security
• Code verification
• JIT compilation of .NET code
Common Language Runtime (CLR)

 Where is CLR on my machine?


 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll
(the path may vary for different framework versions)
 The mscorlib.dll file is described as the Microsoft Common Language
Runtime Class Library file integrated into the Microsoft Windows Operating
System platform. The Common Language Runtime or CLR which is linked to
the file mscorlib.resources.dll is the virtual machine constituent attributed
to Microsoft's .NET enterprise.
 The CLR where the mscorlib.resources.dll file is associated with is the
Common Language Infrastructure or CLI standard implementation of Microsoft
that identifies the program code's execution environment.
.NET Framework Class Library (FCL)
 .NET has an extensive library, offering literally thousands of
reusable types. Organized into namespaces, the FCL contains
code supporting all the .NET technologies, such as
 Windows Forms
 Windows Presentation Foundation
 ASP.NET
 ADO.NET
 Windows Workflow
 Windows Communication Foundation.
 In addition, the FCL has numerous cross-language technologies,
including file I/O, networking, text management, and diagnostics.
As mentioned earlier, the FCL has CLR support in the areas of
built-in types, exception handling, security, and threading. Table
below shows some common FCL libraries
.NET Framework Class Library (FCL)

Some Common .NET Framework Class Library Namespaces

System System.Runtime

System.Collections System.Security

System.Configuration System.ServiceModel

System.Data System.Text

System.Diagnostics System.Threading

System.Drawing System.Web

System.IO System.Windows

System.Linq System.Workflow.*

System.Net System.Xml
According to Wiki…

In computer programming, a software framework is an abstraction in


which software providing generic functionality can be selectively
changed by additional user-written code, thus providing application-
specific software. It provides a standard way to build and deploy
applications and is a universal, reusable software environment that
provides particular functionality as part of a larger software platform to
facilitate development of software applications, products and solutions.
Introduction to .Net Framework
What is .NET Framework?

.NET is a platform for the developers made up of tools,


programming languages and libraries. The framework is a
complete environment that allows developers to develop, run
and deploy applications such as:
• Console applications.
• Windows Forms applications.
• Windows Presentation Foundation (WPF) applications.
• Web applications (ASP.NET applications).
• Web services.
• Windows services and some more.
The main components of .NET Framework

• .NET Framework Class Library


• Common Language Runtime
• Dynamic Language Runtimes (DLR)
• Application Domains
• Runtime Host
• Common Type System
• Metadata and Self-Describing Components
• Cross-Language Interoperability
• .NET Framework Security
• Profiling
• Side-by-Side Execution
A Tiny Bit of History

 The C# language was originally developed by a


small team led by two distinguished Microsoft
engineers, Anders Hejlsberg and Scott
Wiltamuth in 2001.
 Anders Hejlsberg is also known for creating
Turbo Pascal, a popular language for PC
programming, and for leading the team that
designed Borland Delphi, one of the first
successful integrated development environments
(IDEs) for client/server programming.
Anders Hejlsberg

Anders Hejlsberg
Since 2000, he has been the lead architect of the
team developing the language C# and currently is a
Microsoft Chief Architect
C# Genealogy

Object Advanced
Elementary Advanced Special Oriented Object
Procedural Procedural Procedural Oriented
Eiffel

Fortran Algol 68 C C++ C#

Cobol PL/I Pascal Java

Ada 83 Ada 95
Introduction to Visual
Studio

Visual Studio is an IDE (integrated development environment) for


building apps. Similar to using Microsoft Word to write documents, you’ll
use Visual Studio to create web apps.
Visual Studio

• VS supports multiple languages (C#, C++, Visual Basic, J#) in


one IDE.
• VS manages features and content in a convenient way.
• All Visual Studio .NET languages are object-oriented.
• All programs have a similar structure.
• All programs compiled into Common Intermediate Language
(CIL)

• For this course at least Visual Studio 2012


IDE’s and CLI
Implementations
 Visual C# http://www.microsoft.com/express/2012/
 in MSDNAA
 must be version 2012: we need C# 4.5
 Mono: http://www.go-mono.com
 Open Source for Linux
 Rotor: http://msdn.microsoft.com/net/sscli
 Shared Source for Windows
 Use to work on BSD / OS X, too
 Portable.NET: http://www.dotgnu.org
 yet another open source implementation
First C# Program

using System;
namespace Test
{
class ExampleClass
{
static void Main()
{
System.Console.WriteLine("Hello, world!");
}
}
}
Books

1. Visual Studio from the Microsoft Developer Network (MSDN)


https://msdn.microsoft.com/enus/library/dd831853(v=vs.120).aspx
(particularly note the Visual Studio IDE User Guide and the
Application Development in Visual Studio links).
2. C# 4.0 The Complete Reference; Herbert Schildt; McGraw-Hill
Osborne Media; 2010
References

• MSDN Library; URL: http://msdn.microsoft.com/library

• C# Language Specification; URL:


http://download.microsoft.com/download/0/B/D/0BDA894F-2CCD-4C2C-
B5A7-4EB1171962E5/CSharp%20Language%20Specixfication.doc
Thank you!

You might also like