23.4. Summary
In this chapter, I focused on continuing to strengthen the architecture of the application. Existing code was updated to use new objects based on some of the PHP Design Patterns I covered in the reference chapters.
The import contacts functionality was the first area to modify. I aimed to uncouple the Outlook requirements from the actual contact import logic. An object based on the Factory Design Pattern was created to generate the Adapter object instead of forcing an instance of the one designed around Outlook. Next, a Delegate object was introduced to construct an array of information from the contact file import. Similar to the Factory object, this moved code from a tightly coupled object into a more specific Delegate–based object. These few changes allow for enormous flexibility.
The other area I focused on was the view system. In one specific view, I allowed object creation to happen. A Façade object was created to accomplish some of the existing logic in a more encapsulated way. Then, I was able to migrate the code from the view into that Façade. This generated a simple way to gather the Contact information, while solidifying the barriers between the views and the logic.
The last section of this chapter directed your attention to other areas of the application that could benefit from some Design Pattern-based objects. Various opportunities were presented with possible solutions. I encourage you to continue updating this application with those suggestions to ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access