Programier-Newby

  • Ersteller Ersteller Skorpion81
  • Erstellt am Erstellt am
S

Skorpion81

Gast
Hallo Leute,

ich habe schon seit längerem damit gerungen, mit dem Programmieren anzufangen. Ich bin recht versiert mit Soft-und Hardware und nun habe ich am Wochenende endlich den Entschluß gefasst und mir ein Buch zur Programmierung gekauft. Ich betone erstmal, ich bin ABSOLUTER ANFÄNGER in Sachen Programmierung. Daher bitte um Nachsicht, wenn ein paar "dumme" Fragen kommen! :)

Ich habe den Thread "Allgemeines zum lernen von Programmieren" genau verfolgt und muß sagen, dass ich recht genau weiß was ich mal programmieren will. Meine Vorstellungen sind, dass ich mal Patches und Mods für PC-Spiele, bzw. Programme schreibe. Ich bin mir durchaus bewusst, dass ich dafür Jahre brauche, bis ich das nötige Wissen und die nötige Erfahrung habe. Aber genau das macht den Reiz aus, dass ich solange auf etwas hinarbeiten muß und trotzdem nur einen Bruchteil davon kann! :)

Nun zu dem Buch was ich mir am Wochenende gekauft habe. Ich bin ziemlich lange in der Bücherei gestanden und habe mir diverse Bücher angesehen. Letztendlich habe ich mich für die Programmiersprache Visual C# entschieden (<- wie spricht man eigentlich das "#" aus? Als "plus" oder wie?) Das Buch scheint mir recht logisch aufgebaut zu sein und ich habe am Wochenende zumindest mal gelernt, dass ich einen Quelltext brauche, den per Compiler (oder auch Jit-Compiler) in den IL-Code bekomme und danach per Interpreter diese auf diverse Plattformen übertragen kann. Ausserdem habe ich mit dem Programm Visual C# 2005 Express Edition meine ersten Fenster erstellt, bzw. umbenannt etc. Ich glaube die Profis kennen die ganzen Anfängerübungen!?

Meine Frage nun, habe ich mich für die "richtige" Programmiersprache entschieden um irgendwann meine Ziele zu erreichen, oder stoße ich früher oder später an Grenzen um Mods und Patches zu programmieren? Welche Programmiersprache wäre denn danach der logische weitere Schritt? Ich möchte betonen, dass ich auf jeden Fall Visual C# lernen möchte, da ich bisher die Zusammenhänge von Klassen, Methoden, Objekten und Variablen recht leicht kapiere. Aber ich möchte einfach wissen, wie und vorallem ob ich an mein anvisiertes Ziel komme? Oder habe ich den falschen Pfad angeschlagen?

Danke für eure Hilfe!

Gruß
Skorpion
 
wenn du mods und patche für spiele schreiben willst, dürfte im moment c oder c++ die sprache der wahl sein. c# (gesprochen "c sharp") wird da recht wenig verwendet.

zu dem, was du dir vorgenommen hast: du hast einen weiten weg vor dir. du solltest vllt mit was kleinerem anfangen.
 
Also nichts gegen C#, das finde ich auch gut, aber grade im Bereich Spiele wird wie schon gesagt meistens C/++ verwendet.
Und du solltest dir vielleicht wirklich ein kleineres Ziel stecken, um nicht irgendwann aufgrund mangelnder Erfolge die Lust zu verlieren, weil es wirklich ne Weile dauern wird, bis du so weit bist.

mfg
 
ghorst schrieb:
wenn du mods und patche für spiele schreiben willst, dürfte im moment c oder c++ die sprache der wahl sein. c# (gesprochen "c sharp") wird da recht wenig verwendet.

zu dem, was du dir vorgenommen hast: du hast einen weiten weg vor dir. du solltest vllt mit was kleinerem anfangen.

