Presentation is loading. Please wait.

Presentation is loading. Please wait.

CIS 068 Welcome to CIS 068 ! Software Design & Data Structures In JAVA Instructor: Rolf Lakaemper.

Similar presentations


Presentation on theme: "CIS 068 Welcome to CIS 068 ! Software Design & Data Structures In JAVA Instructor: Rolf Lakaemper."— Presentation transcript:

1 CIS 068 Welcome to CIS 068 ! Software Design & Data Structures In JAVA Instructor: Rolf Lakaemper

2 CIS 068 Important Note ! This course is part II of CIS 067 in JAVA, if you are a newcomer to JAVA, you might be reassigned to another section if possible. Sections are: Section 1 8:40 - 10:30 (Currently Java, may be C++) Section 2 2:40 - 4:30 (Currently Java, will stay Java) Section 3 10:40 - 12:30 (Currently C++, will stay C++)

3 CIS 068 Introduction Who am I ? What‘s this course about ?

4 CIS 068 Who Am I ? PhD in applied mathematics in Hamburg, Germany Assistant professor at CIS since 2003 Research topic: Image Processing <2003: Software Development Director of different companies (Computer Games, Voice + Video over IP) Rolf Lakaemper

5 CIS 068 Topics of CIS 068 Software Theory: – A look at modern techniques of industrial software development Software Practice: –Consolidation of Object-Oriented Programming (OOP) techniques in JAVA Software Analysis – Fundamental data structures, algorithms and their performance

6 CIS 068 Software Theory Software Engineering and OOD : Different views of software The software lifecycle Diagrams, Use Cases,...

7 CIS 068 Software Theory Correctness : Syntax errors Runtime errors Logical Errors print (“hello world; ERROR ! Division by zero error at 0000ff:03f4 (->00f4:3aa7) af 000 bc 3ef4 hl 988f de 45db M:={0..255} aü : n i M => n+1 i M

8 CIS 068 Software Theory Principles of OOP: –Inheritance, class hierarchies, polymorphism,abstract and interface classes,… abstract class class1class2 class1_1 interface1interface2

9 CIS 068 Software Practice OOP in JAVA: GUIs

10 CIS 068 Software Practice OOP in JAVA: Recursion

11 CIS 068 Software Practice OOP in JAVA: streams and files events c-a-t-t-a-g-g 0-1-1-0-0-0-1 abd-mvs-sgrdf Listener1Listener2Listener3 key down mouse moved timer

12 CIS 068 Software Analysis Fundamental Algorithms Sorting: Bubble-, Insertion-, Merge-, Quicksort A,H,D,O,P,C,C,J A,C,C,D,H,J,O,P Efficiency O(n log n)

13 CIS 068 Software Analysis Fundamental Datastructures Stacks Queues Trees

14 CIS 068 If Time Permits Optional Topics –Programming problems in image processing –Fundamentals of computer graphics: using a graphics API, homogenous coordinates, affine transformations, viewing transformation, clipping –Foundations of human-computer interaction: Human-centered development and evaluation; principles of good design and good designers; engineering tradeoffs; introduction to usability testing

15 CIS 068 Text HIGHLY RECOMMANDED ! Course will be close to this book: –Koffman & Wolfgang:Software Design & Data Structures in Java TM. Draft available from the copy center, Conwell Hall. related to basic (JAVA -) programming: Koffman & Woltz. Problem Solving with Java TM. Addison-Wesley 2002. Pure JAVA-programming: there are 1000s of pure JAVA-books out there…

16 CIS 068 Class Schedule Class meets –Monday 2:40 – 4:30, Anderson Hall 28 –Wednesday 2:40 – 3:30, Anderson Hall 28 –Friday 2:40 – 4:30, Wachman Hall 104 Monday classes will be in the lecture format and will introduce the week’s topic. Wednesday class will include a quiz and discussion of the week’s topic. Friday will be in the lab where you will do a programming exercise designed to reinforce the week’s topic.

17 CIS 068 Exams and Quizes There will be weekly quizes given on Wed. These will count 10% of your grade. There will be two mid-term examinations, given on Wed, Feb. 12 and Wed, March 26. They will count 25% (12.5% each) of your grade. There will be a final examination, given on (??? ), counting 25%

18 CIS 068 Lab Assignments There will be weekly lab assignments. The labs will count 40% of your final grade. Each lab assignment will be due no later than 2:40pm the Friday after it is assigned. Lab will not meet on Friday, January 24. The last lab session will be on Friday, May 2.

19 CIS 068 Lab Grades Labs will be graded as follows: –On time, correct 5 –On time, not-correct 2 –Late, correct 3 –Correct resubmission 4 –Late, not-correct 1 The TA and Instructor are here to help you. Do not wait until the last minute if you are stuck !

20 CIS 068 Review of Scoring Quizes:10 % Midterm Ex.1:12.5% Midterm Ex.2:12.5% Final Exam:25% Lab:40%

21 CIS 068 Policy on Cheating Programming must be learned by doing it ! Copying another student’s program deprives you of that learning opportunity. If a lab assignment is found to be a copy, both students will receive a –1 for that assignment. If more than one program is found to be a copy, the students involved will receive an F for the course.

22 CIS 068 Schedule in Detail

23 CIS 068 Any Questions ? Rolf Lakaemper Office:Room 534, Wachman Hall E-mail: lakaemper@knight.cis.temple.edu Phone: (215)-204-8604 Office Hours: Please see office door. Usually always. Safe: after lesson or lab, or by appointment All this can be found on my website: http://knight.cis.temple.edu/~lakaemper


Download ppt "CIS 068 Welcome to CIS 068 ! Software Design & Data Structures In JAVA Instructor: Rolf Lakaemper."

Similar presentations


Ads by Google