Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C# by Jeremy Gibson Bond is a great book to start with game development. Whereas other books focus on Unity development, Bond shows his academic experience with an overall focus that includes both theoretical concepts and technical ones. It's well thought structure has an academic smell indeed, but this one is for good and will give a knowledge that won't fade in few years or few versions of your specific game engine.
The first part of the book is focused in theoretical topics beginning with a high abstraction level and descending afterwards to detail step by step. In fact, it begins describing the concept of what we know as a game and which are its elements and structure. Take note that I've said game and not specifically computer game. This book part concepts are so general that author encourages to practice them with pencil and papers. It's evident that Bond is a great board and role playing games fan, starting with D&D, by his several references to that kind of games and its mechanics. This part goal is that the reader can model the game in his head, focusing in the mechanic development needed to make it appealing to be played. In this part has been specially suggestive the layered structure for the different games kinds that are inside a game: there is the game intended by its creators when they designed its rules, there is the game that rises when the game is played at the table, and then there is a game than appears when people start to mod the game and evolves it beyond what its creators thought (modding fan will really enjoy this part).
The second part deals with game design. Starting from theoretical concepts different parts of a game are defined, first with paper prototypes played by different tester rings. Here is specially interesting the part where the subtle ways to guide player are covered. In this part event Agile and Scrum is covered.
I think this two first part will be the most interesting for seasoned Unity developers.
The third part implement paper prototypes in technical prototypes, more similar to the end game. Here is where Unity basic topics start, from the very beginning starting from editor layout setup and later with C# Unity development. Those who already know about C# and Unity probably will read fast these pages, although I don't recommend to skip them because you ca still learn useful tips. I've developed a lot in Unity and I'v still learned one or two things.
The fourth part is focused in prototype development to cover some of the basic game kinds. They are like mini tutorials being each of them a different game. Those who are starting with Unity development will find here and excellent way to advance learning even good practices.
So, it is a complete book, well structured and didactic, with a lot of links and book references to continue after ending this book. I recommend it both to those who already know Unity and want to start with game design, and to those who are starting and want to learn Unity from the scratch.