Also wenn ich das jetzt richtig herrauslese, wird C# wenig verwendet, aber nicht garnicht verwendet. Somit wäre es möglich auch mit C# einen Mod, oder Patch zu "zaubern"!?

Ist der Umstieg, wenn man mal sicherer in C# ist, auf C++ sehr schwer? Ich habe in dem Buch gelesen, dass C# einige Vorteile von C++ und Java vereint! :confused_alt:

Ja, ich weiß das mein "Projekt" ziemlich groß gewählt ist, aber ich will nichts erzwingen, sondern kann auch gerne 5 Jahre oder länger warten, bis der erste Patch auf meinem Mist wächst! :) Aber was wäre denn das "Kleinere" womit ich anfangen sollte?

Ich möchte es einfach hobbymäßig machen und es interessiert mich einfach persönlich sehr. Ich bin aus der Ära des C64 und Amiga und habe früher (vor über 10 Jahren) mal kleine Programme im Basic geschrieben. Es hat mir immer ganz gut gelegen.

Mir ist klar, dass meine ersten eigenen Ergebnisse erstmal lediglich "Taschenrechner"-Programme sind, glaube aber, dass ich in die richtige Richtung gehe!

Gruß
Skorpion

Backslash schrieb:
Also nichts gegen C#, das finde ich auch gut, aber grade im Bereich Spiele wird wie schon gesagt meistens C/++ verwendet.
Und du solltest dir vielleicht wirklich ein kleineres Ziel stecken, um nicht irgendwann aufgrund mangelnder Erfolge die Lust zu verlieren, weil es wirklich ne Weile dauern wird, bis du so weit bist.

mfg

Meint ihr nicht, dass C# einfacher für Anfänger zum erlernen ist? Also ich habe mir Bücher über C++ und C# angesehen und beim Vergleich ist mir C# verständlicher vorgekommen? Vielleicht für einen der schon Ahnung von Progrmmierung hat, fällt C++ leichter? Was kann ich denn mit C# alles anfangen? Ich meine sinnvolles und nicht diese Schäfchenzählsachen usw.!

Gruß
Skorpion
 
Zuletzt bearbeitet von einem Moderator:
Skorpion81 schrieb:
Also wenn ich das jetzt richtig herrauslese, wird C# wenig verwendet, aber nicht garnicht verwendet. Somit wäre es möglich auch mit C# einen Mod, oder Patch zu "zaubern"!?
wenig heißt, dass es mit sicherheit spiele gibt, die mit c# geschrieben sind. es aber meines wissens nach auf keines der "großen" strategie-, rpg-, sport- oder shooter-spiele zutrifft.

du kannst patche de facto nur in der sprache schreiben, in der das spiel auch geschrieben ist. (ich schreibe extra de facto, da es mit viel spaß an der arbeit normalerweise auch in anderen sprachen möglich wäre. aber eben aufwendig ohne ende. das ist aber niemanden zu empfehlen, der nicht mal lust darauf hat, die innerein seines compilers kennen zu lernen. kann dann aber sehr lustig sein. jeder der mal eine c++-abi mit dem assembler angesprochen hat, weiß wovon ich rede. ;-) )
Skorpion81 schrieb:
Ist der Umstieg, wenn man mal sicherer in C# ist, auf C++ sehr schwer?
das hängt davon ab. für mich ist es nicht mehr schwer zwischen sprachen zu wechseln. allerdings gilt das auch erst, seit ich etwa die 3 oder 4 sprache erlernt hatte. für einen anfänger dürfte der umstieg von c# nach c++ ziemlich ekelig sein, da man viel mehr von hand machen muss und die konzepte sich doch deutlich unterscheiden.
Skorpion81 schrieb:
Ja, ich weiß das mein "Projekt" ziemlich groß gewählt ist, aber ich will nichts erzwingen, sondern kann auch gerne 5 Jahre oder länger warten, bis der erste Patch auf meinem Mist wächst! :) Aber was wäre denn das "Kleinere" womit ich anfangen sollte?
programmier dich durch die standardbeispiele. also schreib einen taschenrechner, ein pong und ein kartenspiel. ;-) spaß bei seite: fang einfach an dich durch ein buch zu arbeiten und lass dich von den ersten misserfolgen nicht zurückschlagen.

