Best Computer Programming Structured Design Books

Structured Design: Fundamentals of a Discipline of Computer Program and System Design

1. A Common-Sense Guide to Data Structures and Algorithms, Second Edition: Level Up Your Core Programming Skills

Author: by Jay Wengrow
Published at: Pragmatic Bookshelf; 2nd edition (September 1, 2020)
ISBN: 978-1680507225

View on Amazon

Algorithms and data structures are much more than abstract concepts. Mastering them enables you to write code that runs faster and more efficiently, which is particularly important for todays web and mobile apps. Take a practical approach to data structures and algorithms, with techniques and real-world scenarios that you can use in your daily production code, with examples in JavaScript, Python, and Ruby.

This new and revised second edition features new chapters on recursion, dynamic programming, and using Big O in your daily work. Use Big O notation to measure and articulate the efficiency of your code, and modify your algorithm to make it faster.

Find out how your choice of arrays, linked lists, and hash tables can dramatically affect the code you write. Use recursion to solve tricky problems and create algorithms that run exponentially faster than the alternatives. Dig into advanced data structures such as binary trees and graphs to help scale specialized applications such as social networks and mapping software.

2. Web Design with HTML, CSS, JavaScript and jQuery Set

Author: by Jon Duckett
Published at: Wiley; 1st edition (July 8, 2014)
ISBN: 978-1118907443

View on Amazon

A two-book set for web designers and front-end developers This two-book set combines the titles HTML & CSS: Designing and Building Web Sites and JavaScript & jQuery: Interactive Front-End Development. Together these two books form an ideal platform for anyone who wants to master HTML and CSS before stepping up to JavaScript and jQuery.

HTML & CSS covers structure, text, links, images, tables, forms, useful options, adding style with CSS, fonts, colors, thinking in boxes, styling lists and tables, layouts, grids, and even SEO, Google analytics, ftp, and HTML5. JavaScript & jQuery offers an excellent combined introduction to these two technologies using a clear and simple visual approach using diagrams, infographics, and photographs.

A handy two-book set that uniquely combines related technologies Highly visual format and accessible language makes these books highly effective learning tools Perfect for beginning web designers and front-end developers.

3. The Algorithm Design Manual (Texts in Computer Science)

Author: by Steven S. Skiena
Published at: Springer; 3rd ed. 2020 edition (October 6, 2020)
ISBN: 978-3030542559

View on Amazon

“My absolute favorite for this kind of interview preparation is Steven Skiena’s The Algorithm Design Manual. More than any other book it helped me understand just how astonishingly commonplace graph problems are – they should be part of every working programmer’s toolkit.

The book also covers basic data structures and sorting algorithms, which is a nice bonus. Every 1 pager has a simple picture, making it easy to remember. This is a great way to learn how to identify hundreds of problem types.” (Steve Yegge, Get that Job at Google)”Steven Skiena’s Algorithm Design Manual retains its title as the best and most comprehensive practical algorithm guide to help identify and solve problems.

Every programmer should read this book, and anyone working in the field should keep it close to hand. This is the best investment a programmer or aspiring programmer can make.” (Harold Thimbleby, Times Higher Education)”It is wonderful to open to a random spot and discover an interesting algorithm.

4. Team Topologies: Organizing Business and Technology Teams for Fast Flow

Author: by Matthew Skelton
Published at: IT Revolution Press; Illustrated edition (September 17, 2019)
ISBN: 978-1942788812

View on Amazon

Effective software teams are essential for any organization to deliver value continuously and sustainably. But how do you build the best team organization for your specific goals, culture, and needs? Team Topologies is a practical, step-by-step, adaptive model for organizational design and team interaction based on four fundamental team types and three team interaction patterns.

It is a model that treats teams as the fundamental means of delivery, where team structures and communication pathways are able to evolve with technological and organizational maturity. In Team Topologies, IT consultants Matthew Skelton and Manuel Pais share secrets of successful team patterns and interactions to help readers choose and evolve the right team patterns for their organization, making sure to keep the software healthy and optimize value streams.

Team Topologies is a major step forward in organizational design for software, presenting a well-defined way for teams to interact and interrelate that helps make the resulting software architecture clearer and more sustainable, turning inter-team problems into valuable signals for the self-steering organization.

