Skratka, veci ako break, continue, goto by sa mali pouzivat v stave najhorsej nudze. Procedura by mala mat podla moznosti len jeden return. To ze tu mate vystudovane hnojariny a potrebujete si honit ego a slovickarit, na tomto fakte nic nezmeni.
Ty vaše rady jsou dobré akorát v případě, kdy chcete psát špatný a nečitelný kód. Protože papouškujete rady, o nichž jste možná někde něco zaslechl, ale úplně jste je nepochopil.
V případě toho returnu ta rada ve skutečnosti zní, že procedura by měla mít jednu hlavní linku, ve které se řeší její výkonný kód, a tato hlavní linka by měla být přímo v těle té procedury. Tím, že je jedna, bude mít tedy i jeden return. Je to opatření právě proti tomu, aby v proceduře bylo několik vnořených velkých ifů, z nichž každý bude dělat něco jiného a bude mít svůj vlastní konec – taková procedura dělá mnoho věcí a je lepší jí rozdělit.
K tomu, aby bylo možné kód takhle napsat, se často používá technika, kdy na začátku procedury vyhodnotíte vstupní parametry, a teprve když je vše v pořádku, následuje vlastní výkonný kód. Když parametry v pořádku nejsou, opustíte proceduru hned – buď pomocí returnu, nebo v jiných jazycích také pomocí výjimek. Ostatně pravidlo „jediný výstupní bod procedury“ by jakýkoli smysl výjimek úplně pohřbilo.
Takže to vaše zkomolené pravidlo o jediném returnu je ve skutečnosti pravým opakem toho skutečného pravidla, které se programátorům doporučuje.
Upozornění na to, že házíte
break,
continue a
goto do jednoho pytle a pletete si
return a
break, není slovíčkaření, ale upozornění na to, že tomu moc nerozumíte, takže ať se začátečníci od vašich rad raději drží dál. (Mírně pokročilí to upozornění nepotřebují, protože ti už to poznají sami.)