Computer Programming for Absolute Beginners Learn Essential Computer Science Concepts and Coding Techniques to Kick-Start Your Programming Career
Computer Programming for Absolute Beginners will help you to learn how to program by taking you through the major constructs you will find in any mainstream programming language. Even if you don't plan on becoming a professional programmer, gaining some programming skills can make a big impact...
Uloženo v:
| Hlavní autor: | |
|---|---|
| Médium: | E-kniha |
| Jazyk: | angličtina |
| Vydáno: |
Birmingham
Packt Publishing, Limited
2020
|
| Vydání: | 1 |
| Témata: | |
| ISBN: | 9781839216862, 1839216867 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
Obsah:
- Avoiding conflicts using namespaces -- Delving into namespaces -- Namespaces in JavaScript -- Namespaces in Python -- Namespaces in C++ -- Namespaces in other languages -- Using namespaces in our calculator application -- Summary -- Section 2: Constructs of a Programming Language -- Chapter 5: Sequence - The Basic Building Block of a Computer Program -- The importance of sequences -- Defining the problem -- The solution to the problem -- Understanding statements -- Compound statements -- Separating statements -- Making the code readable by indenting and using empty lines -- Making the code understandable using comments -- Summary -- Chapter 6: Working with Data - Variables -- Declaring and initializing variables -- Understanding variables -- Primitive data types -- Boolean type -- Numeric type -- Composite type -- Operators - things we can do with variables -- The concept of values and reference variables -- Working with numbers -- Manipulating strings -- Summary -- Chapter 7: Program Control Structures -- Controlling the execution path -- Selection statements -- Iteration statements -- Conditional statements -- Selection with the if statement -- Selection with the switch statement -- Iteration with the for loop -- Iteration with the while loop -- Iteration with the do while loop -- Iterating over sequences using for each -- Summary -- Chapter 8: Understanding Functions -- Deciding what goes into a function -- Writing a function -- Moving code into a function -- Returning values from a function -- Function arguments -- Functions in action -- Splitting the code further -- Putting it all together -- Local and global variables -- Summary -- Chapter 9: When Things Go Wrong - Bugs and Exceptions -- Understanding software bugs -- NASA's Mars Climate Orbiter -- The Morris worm -- Defining a software bug -- Understanding types of software bugs
- Arithmetic errors -- Division by zero -- Arithmetic overflow/underflow -- Logical errors -- Syntax errors -- Finding bugs using a debugger -- Breakpoints -- Working with exceptions -- Common reasons for exceptions -- Exceptions and the call stack -- Handling exceptions -- Summary -- Chapter 10: Programming Paradigms -- Understanding structured programming -- Statements -- Program state -- Comparing imperative and structured programming -- Understanding object-orientated programming -- Classes and objects -- Understanding encapsulation -- Class methods -- Inheritance -- Understanding functional programming -- Pure functions -- Mutable and immutable data -- Avoiding side effects -- Declarative programming -- First-class functions -- Understanding logic programming -- Other paradigms -- Function-level -- Array programming -- Quantum programming -- Multi-paradigm languages -- Summary -- Chapter 11: Programming Tools and Methodologies -- Understanding version control systems -- Unit testing -- Integration testing -- Other types of tests -- Software releases -- Understanding software deployment -- Deployment automation -- Code maintenance -- Software development process methodologies -- Waterfall development -- Spiral model -- Agile development -- Summary -- Section 3: Best Practices for Writing High-Quality Code -- Chapter 12: Code Quality -- Defining code quality -- CISQ's quality model -- Understanding user quality -- Putting them together -- Writing code with readability in mind -- Using comments and documentation wisely -- Using names as documentation -- Reading other people's code -- Rewriting your code -- Writing code with efficiency in mind -- Removing redundant or unnecessary code -- Optimizing the use of memory and processors -- Using efficient algorithms -- Is smart code smart? -- Code quality - best practices -- Limiting line length
- Limiting function/method length -- Avoiding deep nesting -- Using the DRY principle -- Using code conventions -- Summary -- Appendix A: How to Translate Pseudocode into Real Code -- The pseudocode examples -- Hello world in pseudocode -- Variables declaration in pseudocode -- The for loop in pseudocode -- Functions in pseudocode -- while loops, user input, if, and for loops in pseudocode -- C++ -- Hello world in C++ -- Variable declaration in C++ -- The for loop in C++ -- Functions in C++ -- while loops, user input, if statements, and foreach loops in C++ -- C# -- Hello world in C# -- Variable declaration in C# -- The for loop in C# -- Functions in C# -- while loops, user input, if statements, and foreach loops in C# -- Java -- Hello world in Java -- Variable declaration in Java -- The for loop in Java -- Functions in Java -- while loops, user input, if statements, and foreach loops in Java -- JavaScript -- Hello world in JavaScript -- Variable declaration in JavaScript -- The for loop in JavaScript -- Functions in JavaScript -- while loops, user input, if statements, and foreach loops in Java -- PHP -- Hello world in PHP -- Variable declaration in PHP -- The for loop in PHP -- Functions in PHP -- while loops, user input, if statements, and foreach loops in PHP -- Python -- Hello world in Python -- Declaring variables in Python -- The for loop in Python -- Functions in Python -- while loops, user input, if statements, and foreach loops in Python -- Appendix B: Dictionary -- A -- B -- C -- D -- E -- F -- G -- H -- I -- J -- K -- L -- M -- N -- O -- P -- R -- S -- T -- U -- V -- W -- Other Books You May Enjoy -- Index -- Index
- Cover -- Copyright -- About PACKT -- Contributors -- Table of Contents -- Preface -- Section 1: Introduction to Computer Programs and Computer Programming -- Chapter 1: Introduction to Computer Programs -- A brief history of computing -- A brief history of programming -- What is a program? -- How does a computer program work? -- Understanding the binary system -- Understanding ASCII and Unicode -- Representing other forms of data -- Boolean algebra -- Machine code - the native language of the computer -- Example machine code -- Summary -- Chapter 2: Introduction to Programming Languages -- Why do we have programming languages? -- How programming languages have evolved? -- The modern era of programming languages -- Why so many languages? -- The family tree of programming languages -- Translating code into something that the computer understands -- Interpreting -- Compiling -- Comparing interpretation and compilation -- Languages that both compile and interpret -- Syntax and the building blocks of a programming language -- Keywords -- Operators -- Code blocks -- Relations to mathematics -- Summary -- Chapter 3: Types of Applications -- Standalone applications -- Client-server applications -- Example of a chat application -- Example of an email client -- Client-server, a two-part solution -- Web applications -- Example of a social network -- What makes web applications unique? -- Mobile applications -- Distributed applications -- SETI@home -- Peer-to-peer networks -- Cloud-based applications -- Advantages of adopting cloud-based applications -- Cloud service models -- Other types of applications -- Systems software -- Programming software -- Serverless applications -- Summary -- Chapter 4: Software Projects and How We Organize Our Code -- Code modules -- Working with software projects -- Working with packages to share code -- Package managers