EDIT nachtrag prinzipiell kannst du mit c# und c++ das gleiche machen. allerdings hast du mit c++ mehr kontrolle, aber auch mehr verantwortung. das kann dazu führen, dass c++-programme schneller laufen und weniger speicher verbrauchen als c#-programme. muss es aber nicht.
 
Zuletzt bearbeitet:
Ja C# ist vermutlich einfacher zu erlernen. Und C++ wird dir vermutlich auch leichter fallen, wenn du schon C# kannst. Aber wenn dein Ziel Mods/Patches sind, ist es vernünftiger gleich C++ zu lernen. (Ich kanns selber auch nicht, aber ich denke das der Einstieg auch nicht so viel schwerer ist)

mfg

/edit war wohl einer schneller ;)
 
Ich möchte zu diesem Thread anmerken dass du einer der wenigen Threadersteller bist, denen ich zutraue dass sie am Ende etwas erreichen. Beim Titel "Programmier-Newby" dachte ich erst dass du einer von diesen Kindern bist, die sich nicht selbst Informieren etc. Aber das sieht alles ganz gut aus beir dir soweit.

Also: Lern C#, programmier kleine Dinge (Ideen kommen mit der Zeit von alleine) und schnupper immer wieder in andere Sprachen rein bis dir eine davon soweit zusagt dass du sie wirklich lernen willst.

Vornehmlich wirst du wohl bei C(++) landen. Aber auch Perl (Linux, CGI, Text-Verarbeitung), PHP (Interaktives Internet) oder Java (ähnliche Ziele wie C#?) werden dir mit der Zeit über den Weg laufen.


Viel Spaß!
 
ghorst schrieb:
programmier dich durch die standardbeispiele. also schreib einen taschenrechner, ein pong und ein kartenspiel. ;-) spaß bei seite: fang einfach an dich durch ein buch zu arbeiten und lass dich von den ersten misserfolgen nicht zurückschlagen.

EDIT nachtrag prinzipiell kannst du mit c# und c++ das gleiche machen. allerdings hast du mit c++ mehr kontrolle, aber auch mehr verantwortung. das kann dazu führen, dass c++-programme schneller laufen und weniger speicher verbrauchen als c#-programme. muss es aber nicht.

Ok, wenn ich also erstmal C# lerne, kann ich nicht viel falsch machen! Vielleicht ist es für einen Anfänger auch ganz gut so, dass er nicht die absolute Kontrolle über alles hat. Das Buch, dass ich mir zugelegt habe, arbeite ich derzeit beherzt durch und verstehe auch (bis auf ein paar extrem krasse Sätze) alles ganz gut. Ich sag mal, um die Performance eines Taschenrechners muß ich mir erstmal keine Gedanken machen. Aber anyway...ich werde mir den Satz mit der Kontrolle und Verantwortung merken! ;)

Kampfgnom schrieb:
überflüssiges Zitat entfernt *klick*

Vielen Dank...ich nehme mein Hobby tatsächlich ernster als ich es vielleicht vor 5 Jahren gemacht hätte. Damals hätte ich am liebsten nach 2 Wochen schon eigene Spiele programmieren wollen, aber erst seit kurzen, seit ich mich ernsthaft damit beschäftige, sehe ich die, wieviel Arbeit, Wissen, Erfahrung und Zeit dahinter steckt. Ich möchte meine Kreativität umsetzen (ohne Maler, oder Bildhauer zu werden :p ), aber auch was interessantes lernen!

So wie es aussieht, tendiert hier alles auf C++, dass ich irgendwann mal Mods/Patches auf die Reihe krieg! Aber kommt Zeit, kommt Tat. :)

