2017-01-05 1 views
-2

Was ist Ihre beste Praxis mit IBActions? Wo legst du sie hin? Ich kann mich nicht entscheiden.Swift: wo IBAction-Funktionen für sauberen Klassencode platziert werden

1) Wenn ich sie mit regelmäßigen Funktionen platziere, kann es chaotisch sein aber alles wenn privat.

2) Wenn ich sie als extension ClassName{} platziere Es ist sauberer, aber es kann nicht mit private Variablen arbeiten Ich muss sie unprivate machen.

Ich möchte sauber coden. Thx

Antwort

1

Wenn ich nicht irre, ist Ihr Fall, wenn Sie sie zu einem 10 hinzufügen, können Sie private vars/Methoden nicht zugreifen.

Sie haben (was ich vorschlagen) Schlepptau mögliche Lösungen:

1- Wenn Sie sie in einem separaten Verlängerung (aber in der gleichen .swift-Datei) zum Zweck der Organisation halten möchten, dass Ihre Code, müssen Sie private zu fileprivate ändern.

Weitere Informationen zu Zugriffsmodifizierern in Swift 3 finden Sie unter this answer.

2- Halten Sie sie im ViewController und verwenden Sie // MARK: - IBActions, markiert sie Abschnitte im Symbolnavigator.

Zum Beispiel:

enter image description here

Wie Sie sehen können, gibt es // MARK: - Core Data stack, // MARK: - Core Data Saving support und //MARK: - Machines Core Data den Code zu trennen und es besser lesbar und organisiert machen.

Ich hoffe, es hat geholfen.

+0

Vielen Dank für die Antwort .... aber was ist die bessere Lösung? –

+0

Nun, für mich bevorzuge ich, sie im Rahmen der ViewController-Klasse zu halten. Aber das bedeutet nicht, dass es "besser" ist, vor allem wenn es um die Leistung der App geht, das sollte keine Effekte hinzufügen ... –

Verwandte Themen