Fragen zum Programmaufbau (Klassen, Vererbung, best practise, Beispielprogramme etc)

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Fragen zum Programmaufbau (Klassen, Vererbung, best practise, Beispielprogramme etc)

    Hallo,

    ich habe schon hier im Showroom, oder auch auf anderen Seiten nach "Musterprogrammen" gesucht, aber bin leider nicht wirklich fündig geworden.

    Was ich suche wäre ein Programm, dass mehrere Klassen, Strukturen, Enums, Vererbung etc enthält und was auch so aufgebaut ist, wie man es quasi in der Uni, bei Programmierkursen, im Betrieb usw. programmieren lernen würde. Das brauch auch nichts tolles können. Mir geht es dabei vielmehr um den logischen Aufbau eines Programms und die Verwendung von Klassen etc, so dass ich das mal richtig nachvollziehen kann.

    Dann hätte ich noch eine Frage. Wenn ich mir z.B. eine Klasse "Aktie" erstelle und möchte da jetzt Werte aus der yahoo api einlesen, würde ich dann den Aufruf der Webseite in der Klasse direkt machen über eine Sub/Funktion, oder sollte ich die Webseite im Main aufrufen und den Inhalt als String in die Klasse zur Auswertung übergeben?

    Nachtrag: Hat vielleicht noch jemand ein schönes Lehr- oder Übungsbeispiel zum Thema Klassen, Vererbung etc. Iwas zum nachproggen, vergleichen oder so. Das wäre mir auch sehr hilfreich.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „rdmguy“ ()

    zum Programm-Aufbau kann man ganze Bücher-Schränke füllen, und wenn du alles gelesen hast, kannstes immer noch nicht, denn ohne Erfahrung geht das nicht.

    Und es hängt immer ganz am Anwendungs-Fall. Eine Klasse "Aktie" etwa würde ich nie selbst erstellen, sowas ist eine DatenVerarbeitung, und da ist imo dieser Kram in Anschlag zu bringen:
    Datenverarbeitungs-Vorraussetzungen

    Ansonsten empfehle ich einfach mal in aller Bescheidenheit ;) alle meine Tutorials. Weil ich geb mir eiglich immer Mühe mit einem ordentlichen Aufbau der Sample-Solutions.
    Meist ist der Aufbau ähnlich, denn die Samples sollen ja einfach sein. Und diese "Eintönigkeit" ist vlt. auch grad interessant, um die Regelmäßigkeiten dabei zu erkennen.
    Generell bin ich sehr sparsam mit dem Anlegen eigener Klassen - liegt einfach daran, dass das Framework bereits so gewaltig viele, und überaus geniale Klassen bereit hält.
    Und noch seltener ist Vererbung wirklich nötig, und das wichtigste Prinzip ever ist halt: "Was nicht nötig ist, das soll man lassen."

    Aber zu deinem Glück ist es ja manchmal nötig, daher finden sich in meine Tuts durchaus einige selbstgemachte Klassen, und die sind auch oft grad Gegenstand des Tuts.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ErfinderDesRades“ ()

    MS VB2008 Entwicklerbuch lese ich im Moment. Die Sache ist halt, ich bringe mir das alles selbst bei. An irgendeinem Punkt müsste ich nur auch mal sehen wie man es richtig macht, am besten an einem zusammenhängenden Musterprogramm. Ist halt nur schwer da was geeignetes zu finden. Aber vielleicht hat ja noch jemand was von der Uni oder so.

    rdmguy schrieb:

    Aber vielleicht hat ja noch jemand was von der Uni oder so.
    Wenn du glaubst, auf der Uni würde gscheite Programmstruktur gelehrt, da muss ich dich enttäuschen.

    Aus vielen Threads weiß ich, dasses tw. erschütternd ist, was an Unis zur praktischen Programmierung gelehrt wird.

    Was ist mit meine Tuts - gefallen sie dir nicht?
    Da muss ich EDR zustimmen. Was an den Unis geleehrt wird mus nicht zwingend gut sein :D

    Ich kann dir einfach nur raten, programmier einfach ein paar Programme und du wirst von Programm zu Programm merken was du besser machen kannst. Alles andere geht dann schon in richtung Projektmanagement und das kannst du dir alleine nicht beibringen :P
    Ich habe viele Tuts von EDR gelesen und auch viel auf mdsn und natürlich auch schon einige Programme selbst gemacht. Und klar ist auch, wenn ich eins fertig programmiert habe, könnte ich es direkt wieder löschen und alles besser machen, da man bei jedem neuen Problem viel dazulernt.

    Mit den Klassen und so habe ich auch einigermaßen verstanden. Ich hätte halt nur mal gerne so ein Muster, wie man es nach Richtlinien umsetzt. Und das Ganze halt als Gesamtpaket. Iwas zur Orientierung halt, dass ich mal was habe, woran ich mich halten kann. Hoffe ihr wisst wie ich das meine. Also klar, man machts halt wie mans braucht und so und ich könnte auch weiterwurschteln wie bisher... Will mich aber verbessern, weil es durch einen gute Struktur und Umsetzung natürlich auch viel einfacher wird, sobald das Grundgerüst einmal steht. :)
    @rdmguy ich verstehe was du meinst. Ich glaube Praxisbücher zu finden ist wirklich schwer. Ich kenne nix wo von A-Z erklärt wird.
    Du kannst dir die Softwaretechniken anschauen und daraus ableiten. Aber jemand der alles in einem Tutorial erklärt kenne ich nicht, habe ich lange Zeit auch gesucht :D
    Wie gesagt: "Das Grundgerüst" gibt es nicht.
    Es gibt eine Menge Strategien, und da muss man sich der best-geeigneten bedienen.
    Eine Datenverarbeitung ist anders aufgebaut als ein Datei-Browser.
    Eine Single-User-Datenverarbeitung anders als bei Multi-User.
    Ein kleines Projekt ist anders als ein großes.
    Ein Einzelkämpfer muss anders coden als ein Team-Member.
    Ein Chat ist anders als ein Game.
    Eine Bibliothek ist nochmal was anneres.

    Und die Unterschiede sind nicht graduell oder sowas, sondern meist fundamental architektonisch, also wer die dollsten Bildverarbeitungen programmieren kann wird bei einem Game vermutlich trotzdem erstmal wie Ochs vorm Berge stehen.

    Das Paradoxe ist nun: man muss möglichst viele Strategien möglichst gut kennen, und dann kommt das schwierigste - was wohl am wenigsten geleert wird: Man muss erkennen können, welche Strategie unangemessen ist, und beiseite gelassen werden muss, um einenn Code-Wasserkopf zu vermeiden.

    Ich persönlich komme am Ende auf folgende Meta-Strategie raus - ich nenne sie mal das "Amöben-Prinzip":
    Einfach anfangen, und wenn die Datei größer als 150 Zeilen wird, Überlegungen anstellen, was und wie am besten auslagern.
    Also wie bei die Amöben, die sich teilen, wenn sie über eine bestimmte Größe hinauswachsen.

    Dazu natürlich wissen, was es schon gibt, also niemals das Rad neu erfinden ;) , und natürlich das schon erwähnte Prinzip: "Was nicht nötig ist, das soll man lassen."

    Letzteres ist auch unter dem Kürzel "KISS" wellknown, also was ich dir auch sehr empfehle ist diese Site: clean-code-developer.de/ - vlt. ist das sogar genau das, wonach du eigentlich suchst.

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „ErfinderDesRades“ ()