Guten Tag,
wir haben OOP in der Schule (in Microsoft Studios 2013). Meine Programmiererfahrung ist begrenzt, hat aber für den ersten Block gereicht (in einer Klasse programmieren).
Nun haben wir objektorientiertes programmieren, wo wir viel mit Arrays, Lists und verschiedenen Klassen programmieren sollen, doch leider bekomme ich das kaum hin - bekomme ich eine Aufgabe weiß ich nicht wie ich das Klassendiagramm erstellen soll (also was ich alles brauche, ich komme meist auf 60-70%, aber auf den Rest nicht)
Kennt ihr eine Seite/Videokanal/o.ä. wo eine Aufgabe genommen wird und von Anfang bis Ende alles gezeigt wird? Also erstellen des Klassendiagramms, erstellen der Hauptklasse, erstellen aller Nebenklassen, die Gui....ich will ein Gefühl dafür entwickeln was man machen sollte, wie eine Art Checkliste - ich vergesse oft sowas wie auf andere Klassen verlinken in der Hauptklasse (also Konto konto = new Konto als Beispiel, wenn die andere Klasse Konto ist).
Mit freundlichen Grüßen,
Daniel Zimmer
> dies schon versucht?
Hallo,
ja, ich habe mir die Liste angeschaut - mir ging es eher vor allem um Video-Material, das alles von 0-100 zeigt, damit ich es visuell mal sehen kann anstatt 100 Seiten mit Theorie durchzulesen.
Deshalb wollte ich hier die Frage stellen, ob jemand einen "Geheimtipp" mit den speziellen Anforderungen meinerseits kennt 😃
MSDN Virtual Academie: A Guide to Object-Oriented Practices
Hab ich mir jetzt aber nicht angeschaut und kann nicht sagen ob es gut ist.
Eine Checkliste wirst du dir wohl selber erstellen müssen.
Sollte man mal gelesen haben:
Schau dir vielleicht einfach erst mal das Openbook zur Objektorientierung an: http://openbook.rheinwerk-verlag.de/oop/. Die Vorgehensweise, die du beschreibst, finde ich ziemlich speziell - soll heissen, die Anforderungen, die da an euch bestehen, sind sehr stark geprägt von demjenigen, der euch das ganze beibringt. Insofern - ich kann mich täuschen - zweifle ich sehr stark daran, dass es etwas im Netz gibt, dass EXAKT dem entspricht, was von euch erwartet wird.
(Das geht zB damit los, dass ich die Begriffe "Hauptklasse" und "Nebenklasse" gerade zum ersten Mal gelesen habe, obwohl ich schon ein paar Jährchen Erfahrung auf dem Buckel habe.)
Dir wird nicht viel anderes übrig bleiben, als von dem Material aus dem Unterricht so viel wie möglich zu verinnerlichen und zu üben, üben, üben.
LaTino
PS: Video? Ernsthaft? Geschriebenes >>> Video, meiner Erfahrung nach. Schon allein, wenn man nochmal was nachschlagen muss.
"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)
Schau dir vielleicht einfach erst mal das Openbook zur Objektorientierung an:
> .
Lustigerer weise bin ich gerade am Lesen des von dir genannten Links 😄 ich finde ihn auch klasse, aber mir ging es schon oft beim Programmieren so: In der Theorie verstehe ich den Sinn, aber soll ich es selbst machen sitze ich davor und weiß nicht was ich machen soll.
Deshalb wollte ich ein Online-Video haben, wo ich mir das alles von 0-100 anschauen kann - und ich meinte damit nicht, dass ich eine ganz genaue Anweisung will, wie ich es zukünftig IMMER machen werde, nur solange ich mir noch nicht sicher bin was ich überhaupt machen muss wäre es sehr hilfreich, mich an jemanden zu orientieren der es kann und gucken, in welcher Reihenfolge er es macht 😃)
(Das geht zB damit los, dass ich die Begriffe "Hauptklasse" und "Nebenklasse" gerade zum ersten Mal gelesen habe, obwohl ich schon ein paar Jährchen Erfahrung auf dem Buckel habe.)
Damit ist nur gemeint, dass die Grundform die am Anfang erstellt wird bei uns zum Verständnis Hauptklasse heißt, alles was für die Hauptklasse erstellt wird nennen wir rein aus Verständnisgründen, damit jeder mitkommt, Nebenklassen. Man darf halt nicht vergessen, dass wir nur ein Haufen Studenten sind und keine ernsthaften Programme programmieren 😃
Simples Beispiel:
Ich habe absolut keine Ahnung und programmiere als erstes die Zusatz-Klasse für Operatoren, dann erstelle ich die Hauptklasse, dann erstelle ich ein Klassendiagramm, dann verlinke ich die Zusatzklasse in die Hauptklasse und schreibe am Schluss die Hauptklasse.
Nun sehe ich im Video:
Erst schreibt er das Klassendiagramm, dann erstellt er die Hauptklasse, dann schreibt er offene Methoden, zur Orientierung, sobald man die Zusatzklasse (Operatoren) benötigt erstellt er diese und implementiert sie direkt in die Hauptklasse. Dann hätte ich einen roten Faden, an dem ich mich **orientieren **kann, damit meine ich nicht ich mache es 1:1 so.
Bitte benutze die richtigen Tags und keine Full-Quotes [Hinweis] Wie poste ich richtig?
Ich bezweifle massiv, dass Du ein Video finden wirst, das alles von 0-100 erklärt.
Egal ob Bücher oder Videos, egal ob in einem Video oder in 50:
Du musst die Informationen verknüpfen und anwenden können.
Videos zu machen ist sehr (Zeit)aufwändig.
Sehr wahrscheinlich wirst Du nur die Basics wirklich über Videos lernen können.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hmm, entweder habe ich mich wirklich doof ausgedrückt oder ich weiß nicht was los ist.
Ich meine damit einfach nur Videos die helfen das Programmieren zu verstehen - NICHT mir erklären/beibringen was Klassen, Objekte, Methoden o.ä. sind. Leider habe ich den YT-Kanal vergessen, aber ich habe sehr gerne einem Kanal gefolgt, der sich zu Beginn eine Aufgabe gestellt hat und dies dann alles programmiert hat, mit Erklärung warum er was macht bzw. benutzt.
Obwohl ich die Programmiersprache nicht kannte habe ich so den Ablauf verstanden und eben was er macht, das war enorm hilfreich, so konnte ich mir in meinem Kopf immer in Erinnerung rufen was er gemacht hat um ein Problem zu lösen. Sowas suche ich nun für C# - bestenfalls mit Microsoft Studios 20xx als Umgebung.
Hallo OoDex,
es gibt auf Channel 9 viele Videos dazu. Hast du da mal geschaut?
Gruss
Coffeebean
Microsoft MVP // Me // Blog // GitHub // @Egghead // All my talks // Speakerdeck
Das meinte ich mit "ziemlich speziell". Deine Sätze ab "Simples Beispiel" zB sind - so nehme ich an - für einen Klassenkameraden von dir gut verständlich. Für uns hier (es sei denn, ich stelle mich gerade besonders dämlich an) ist kaum nachvollziehbar, von was du redest. Entsprechend wirst du kaum Guides finden, die in diesem Jargon gehalten sind und dazu auch noch der Vorgehensweise folgen, die ihr beigebracht bekommt. [1]
Ich habe gerade unseren Azubi gefragt, wie seine ersten Schritt bei der Implementierung eines neuen Projekts aussehen. Nachdem er sich überzeugt hatte, dass ich ihm keine Frangfrage stelle, kam: "äähm...Unittest-Projekt erstellen?" Und da hat er aus meiner Sicht völlig Recht. Dieser Schritt kommt bei dir dagegen gar nicht vor - so unterschiedlich sind die Herangehensweisen.
Soweit nur zur Veranschaulichung, wieso ich davon ausgehe, dass du nichts finden wirst, dass exakt euern Unterricht abbildet. Es gibt DIE Herangehensweise nicht, und wenn das bei euch noch so ist wie bei uns damals in der Schule, dann fährt man (bei vielen Lehrern) am besten, wenn man alles so macht, wie sie es selbst machen. Deine beste Chance sind also die Unterrichtsmaterialien.
LaTino
[1] weil dir das evtl nicht klar ist, mal eine Auflistung aller Begriffe in deinen Sätzen, die ich eher ungewöhnlich finde bzw bei denen ich nicht direkt weiß, was gemeint ist:
"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)
Soweit nur zur Veranschaulichung, wieso ich davon ausgehe, dass du nichts finden wirst, dass exakt euern Unterricht abbildet. Es gibt DIE Herangehensweise nicht, ...
Das ist mir bewusst und sowas suche ich auch nicht - ich suche nur Videos wo jemand eine Aufgabe programmiert und erklärt was er macht (Habe den Kanal wieder gefunden: https://www.youtube.com/watch?v=KkyIDI6rQJI sowas suche ich, nur mit Microsoft Visual Studios damit ich besser folgen und es selber machen kann)
[1] weil dir das evtl nicht klar ist, mal eine Auflistung aller Begriffe in deinen Sätzen, die ich eher ungewöhnlich finde bzw bei denen ich nicht direkt weiß, was gemeint ist:
- Zusatz-Klasse / Operatoren (keine Ahnung, was du meinst, ehrlich gesagt.)
- verlinken einer Klasse in eine andere
- Nebenklasse/Hauptklasse
- "offene" Methoden
In dem Unterricht würde ich ja gern Mäuschen spielen 😄.
Zusatz-Klassen/Nebenklassen: Wenn ich ein neues Objekt erstelle habe ich ja eine Klasse - bei mir heißt die meist Form1. Wenn wir zB einen Taschenrechner programmieren wollen benötigen wir als erstes die Oberfläche. Danach erstellen wir eine neue Klasse mit ENUM(PLUS, MINUS, MAL, GETEILT) und legen fest, was dieses PLUS, MINUS, MAL, GETEILT macht, sobald es aufgerufen wird. Solche zusätzlichen Klassen heißen bei uns Nebenklasse/Zusatzklasse.
Verlinken einer Klasse in eine andere: Ich glaube das was ich meine nennt man Konstruktor? Also wenn ich in meiner Klasse auf eine andere Klasse zugreifen will, sagen wir meine Klasse heißt Taschenrechner und ich möchte auf die Klasse Rechenmethoden zugreifen, dann muss ich doch ein Objekt der Klasse Rechenmethoden erstellen - bei uns: Rechenmethoden rechenmethoden = new Rechenmethoden (verlinkung, um auf die Methoden von der Klasse Rechenmethoden zuzugreifen)
Hauptklasse: Die Klasse die vorhanden ist wenn man zum ersten Mal ein Projekt öffnet
"offene" Methoden: Methoden die zum später programmieren hingeschrieben werden - weiß ich ich möchte addieren, schreibe ich:
private double addieren (){
}
und schreibe noch nichts in die Klammern, nur als Bezug für später, damit ich vorab schon schaue was ich programmieren will
Hallo OoDex,
mMn werft ihr da mit Begriffen um euch, die euch beim Lernen ausserhalb eurer Schule mehr Steine in den Weg legen als alles andere.
Wie gesagt: Auf Channel 9 wird oft das Visual Studio verwendet. Erster Treffer bei der Suche:
Programming in C#: (02) Complex Types, Object Interfaces and Inheritance Das ist eine komplette Serie an Videos. Hilft das nix?
Gewöhn dich bitte gleich an die Englische Sprache. Beim Video schauen genauso wie beim Programmieren 😃 [Artikel] C#: Richtlinien für die Namensvergabe
Gruss
Coffeebean
Microsoft MVP // Me // Blog // GitHub // @Egghead // All my talks // Speakerdeck
Was Coffeebean höflich mit "mehr Steine in den Weg legen" umschreibt, würde ich schlicht und ergreifend als irreführend bis völlig falsch bezeichnen. Ich würde mich zu der Aussage versteigen, dass außerhalb eures Klassenraums kein Mensch existiert, der in der Lage ist, ein Tutorial mit dieser Terminologie zu verfassen, so schräg ist das Ganze. Nun gut, vielleicht muss man schon dankbar sein, dass überhaupt in einer Schule programmiert wird.
Nun hilft dir mein Geschimpfe nur bedingt weiter, daher ein paar Tipps:
Oberste Priorität hat aber, dass du die OOP-Grundlagen durcharbeitest, damit du besser verstehst, was passiert, und damit du überhaupt erstmal ein Vokabular bekommst, mit dem du mit anderen Programmierern reden kannst. Tech Speak funktioniert nur, wenn alle dieselben Vokabeln nutzen.
("verlinken" bzw "linking" zB ist für einen Softwareentwickler das hier, während das, was du so nennst, eher "referenzieren" oder "koppeln" genannt wird. Und so weiter. Ohen gemeinsame Sprache kommt man nicht weit.)
LaTino
"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)
Hallo OoDex ,
wo ich jetzt ein bisschen mehr Zeit habe vielleicht ein wenig ausführlicher.
Erst mal wenn Videos deine Sache sind, ist das OK. Es gibt unterschiedlicher Lerntypen und dabei sind auch einfach Leute die es besser Lernen können wenn sie es in einem Video sehen, als wenn sie es Lesen.
Dann gibt es noch einen großen Unterschied, was man in der Schule lernt und was man später im Beruf wirklich brauch.
Und so grundlegend Klassendiagramme wie mit Person/Vorname/Nachname usw. angeht, hab ich solche glaube ich seit Ewigkeiten nicht gesehen. (Auf höherer Abstraktionsebenen ist dann aber halb so wild).
Der klassische Ansatz in der OOP ist, reale Objekte als Klassen abzubilden. Was erst mal gut ist, denn die Realen Objekte kennst du. Und meistens werden solche Beispiele auch im Unterricht benutzt.
Probiere doch einfach mal für ein Autohaus ein Klassendiagramme, für ein Auto zu erstellen und Poste es hier. Ich denke dazu wirst du Feedback bekommen, was man verbessern kann.
Grundlegend solltest, du dich aber bei an deinen Lehrer wenden, wenn du Verständnis Probleme im Unterricht hast. (Es ist umgekehrt auch ein Feedback für ihn) Und er weiß was aktuell von dir Verlangt wird.
Und es wird dir wahrscheinlich nicht als Einzigen so gehen. Da du in einen Forum nachgefragt hast, zeigt ja schon mal eigen Initiative. Und das ist wahrscheinlich mehr als 80 bis 90% deiner Klassenkameraden machen.
Sollte man mal gelesen haben: