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: | 125 |
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
This book describes the Persistent Memory technology and why it is exciting the industry. It covers the operating system and hardware requirements as well as how to create development environments using emulated or real persistent memory hardware.
Download free course Fundamentals of Python Programming, pdf file on 669 pages by Richard L. Halterman.
Download free course Certified Programming with Dependent Types, pdf file on 368 pages by Adam Chlipala.
Download free course Programming for Computations - Python, pdf file on 350 pages by Svein Linge, Hans Petter Langtangen.
The book is an introductory and down-to-earth presentation of Constraint Logic Programming (CLP), an exciting software paradigm, more and more popular for solving combinatorial as well as continuous constraint satisfaction problems and constraint optimization problems. It is based on the popular,