Arv - Opprette Sub /Super Classes -? En Guideline ...

Når kan vi opprette sub /super klasser i et objektorientert design Objektorientert Design /Visuell modellering
DENNE ARTIKKELEN KAN HJELPE DU I begynnelsen og mellomliggende stadier av analyse og design.
Som alle Object Pascal utvikleren vet, er arv en av de grunnleggende begreper i objektorientert design. Jeg har ikke tenkt å gi deg noen forklaring på hva Arv er fordi alle vet definisjonen allerede. I stedet skal jeg gi deg noen av tipsene i utformingen klasser i de tidlige stadiene av objektorientert Design.In ethvert prosjekt utvikling, vil analyse- og designfaser gis betydning i den innledende fasen. I Objektorientert Design /Visuell modellering, når laget starter innsamling av informasjon om prosjektet, vil laget identifisere de involverte i hver av de activities.At en scene gjenstander, vil laget ha noen eksempler på klasser for disse objektene identifisert. Som designfasen modnes, vil det bli flere og flere klasser kommer. Noen ganger kan det være nødvendig å arve en ny klasse fra en eksisterende eller du kan trenge å gruppere to klasser i ett. På dette tidspunktet, kan du bruke følgende begreper /teknikker for å lage en sub /super klasse fra eksisterende klasser: Spesialisering:
Opprette Sub Classes Hva er en Sub klasse og Super Class: < .no> Det er en klasse arvet /avledet fra en annen klasse. Den nye klassen (sub-klasse) vil ha alle de egenskaper /metoder og hendelser av den overordnede klassen (hvorfra det arvet) og kan ha flere egenskaper som er spesifikke for dette sub-klassen. Den overordnede klassen kalles Super Class.Let meg forklare dette konseptet med en example.Let oss anta at vi har en klasse som heter TCitizen.The strukturen TCitizen er noe sånt som dette: TCitizen = Klasse SocialSecurityNo: string; Navn: string; Alder: integer; Gate: string; By: string; State: string; Zip: integer; .................. .................. Etc., slutten; Ovennevnte attributtene er noen av de felles attributter du kan ha for en Citizen. Dette borger kan være hvem som helst fra et lite barn til en gammel mann i et land. La oss anta at vi har i vår analyse, noen Veterans informasjon også. Veteraner er mennesker som var å være i hæren og /eller noen fremstående offentlige tjenester og pensjonert nå. Disse Veterans er også en del av vanlige borgere, men de ville ha noen spesielle privilegier. I dette tilfellet kan vi bruke den eksisterende TCitizen klassen ved å legge til spesielle privilegier attributter for en Veteran men det ville ikke være et bedre design. I dette tilfellet kan vi kalle dette Veteran som en spesialisert Citizen. Så vi kan lage en ny SUB CLASS avledet fra TCitizen, kan kalles TVeteranCitizen.The TVeteranCitizen klasse ser ut som noe som dette: TVeteranCitizen = klasse (TCitizen) NoOfYearsOfService: integer; Belønninger: string; Rangerer: string; DateRetired: TDateTime; ......................................... ......... ............................. etc., slutten; generalisering:
Opprette Super ClassesLet meg forklare dette også gjennom noen eksempler classes.Let oss anta at vi utformer et biblioteksystem og vi identifisert to klasser TStudent, som inneholder studentinformasjon og TProfessor, inneholder professor informasjon, blant andre klasser. Vi tar disse to klasser for vår discussion.The Strukturen i disse to klassene vil være som følger: TStudent = Klasse StudentID: string; Navn: string; Alder: string; Karakter: string; ........................ ..................... Etc., slutten; TProfessor = Klasse ProfID: string; Navn: string; Alder: string; .................... ................ Etc., slutten; Systemet vil tillate både studenter og professorer å logge inn med sine student og professor IDer og gjøre bibliotekrelaterte aktiviteter. Systemet vil bekrefte student og professor IDer på tidspunktet for login.Here vi kan generalisere en informasjon knyttet til begge klassene, så lenge de er begge enige i sin struktur og type. Jeg snakker om de to attributter StudentID i TStudent og ProfID i TProfessor. I dette tilfellet, er de begge er av samme type: String. Det andre er at de skal være både av samme struktur /størrelse streng. Hvis StudentID er av syv charactors lengde og ProfID er fire charactors lengde, da vi ikke kan generalisere dette info.As lenge de begge er enige om disse to tingene, kan vi generalize.They både tjene som en måte å logge på systemet etter kontroll . Så vi kan generalisere denne informasjonen og lage en super klasse med et navn TUser og arve både TStudent og TProfessor fra TUser.Although dette synes å være en enkel sak, jeg bare lyst til å dele dette med vår Delphi Community.Enjoy !!! Thanks .Magesh.



Next Page: