Learning Dynamics NAV Patterns

About This Book

  • Design software that is maintainable outside the ecosystem of their creators
  • Ensure quality by following patterns that have been proved to work
  • Over two dozen practical Architectural and Design patterns
Learning Dynamics NAV Patterns

Who This Book Is For

Learning Dynamics NAV Patterns is intended for developers, architects, (technical) consultants, and application managers. You may have very little or no knowledge about NAV patterns, but you should be acquainted with programming.

Table of Contents

Chapter 1: Introducing Dynamics NAV Patterns and Software Architecture
Chapter 2: Architectural Patterns
Chapter 3: Design Patterns
Chapter 4: Building an Example Application Using Patterns
Chapter 5: Coding Best Practices
Chapter 6: Anti-patterns and Handling Legacy Code
Chapter 7: Building Solutions Using Patterns

What You Will Learn

  • Apply object-oriented practices to C/AL programming
  • Structure your application to avoid merge conflicts
  • Refactor legacy code and avoid anti-patterns
  • Design decision trees to decide when to use which patterns
  • Clone codes and their application in Dynamics NAV
  • Make your application extensible by creating predefined hooks and facades

In Detail

Microsoft Dynamics NAV is a complete ERP system, which also contains a robust set of development tools to support customization and enhancement. These include an object designer for each of the seven application object types, a business application oriented programming language with .NET interface capability, a compiler, a debugger, and programming testing language support.

Learning Dynamics NAV Patterns will guide you through the NAV way of solving problems. This book will first introduce you to patterns and the software architecture of the NAV and then help you to build an example application. Then, it walks you through the details of architectural patterns, design patterns, and implementation patterns. This book will also talk about anti-patterns and handling legacy code. Finally, it teaches you to build solutions using patterns.

Proven patterns and best practices will help you create better solutions that are easy to maintain in larger teams across several locations. It will guide you through combining abstract patterns using easy-to-understand examples and will help you decide which patterns to use in which scenarios.


Mark Brummel

Mark Brummel is a freelance all-round Microsoft Dynamics NAV specialist, focused on helping end users of the product.

With http://nav-skills.com/, he evangelizes and documents the ‘NAV way’. This is a combination of architectural principles and design best practices, formalized in a workshop called Master Class for Microsoft Dynamics NAV Application Architecture and Design Patterns. The methodology helps in creating solutions that are easy to upgrade, recognizable for users, and maintainable outside the ecosystem of their creators. All three elements apply to the original Navision product that was shipped in 1995, and was extracted, updated, and documented in this methodology. In September 2015, Packt Publishing published his new book, Learning Dynamics NAV Patterns, which is about this methodology. He also organizes hands-on workshops together with a group of MVPs and MCTs from across the globe.

Mark started in 1997 as an end user, and worked for 8 years for the NAV partners after this. Designing and maintaining add-on systems was his specialization. Some of these add-on systems exceed the standard product, when it comes to size and complexity. Coaching colleagues and troubleshooting complex problems is his passion and part of his day-to-day work. His first book, Dynamics NAV 2009 Application Design, was published in 2010 by Packt Publishing, and updated to Dynamics NAV 2013 Application Design, published by Packt Publishing, when a new release became available.

Many end users of Microsoft Dynamics NAV struggle with the question of how to upgrade their two-tier solution to a three-tier solution. Mark can help you answer these questions and plot a roadmap to the future, retaining the investment in the solution.

When Microsoft introduced the three-tier architecture in 2009, it meant a major shift for experienced NAV developers and consultants. Mark has trained most of those that live in the Netherlands and Belgium.

In 2010, he started a think tank called Partner Ready Software together with four other Dynamics NAV experts. Partner Ready Software brings fresh ideas about designing applications in NAV, and creates awareness of applying Design Patterns in creating repeatable solutions.

Mark is an associate in the Liberty Grove Software network, a member of the NAVUG advisory board, the co-founder of the Dutch Dynamics Community, the vice-president of the Association of Dynamics Professionals, and an advisor to Dynamics HUB.

Mark has undertaken a special project and performance tuning of the Dynamics NAV product on SQL Server. As a unique specialist, he has done breakthrough research into improving the performance of Dynamics NAV on the SQL Server.

On http://nav-skills.com/, Mark maintains a blog. This blog contains a wide range of articles about both the Microsoft Dynamics NAV and the SQL Server product. He is also a frequent speaker at Microsoft events, and publishes articles on Pulse for LinkedIn.

Since 2006, Mark has been rewarded by Microsoft with the Most Valuable Professional award for his contribution to the online and offline communities. He has received this award ten times.

Mark is married and a father of four, and lives in a small town in The Netherlands.