Хотя вы можете избежать использования bool вместо BOOL для своих собственных нужд, у вас могут возникнуть проблемы с передачей 'bool' чему-то другому (например, метод публичного API). Вы должны просто придерживаться BOOL при написании кода Objective-C, в основном для будущего.
Но я не думаю, что что-то взорвется, если вы это сделаете, просто крайне не рекомендуется и не следует ни одному из соглашений Objective-C.
В качестве дополнительного примечания, формат BOOL YES или NO является своего рода предложением, у меня была плохая привычка устанавливать BOOL в TRUE или FALSE (обратите внимание на заглавные буквы), и это не проблема. Вы также можете использовать 1 или 0.
Это все действительные:
BOOL myBool;
myBool = YES; // true
myBool = TRUE; // true
myBool = 1; // true
myBool = NO; // false
myBool = FALSE; // false
myBool = 0; // false