Programming Fundamentals/Orientation and Syllabus

An orientaiton to the textbook/collection "Programming Fundamentals - A Modular Structured Approach using C++" when used as a course.

Textbook/Collection Layout
The approach of this course will be to take the student through a progression of materials that will allow the student to develop the skills of programming. The basic unit of study is a module. Several modules are collected into a chapter. The chapters are divided into five groups.

Some professors using this textbook/collection might decide to eliminate certain modules or chapters. Some may eliminate the entire Advanced Topics group. Other professors may choose to add additional study materials. The advantage of this textbook/collection is that it may be adapted by professors to suit the needs of their students.

Chapter Layout
Each chapter will usually flow from: As you proceed with the modules that comprise a chapter, you should: As you start the Practice module you will usually encounter: A professor using this textbook/collection/course will most likely have additional lab assignments, quizzes and exams that would be used in calculating your grade.
 * 1) One or more modules built for independent delivery.
 * 2) A Practice module built specifically for this textbook/collection.
 * Complete any tasks/demos that require downloading items.
 * Do any exercises.
 * Create 3x5 study cards for all definitions. When this material is used as a textbook for a course the definitions are to be memorized. Confirm this with your professor.
 * Learning Objectives
 * Memory Building Activities aka MBAs Link – These could consist of any of the following types of interactive computer activities: flash card, crossword puzzle, seek a word, drag n drop, labeling, ordering or sorting. When the materials are used as a textbook for a course, it is imperative that students do a variety of repetitive activities in order to memorize basic course material. Besides, have fun learning.
 * Exercises – In addition to any exercises within the study modules that you completed before the practice module, there will be at least one exercise for students to complete.
 * Miscellaneous Items – These will exist for some of the chapters.
 * Lab Assignment – Usually, completed on one's own efforts. Review the instructions/restrictions from your professor/teacher if using this for a high school or college credit course.
 * Problems – The intent of this activity is for students to formulate their own answers. Thus, solutions to the problems will not be provided. When the materials are used as a textbook for a course, the professor/teacher may assign students to a "Study Group" or let students form study groups to discuss their solutions with each other. If you are using this for a high school or college credit course, verify that you may work as team at solving the problems. This type of approved activity is called "authorized collusion" and is not a violation of "Academic or Scholastic Dishonesty" rules.

Module Reading List
The modules in this textbook/collection have had content reviewed and are believed to be sufficient, thus no additional textbook is required. However, some students desire additional references or reading. The author has used several textbooks over the years for teaching "COSC1436 – Programming Fundamentals I" course at Houston Community College and at the Community College of Qatar. A reading reference list has been prepared and includes references for the following textbooks:
 * 1) Starting Out with C++ Early Objects, by: Tony Gaddis et. al., 7th Edition, International Edition, ISBN 978-0-13-137714-1
 * 2) Starting Out with C++ Early Objects, by: Tony Gaddis et. al., 6th Edition, ISBN 0-321-51238-3
 * 3) Starting Out with C++ Early Objects, by: Tony Gaddis et. al., 5th Edition, ISBN 0-321-38348-6
 * 4) Computer Science – A structured Approach using C++, by: Behrouz A. Forouzan et. al., 2nd Edition, ISBN 0-534-37480-8

These textbooks are typically available in the used textbook market at a reasonable price. You may use any one of the three books. If you acquire one of the above optional traditional textbooks, you may want to download and store the following file to your storage device (disk drive or flash drive) in an appropriate folder.

Additional reading list: Connexions_Module_Reading_List_col10621.pdf

Syllabus
The syllabus for a course that is for credit will be provided by your specific course professor. If you are using this textbook/collection for non-credit as self-study, we have some suggestions: These is no magic way to learn about computer programming other than to immerse yourself into regular study and study includes more than casual reading. To help you keep track of your study, we have included a check off list for the textbook/collection.
 * 1) Plan regular study periods
 * 2) Review the three (3) Pre-Chapter Items modules
 * 3) Review the last four (4) modules in the Appendix
 * 4) Proceed with Chapter 1 going through all 24 chapters
 * 5) Do all of the demo programs as you encounter them
 * 6) Memorize all of the terms and definitions
 * 7) Do all lab assignments
 * 8) Prepare answers to all of the problems in the Practice modules
 * 9) At the end of every section, do the Review module