Learning Dynamics NAV Patterns

 
 
Packt Publishing Limited
  • 1. Auflage
  • |
  • erschienen am 24. September 2015
  • |
  • 214 Seiten
 
E-Book | ePUB mit Adobe DRM | Systemvoraussetzungen
978-1-78355-256-6 (ISBN)
 
Create solutions that are easy to maintain, quick to upgrade, and follow proven concepts and designsAbout This BookDesign software that is maintainable outside the ecosystem of their creatorsEnsure quality by following patterns that have been proved to workOver two dozen practical Architectural and Design patternsWho This Book Is ForLearning 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.What You Will LearnApply object-oriented practices to C/AL programmingStructure your application to avoid merge conflictsRefactor legacy code and avoid anti-patternsDesign decision trees to decide when to use which patternsClone codes and their application in Dynamics NAVMake your application extensible by creating predefined hooks and facadesIn DetailMicrosoft 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.Style and approachThis book explains the concepts of patterns, code structuring, and object-oriented concepts in a way that is easy to understand for Dynamics NAV specialists through practical examples.
  • Englisch
  • Birmingham
978-1-78355-256-6 (9781783552566)
1783552565 (1783552565)
weitere Ausgaben werden ermittelt
  • Cover
  • Copyright
  • Credits
  • Foreword
  • About the Author
  • Acknowledgement
  • About the Reviewers
  • www.PacktPub.com
  • Preface
  • Chapter 1: Introducing Dynamics NAV Patterns and Software Architecture
  • What do we mean by 'patterns'?
  • Software Design Patterns
  • The Procedural software design patterns
  • Microsoft Dynamics NAV Design Patterns
  • The object-oriented patterns
  • Non-object-oriented patterns
  • The functional oriented patterns
  • Patterns elements and hierarchy
  • Architectural patterns
  • Design patterns
  • Structuring code
  • The coding standards
  • Anti-patterns
  • Code cloning
  • Legacy code
  • Upgradability
  • The upgrade frequency
  • Design patterns and upgrades
  • Delta files
  • Repeatability
  • Design patterns and repeatability
  • Lifecycle of a design pattern
  • Technology changes
  • Old habits die hard
  • New design patterns
  • Software architecture in Microsoft Dynamics NAV
  • Metadata
  • Building blocks
  • Table
  • Page
  • Report
  • Codeunit
  • Query
  • XMLPort
  • MenuSuite
  • Metadata
  • Flowfields
  • Flowfilters
  • Base application
  • Functional processes
  • Summary
  • Chapter 2: Architectural Patterns
  • The Singleton Pattern
  • Technical description
  • Company-Initialize
  • Implementations
  • Examples
  • Enhancements
  • The Supplemental and Subsidiary Pattern
  • Technical description
  • Implementations
  • Examples
  • The Compound Pattern
  • Technical description
  • Implementation
  • Examples
  • The Rules Pattern
  • Technical description
  • Implementations
  • Examples
  • The Master Data Pattern
  • Technical description
  • Implementations
  • Examples
  • The Journal Template-Batch-Line Pattern
  • Technical description
  • The Journal Template table
  • The Journal Batch table
  • The Journal Line table
  • Codeunits
  • Implementations
  • Hierarchy
  • Journals as contracts
  • Examples
  • The Entry Pattern
  • Technical description
  • The Entry Table types
  • Historical Entries
  • Temporary entries
  • Entries that can be deleted
  • Temporary tracking buckets
  • Implementations
  • Examples
  • Document Pattern
  • Technical description
  • The Header table
  • The Line table
  • Posting and archiving
  • Implementations
  • Examples
  • The Argument table
  • Technical description
  • Implementations
  • Summary
  • Chapter 3: Design Patterns
  • The Entity State Pattern
  • Technical description
  • Setting the State
  • Testing the State
  • Implementations
  • Examples
  • The Select Pattern
  • Technical description
  • Implementations
  • Examples
  • The Number Series Pattern
  • Technical description
  • The Table reference field
  • Setup reference
  • C/AL functions and variables
  • Implementations
  • Examples
  • Address Integration Pattern
  • Technical description
  • Fields
  • Copying the address
  • Printing addresses
  • Implementations
  • Examples
  • Multi-Level Setup
  • Technical description
  • Implementations
  • Examples
  • Document History
  • Technical description
  • The Naming conventions
  • Codeunit Structure
  • Test Near, Test Far
  • Do it
  • Clean up
  • Example
  • TRANSFERFIELDS
  • Implementations
  • Examples
  • Copy Document Pattern
  • Technical description
  • Validation logic
  • Implementations
  • Examples
  • Job Queue Entry Pattern
  • Technical description
  • Preprocessing
  • Getting records
  • The Main function
  • Post-processing
  • Error handling
  • Implementations
  • Examples
  • Dismissible dialogs and save preferences
  • Technical description
  • Dismissible dialog
  • Implementations
  • Examples
  • Setup Update Pattern
  • Technical description
  • Restrictions
  • Implementations
  • Example
  • Model-View ViewModel Pattern
  • Technical description
  • Implementations
  • Examples
  • Summary
  • Chapter 4: Building an Example Application Using Patterns
  • The design elements
  • The Pattern dependencies
  • Step one - foundation
  • Example setup
  • Which Patterns to use
  • The implementation
  • The Multi-Level Setup Pattern
  • Step two - Master Data
  • Example Person
  • The Example Product
  • Number Series
  • Adding Setup fields
  • Adding variables
  • Adding the No. Series field
  • Code snippets
  • Entity State
  • Implementing the Address Integration Pattern
  • Step three - Journals & Entries
  • Creating your own Journal and Entry
  • Validation in Journals
  • Step four - Documents
  • Implementing a Document
  • Document history
  • Selecting a Pattern
  • Other Patterns
  • Posting
  • The ThrowErrorIfNoSelection funtion
  • The TestNear function
  • The TestFar function
  • The PostExampleOne/PostExampleTwo function
  • The PostExJnlLine function
  • The DeleteExampeDocument function
  • The layered model
  • Summary
  • Chapter 5: Coding Best Practices
  • Coding guidelines
  • Code design
  • Variable capacity
  • The Cyclomatic Complexity
  • The function size
  • Using complex data types
  • Localizability
  • Date formulas
  • Code Readability
  • Variable naming
  • Self-explaining
  • Suffix versus prefix
  • Approved abbreviations
  • Class-Method-Property
  • The Table as a class
  • A Codeunit as a method
  • Function libraries and interfaces
  • Natural Language Programming
  • Pitfalls
  • Bonus - debugging
  • Encapsulation
  • Override Functions
  • Façade
  • Hooks
  • Disabling the original source code
  • Predefined hooks
  • Variant variables
  • Managing DLL
  • Summary
  • Chapter 6: Anti-patterns and Handling Legacy Code
  • Anti-patterns
  • Code cloning
  • Forking
  • Templating
  • Customizing
  • Exact match
  • Examples
  • Transaction mirroring
  • Code normalization and writing clean code
  • The Document type normalization
  • The small business application
  • The VAT and Sales Tax calculation
  • Avoiding code cloning
  • Boat anchors
  • Other anti-patterns and context
  • Programming language capabilities
  • Legacy code
  • Refactoring the C/AL Code
  • Refactoring tables
  • Renaming
  • Normalization
  • Code refactoring
  • Finding the process owner
  • Moving to Codeunit
  • Breaking down the code into functions
  • Encapsulating functions
  • Normalizing the code
  • The boy scout rule
  • Summary
  • Chapter 7: Build Solutions using Patterns
  • Building blocks
  • Applying Architectural Patterns
  • The application setup
  • Guests
  • Room
  • Season
  • Price
  • Reservation
  • Stay
  • Check-in
  • Check-out
  • Clean
  • Evaluation
  • Invoice
  • Creating the Table objects
  • Applying design Patterns
  • The Bed and Breakfast setup
  • Bed and Breakfast season
  • Bed and Breakfast room
  • Bed and Breakfast price
  • Bed and Breakfast clean entry
  • Bed and Breakfast stay
  • Bed and Breakfast journal and entry
  • The Bed and Breakfast evaluation header and evaluation line
  • Defining the methods
  • Writing the Code and Link methods
  • Creating the cleaning entries
  • Refactoring
  • The new class members
  • The new function library
  • Room members
  • The room price calculation
  • Testing the application
  • Test isolation
  • Analyzing the results
  • Upgrading the application
  • Creating a Delta file
  • The steps of creating a Delta file
  • Inside the Delta file
  • Building our application
  • Building the result
  • Managing the source code
  • Creating the workspace
  • Setting up Visual Studio
  • Uploading the files
  • Summary
  • Index

