Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Computing fundamentals
Warford S., Friedrick Vieweg&Son, Wiesbaden, Germany, 2003. 611 pp. Type: Book (9783528058289)
Date Reviewed: Jun 11 2004

It was nice reading this book. The experience was reminiscent of the revising of computing concepts done during my initial studies in computer science. I would say this is not a book on programming concepts, but rather a complete reference, which covers almost everything related to the development phase of the software engineering process. It is different from most other programming books in that it explains base concepts, and not just those specific to a particular technology. I found it was written more for people in academics than in industry.

Warford uses a package called BlackBox to explain basic principles of software programming. Unlike the authors of most programming books, he does not start with sequential input/output (I/O), or data types. Most authors discuss things related to programming for specific environments, like Java, even in conceptual work, whereas Warford has the right mixture of programming principles, data structures, object-oriented programming (OOP), algorithms, and even object design philosophies like unified modeling language (UML); he has not confined himself to one area of interest.

Chapter 1 discusses concepts related to the BlackBox framework. This interesting framework is based on Component Pascal, and has been specifically developed for students, to sharpen their grasp of software engineering concepts. Chapters 2 and 3 discuss concepts related to language design. The author starts with grammars, and moves to the Backus-Naur form. These are pretty basic, but helpful, concepts for beginners trying to master a language. Chapter 3 is more focused on modules and interfaces, which are again discussed with BlackBox in mind. Chapter 4 explains the different types of variables that students might encounter while programming. It covers basic, as well as composed variables.

Chapter 5 takes a radical digression, and talks about dialog boxes. Generally, this represents a bright start for graphical user interface (GUI) programming. By mastering the concepts in this chapter, students will be able to design GUIs in any language. Chapters 6, 8, 10, 11, and 15 explain traditional programming concepts, like loops, selection techniques, nested loops, and arrays. Arrays are covered in brief in chapter 4, on variables. They are then revisited in a later chapter, which explains them in detail, using some common examples. Chapters 7, 17, 21, 22, and 24 are more on data structures than on programming. Collectively, they explain different types of common data structures, like stacks, lists, binary trees, and linked lists. These concepts are again explained with BlackBox in mind. Again, by mastering these concepts, student should be able to use them in any programming environment.

Chapter 9 was most the interesting. It explains Xerox’s model-view-controller (MVC) model. MVC is used in most contemporary languages, including Visual C++, Java, and Visual Basic (VB). MVC architecture specifies that data be stored in a specific way on the disk (explained in the chapter on data structures). It is presented using a format defined by the view, and controlled by the end user using a format defined in the controller. These concepts look more abstract than concrete at first glance, but can be easily absorbed while the reader is working with them.

Chapters 16 and 20 briefly discuss computer algorithms. Warford does not go into complex details, like finding out the time and space complexities of these algorithms, but instead focuses more on concepts and implementation using BlackBox. Chapter 19 is on recursion. This used to be a very special technique for programming in C’s heyday, and it is still very useful. The concept is explained very fundamentally with famous examples. Chapter 14 is on random numbers. These concepts could be covered in a separate work, on mathematics. Warford does not include typical algorithms for generating random numbers, but rather explains them, again in brief, using BlackBox.

Students can use all of these chapters collectively, thereby developing an initial understanding of the vast of field of computer science.

Reviewer:  Dilip Agheda Review #: CR129739 (0412-1427)
Bookmark and Share
 
Object-Oriented Programming (D.1.5 )
 
 
Patterns (D.2.11 ... )
 
 
General (D.1.0 )
 
Would you recommend this review?
yes
no
Other reviews under "Object-Oriented Programming": Date
Object-oriented programming systems, languages, and applications
Paepcke A.  Object-oriented programming systems, languages, and applications,Phoenix, AZ,Oct 6-Oct 11, 1991,1991. Type: Whole Proceedings
Oct 1 1992
Object lifecycles
Shlaer S., Mellor S., Yourdon Press, Upper Saddle River, NJ, 1992. Type: Book (9780136299400)
Apr 1 1993
Object-oriented programming
Voss G., Osborne/McGraw-Hill, Berkeley, CA, 1991. Type: Book (9780078816826)
Oct 1 1992
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy