IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):Introduktion til programmering - begreber og redskaber (kl. 17.00-21.00) 
Kursusnavn (engelsk):Introduction to Programming - Concepts and Tools (17:00-21:00) 
Semester:Efterår 2004 
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:35 
Maks. antal deltagere:200 
Formelle forudsætninger:The prerequisites for this course is a mathematical background (such as A
level high school mathematics or similar). Also, it is expected that
students are familiar with using a computer and know how to use email and
the Internet. 
Læringsmål:The goal is that, after the course, the successful student has obtained the following practical and theoretical skills:



  1. understanding of the basic
    concepts of object oriented programming languages, such as encapsulation, inheritance, and polymorphism, including knowledge about how these concepts are syntactically realized in Java

  2. the ability to write small structured
    and well-designed programs in Java to solve given
    tasks; for this purpose, student will be using simple data types, variables, arrays, conditionals, loops, methods, recursion, classes, and objects


  3. the ability to write programs that make use of simple input and output


  4. the ability to use APIs and to understand the functionality of Java classes, based on their documentation and understanding of the concepts of interitance and interfaces, incl. signatures of methods, and exceptions


  5. understanding of the concepts of algorithms and problem solving, including basic searching and sorting algorithms, complexity of algorithms, and divide
    and conquer algorithms using recursion




This course covers the prerequisites for more advanced programming courses, such as the course 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 this 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
cover the following Java-specific topics:



  • Java I/O (input and 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. Sorting of data is another
fundamental task done by computer programs. We
cover the standard
algorithms, such as selection 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.



NB! In the introductory week, meaning from 27 August to 2 September 2004 the course will run as usual with lectures from 17:00 to 19:00 and exercises form 19:00 to 21:00.


Depending on the number of students, the teacher is allowed to separate the students in two groups for exercises. One group will then do exercises in the evening (from 19:00 - 21:00 as planned) and one group can do exercises before the lectures.

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

4 hours open book written exam.
Language dictionaries are allowed, but all
electronic equipment is forbidden.
External censorship. Graded on the danish
13-scale. Participation in exam
requires approval of 8 out of 10 of the weekly
assignments.  

Litteratur udover forskningsartikler:Ira Pohl, Charlie McDowell. Java by Dissection.
The Essentials of Java Programming.
Addison-Wesley, 2000 or later.