5. Algorithms (4th Edition)

Author: by Robert Sedgewick
Published at: Addison-Wesley Professional; 4th edition (April 3, 2011)
ISBN: 978-0321573513

View on Amazon

This fourth edition of Robert Sedgewick and Kevin Wayne’s Algorithms is the leading textbook on algorithms today and is widely used in colleges and universities worldwide. This book surveys the most important computer algorithms currently in use and provides a full treatment of data structures and algorithms for sorting, searching, graph processing, and string processing-including fifty algorithms every programmer should know.

In this edition, new Java implementations are written in an accessible modular programming style, where all of the code is exposed to the reader and ready to use. The algorithms in this book represent a body of knowledge developed over the last 50 years that has become indispensable, not just for professional programmers and computer science students but for any student with interests in science, mathematics, and engineering, not to mention students who use computation in the liberal arts.

The companion web site, algs4.Cs.Princeton. Edu, contains An online synopsis Full Java implementations Test data Exercises and answers Dynamic visualizations Lecture slides Programming assignments with checklists Links to related material The MOOC related to this book is accessible via the “Online Course” link at algs4.Cs.Princeton.Edu.

6. Data Science from Scratch: First Principles with Python

Author: by Joel Grus
Published at: O'Reilly Media; 2nd edition (May 16, 2019)
ISBN: 978-1492041139

View on Amazon

To really learn data science, you should not only master the toolsdata science libraries, frameworks, modules, and toolkitsbut also understand the ideas and principles underlying them. Updated for Python 3. 6, this second edition of Data Science from Scratch shows you how these tools and algorithms work by implementing them from scratch.

If you have an aptitude for mathematics and some programming skills, author Joel Grus will help you get comfortable with the math and statistics at the core of data science, and with the hacking skills you need to get started as a data scientist.

Packed with New material on deep learning, statistics, and natural language processing, this updated book shows you how to find the gems in today’s messy glut of data. Get a crash course in PythonLearn the basics of linear algebra, statistics, and probabilityand how and when they’re used in data scienceCollect, explore, clean, munge, and manipulate dataDive into the fundamentals of machine learningImplement models such as k-nearest neighbors, Nave Bayes, linear and logistic regression, decision trees, neural networks, and clusteringExplore recommender systems, natural language processing, network analysis, MapReduce, and databases..

7. The Art of Game Design: A Book of Lenses, Third Edition

Author: by Jesse Schell
Published at: A K Peters/CRC Press; 3rd edition (August 27, 2019)
ISBN: 978-1138632059

View on Amazon

Presents over 100 sets of questions, or different lenses, for viewing a game’s design. Written by one of the world’s top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games.

It provides practical instruction on creating world-class games that will be played again and again. New to this edition: many great examples from new VR and AR platforms as well as examples from modern games such as Uncharted 4 and The Last of Us, Free to Play games, hybrid games, transformational games, and more.

8. Spark: The Definitive Guide: Big Data Processing Made Simple

Author: by Bill Chambers
Published at: O'Reilly Media; 1st edition (March 20, 2018)
ISBN: 978-1491912218

View on Amazon

Learn how to use, deploy, and maintain Apache Spark with this comprehensive guide, written by the creators of the open-source cluster-computing framework. With an emphasis on improvements and new features in Spark 2. 0, authors Bill Chambers and Matei Zaharia break down Spark topics into distinct sections, each with unique goals.

You’ll explore the basic operations and common functions of Spark’s structured APIs, as well as Structured Streaming, a new high-level API for building end-to-end streaming applications. Developers and system administrators will learn the fundamentals of monitoring, tuning, and debugging Spark, and explore machine learning techniques and scenarios for employing MLlib, Spark’s scalable machine-learning library.

Get a gentle overview of big data and SparkLearn about DataFrames, SQL, and DatasetsSpark’s core APIsthrough worked examplesDive into Spark’s low-level APIs, RDDs, and execution of SQL and DataFramesUnderstand how Spark runs on a clusterDebug, monitor, and tune Spark clusters and applicationsLearn the power of Structured Streaming, Spark’s stream-processing engineLearn how you can apply MLlib to a variety of problems, including classification or recommendation

