so the controller doesn’t care what happens under the hood. 2. Use a combination of Strategy and Factory patterns to handle different Git clients. 3. Create an interface for the Git classes. 4. Create an Adapter class that will return the proper response for each client.
that will probably need to be recoded after user feedback. ー Experimenting with new tools and features that don’t have clear long term value. ー New feature or bug fix should be delivered fast (with caution).
in regression testing. ー Duplicate code and copy/paste approach. ー Changing existing code for new features. ー Can’t understand what a function does. ー Slow performance, security issues, unreliable data results.