📜 ⬆️ ⬇️

The book "Learning Python. Game programming, data visualization, web applications

image Hi, Habrozhiteli! Recently we have a new book by Eric Matisz:

The purpose of this book is to get the reader up to speed as soon as possible so that he begins to write workable programs (games, data visualization and web applications) in Python and at the same time lay the foundation for programming that will be useful to him throughout his life. The book is written for people of any age who have never programmed in Python before or have never programmed at all. If you want to quickly learn the basics of programming, to focus on interesting projects, as well as to test your understanding of new concepts on substantive tasks - this book is for you. The book is also great for teachers who want to offer an introductory program-based programming course.

What does this book teach you?


The goal of the book is to make you a good programmer in general and a good Python programmer in particular. The learning process will be effective, and you will acquire many useful skills, as I will provide a thorough introduction to the general concepts of programming. After you turn the last page, you'll be ready to get acquainted with the more serious features of Python, and learning your next programming language will also be easier.

The first part of the book will present the basic concepts of programming that you need to know to write Python programs. These concepts are no different from those considered at the beginning of the study of almost any programming language. You will be introduced to different types of data and data storage capabilities in lists and dictionaries. You will learn how to create collections of data and work effectively with these collections. In particular, while and if loops allow you to execute certain code fragments, if a certain condition is true, and to execute other fragments otherwise — these constructions greatly help in automating processes.
')
You will learn to receive input from the user so that your programs become interactive, and execute them as long as the user remains active. You will also learn how to write functions for the repeated execution of certain parts of your programs, so that you program some action once, and then you can use it as many times as necessary. This concept will then be extended to more complex behaviors with classes, allowing even relatively simple programs to respond to many different situations. You will learn how to write programs that correctly handle many common mistakes. After becoming acquainted with the basic concepts, we will write a few short programs to solve specific problems. Finally, you will take the first steps towards mid-level programming: you will learn how to write tests for your code so that you can continue to develop programs without worrying about the potential for making mistakes. All the information in Part I will prepare you for more complex and large-scale projects.

In Part II, the knowledge gained in Part I will be applied to the construction of three projects. You can take on any of these projects in the order that suits you best. The first project (Chapters 12–14) will create a “shooter” game in the style of the classic Space Invaders hit, consisting of many levels with increasing difficulty. After completing this project, you will know a lot of what you need to know to develop your own 2D games.

The second project (Chapters 15–17) will introduce you to data visualization. To understand the vast amounts of information available, data analytics use various visualization tools. You will work with the data sets generated in the programs; datasets downloaded from network sources; and the data sets that your program loads automatically. After completing this project, you will be able to write programs that process large data sets and build visual representations of stored information.

In the third project (Chapters 18–20), a small web-based learning logging application will be built. This project allows you to keep a journal of new ideas and concepts that you learned during the study of a particular topic. The user of the application will be able to keep different journals on different topics, create accounts and start new journals. You will also learn how to deploy your project on the Internet, so that anyone can work with it from anywhere.

Why choose Python?


Every year, I (the author) think about whether I should continue working in Python or switch to another language - probably newer in the programming world. And yet I continue to work on Python for many reasons. Python is incredibly efficient: your programs do more than many other languages ​​with less code. Python syntax also allows you to write "clean" code. Your code will be easy to read, you will have fewer problems with debugging and extending programs compared to other languages.

Python is used for different purposes: for creating games, building web applications, solving business problems and developing internal tools for all sorts of interesting projects. Python is also widely used in the scientific field for theoretical research and solving applied problems.

However, one of the most important reasons for using Python for me is the Python community, consisting of incredibly different and benevolent people. The community plays an extremely important role in programming, because programming is not a purely individual matter. Many of us, even the most experienced programmers, have to seek advice from colleagues who have already solved similar problems. The existence of a friendly, friendly community helps solve problems, and the Python community is ready to come to the aid of people whose Python is the first programming language.

about the author


Eric Matthes , a teacher of physics and mathematics, lives in Alaska and teaches an entry-level Python course. Erik has been writing programs since he was five years old, and currently he has been developing products that correct shortcomings in the education system and help to use the capabilities of open source software products in the education system. In his free time he goes in for mountaineering and spends time with his family.

About the science reviewer


Kenneth Love (Kenneth Love) - Python teacher and programmer with many years of experience. He gave presentations and lectures at conferences, was engaged in professional training, worked as a freelance Python and Django programmer, and currently conducts classes in a distance education company. Kenneth is also one of the creators of the django-braces package, which provides convenient mixins for representations based on the Django classes. Those interested can read his messages on Twitter (@kennethlove).

»More information about the book can be found on the publisher's website.
» Table of Contents
» Excerpt

For Habrozhiteley 25% discount coupon - Python

Source: https://habr.com/ru/post/313510/


All Articles