9. Database Systems: Design, Implementation, & Management

Author: by Carlos Coronel
Published at: Cengage Learning; 13th edition (January 1, 2018)
ISBN: 978-1337627900

View on Amazon

Does not contain an access card. Database skills are among the most in-demand IT skills today. Now you can gain a solid foundation in database design and implementation with the practical, easy-to-understand approach in the market-leading DATABASE SYSTEMS: DESIGN, IMPLEMENTATION, AND MANAGEMENT, 13E.

Diagrams, illustrations, and tables clarify in-depth coverage of database design. You learn the key to successful database implementation as you study how to properly design databases to fit within the larger strategic data environment. Clear, straightforward writing supports an outstanding balance of theory and practice with hands-on skills today’s employers want.

Revised SQL coverage offers more SQL examples and simpler explanations that focus on the areas most important for a database career. More coverage of Big Data Analytics and NoSQL, including related Hadoop technologies, now provides a stronger hands-on approach.

10. Think Like a Programmer: An Introduction to Creative Problem Solving

Author: by V. Anton Spraul
Published at: No Starch Press; 1st edition (August 12, 2012)
ISBN: 978-1593274245

View on Amazon

The real challenge of programming isn’t learning a language’s syntaxit’s learning to creatively solve problems so you can build something great. In this one-of-a-kind text, author V. Anton Spraul breaks down the ways that programmers solve problems and teaches you what other introductory books often ignore: how to Think Like a Programmer.

Each chapter tackles a single programming concept, like classes, pointers, and recursion, and open-ended exercises throughout challenge you to apply your knowledge. You’ll also learn how to:Split problems into discrete components to make them easier to solveMake the most of code reuse with functions, classes, and librariesPick the perfect data structure for a particular jobMaster more advanced programming tools like recursion and dynamic memoryOrganize your thoughts and develop strategies to tackle particular types of problemsAlthough the book’s examples are written in C++, the creative problem-solving concepts they illustrate go beyond any particular language; in fact, they often reach outside the realm of computer science.

11. SQL Queries for Mere Mortals: A Hands-On Guide to Data Manipulation in SQL

Author: by John Viescas

Published at: Addison-Wesley Professional; 4th edition (February 9, 2018)
ISBN: 978-0134858333

View on Amazon

The #1 Easy, Common-Sense Guide to SQL QueriesUpdated with More Advanced Techniques and Solutions Foreword by Keith W. Hare, Vice Chair, USA SQL Standards Committee SQL Queries for Mere Mortals has earned worldwide praise as the clearest, simplest tutorial on writing effective queries with the latest SQL standards and database applications.Now, author John L.

Viescas has updated this hands-on classic with even more advanced and valuable techniques. Step by step, Viescas guides you through creating reliable queries for virtually any current SQL-based database. He demystifies all aspects of SQL query writing, from simple data selection and filtering to joining multiple tables and modifying sets of data.

Building on the basics, Viescas shows how to solve challenging real-world problems, including applying multiple complex conditions on one table, performing sophisticated logical evaluations, and using unlinked tables to think outside the box. In two brand-new chapters, you learn how to perform complex calculations on groups for sophisticated reporting, and how to partition data into windows for more flexible aggregation.

12. Building Blocks of Tabletop Game Design: An Encyclopedia of Mechanisms

Author: by Geoffrey Engelstein
Published at: CRC Press; 1st edition (July 11, 2019)
ISBN: 978-1138365490

View on Amazon

Building Blocks of Tabletop Game Design: An Encyclopedia of Mechanisms compiles hundreds of different mechanisms, organized by category. Each has a description of how it works, discussion of its pros and cons, how it can be implemented, and examples of specific games that use it.

Building Blocks can be read cover to cover, used as a reference when looking for inspiration for a new design, help solving a specific problem, or assist in getting unstuck in the midst of a project. This book, the first to collect mechanisms like this in the tabletop game design field, aims to be a practical guide that will be a great starting point for beginning designers, a handy guidebook for the experienced, and an ideal classroom textbook.

Key Features The first compendium of its kind in the tabletop game field. Covers the nuts and bolts of design to resolve specific challenges. Serves as a practical guide, a great starting point for beginning designers, and a reference for seasoned professionals.