Zum Thema reinschnuppern in andere Sprachen. Ich bin zwar am Anfang meiner Künste, aber gibt es evtl. Fachzeitschriften, die übers Programmieren schreiben? Ich will mir ja nicht unbedingt einen fetten Wälzer kaufen müssen, um nur mal zu schauen!

Danke für eure Infos!
 
Zuletzt bearbeitet von einem Moderator: (Doppelpost zusammengefügt - bitte Editbutton benutzen!)
Skorpion81 schrieb:
Zum Thema reinschnuppern in andere Sprachen. Ich bin zwar am Anfang meiner Künste, aber gibt es evtl. Fachzeitschriften, die übers Programmieren schreiben? Ich will mir ja nicht unbedingt einen fetten Wälzer kaufen müssen, um nur mal zu schauen!
gibt es. mir ist allerdings noch keine gute fachzeitschrift außer der toolbox http://www.toolbox-mag.de/ untergekommen. ob die sich für dich lohnt, musst du wohl selber ausprobieren. kostet aber 10EUR die ausgabe, dafür wenig werbung.

zu den bücher: die universitätsbibliotheken sind normalerweise recht gut bestückt. da darf man auch rein, wenn man kein student ist. ;-)
 
ghorst schrieb:
gibt es. mir ist allerdings noch keine gute fachzeitschrift außer der toolbox http://www.toolbox-mag.de/ untergekommen. ob die sich für dich lohnt, musst du wohl selber ausprobieren. kostet aber 10EUR die ausgabe, dafür wenig werbung.


Uah...ist mir doch noch etwas zu heavy! ;) Aber ich merke mir die Zeitschrift vor, wenn ich mal so weit bin um mir die anderen Sprachen anzuschauen!

Danke @all für die gute Unterstützung, auch bei jemanden, der noch in den Anfängen steht!

Gruß
Skorpion
 
Hi Leute, nach ca. 1,5 Jahren greif ich nochmal meinen alten Thread auf und hab nun einen Fachfrage an alle CBler die aus dieser Branche kommen.

Ich bin nach meinen Anfängen im Programmieren bei C++ hängengeblieben. Da habe ich mit der Skript-Sprache einige wenige Erfahrungen gesammelt und komm im Großen und Ganzen zurecht.

Jetzt hat mir die Sache so Spaß gemacht, dass ich angefangen habe Wirtschaftsinformatik zu studieren.

Nun zu meinem Anliegen. Es geht um das Thema "prozedurale Algorithmen" und "Struktogramme". Was Algorithmen sind und wofür sie gut sind hab ich begriffen. Aber die Struktogramme machen mir Sorgen. Ich verstehe, wie ein Programm als Struktogramm aussehen muß, dass z.B. wie...

Fallausdruck soundso
wenn ja, dann Sequenz 1
wenn nein, dann Sequenz 2

...aufgebaut ist. Ein Rechteck, mit einem Dreieck drin und dann links und rechts die nächsten möglichen Schritte usw.

Aber um Himmelswillen, wie soll ich ein komplexes Programm als Struktogramm darstellen? Ich meine, ich mache mir ein Konzept, überlege mir die Schritte und bring das als Skript-Sprache auf den PC.

Sind Struktogramme wirklich so wichtig, um später mal Softwareprojekte verwirklichen zu können? Oder ist es etwa so wie z.B. bei Mathe, dass ich in der Schule Integralrechnung lerne und später in Anführungsstrichen nur das Wechselgeld an der Kasse nachrechnen können muß? Ich Frage deshalb so genau, weil ich nicht irgendwann mal dastehen möchte und bei meinem ersten Softwareprojekt gesagt bekommen will, "Struktogramme" sind das A und O und ich raff diese Dinger (im Moment) nicht! Liebe CBler aus der Branche, braucht man diese Struktogramme später im Berufsleben? Wenn ja, habt ihr vielleicht einen Link-Tipp wo diese möglichst leicht erklärt werden? Ich habe schon gegoogelt, aber auf keiner Site wurde so genau auf Struktogramme eingegangen.