Dateiformat: EPUB
Kopierschutz: Adobe-DRM (Digital Rights Management)

Systemvoraussetzungen:

Computer (Windows; MacOS X; Linux): Installieren Sie bereits vor dem Download die kostenlose Software Adobe Digital Editions (siehe E-Book Hilfe).

Tablet/Smartphone (Android; iOS): Installieren Sie bereits vor dem Download die kostenlose App Adobe Digital Editions (siehe E-Book Hilfe).

E-Book-Reader: Bookeen, Kobo, Pocketbook, Sony, Tolino u.v.a.m. (nicht Kindle)

Das Dateiformat EPUB ist sehr gut für Romane und Sachbücher geeignet - also für "fließenden" Text ohne komplexes Layout. Bei E-Readern oder Smartphones passt sich der Zeilen- und Seitenumbruch automatisch den kleinen Displays an. Mit Adobe-DRM wird hier ein "harter" Kopierschutz verwendet. Wenn die notwendigen Voraussetzungen nicht vorliegen, können Sie das E-Book leider nicht öffnen. Daher müssen Sie bereits vor dem Download Ihre Lese-Hardware vorbereiten.

Weitere Informationen finden Sie in unserer E-Book Hilfe.


Download (sofort verfügbar)

28,05 €
inkl. 19% MwSt.
Download / Einzel-Lizenz
ePUB mit Adobe DRM
siehe Systemvoraussetzungen
E-Book bestellen

Unsere Web-Seiten verwenden Cookies. Mit der Nutzung des WebShops erklären Sie sich damit einverstanden. Mehr Informationen finden Sie in unserem Datenschutzhinweis. Ok