Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Front Cover Half Title BCS, THE CHARTERED INSTITUTE FOR IT Title Page Copyright Page Contents List of figures and tables Author Acknowledgements Glossary Introduction: Why Study Computational Thinking? Part I Computational Thinking 1. What is Computational Thinking?
Objectives What is computational thinking? How is computational thinking used? Disclaimers Summary Exercises
2. Logical and Algorithmic Thinking
Objectives Approach Logical thinking Algorithmic thinking ‘Gotchas’ Summary Exercises
3. Problem-Solving and Decomposition
Objectives Where to start Defining the problem Devising a solution: Something to keep in mind Decomposition Other effective strategies Patterns and generalisation Summary Exercises
4. Abstraction and Modelling
Objectives Abstraction Modelling Summary Exercises
5. Anticipating and Dealing with Errors
Objectives Coming to terms with bugs Designing out the bugs Mitigating errors Testing Debugging You can’t have everything: Deciding which errors to fix Summary Exercises
6. Evaluating A Solution
Objectives Solution evaluation Is it correct? Is it efficient? Is it elegant? Is it usable? Trade-offs Summary Exercises
Part II Computational Thinking in Software Development 7. Tutorial for Python Beginners
Objectives Introducing Python First steps Basic types Basic operations Functions Comments Summary Exercises
8. Effective Building Blocks
Objectives Logic Basic algorithmic constructs Program state More advanced constructs Summary Exercises
9. Organising Your Code
Objectives Recap Introducing tkinter Separating concerns Defining information scope Using modules Packages Summary Exercises
10. Using Abstractions and Patterns
Objectives Finding patterns in programs Abstractions in programming Built-in types Creating your own types Ready-made patterns Summary Exercises
11. Effective Modelling
Objectives Recap Entities Relationships Processes Usage General advice Summary Exercises
12. Testing and Evaluating Programs
Objectives Introduction to program testing and evaluation Anticipating bugs Verification and validation Testing the parts Testing the whole Debugging Summary Exercises
13. A Guided Example
Problem definition Problem decomposition Finding patterns Form generalisations and abstractions Models Annotated source code Testing Opportunities for improvement
Appendix A: Reference Lists and Tables
Order of operator precedence Usability heuristics Mutable and immutable types in Python
Appendix B: Answers to Exercises
Notes References Index
Back Cover
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion