Chapter 1 Introduction to Java and JBuilder
Download
Report
Transcript Chapter 1 Introduction to Java and JBuilder
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
Overview of the Text
Chapter
Organization
Student CD-ROM
Instructor CD-ROM
Companion Website
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
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
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
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
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
Instructor CD-ROM
Slides
Solution
to Exercises
Sample Exams
Lectures Notes
Companion Website
Interactive
SelfTest
Java Supplements
JBuilder Supplements
Errata
Java Teaching Strategies
GUI-first
Object-first
Fundamentals-first
first)
(Imperative-
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.
GUI-first
The 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
Fundamentals-first
A 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.
Java Curriculum Design
The 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
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.
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.