17
Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Embed Size (px)

Citation preview

Page 1: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Java Teaching Workshop

Y. Daniel Liang

May 20, 2002

At NCC

Page 2: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Agenda Overview of the Text Java Teaching Strategies Java Curriculum Design Interactive Lectures Avoid JBuilder Pitfalls Introduction to OOP

Page 3: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Overview of the Text Chapter Organization Student CD-ROM Instructor CD-ROM Companion Website

Page 4: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Book Chapters Part I: Fundamentals of Programming

– Chapter 1 Introduction to Java

– Chapter 2 Primitive Data Types and Operations

– Chapter 3 Control Statements

– Chapter 4 Methods

– Chapter 5 Arrays

Page 5: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Book Chapters, cont. Part II: Object-Oriented Programming

– Chapter 6 Objects and Classes

– Chapter 7 Strings

– Chapter 8 Class Inheritance and Interfaces

– Chapter 9 Object-Oriented Software Development

Page 6: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Book Chapters, cont. Part III: Graphics Programming

– Chapter 10 Getting Started with Graphics

Programming

– Chapter 11 Creating User

Interfaces

– Chapter 12 Applets and Advanced

Graphics

Page 7: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Book Chapters, cont. Part IV: Developing Comprehensive Projects

– Chapter 13 Exception Handling

– Chapter 14 Internationalization

– Chapter 15 Multithreading

– Chapter 16 Multimedia

– Chapter 17 Input and Output

– Chapter 18 Networking

– Chapter 19 Java Data Structures

Page 8: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Student CD-ROM

JBuilder 7 Personal (License can be obtained from www.borland.com/jbuilder/personal)

Example Source Code Solution to Even-numbered Exercises Answers to Review Questions

Page 9: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Instructor CD-ROM

Slides Solution to Exercises Sample Exams Lectures Notes

Page 10: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Companion Website

Interactive SelfTest Java Supplements JBuilder Supplements Errata

Page 11: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Java Teaching Strategies

GUI-first Object-first Fundamentals-first (Imperative-

first)

Page 12: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

GUI-first

The GUI-first strategy, starting with GUI and applets, seems attractive, but requires substantial knowledge of object-oriented programming and a good understanding of the Java event-handling model; thus, students may never fully understand what they are doing.

Page 13: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

GUI-firstThe object-first strategy is based on the notion that objects should be introduced first because Java is an object-oriented programming language.

This approach, however, has the following problems:

– It overlooks the importance of the fundamental techniques required for writing programs in any programming language.

– This approach inevitably mixes static and instance variables and methods before students can fully understand classes and objects and use them to develop useful programs.

– Students are overwhelmed by object-oriented programming and basic rules of programming simultaneously in the early stage of learning Java. This is a common source of frustration of learning object-oriented programming for freshman.

Page 14: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Fundamentals-firstA good introduction on primitive data types, control statements, methods, and arrays prepares students to learn object-oriented programming.

Students who cannot write code in procedural programming are not able to learn object-oriented programming.

Therefore, this text adopts the fundamentals-first strategy, first proceeding at a steady pace through all the necessary and important basic concepts, then moving to object-oriented programming, and then to using the object-oriented approach to build interesting GUI applications and applets with exception handling, I/O, data structures, internationalization, multithreading, multimedia, and networking.

Page 15: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Java Curriculum DesignThe computer science curriculum has two important objectives:

– To prepare students for immediate employment by teaching them marketable skills;

– To train students the ability to learn on their own.

This book is developed to foster self-teaching with many complete examples, notes, tips, and cautions. Students should be able to learn on their own after mastering the first 10 chapters.

Page 16: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Java Curriculum Design, cont.Every school is different. Some schools have used the book in one semester, and some have used it in a two-semester or a three-semester sequence.

For students with no programming experience, an entire semester of four credit hours could be spent just on the first five chapters of the book, as we do in the first semester of the programming course at Armstrong Atlantic State University. In the second semester, we cover chapters 6-13, 17, and 19.

Page 17: Java Teaching Workshop Y. Daniel Liang May 20, 2002 At NCC

Interactive Lectures

Using the slides, and developing, running and testing programs in the class interactively.

Using the slides, you don’t have to write on the board. It saves valuable lecture time. Writing, running and testing programs in the class can hold students’ attention and give them the feedback on how to program instantaneously.