Δεν είναι θέμα γούστου. Καταρχήν, αν ή μέθοδος σου είναι τόσο μεγάλη που χρειάζεσαι το Exit Sub για να ξέρεις ότι είσαι σε Sub, έχεις σημαντικό πρόβλημα. Επιπλέον, ο διαχωρισμός sub/function και η ανάγκη για το Exit Sub είναι απομεινάρι της VB6 καθώς τέτοιος διαχωρισμός δεν υπάρχει στο .NET. Και τα subs είναι απλές μέθοδοι με το void return type. Επίσης, είναι κακό να υπάρχουν διαφορετικοί τρόποι για να κάνουν ακριβώς το ίδιο πράγμα, καθώς μπορούν να μπερδέψουν όποιον πρέπει να χρησιμοποιήσει τον κώδικα στο μέλλον, ακόμα κι εσένα μετά από μερικούς μήνες.
Τέλος, αν χρειαστεί να αλλάξεις το return type της μεθόδου και να επιστρέφεις κάτι ενώ πριν δεν επέστρεφες τίποτε, θα πρέπει να κάνεις πολύ περισσότερες αλλαγές αν έχεις χρησιμοποιήσει Exit Sub.
Γενικά, τα Exit Sub/Function/Property statements πιστεύω ότι είναι "βαλίτσες" που καλό θα ήταν να είχαν μείνει στην VB6 αν και καταλαβαίνω ότι η χρήση τους κάνει ευκολότερο το migration παλιού κώδικα από την VB6 στο .NET.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos