Patterns and creative plagiarism

When we want to create new functionality, the first task is to obviously create functional specifications. Once those are in hand, we should look for guidelines to follow. Some of the sources that are readily available are listed here:

It's always good to start with an existing pattern or object that has capabilities similar to our requirements, and study the existing logic and the code. In many lines of work, the term plagiarism is a nasty term. However, when it comes to modifying an existing system, plagiarism is a very effective research and design tool. This approach allows us to build on the hard work of the many skilled and knowledgeable people who have contributed to the NAV product. In addition, this is working software. This eliminates at least some of the errors we would make if starting from scratch.

The book, Learning Dynamics NAV Patterns, explains in depth how to implement Design Patterns in Dynamics NAV 2017 (https://www.packtpub.com/big-data-and-business-intelligence/learning-dynamics-nav-patterns).

When designing modifications for NAV, studying how the existing objects work and interact is often the fastest way to create new working models. We should allocate some time, both for studying the material in the NAV Design Patterns Wiki and for exploring the NAV Cronus demo system.

Search through the Cronus demonstration system (or an available production system) in order to find one or more pages that have the feature we want to emulate (or a similar feature). If there are both complex and simple instances of pages that contain this feature, we should concentrate our research on the simple instance first. Make a test copy of the page. Read the code. Use the Page Preview feature. Run the page. Make a minor modification. Preview again; then run it again. Continue this until our ability to predict the results of changes eliminates surprises or confusion.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset