COURSE PASSPORT Object-Oriented Programming (C++) NETB15 ...

yakconspiracySoftware and s/w Development

Dec 14, 2013 (3 years and 8 months ago)

70 views


1


COURSE PASSPORT


Object
-
Oriented Programming (C++)


NET
B
1
5
1

and NETB161


Lecturer
s
:
Nikolay Kirov
,

Emil Kelevedzhiev


e
-
mail
:
nkirov@nbu.bg
, keleved@math.bas.bg



1.
COMPETENCES
:



Students successfully finished this
course will
:

1)

know
:




Pointers and Memory Allocation and Deallocation



Inheritance, Base and Derived Classes, Polymorphism



The Inheritance Hierarchy of Stream Classes, String Streams, Random Access



The Software Life Cycle, Relationships between Classes, Imp
lementing Associations, Examples



Basic Sorting Algorithms, Analyzing the Sorting Algorithms



Linked Lists



Operator Overloading, Automatic Memory Management, Templates, Nested Classes and Name
Spaces, Exception Handling

2
)
be able to
:



Testing and Debuggi
ng



Using Pointers



Writing classes



Reading and Writing Text Files



Making Object Oriented Design, Software Life Cycle, CRC Cards, Implementing Associations



Writing and Analyzing Sorting Algorithms



Implementing Linked Lists, Stacks and Queues





2. MAIN

TOPICS

1. Testing and Debugging

Unit Tests, Selecting Test Cases, Test Case Evaluations, Assertions, Program Traces, The Debugger,
Strategies, Debugger Limitations

2. Pointers

Pointers and Memory Allocation, Deallocating Dynamic Memory, Common Uses for
Pointers, Arrays
and Pointers, Pointers to Character Strings

3
. Inheritance

Base and Derived Classes, Calling the Base
-
Class Constructor, Calling Base
-
Class
Member Functions,
Polymorphism


2

4
. Streams

Reading and Writing Text Files, The Inheritance Hierarc
hy of Stream Classes, String Streams,


Command
Line Arguments, Random Access




5
. Object Oriented Design


The Software Life Cycle, CRC Cards, Cohesion, Coupling, Relationships between Classes, Implementing
Associations, Example: Printing an Invoice, Exam
ple: An Educational Game




6
. Recursion

Triangle Numbers, Permutations, Thinking Recursively, Recursive Helper Functions, Mutual Recursion,
The Efficiency of Recursion

7
. Sorting and Searching

Selection Sort, Profiling the Selection Sort Algorithm, An
alyzing the Performance of the Selection Sort
Algorithm, Merge Sort, Analyzing the Merge Sort Algorithm, Searching, Binary Search, Searching and
Sorting Real Data




8
. An Introduction to Data Structures

Linked Lists, Implementing Linked Lists, Stacks an
d Queues, Other Standard Containers, Standard
Algorithms

9
. Advanced C++ Topics


Operator Overloading, Automatic Memory Management, Memory Management for Linked Lists,
Templates, Nested Classes and Name Spaces, Exception Handling





3.
R
ECOMMENDED TEXTB
OOKS



Cay Horstmann, Computing Concepts with C++ Essenti
als, Third Edition, Wiley, 2003
.



4.
T
EACHING FORMS



Each topic includes

one or two
l
ecture
s.




5. FORM OF EVALUATION AND COMPETENCE ASSESSMENT

NETB1
5
1


Tests

Homeworks

Practice

Written exam

Oral exam

Curren evaluation

40%

30%

30%

0%

0%

Exam

40%

0%

20%

20%

20%


NETB1
6
1



Homeworks

Practice

Curren evaluation

30%

70%

Exam

30%

70%




3


6. CURRENT CONTROL AND SCHEDULE





NETB101

current



evaluation

NETB111

current



evaluati
on

Week No,

after topic

NETB101

exam

NETB111

exam

Test 1

NETB151

10

-

5,
Inheritance

-

-

Test 2

NETB151

10

-

10,
Recursion

-

-

Final Test

NETB151

20

-

15,
Advanced C++
Topics

40

-

Homework 1

NETB161

10

10

4
-
5,
Inheritance


-

10

Homework 2

NETB161

1
0

10

8
-
9
,
Object
-
Oriented
Design

-

10

Homework 3

NETB161

10

10

14
-
15,
Advanced C++
Topics

-

10

Exam of practice 1

NETB161

10

10

6,
Inheritance

-

-

Exam of practice 2

NETB161

10

10

11,
Recursion

-

-

Final exam of
practice

NETB161

10

50

15,
Advanced C++
Topics

20

70

Written exam

NETB151

-

-

-

20

-

Oral exam

NETB151

-

-

-

20

-

Extra points*

both

till 5

till 5

-


-


-

Total:


100

100

-

100

100


Points (or %)

Grade

90
-
100

Excellent 6

76
-
89

Very good 5

60
-
75

Good 4

50
-
59

Satisfactory 3

0
-
49

Poor 2


7. ADDITIONAL EXPLANATION ON THE EXAMINATION MATERIALS AND EVALUATION
CRITERIA

Obliged attendance of the lessons


minimum 80% (24 hours per each subject = 48 hours from 60)



http
://
www
.
math
.
bas
.
bg
/~
nkirov
/2005/
netb
151


/
N. Kirov
/