Skip to content

Logic komponens: módosító metódus `internal` access modifier-re változtatása

Pillanatnyilag minden access modifer public, vagy protected, vagy private. Ezzel az a baj, hogy a Presentation komponens is el tud érni olyan metódusokat, amiket csak a Logic komponensnek lenne szabad meghívni. (Emlékeztető: a Presentation komponens parancsokon (BaseCommand) keresztül irányítja a logikát.)

A feladat az, hogy az ilyen módosító metódusok inkább internal-ok vagy protected internal-ok legyenek. (Az adatlekérdező metódusoknak továbbra is public-nak kell maradniuk!)

Először egy kisebb tesztelést végre kéne hajtani, hogy tényleg minden működőképes lenne-e:

  • Úgy működik az internal Unity-ben is, ahogy mi elvárnánk? Tényleg meggátolja, hogy a Presentation komponens meghívja a metódust?
  • Van lehetőség, hogy teszteken belül meg tudjunk hívni más assembly-ben lévő internal metódust? Úgy néz ki normál esetben igen, de Unity-ben is?

Access modifier-ek listája, összefoglalás: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/access-modifiers#summary-table