13. Understanding Cryptography: A Textbook for Students and Practitioners

Author: by Christof Paar
Published at: Springer; 1st ed. 2010 edition (December 10, 2009)
ISBN: 978-3642041006

View on Amazon

Cryptography is now ubiquitous moving beyond the traditional environments, such as government communications and banking systems, we see cryptographic techniques realized in Web browsers, e-mail programs, cell phones, manufacturing systems, embedded software, smart buildings, cars, and even medical implants. Today’s designers need a comprehensive understanding of applied cryptography.

After an introduction to cryptography and data security, the authors explain the main techniques in modern cryptography, with chapters addressing stream ciphers, the Data Encryption Standard (DES) and 3DES, the Advanced Encryption Standard (AES), block ciphers, the RSA cryptosystem, public-key cryptosystems based on the discrete logarithm problem, elliptic-curve cryptography (ECC), digital signatures, hash functions, Message Authentication Codes (MACs), and methods for key establishment, including certificates and public-key infrastructure (PKI).

Throughout the book, the authors focus on communicating the essentials and keeping the mathematics to a minimum, and they move quickly from explaining the foundations to describing practical implementations, including recent topics such as lightweight ciphers for RFIDs and mobile devices, and current key-length recommendations.

14. The Gamer's Brain: How Neuroscience and UX Can Impact Video Game Design

Author: by Celia Hodent
Published at: CRC Press; 1st edition (August 14, 2017)
ISBN: 978-1498775502

View on Amazon

Making a successful video game is hard. Even games that are well-received at launch may fail to engage players in the long term due to issues with the user experience (UX) that they are delivering. That’s why makers of successful video games like Fortnite and Assassin’s Creed invest both time and money perfecting their UX strategy.

These top video game creators know that a bad user experience can ruin the prospects for any game, regardless of its budget, scope, or ambition. The game UX accounts for the whole experience players have with a video game, from first hearing about it to navigating menus and progressing in the game.

UX as a discipline offers guidelines to assist developers in creating the optimal experience they want to deliver, including shipping higher quality games (whether indie, triple-A or “serious” games) and meeting business goals – all while staying true to design vision and artistic intent.

At its core, UX is about understanding the gamer’s brain: understanding human capabilities and limitations to anticipate how a game will be perceived, the emotions it will elicit, how players will interact with it, and how engaging the experience will be.

15. Data Structures and Algorithms in Python

Author: by Michael T. Goodrich
Published at: Wiley; 1st edition (March 18, 2013)
ISBN: 978-1118290279

View on Amazon

Based on the authors’ market leading data structures books in Java and C++, this textbook offers a comprehensive, definitive introduction to data structures in Python by respected authors. Data Structures and Algorithms in Python is the first mainstream object-oriented book available for the Python data structures course.

Designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation, the text will maintain the same general structure as Data Structures and Algorithms in Java and Data Structures and Algorithms in C++.

16. The Algorithm Design Manual

Author: by Steven S Skiena
Published at: Springer; 2nd edition (April 27, 2011)
ISBN: 978-1848000698

View on Amazon

This newly expanded and updated second edition of the best-selling classic continues to take the “mystery” out of designing algorithms, and analyzing their efficacy and efficiency. Expanding on the first edition, the book now serves as the primary textbook of choice for algorithm design courses while maintaining its status as the premier practical reference guide to algorithms for programmers, researchers, and students.

The reader-friendly Algorithm Design Manual provides straightforward access to combinatorial algorithms technology, stressing design over analysis. The first part, Techniques, provides accessible instruction on methods for designing and analyzing computer algorithms. The second part, Resources, is intended for browsing and reference, and comprises the catalog of algorithmic resources, implementations and an extensive bibliography.

NEW to the second edition: Doubles the tutorial material and exercises over the first edition Provides full online support for lecturers, and a completely updated and improved website component with lecture slides, audio and video Contains a unique catalog identifying the 75 algorithmic problems that arise most often in practice, leading the reader down the right path to solve them Includes several NEW “war stories” relating experiences from real-world applications Provides up-to-date links leading to the very best algorithm implementations available in C, C++, and Java.