Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bitte um Unterstützung- Verständnis von Objectorientierter Programmierung
#1
Hallo zusammen,

zur Zeit versuche ich Objektorientierte Programmierung zu verstehen. 
Als Beispiel habe ich mein Dezernat für Excel als KlassenModell aufgeschrieben. 
Kennt sich jemand damit aus der die einmal Korrigiert. Ich freue mich über jede Kritik und Anregung.

Gruß
Stefan


Angehängte Dateien
.docx   KlassenModellVersuch1.docx (Größe: 74,35 KB / Downloads: 16)
Antworten Top
#2
Hallo Stefan,

Du hast also nun 4 Listen von Eigenschaften und Kriterien.

Was hast Du vor?
Was ist Deine Frage?
Antworten Top
#3
Da man als Fragensteller hier keinen Kurs darüber erwarten sollte, vielleicht hier?

Im alten Forum von Office-Lösung findest Du hier unten beginnend das Thema "Was sind eigentlich Klassen?" - weitere Kapitel (alle von "isabelle") stehen dann davor (weil neueres im Forum weiter vorn steht).
Antworten Top
#4
Hallo, vielen Dank für die Antwort.

Mein Ziel ist es Objektorientierte Programmierung zu verstehen.

Ich möchte damit eine Abwesenheitsliste gestallten, meine Arbeit organisieren.
Mit Access scheitere ich weil ich das Prinzip nicht so ganz verstehe.
2 tabellen mit einander zu verknüpfen ist ja einfach. Aber mein Problem ist, dass ich als Anfänger meine Arbeitswelt abbilden muss. Das ist etwas schwer.

Daher Excel. Das kann ich etwas besser. Bislang habe ich die Abwesenheitstabelle ohne Objekte (z.B. Mitarbeiter) erstellt.

Ich habe keine dem ich meine Planungsversuche zeigen kann, der mir eine Rückmeldung gibt.

Das ist mein Anliegen.

Gruß
Stefan
Antworten Top
#5
Könnte es sein, dass Du gerade OOP und relationales Datenmodell durcheinander bekommst? Da Du schon Access erwähnst.

Wir hier sind in der Mehrzahl auch in OOP nicht sonderlich bewandert, vermute ich.

Ein Mitarbeiter hat ein Alter und einen Wohnort (1:1), aber möglicherweise mehrere Telefonnummern und ganz viele Kranktage und Urlaubseinreichungen (1:N)

Ein Artikel findet sich in vielen verschiedenen Rechnungen wieder, und in einer Rechnung sind meistens mehrere verschiedene Artikel (M:N).

Und so weiter ...
Antworten Top
#6
Hallo Lupo.

Vielen Dank für die schöne Erklärung im Forum zum Thema "Was Klassen sind".

Vielleicht liest die Erstellerin das hier:)

Bislang glaube ich zu verstehen, dass wenn man gut Programmieren möchte das Problem in Objekten mit Eigenschaften und Methoden abbildet.
Vorteil soll sein, dass der Code nicht direkt zugänglich ist.

Aktuell habe ich die Abwesenheitsliste mittels jeder Menge For-Each-Schleifen sowie With-Selection-Schleifen gelöst. 
Ich suche nach einer Möglichkeit das effektiver zu gestallten. Bislang ist, zum Beispiel, ein Hinzufügen oder Entfernen eines Mitarbeiters etwas umständlich. 

Ich vermute das Access das bessere Werkzeug ist, aber ich habe keinerlei Erfahrung in Datenbankdesign. 
Also bleibt nur Excel. 

Das reicht ja schon voll aus. Viele Daten kommen da pro Jahr nicht zusammen. 

Beim OOP Habich nur 1:1 Beziehungen. Auch gut. Das Modell muss halt dementsprechend aufgestellt werden. Daher ist eine gute Dokumentation und CodePlanung unerlässlich. Aber wenn man noch nie Objekte geschrieben und geplant hat...:) Muss man jemanden Fragen der es kann ob man auf dem richtigen Weg ist.

Das ist im Moment mein Hauptproblem.
Antworten Top
#7
Was ist Deine Ausbildung? Falls man so direkt fragen darf.
Hast Du schon mal "klassisch" programmiert?
In welchen Sprachen?
Wie kommst Du darauf, dass OOP Dein Ding ist?
Wenn ich mir Dein Word.Doc so anschaue, habe ich den Verdacht, dass Dir ein relationales Modell (Folge der Normalisierung) auch nicht so viel sagt.
Antworten Top
#8
Ich habe Kommunikationselektronik studiert:)(noch auf Diplom(FH))
Da haben wir in Assembler programmiert.

Ich schätze mich so ein, dass mein Problem ist, dass ich mich in meinen Gedanken verrennen kann. 
Über die Normalformen habe ich schon was gelesen. 
Ich konnte nur noch nie überprüfen ob ich das auch verstanden habe. Da meine Versuche sich leider auf ein komplexes Problem beziehen. 
Die Beispiele sind meist einfach zu verstehen.
Antworten Top
#9
Hallöchen,

Wenn man z.B. mit diversen Daten arbeitet, könnte man schauen, ob sich da Arrays oder benutzerdefinierte Typen oder Collections oder ein Mix daraus anbietet.

Ich könnte mir vorstellen, für die Mitarbeiter Typen zu verwenden, sind ja auch bestimmt ein paar darunter Smile

'benutzerdefinierter type MyMitarbeiter
Public Type MyMitarbeiter
    MyGeburt As Date
    MyName As String
    MyTelefonr(2) As Variant
End Type

Public Sub TypenFestlegen()
Dim FleissigeMitarbeiter(0) As MyMitarbeiter
FleissigeMitarbeiter(0).MyName = "Meier"
FleissigeMitarbeiter(0).MyGeburt = Date
FleissigeMitarbeiter(0).MyTelefonr(0) = "0375-AufArbeit"
FleissigeMitarbeiter(0).MyTelefonr(1) = "0365-ZuHause"
FleissigeMitarbeiter(0).MyTelefonr(2) = "0152-Handy"
Debug.Print FleissigeMitarbeiter(0).MyName
End Sub

Man kann natürlich auch einfach nur mit dem Blattobjekt arbeiten oder die Daten direkt in ein Array einlesen. Oder man definiert sich eine Klasse Mitarbeiter ... (wo eventuell nicht nur Klasse Mitarbeiter drin sind Smile

Viele Wege führen in den Osten, Rom liegt ja dort (MVP) Smile Sorry, ich will's nicht verschweigen, in NRW gibt es auch eins ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste