Good application or mobile developers are people who are constantly learning and improving: a new programming language that the industry’s main players have started using, an update to boost security and storage of data, a hack for writing code in a more scalable way…
In order for you to stay up to date, and even take a step back and look at the essential basic concepts, here you have a selection of essential books that all games and apps developers should read.
And, if you want to take a step further, we recommend this other list of books for mobile growth leaders about promoting and optimizing digital products and services that will be extremely useful in boosting your growth.
6 books for video game mobile developers
Let’s start with the development of video games and these 6 practical guides for learning to program on different platforms:
1. “Unity Game Development in 24 Hours, Sams Teach Yourself”
Among the multiple video game development platforms that exist, one of the most popular and widely used at the moment is Unity. One of the main reasons is thanks to its practicality when it comes to creating video games from a single tool for different platforms (PC, video consoles, Android and iOS mobile phones, etc.).
If you are a beginner in this field and you want to familiarize yourself with Unity, the book by Mike Geig is just what you need. It is an introduction to creating games from scratch using the tools and functionalities of Unity, without the need to have extensive prior knowledge of programming or video game development.
In each of the 24 lessons it is divided into, the book deals with a specific topic. These include the creation of objects, scripts, 3D models, implementing game logic and sound and musical effects. Furthermore, it includes examples of code that the reader can use to develop their own game with step-by-step instructions and practical exercises to put the knowledge acquired to the test.
Mike Geig’s ultimate goal in this book is to teach the reader to master Unity 4 so they can create their own games in just 24 practical sessions with a duration of one hour each.
2. “Unity in Action: Multiplatform Game Development in C# with Unity 5”
Continuing with Unity, given its popularity, we suggest another practical guide. In this case, it is aimed at more experienced programmers that are looking to improve their skills.
Specifically, “Unity in Action” by Joe Hocking is based on version 5 of Unity and the C# language, going into detail with regard to the intuitive workflow and rendering engine tools to create and develop games for mobile phones, PCs, and consoles.
Hocking, a software engineer at Synapse Games, specialized in interactive media development and professor at Columbia College Chicago, explains in this book how to use the Unity video game engine to create 2D and 3D environments, animate characters, create sound settings and everything a good video game needs, focusing on one tool. Additionally, the chapters include practical exercises and example projects which allow the reader to put everything they learn into practice.
3. “Roblox Game Development in 24 Hours. The Official Roblox Guide”
This is the official Roblox guide which teaches you to create games on this platform from a beginner’s level.
In it, you will find a basic introduction to the platform and its functioning, to then enter into more detail with regard to the development of video games with the Lua programming language used on Roblox. As with the previous guides we have included in this post, this book also explains how to develop game scenes, the process for programming objects and characters, how to implement scripts and the creation of graphics and sounds needed to imprint emotion in video games, in this case on the Roblox platform, and with the added extra of integration with social networks.
It is all done with practical exercises, example codes, and tips to optimize the performance and efficiency of the games you create.
4. “Apple Game Frameworks and Technologies. Build 2D Games with SpriteKit & Swift”
This book also teaches you to develop video games, but in this case for Apple devices, using SpriteKit and Swift technologies.
Tammy Coron begins her manual with an introduction to the basic concepts of game programming and the SpriteKit framework, explaining how to use the Xcode tools to create 2D games. The book becomes more advanced when it delves into the details of creating different types of games with detailed instructions about graphics, animations, sounds, collisions, and other essential elements for the game using SpriteKit.
The book also covers the integration of social networks and monetization of video games thanks to the implementation of purchases within the application. It features tips and techniques to optimize the performance and efficiency of games for mobile devices.
5. “Game Balance”
In “Game Balance”, Ian Schreiber and Brenda Romero develop the topic of balance in games, an aspect they consider to be key in developing satisfactory and challenging gaming experiences for users.
What they understand as a balance of the game is the result of finding the right dose between its accessibility and difficulty so that it is exciting and challenging for players without being predictable.
Depending on the type of game, the authors of “Game Balance” analyze the different types of balance: of abilities and powers of the characters, economics, and resources in strategy games, and how it affects the fun and retention of players. A broad mix of different factors to achieve the perfect balance where mathematics, psychology, and even economics and game theory come into play.
All from a practical perspective with examples from well-known games and techniques which teach you to create and adjust the balance in different types of dynamics to improve the product quality and player experience.
If you want to learn from the best in the industry, the authors of “Game Balance” have a wealth of experience. Ian Schreiber worked first as a programmer and then as a game designer for different companies. He is a professor of game design and development and is the co-founder of Global Game Jam, the largest in-person video game competition in the world. For her part, Brenda Romero is a game director, entrepreneur, artist, and Fulbright BAFTA award recipient. She is currently game director and creator of the Empire of Sin franchise.
6. “The Art of Game Design: A Book of Lenses”
The book by Jesse Schell is considered to be one of the best books about video game design. It is based on the theory that the same basic principles of psychology that work for board games, card games, and sports, are also key to creating high quality video games. It also sends out a message that a good video game design is achieved when looking from different perspectives or lenses. Specifically, Schell suggests 100 perspectives of sets of questions from areas as diverse as psychology, architecture, music, video design, cinema, software engineering, the dynamics of theme parks, mathematics, writing, puzzle design, and anthropology to help the developer to improve their game.
Moreover, Schell suggests an approach divided into two parts: a first part which explains the theoretical principles and basic concepts of game design and a second part which talks about its practical application with exercises and success stories which will be extremely useful to you as a designer.
7 practical guides to learning to develop apps
Beyond game applications, here you will find extremely useful, practical books for the development of apps in general:
“React and React Native” also covers the status and properties in React to understand how the components react with each other and develop the techniques to handle events and perform the conditional rendering of elements.
2. “Flutter Apprentice. Learn to Build Cross-Platform Apps”
In this practical guide, Michael Katz, Kevin David Moore, and Vincent Ngo explain how to build multi-platform mobile applications using the Flutter development framework. They explain it from scratch, including the first phase of the configuration of the development environment, the creation of user interfaces, data management, handling events, and integration with web service, among other stages of the process. It also includes practical projects so the reader learns step by step how to build different types of real applications (task lists, apps for the weather, chat, online shopping, etc.).
Flutter is an open source framework developed by Google which enables developers to build high quality mobile applications for iOS, Android, and web from a single code base. In fact, Flutter is already one of the most popular app creation frameworks among developers thanks to its ease of use, its high quality performance, and the capabilities it offers to create customizable and attractive user interfaces. Hence the importance of familiarizing yourself with it if you haven’t already done so.
3. “Coding Projects in Flutter: A Hands-On, Project-Based Introduction to Mobile App Development”
Here we have another Flutter essential. In this case, the book by Edward Thornton presents a series of hands-on projects, from the creation of a task list application to another on expense tracking. Reviewing each of these real projects, the author aims to teach readers different aspects of mobile application development with Flutter. These include navigation, status management, authentication, integration of cloud services, and user experience.
It is, ultimately, a book which teaches you about this open source tool from Google step by step to create multi-platform applications from a single code base in a very short period of time. Without the need to learn several programming languages or manage several code bases and with a versatility that makes it easier to reach a large potential audience. Furthermore, it also includes projects to learn Dart from scratch, reducing the entry barrier for application developers who are just starting out in their careers.
4. “Hands-On Design Patterns with Kotlin: Build Scalable Applications Using Traditional, Reactive, And Concurrent Design Patterns In Kotlin”
In this practical guide, Alexey Soshin teaches you to build scalable applications using design patterns in the Kotlin programming language for developers on Android.
The book covers a wide range of design patterns, from the traditional to reactive and concurrent patterns, and shows how to apply them in real Kotlin apps so readers know how to program more extendable and scalable apps.
The book begins with an introduction to the basic concepts of design patterns, including creational, structural, and behavioral patterns. Then, it moves to cover reactive and concurrent design patterns, which are particularly useful for applications that need to handle large amounts of data and respond to events in real time.
Each chapter in the book includes examples of Kotlin code which show how to apply the design patterns in real applications. The examples of code are also designed to show you how the different design pattern solutions can affect the quality of the code and the scalability of the application.
5. “iOS 15 Programming Fundamentals with Swift: Swift, Xcode, and Cocoa Basics”
This is another basic guide for the introduction to the development of applications, but in this case, we are talking about iOS applications, using the Swift programming language, the Xcode integrated development environment, and the Cocoa framework.
Matt Neuburg starts the book with an introduction to Swift, covering the basic concepts of this language including variables, data types, flow-control structures, and functions. Immediately afterward, he explains how to create user interfaces using Cocoa and Xcode libraries, which is the main tool for developing applications in iOS.
Throughout its more than 700 pages, the book also explains other fundamental aspects for the development of iOS apps such as the handling, persistence, and storage of data and integration with online services. It also reviews characteristics and improvements of iOS 15, as well as the introduction to new user interface controls and the integration of artificial intelligence and machine learning in iOS apps with examples of code in each chapter to reinforce the practical application of the concepts explained.
6. “Nonfunctional Requirements in Mobile Application Development”
This book by Varun Gupta, Raj Chopra, and Durg Chauhan focuses on NFRs or non-functional requirements in the development of applications.
NFRs are not directly related to the app functionality, but they are necessary for aspects like its performance, security, usability, and scalability. Hence their importance in guaranteeing the quality of the application and satisfying the needs of users.
In this guide, you will learn to identify, define, measure, and validate NFRs and find out how to incorporate them in the stages of design, development, and testing of your mobile applications. In addition, the book empirically analyses how NFRs contribute to the cost, time, and quality of the app and, consequently, to the success of projects with surveys and case studies.
Ultimately, it is not just a book about software engineering, but also about business management since it also empirically studies the impact of non-functional requirements on business success. It does this by providing evidence that places NFRs at the same level as functional requirements to achieve business success in highly competitive markets. For this reason, we are talking about a book which is aimed at both developers and business managers who are looking for theoretical and technical solutions to correctly plan the development of software and, therefore, achieve business success.
7. “Building Mobile Apps at Scale 39 Engineering Challenges”
We end this bibliographical review of essential titles for all good app developers with the guide by Gergely Orosz, which teaches you to build mobile applications for iOS and Android through 39 at scale engineering challenges.
Challenges relating to topics like handling concurrency and the synchronization of data or the management of memory and security, which are covered in each of the book’s chapters with practical solutions and tips about how to tackle them. With this guide, readers also learn to optimize the performance of the application, handle scalability, and design fault-tolerant systems. Moreover, the book discusses the life cycle of the development of mobile applications and how to manage the development team of the mobile application in itself.
Gergely Orosz deals with the issue of scalability both from the perspective of the number of users (millions) and from the point of view of large engineering teams for development.
Now that you know which are the essential books for applications and games mobile developers, we encourage you to start with the one you feel is most useful according to your specialism and tell us about your experience.