Looking into getting better at testing your code? This is something you might find helpful and definitely want to check out 
TDD (Test-Driven Development) is a good way to end up with a testable code naturally, by default.
There are mainly 2 TDD schools/approaches well established today:
There are mainly 2 TDD schools/approaches well established today:
Chicago school - the design emerges from the inside (the core) towards the outside (the boundaries) of the system. That's why this approach is also known as Inside-Out
A good way to get started with this approach is the "Test Driven Development by Example" book
https://i.mgtbk.nl/boeken/9780321146533-920x960.jpg
https://i.mgtbk.nl/boeken/9780321146533-920x960.jpg
London school - the design emerges from the outside of the system towards its internals. That's why this approach is also known as Outside-In
A good way to get started with this approach is the "Growing Object-Oriented Software Guided by Tests" (aka the GOOS) book
https://images-na.ssl-images-amazon.com/images/I/51fUKOog3VL._AC_SY400_.jpg
https://images-na.ssl-images-amazon.com/images/I/51fUKOog3VL._AC_SY400_.jpg
I've recorded screencasts series where I demonstrate the both approaches on a real feature (I work on a search functionality), so that we can look and compare many aspects on these 2 TDD styles
Here is the playlist where I demonstrate the London school:https://youtube.com/playlist?list=PLqew6vQ7CzHJ6YC8HUx3k1VINanVr56_d
This series is completed and ready.
Here is the playlist where I demonstrate the Chicago school:https://youtube.com/playlist?list=PLqew6vQ7CzHIUNy7VjCG8-N0Z2xjT7qrr
This series is not complete, but almost done.
I hope there is a lot of useful content regardless if you (are about to) practice TDD or not. Enjoy!
Read on Twitter