IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):Introduktion til programmering - begreber og redskaber 
Kursusnavn (engelsk):Introduction to Programming - Concepts and Tools 
Semester:Efterår 2002 
Udbydes under:cand.it., internet- og softwareteknologi (int) 
Omfang i ECTS:7,50 
Kursussprog:Engelsk 
Kursushjemmeside:https://learnit.itu.dk 
Min. antal deltagere:
Forventet antal deltagere:41 
Maks. antal deltagere:201 
Formelle forudsætninger:This course is only open to students with at least a Bachelor\'s degree

in science or engineering. In particular, it is expected that you are

familiar with using a computer and that you know how to use email and

internet. 
Læringsmål:The course has three major objectives:

  1. Introduction of the main concepts underlying modern high-level programming

    languages which includes procedural components like variables, basic

    datatypes, control structures (if then else, for and while loops),

    arrays, methods and recursion.

    The course will also cover the basic components of object oriented

    programming like class structure, encapsulation, inheritance and

    polymorphism.


  2. Introduction to algorithms and problem solving including basic

    searching and sorting algorithms, complexity of algorithms, and divide

    and conquer algorithms using recursion.


  3. Introduction to Java as an example of a modern high-level

    object oriented programming language.








At the end of this course students should understand the basic

components of modern programming languages, know how they are

syntactically realized in Java, and be able to write small structured

and well-designed programs in Java to solve given tasks.



This course covers the prerequisites for more advanced

programming courses like web-based programming or object oriented

programming.

 
Fagligt indhold:Programming is one of the fundamental ingredients in IT and computer

science. Most courses in IT require at least basic, if not solid,

programming skills.

The course provides an introduction to that area.

We will cover the concepts of procedural programming and basic

concepts of object oriented programming.

In particular we will cover the following topics (not necessarily in

this order):



  • The programming process;


  • Variables, basic data types;


  • Arrays;


  • Control structures;


  • Functions (procedures, methods);


  • Classes, class structure, encapsulation, inheritance,


  • polymorphism;


  • Exception handling.




We will also see how these basic programming constructs are realized

in the language Java. In addition to the above topics we will also

cover the following:



  • Java I/O (input/output);


  • Java packages.




On the algorithmic side we will introduce basic searching algorithms

for unordered and ordered lists and discuss the notion of

complexity of algorithms. Next to searching, sorting data is the other

fundamental task done by computer programs. We cover the standard

algorithms like merge sort, bubble sort and quick sort.



Example programs and exercises will deal, among others,

with strings and string handling,

graphs, and (elementary) mathematics.

 
Læringsaktiviteter:

Lectures and lab exercise classes. 

Eksamensform og -beskrivelse:X. experimental examination form (7-scale; external exam), 13-skala, Ekstern censur

4 hours open book written exam. You may bring language dictionaries, but all
electronic equipment is forbidden.
External censorship. Graded on the danish 13-scale. Participation in exam
requires approval of 8 out of 11 of the weekly assignments.  

Litteratur udover forskningsartikler:Ira Pohl, Charlie McDowell. Java by Dissection.
Addison-Wesley, 2000.