Danke für eure Hilfe!

Gruß
Skorpion
 
Hi!

Ein Struktogramm vereinfacht die komplexität des Programmabflaufs, bzw. beschreibt auch nur einzelne UseCases. Ein Kästchen kann dann schonmal mehrere Methoden beinhalten die der Programmierer dann dafür benötigt. Es dient also eher dem Design...

Wenn z.B. in einem Kästchen steht "Angebot oder Antrag?" dann kann das im Quellcode vielleicht nur ein IF Statement sein. Aber wenn da steht "PDF erstellen", dann reicht das zwar zur Erklärung aber da stecken dann unter umständen ganze Klassen, und Bibliotheken hinter. Interessiert an der Stelle aber nicht den ersteller oder leser des Struktogramms sondern nur den Programmierer, der das dann umzusetzen hat.

Das mal so kurz gesagt von jemandem der die Dinger nur sieht und danach programmieren soll..
 
Zuletzt bearbeitet:
Aber wenn ich als Programmierer das Struktrogramm lese, kann ich auch nicht erkennen, ob ganze Klassen, und Bibliotheken dahinterstecken? Oder wird mir die Methode während des Erstellens dadurch gegeben?
 
Als Programmierer darfst Du ruhig auch was kreativ sein :-) Nicht alles dem Designer überlassen...

Wie was umgesetzt wird, ist ja latte. Hauptsache das Programm tut nachher das, was gefordert wurde.

Das Struktogramm ist ja auch nur eines der vielen Möglichkeiten vorgaben für ein Programm zu machen.
Und für gewöhnlich beschreibt man halt nicht gleich das ganze Programm in der maximalen Genauigkeit. Dann kann man es ja auch gleich als Quelltext schreiben :-)
 
Ah jetz klingelts....

Das Struktrogramm ist nur ne abstrackte Darstellung des Programms!? Also dafür, dass auch jemand mit weniger Ahnung von Programm- Aufbau und - Ablauf, verstehen kann wie es arbeitet! Was dann der Programmierer hinterher damit macht, ist wurscht....!?

Aber in meiner Situation, als angehender Wirtschaftsinformatiker, werde ich das wohl brauchen. Denn wenn ich Kunden etwas präsentieren muß, dann wirds wohl nur so gehen! :(

Oder ich bleib rein in der Entwicklung und Backoffice! ;)
 
Mit C# kann man aber durchaus Spiele programmieren. Das ist von Microsoft auch vorgesehen, denn XNA basiert auf C#.
 
Hallo Skorpion81,

zum einen ist C# inzwischen eine sehr häufig verwendete Programmiersprache in der allerdings überwiegend Anwendungen für den alltäglichen Gebrauch programmiert werden. Spiele, ebenso wie Mods und Patches, werden immer noch in erster Linie in C/C++ geschrieben und teilweise sogar mit Assembler-Code versehen. Zum anderen ist es aber so dass wenn Du erst mal eine Sprache gut beherrscht nahezu jede andere Sprache auch innerhalb kürzester Zeit lernen kannst. Eine Objektorientierte Programmiersprache (z.B. Java) ist einer anderen (z.B. C++) sehr ähnlich. C# rückt da etwas aus der Reihe, ist aber für den Einstieg sehr gut geeignet, nicht zuletzt deshalb weil die Hilfe in den Visual Studios sehr gut ist und fehler sofort erkannt und Lösungen vorgeschlagen werden.

