Synopses & Reviews
Scratch is a fun, free, beginner-friendly programming environment where you connect blocks of code to build programs. While most famously used to introduce kids to programming, Scratch can make computer science approachable for people of any age. Rather than type countless lines of code in a cryptic programming language, why not use colorful command blocks and cartoon sprites to create powerful scripts?
In Learn to Program with Scratch, author Majed Marji uses Scratch to explain the concepts essential to solving real-world programming problems. The labeled, color-coded blocks plainly show each logical step in a given script, and with a single click, you can even test any part of your script to check your logic. You'll learn how to:
- Harness the power of repeat loops and recursion
- Use if/else statements and logical operators to make decisions
- Store data in variables and lists to use later in your program
- Read, store, and manipulate user input
- Implement key computer science algorithms like a linear search and bubble sort
Hands-on projects will challenge you to create an Ohm's law simulator, draw intricate patterns, program sprites to mimic line-following robots, create arcade-style games, and more! Each chapter is packed with detailed explanations, annotated illustrations, guided examples, lots of color, and plenty of exercises to help the lessons stick. Learn to Program with Scratch
is the perfect place to start your computer science journey, painlessly.
Scratch is a fun and beginner-friendly programming environment. Popular in schools around the world, Scratch makes a great first programming language. Serious Scratch Programming uses this accessible language to teach essential programming concepts like procedures, variables, loops, strings, and lists. You will use your new-found programming skills to program science simulations, math projects, and even some fun arcade games! Each chapter offers a summary and practice exercises at the end to make sure the lessons stick. By offering a methodical guide to all of Scratch's surprisingly powerful features, Serious Scratch Programming gives you a firm grasp on the fundamental principles of programming in any language.
Scratch is a fun, beginner-friendly programming environment popular in schools around the world. Its playful, intuitive interface uses colorful programming blocks and cartoon sprites to make real programming more approachable. Learn to Program with Scratch shows just how much you can do with Scratch and teaches you essential, universal programming concepts along the way.
In Learn to Program with Scratch, author Majed Marji takes you on a tour through Scratch's surprisingly powerful features to teach programming concepts like procedures, variables, loops, recursion, decision making, and lists. You will use your new-found skills to create science simulations, math projects, and even some fun arcade games! Each chapter offers a summary and practice exercises at the end to make sure the lessons stick.
Scratch is an incredibly fun and easy language to learn, plus you can do some seriously potent programming with it. Learn to Program with Scratch will help you get the most out of Scratch and begin your journey into the world of programming.
About the Author
Majed Marji is a senior development engineer at General Motors and an adjunct faculty member at Wayne State University in Michigan. He holds a PhD in Electrical Engineering from Wayne State University and an MBA in strategic management from Davenport University.
Table of Contents
; About the Author; About the Technical Reviewer; Acknowledgments; Introduction; Whom This Book Is For; A Note to the Reader; Features; Organization of This Text; Conventions Used; Online Resources; Errata and Updates; Chapter 1: Getting Started; 1.1 What Is Scratch?; 1.2 Scratch Programming Environment; 1.3 Paint Editor; 1.4 Your First Scratch Game; 1.5 Scratch Blocks: An Overview; 1.6 Arithmetic Operators and Functions; 1.7 Summary; 1.8 Problems; Chapter 2: Motion and Drawing; 2.1 Using Motion Commands; 2.2 Pen Commands and Easy Draw; 2.3 The Power of Repeat; 2.4 Scratch Projects; 2.5 More on Cloned Sprites; 2.6 Summary; 2.7 Problems; Chapter 3: Looks and Sound; 3.1 The Looks Palette; 3.2 The Sound Palette; 3.3 Scratch Projects; 3.4 Summary; 3.5 Problems; Chapter 4: Procedures; 4.1 Message Broadcasting and Receiving; 4.2 Creating Large Programs in Small Steps; 4.3 Working with Procedures; 4.4 Summary; Chapter 5: Variables; 5.1 Data Types in Scratch; 5.2 Introduction to Variables; 5.3 Displaying Variable Monitors; 5.4 Using Variable Monitors in Applications; 5.5 Getting Input from Users; 5.6 Summary; 5.7 Problems; Chapter 6: Making Decisions; 6.1 Comparison Operators; 6.2 Decision Structures; 6.3 Logical Operators; 6.4 Scratch Projects; 6.5 Summary; 6.6 Problems; Chapter 7: Repetition: A Deeper Exploration of Loops; 7.1 More Loop Blocks in Scratch; 7.2 Stop Commands; 7.3 Counters; 7.4 Revisiting Nested Loops; 7.5 Recursion: Procedures that Call Themselves; 7.6 Scratch Projects; 7.7 Summary; 7.8 Problems; Chapter 8: String Processing; 8.1 Revisiting the String Data Type; 8.2 String Manipulation Examples; 8.3 Scratch Projects; 8.4 Summary; 8.5 Problems; Chapter 9: Lists; 9.1 Lists in Scratch; 9.2 Dynamic Lists; 9.3 Numerical Lists; 9.4 Searching and Sorting Lists; 9.5 Scratch Projects; 9.6 Summary; 9.7 Problems; Sharing and Collaboration; Creating a Scratch Account; Using the Backpack; Creating Your Own Project; About the Online Resources; Updates;