The book comes out of the author's long-term experience with teaching children, university students as well as professional programmers. The author teaches programming according to the Architecture First methodology which reacts at the companies' complaints that the school graduates are usually good in coding, but bad in software architecture. Coding itself is gradually taken over by various code-generators, but the work of the architect will stay irreplaceable for a long time. The author pursues the pedagogical principle saying that those items considered as the most important should be presented as soon as possible. Therefore he leads the readers to apply the proper design of the architecture of the created program and to avoid common mistakes since the very beginning.
For designing the programs, the development environment BlueJ is used, which is proposed specially for the beginners and which enables explaining, demonstrating and programming a number of basic architectonic constructs without leaving the architectonic level and degrading to the code level. The book is divided into three parts. The first one deals with the explanation of basic constructs of the object oriented programming and all proposed programs are created by the code-generator incorporated in BlueJ. The second part repeats the explained constructs and the readers can learn how to code the proposed program similarly as was done by the generator in the first part. The third part presents constructs which are beyond the bounds of abilities of the used code-generator, and therefore the readers have to program them themselves. Despite that, the explanation core keeps in the level of architecture.
The book is determined above all for complete beginners. However, the experience proved that even the intermediate programmers can find a lot of interesting and informative in it.
Table of contents
- Interactive mode
- The Prologue
- The OOP - Get Acquainted
- We Are Sending First Messages
- The Test Class
- The Messages Requiring a Value
- The Messages Requiring an Object
- The Messages with Parameters
- The Object Type Parameters
- The Expedition into the Interior of Instances
- The Interface
- The Interface Continued
- The Introduction into Design Patterns
- The Inheritance of Interface Types
- Mediator and Listener
- Basics of Creating OO Programs
- The First Code
- The First Constructor
- Parameters
- The Fields and the Methods
- Implementation of an interface
- Comments
- Using of this
- Overloading
- The Local Variables
- Methods Returning a Value
- The Crate
- Strings and How to Work with Them
- A Bit of Logic
- Class Methods and Fields
- Refactoring of the Code
- Static Constructor - Class Constructor
- Debugger
- Creating of an Standalone Application
- Advanced Creating of OO Programs
- Packages
- Linking of Instances
- Decorator
- Teaching Cars to Turn
- Controlling from Keyboard
- Containers and Maps
- Further Programming Constructions
- The Factory Method Second Time
- The Loops
- Lists and Their Ordering
- The Array
- The Finale
Pages : | 527 |
Size : | 6.7 MB |
Downloads: | 119 |
Created: | 2022-02-03 |
License: | Open Publication License |
Author(s): | Rudolf Pecinovský |
Warning: Trying to access array offset on false in /home/tutovnfz/public_html/amp/article-amp.php on line 263
Others related eBooks about OOP - Learn Object Oriented Thinking and Programming
The technology of mechanized program verification can play a supporting role in many kinds..., download free Certified Programming tutorial in PDF (368 pages) created by Adam Chlipala .
Download free course Learn Programming, pdf file on 465 pages by Antti Salonen.
Download free course The C Programming Language Handbook, pdf file on 78 pages by Flavio Copes.
Mathematica is a feature-rich, high-level programming language which has historically been used by engineers. This book unpacks Mathematica for programmers, building insights into programming style via real world syntax, real world examples, and extensive parallels to other languages.
Starting from first principles, this book covers all of the foundational material needed to develop a clear understanding of the Mathematica language, with a practical emphasis on solving problems. Concrete examples throughout the text demonstrate how Mathematica language, can be used to solve probl