Nun zum Thema Struktogramme - das sind einfach Hilfsmittel um einfache Programmabläufe darzustellen. Ein komplexes Softwareprodukt wird meist mit der sog. UML (Unified Modeling Language) beschrieben. Die UML selbst ist sehr komplex, allerdings recht einfach zu verstehen wenn man erst mal weiß wie was dargestellt wird. Ob die Wirtschaftsinformatiker im Studium die UML kennen lernen oder nicht weiß ich nicht, die normalen Informatiker auf jeden Fall schon (ich hab grad 1 Semester UML hinter mir). Für den "Kunden" später ist die UML auch eine einfache Möglichkeit Abläufe zu verdeutlichen und das Design anzupassen, bzw. zu prüfen ob das was man sich da ausgedacht hat wirklich dem Kundenwunsch entspricht. Für die Umsetzung der UML in wirklichen Code gibt es bestimmte Regeln die zu beachten sind, bzw. für bestimmte Teile sogar fertigen Code (z.B. Design Patterns). Wie Software wirklich designt wird ist aber überall etwas anders - lernen kann man das nur über eine einzige Methode: Learning by doing ;)
 
Skorpion81 schrieb:
Ah jetz klingelts....

Das Struktrogramm ist nur ne abstrackte Darstellung des Programms!? Also dafür, dass auch jemand mit weniger Ahnung von Programm- Aufbau und - Ablauf, verstehen kann wie es arbeitet! Was dann der Programmierer hinterher damit macht, ist wurscht....!?

Aber in meiner Situation, als angehender Wirtschaftsinformatiker, werde ich das wohl brauchen. Denn wenn ich Kunden etwas präsentieren muß, dann wirds wohl nur so gehen! :(

Oder ich bleib rein in der Entwicklung und Backoffice! ;)

Struktogramme sind wie oben schon definiert einfach nur eine vereinfachte Form der Darstellung deines Codes, welcher Übersichtlichkeit vermitteln soll und die Komplexität möglichst reduzieren soll. Der Algorithmus wird dadurch bildlich unterstützt beschrieben. Struktogramme sind in der Praxis zwar gefordert, aber bei weitem nicht so verbreitet wie beispielsweise die Modellierungssprache UML, die sich perfekt für das Modellieren Objektorienterter Programmiersprachen, also dessen Programme, eignet. Als Wirtschaftsinformatiker wirst du früher oder später auch damit konfrontiert werden. UML legt nicht den Schwerpunkt auf den Programmablauf an sich, sondern vielmehr auf die Beziehung einzelner Klassen, Variablen, Vererbungen, Schnittstellen, Polymorphismen, etc... Der Unterschied sollte dir klar sein.
 
Ich hab 6 Wochen lang in Holland mit C# programmiert...
Jedoch wurde C# in der Firma wo ich war hauptsächlich dazu verwendet, die Funktionen einer Internetseite zu programmieren...

Haben da an einem CMS (Content Management System) programmiert ;)

Aber man kann damit auch Programme schreiben...

Für die Spieleprogrammierung wird das aber wie schon gesagt weniger verwendet... ein Kollege von mir in Holland hatte jedoch damit auch eine Spielengine programmiert...
Aber für professionelle Spiele wird das nicht verwendet
 
Ich hab mich am Wochenende intensiv mit dem Struktogrammen beschäftigt und mir auch einige Programme in Skriptsprache dazu angeschaut. Ist garnicht so schwer wie ich gedacht habe!;) Übung macht halt den Meister...

Aber nun stehe ich vor dem nächsten, logischen Problem. Kann mir einer ein praktisches Beispiel für rekursive Algorithmen nennen? Ich meine dieser Algorithmus ruft sich ja ständig selbst auf, mit der Bedingung, dass der Eingabewert, der Ausgabewert des letzten Durchlaufs ist! Aber was mach ich damit in der Praxis? Sortierfunktionen, oder eher sowas wie Datenbanken durchsuchen?

Sorry das ich hier so Kindergarten-Fragen loslass, aber bisher habe ich hier im Forum immer die besten - für mich verständlichsten - Antworten bekommen. Und wie die Überschrift schon sagt....ICH BIN NEWBY! :rolleyes: :)

Danke euch trotzdem!

Gruß
Skorpion
 
Zurück
Oben