This site is the online version of the textbook entitled Object-Oriented Software Design and Construction with Java, by Dr. Dennis Kafura. It is intended to support a sophomore year course. Topics coverered in nine chapters include: Introduction to design strategies (abstraction, separation, composition, generalization) in object-oriented programming; structure of classes and objects; overloaded methods; object communication, association, aggregation; implementing classes; designing and developing a class; inheritance; building user interfaces in Java; input/output in Java; and threads.
Type of Material:
This is essentially a textbook.It is presented as a tutorial.
Recommended Uses:
It is intended to support a person's study of object-oriented programming in Java. Since it is the online version of the author's book, it can be used as a textbook. It is probably not suitable for self-study, at least not for novices. An experienced programmer who wishes to become familiar with Java might also benefit from this book.The web site that accompanies the textbook contains interactive. questions and Java applets, which can be accessed with password.
Technical Requirements:
It is in HTML.A simple web browser suffices.
Identify Major Learning Goals:
Students will become proficient in the Java programming language, as well as the theories and techniques underlying object-oriented design, including UML. They will also learn object-oriented programming aspects of Java and to raise the student's level of programming competence by emphasizing reuse,tools/techniques, GUI library, and event-driven systems.
Target Student Population:
Undergraduate university students who require a thorough knowledge of programming (e.g.,
undergraduates in Computer Science, Computer Engineering, Information Technology and Information Systems).
Prerequisite Knowledge or Skills:
It is assumed that the reader has had a single preceding programming course and knows the syntax of the basic programming constructs (decisions, iterations, etc.) in C. An understanding of basic data structures (e.g., linked lists, stacks) is also required.
Content Quality
Rating:
Strengths:
This is a reasonable textbook. The initial focus on the broad concepts of object-oriented programming. The presentation of corresponding UML diagrams as object-oriented structures are introduced. Organization of the book that takes into account the basic concepts that underlay object-oriented programming and the progression of the various roles assumed by a programmer in developing software.
Concerns:
A title such as Object-oriented Programming with Java would better indicate the content and emphasis of the book. Unfortinately, the book contains too many spelling and typographical errors.The number of typographical errors is excessive. There is also at least one typographical error in the programming examples included.
Potential Effectiveness as a Teaching Tool
Rating:
Strengths:
Good coverage of object-oriented programming concepts. Consideration of the the various roles assumed by a programmer in developing software in the sequencing of the material. Focus on two recurring examples (an ecological simulation and graphical user interfaces) that allows a more complete solution to a problem to be developed as new concepts and techniques are introduced.
Concerns:
This is not material that can be used for self-study. Its effectiveness therefore completely depends on the strength of the instructor using the textbook in a course. Also, many of the links do not work. Sometimes the logic behind the progression of the topics is not clear. For some students sections of the material may lack clarity.
Ease of Use for Both Students and Faculty
Rating:
Strengths:
It is easy to use since the material is mostly organized in a sequential manner.
Concerns:
This is essentially an on-line version of a textbook. It hardly makes use of the technology. For example,
there are very few hyperlinks and navigation from one chapter to the next forces one to go back up to the table of contents using the back button in the browser. Also, each chapter is essentially stored as a single large HTML page. Finally, two of the more advanced chapters seem to have been removed and therefore are not accessible. It would help to have more hyperlinked terms. Also several hyperlinks are not working.
Creative Commons:
Search by ISBN?
It looks like you have entered an ISBN number. Would you like to search using what you have
entered as an ISBN number?
Searching for Members?
You entered an email address. Would you like to search for members? Click Yes to continue. If no, materials will be displayed first. You can refine your search with the options on the left of the results page.
Searching for Members?
You entered an email address. Would you like to search for members? Click Yes to continue. If no, materials will be displayed first. You can refine your search with the options on the left of the results page.