Luca Dan Serbanati
     Programming Languages
     Faculty of Engineering in Foreign Languages. Computer Science Courses
     First year. Fall 2011

     Teaching Assistants: Serban Radu, serbanradu@hotmail.com
                         Andrei Vasilateanu, andraevs@gmail.com
                         Maria Dascalu, cosmicondina@yahoo.com
 
Email: luca@serbanati.com    URL: www.serbanati.com
General Information:
Course syllabus
Course: 2h/week
Lab work: 2h/week
Credit points: 3

Grading and workload
Marks from 0 to 10 will evaluate the following activities:
Semester activity (weight in final mark: 60% )
  - Labs and lectures attendance (weight:10%)
  - Lab activity+homework (weight: 20 %)
  - 2 Tests (weights: 15%+15%)
Final verification (weight in final mark: 40% )


1. Laboratory attendance
- Attending the labs is not optional: 12 lab sessions should be attended in order to have the total possible attendance points (You can miss two lab sessions without losing points)

2. Homework
- Every week a pre-lab assignment for the following week's lab will be posted on the web.
- The students are expected to work the pre-lab exercises by themselves as homework before the next lab. All homework should be completed before the lab and ready to be defended during the lab.

3. Tests
Two tests are scheduled during the semester. Test grading has an important weight in the final mark.
Note. If sincere effort was made during regular scheduled lab, in order to obtain a better final grade, one missed or poorly done test could be redone.

4. Final examination
The final examination consists of a closed-book multiple-choice test with theoretical questions and an open-book, hands-on development of a comprehensive Java program with I/O operations and inheritance relationships between classes.

A mark less than 5 at the final verification, whether other marks are, obstacles the exam passing.


Prerequisites:
none


Laboratory Schedule of Topics and Homework
The lab assignments will require knowledge of materials covered by the course lectures. Topic and homework assignment for the next week will be released before or during the weekend.
             
Lab.# Week
Homework/Test & Topic
Lab. 1

Program Compilation & Execution, Basic components of Java programs: HW1
Strings: HW2
[2] 3.4/pag. 64-66// ex. 3, 4
Lab. 2
  HW3. Static Methods
3.4/pag. 64-66// ex. 9, 10
HW4. Expressions and Algorithms
Lab. 4
HW5.Loops, Arrays and Strings
Here is an Introduction to Algorithms and Recursion
HW6. Algorithms and Recursion
Lab. 5
HW6.Preparing the first test
Exercises from [2], vol.1:
ex. 12, 15/pag. 66
ex. 2/pag. 111
ex. 13/pag. 113
ex. 21/pag. 114 ( for this exercise view the last slide (81) on Comand line arguments from the published lecture notes
)
Lab. 6
First Test
Results
Lab. 7
Objects and Reference Variables. HW7.
§4.10/ pag. 91-92/ ex. 2, 3
§5.3/ pag. 112-113/ ex. 3, 9
Lab. 8
HW8. Defining new classes. Relationships between classes
§6.6/pag.130//ex.1,2
 
Lab. 9
Inheritance. Static variables and methods. Static and dynamic polymorphism.
Problem 2_1
Problem 2_2
Optional: Ex. 1 , Ex. 2
§7.7/pag.157//ex.8
Lab. 10
Inheritance. Abstract classes
(To solve Ex. 1 it is important to solve the Problem 1.1 and 1.2 of the Lab 9 homework)
Ex. 1 , Ex. 2 , Ex. 3 , Ex. 4
Lab. 11
14 Dec.
Second test
Results
Lab. 12
Lab. 13
4 Jan.
Exam-like exercises
HW13_1. (I/O from/to files without class inheritance)
HW13_2. (I/O from/to files with class inheritance)
HW13_3. (I/O from/to files with class inheritance)
Lab. 14
11 Jan
Test redoing


Lecture Schedule
The lectures are delivered modularly.
Date/Time 
Lesson Topic
Tue,4 Oct.
16h-20h
AN024
Computer Architecture. Programming Languages.
Syntax & Semantics.
Java Runtime Env.
Basic Elements.
Fri, 7 Oct.
8h-12h
CB020
Variables.Data Types.
Tue, 11 Oct.
16h-20h
AN024
Operators. Expressions.
Fri, 14 Oct.
8h-12h
CB020
Instructions. Methods.
Tue, 18 Oct.
16h-20h
AN024
Introduction to Object-Orientation.
Arrays
Fri, 21 Oct.
8h - 12h
CB020
Inheritance. Abstract Classes. Object Class. Command Line
The course slides
Fri, 18 Nov.
8h - 12h
CB020
Exception Handling
Input/Output.
The course slides


Examinations
1. A student unable to exibit her/his identification document is not accepted for examinations.

Date/Time Room/Exam
19 Jan. 8h:30m
JA001a/b
Final examination.
1212E Group
22 Jan. 8h:30m
JA001a/b
Final examination.
1211E Group

Lecture notes
Not available. The students are warmly invited to attend the course's lectures.

Textbooks in English:
[1] C. Horstmann, G. Cornell
Core Java 2, Vol. I - Fundamentals: 7/e, Prentice Hall, 2005
Textbooks in Romanian:
[2] L.D.Serbanati, C.Bogdan,
Programare orientata spre obiecte cu exemplificari in limbajul Java, vol.1, Politehnica Press, 2010

Visits from 04 January 2005: 40476 Last update: 1 January 2012