Basically when the app first loads, it detects which iOS version you run, then it loads the appropriate code. Some developers choose to no longer support previous iOS versions to reduce the necessary code, thus reducing the size and bugs, while others choose to leave in the older code.