Pompeus Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 (bearbeitet) Hallo, ich bin 14 Jahre alt (12.12. dann 15) und gehe auf die Wirtschaftsschule Friedrich-List in münchen . Ich würde sehr gerne eine Ausbildung zum Fachinformatiker - Anwendungsentwicklungmachen. Nun willte ich wissen welche sprache den gut wäre schon im vorraus zu lernen, oder ob ich mir ihrgent etwas anderes im vorraus undbedingt zueignen sollte. :confused: Ich habe ma gegooglet aber da warn nur beiträge von 2000, öhm ja ich weis ja nich ob die noch so aktuell sind . LG Benny Bearbeitet 16. Oktober 2010 von Pompeus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
robotto7831a Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 Hallo, die Programmiersprache hängt sehr stark von der Firma ab. Wichtig ist programmieren zu lernen. Die Syntax und die Schlüsselwörter zu lernen ist wie Vokabeln lernen für eine Fremdsprache. Such dir eine Sprache aus und verstehe die Konzepte von Schleifen, Selektionen usw. Frank Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 hallo, danke, hmm ich würde sehr gerne mit c anfangen, könntet ihr mir den da ein buch empfehlen oder eine website wo man gut draus lernen kann? lg benny Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 Ich würde sehr gerne eine Ausbildung zum WIFA machen. Was ist denn ein WIFA? Im Threadtitel sprichst du von FIAE. Nun willte ich wissen welche sprache den gut wäre schon im vorraus zu lernen, oder ob ich mir ihrgent etwas anderes im vorraus undbedingt zueignen sollte. Deutsch und englisch. Oder sollte deine Frage darauf zielen, welche Programmiersprache du vorher lernen sollst? Ausbildung heisst Ausbildung, weil du dann in dem Beruf ausgebildet werden sollst. Ein Maurerlehrling muss vorher keine Häuser bauen können, warum muss ein FIAE vorher programmieren können? Ich gebe aber zu bedenken, dass genau dieses Thema auf diesem Forum heiss diskutiert wird, etwa alle vier Wochen wird genau diese Frage gestellt. Fütter mal bitte die boardeigene Suchfunktion - es gibt genugend derartige Threads, auch unter Beteiligung von Ausbildern und Prüfern. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 Hallo Chief, entschuldigung ich habe Fachinformatiker - Anwendungsentwicklung schon gemeint, blöde rechtschreibfehler..... bezüglich meinem suchen werd ich mich bessern... versprochen. lg benny PS: wüsstet ihr villt trotzdem ein buch? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Just an NPC Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 C++ für IT-Berufe Is zwar C++ und nich C, aber an sich ein recht gut erklärendes Buch, auch für den Syntax. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 hallo, danke für das den forchlag lg benny Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 (bearbeitet) Wenn Du bisher noch keine Programmiersprache gelernt hast, würde ich an Deiner Stelle nicht mit C Anfangen. C ist zwar eine überschaubare Sprache (wenig Schüsselworte zu lernen und verstehen), steckt aber (vorallem für den Programmierneuling) voller Fallstricke. Als Anfänger ärgerst Du Dich mehr mit den Eigenheiten der Sprache herum und bist damit beschäftigt, Sprachkonzepte zu verinnerlichen, anstatt erst einmal Programmieren zu lernen. IMHO wäre es sinnvoll, ersteinmal zu lernen, aus Deinen Ideen Programme werden zu lassen; und dabei ist C/C++ ersteinmal hinderlich. C: #include <stdio.h> int main(void) { printf("Hello World \n"); return 0; } [/PHP] c++: [PHP]#include <iostream> int main (void) { cout << "Hello World\n"; return 0; } vs. Python print("Hello World ") Welches Programm verstehst Du auf Anhieb und kannst erklären, was es tut? Insofern würde ich Dir eher empfehlen, Python zu nutzen, um den Einstieg in die Programmierwelt zu finden. Python ist vielseitig einsetzbar, schnell zu erlernen und somit prima für Einsteiger geeignet. Google setzt beispielsweise Python an allen Ecken und Kanten ein. Python wird von vielen Programmen als Skriptsprache genutzt. Ebenfalls geeignet für Einsteiger finde ich Java bzw C# - wobei ich dazu sagen muß, dass die "Geschwätzigkeit" dieser Sprachen auch wieder ähnlich wie bei C/C++ ist: C# using System; namespace HelloWorld { class Hello { public static void Main() { System.Console.WriteLine("Hello World!"); } } }[/PHP] Allerdings ist es überflüssig, sich vor der Ausbildung auf eine Sprache festlegen zu wollen. Es ist letztlich von Deinem Ausbildungsbetrieb abhängig, welche Sprache genutzt wird. Lernst Du jetzt bspw. Java und landest dann in einem Betrieb, der doch eher Microcontroller programmiert, dann ärgerst Du Dich, doch kein C gelernt zu haben. Hinzu kommt, dass man je nach Problemstellung andere Sprachen heranzieht. Insofern lernt man nicht [i]die[/i] Sprache schlechthin, sondern sucht sich die Sprache aus, die zum Problem passt, welches man gerade lösen möchte. Bearbeitet 16. Oktober 2010 von lilith2k3 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 Hallo lilith2k3, danke für die veranschaulichung, und die aufklärung echt net von dir . ich glaube, nachdem du mir das gezeigt hast, werde ich mir wohl mal python anschauen . Lg Benny Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Dusk Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 Sorry, lilith, aber das ist Schwachsinn. Man tut sich vielleicht anfangs ein wenig schwer, wenn man C++ nimmt, aber falsch macht man sicher nichts. Mit den richtigen Nachschlagewerken findet man einen sehr guten Einstieg und das mit dem nötigen Hintergrundwissen. Übrigens - bevor du Code veröffentlichst, prüfe erst mal, ob man ihn kompilieren kann. C++ wäre korrekt: #include <iostream> int main() { std::cout << "Hello World" << std::endl; return 0; } Also, lieber Threadersteller, wenn du dich dem gewachsen fühlst, dann fange ruhig mit C++ an und lass dir nichts von Leuten ausreden, die Perl oder Python für den Anfang besser finden - falsch machst du nichts, aber dann musst du auch dran bleiben. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 Sorry, lilith, aber das ist Schwachsinn. Was ist Schwachsinn? Dass hier aus falsch verstandenem Ehrgeiz eine Programmiersprache erlernt werden soll, ohne die Grundlagen von Programmierung verstanden zu haben? Nicht jeder Ausbilder steht hinter einem derartigen Vorgehen - vielfach bereitet sie in der Ausbildung mehr Probleme, als dass es dem Azubi überhaupt nützt. Also: wenn ich mir deine Beiträge so anschaue: Meine Aussage, erstmal deutsch und englisch zu lernen war durchaus ernst gemeint. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Dusk Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 Was ist Schwachsinn? Dass hier aus falsch verstandenem Ehrgeiz eine Programmiersprache erlernt werden soll, ohne die Grundlagen von Programmierung verstanden zu haben? Nicht jeder Ausbilder steht hinter einem derartigen Vorgehen - vielfach bereitet sie in der Ausbildung mehr Probleme, als dass es dem Azubi überhaupt nützt. Nein - aber wenn er kein Problem darin sieht, die Zeit aufzubringen, dann kann er ruhig auch mit C++ anfangen. Wie gesagt, Python lernen heißt nicht automatisch, Programmieren zu verstehen. Whatever - es ist seine Entscheidung, aber er sollte sich auch nicht später selbst im Weg stehen, indem er eine Scheu vor etwas wie C++ entwickelt. Wir kennen ihn ja nicht. Ich hoffe mal, der Kommentar mit dem Deutsch und Englisch lernen bezog sich nicht auf mich. Edit: Sorry - zu wenig gelesen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 hi, Also: wenn ich mir deine Beiträge so anschaue: Meine Aussage, erstmal deutsch und englisch zu lernen war durchaus ernst gemeint. is das jetzt böse gemeint, in dem du das auf den einen rechtschreibfehler mit fawi beziehst, oder nur auf schulischer ebene gemeint? Und dusk, ähm wüsstest du den ein buch oder eine internetseite die gut zum lernen geeignet wäre? lg benny Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 is das jetzt böse gemeint, in dem du das auf den einen rechtschreibfehler mit fawi beziehst, oder nur auf schulischer ebene gemeint? Es ist ehrlich gemeint - ich habe eben mal aus Spass nachgezählt und bei einem Dutzend Rechtschreibfehlern nur in deinem ersten Beitrag aufgegeben. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 hmm, oke habt ihr wohl recht, rechtschreibung is nicht wirklich meine stärke . aber hab mich in den letzen jahren schon gebessert ^^, statt zocken mal im jeden tag 2 stunden lesen bringts . kann ich jedem nur empfehlen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 hmm, oke habt ihr wohl recht, rechtschreibung is nicht wirklich meine stärke Programmcode mit Tippfehlern / Rechtschreibfehlern ist auch suboptimal. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 ich weis, ma ne halbe stunde beim html code gesucht wegen nem falsch gestzten komma ._. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 Sorry, lilith, aber das ist Schwachsinn. Man tut sich vielleicht anfangs ein wenig schwer, wenn man C++ nimmt, aber falsch macht man sicher nichts. Mit den richtigen Nachschlagewerken findet man einen sehr guten Einstieg und das mit dem nötigen Hintergrundwissen. Übrigens - bevor du Code veröffentlichst, prüfe erst mal, ob man ihn kompilieren kann. C++ wäre korrekt: #include <iostream> int main() { std::cout << "Hello World" << std::endl; return 0; } Also, lieber Threadersteller, wenn du dich dem gewachsen fühlst, dann fange ruhig mit C++ an und lass dir nichts von Leuten ausreden, die Perl oder Python für den Anfang besser finden - falsch machst du nichts, aber dann musst du auch dran bleiben. Entschuldigung, ich vergaß den Namespace Wobei wir eigentlich genau an dem Punkt wären, den ich angesprochen habe: Unnötige Spracheigenheiten, die das grundlegende Verständnis eher behindern als fördern. Wobei ich an der Stelle anmerken möchte, dass ich damit nicht meine, dass das Konzept der Namespaces per se unnötig ist, sondern dass es für den Anfänger ersteinmal vernachlässigbar ist. Vielleicht kannst Du etwas produktives zur Diskussion beitragen, indem Du ein Argument dafür anführst, warum C++ eine gute Wahl für Einsteiger ist. Mir fällt keins ein. Nein - aber wenn er kein Problem darin sieht, die Zeit aufzubringen, dann kann er ruhig auch mit C++ anfangen. Wie gesagt, Python lernen heißt nicht automatisch, Programmieren zu verstehen. Du hast meinen Beitrag überhaupt nicht verstanden, kann das sein? Ich habe gesagt, dass eine Sprache wie Python einem nicht unnötige Steine in den Weg legt, wenn man mit dem Programmieren anfängt; es ist eine didaktisch sinnvolle Sprache. C++ hat als Lehrsprache in meinen Augen mehr Nachteile als Vorteile. Aber vielleicht erklärst Du mir und vorallem dem Threadersteller, wo die Vorteile von C++ als Lehrsprache liegen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kylt Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 (bearbeitet) Hi, das was ich jetzt schreibe soll nicht dein Alter abwerten, aber mit ein paar Lebensjahren (Erfahrung) achtest du vielleicht auch selber mehr darauf. Bevor du deine Ausbildung beginnen kannst, bzw. in deiner Ausbildung musst du einige Grundlagen wie beispielsweise die Orthographie beherschen - besonders in Deutsch - und zumindest Dokumentation und Fachtexte in englisch lesen und verstehen können. Wenn du z.B. weißt, dass du Probleme mit der Rechtschreibung hast, lies dir deinen Post am besten zweimal durch bevor du ihn abschickst. Auch als Azubi ist es höchst wahrscheinlich, dass du Kundenkontakt haben wirst und eine Mail mit einem dutzend Rechtschreibfehlern wirkt doch nicht wirklich gut, oder was meinst du? - Ich finde es ganz schön peinlich, dass es tatsächlich Azubis gibt, denen nach einmaligem Email-Verkehr die Kommunikation nach Außen strikt verboten wurde. Ich meine wir arbeiten in einer Dienstleistungsbranche und da sollte immer wichtig sein, dass der Kunde nicht denkt, dass wir "dumm" sind. Und dazu zähle ich nicht nur was man schreibt, sondern wie man es formuliert. Stell dir selber die Frage, wenn du Kunde wärst, würdest du z.B. verstehen was gemeint ist (ich spiele hierbei auf deine "Sprachen"-Diskussion zu begin dieses Threads an). Natürlich ist es von Vorteil, wenn du dir Fähigkeiten in einer Programmiersprache zulegst, aber im Grunde sind diese Kenntnisse nur in der B-Note einer Bewerbung entscheidend. Ich kenne genug gute Entwickler, die vor der Ausbildung weder C, noch eine Objektorientierte Sprache konnten. Was vielmehr dahinter stehen sollte ist die Lernmethodik, insbesondere die Problemlösung. Ein paar Beispiele: - "Was ist das Problem" (Ist das Problem wegen des Programmes oder des Anwenders entstanden. Ist es ein logisches oder fachliches Problem) - "Welche Lösungsmöglichkeiten habe ich" (Bei einem Quellcodeproblem , gibt es noch alternativen zum Ändern dieses Sourcecodes, z.B. eine veraltete Funktion die den Fehler verursacht abschalten) - "Welche Ideen sind umsetzbar" (Wie lang dauert Lösung A? Wieviel kostet diese? Was passiert wenn ich diese Lösung nehme und wieder ein Problem auftritt? Besonders wenn du adhoc ein Problem löst und das nicht Dokumentierst hat es der nächste Entwickler nicht gerade einfach... ) - "Mit wem müsste ich diese Lösung absprechen" (Mit welchen Vorgesetzten/Kunden muss ich die Lösungsalternativen absprechen? - "Wer könnte davon betroffen sein " (Änderst du die Navigation einer Software, müsste man z.B. die Anwender neu schulen. Ist es ein fataler Fehler, der zum Programmabsturz führt - was durch gutes testen niemals passieren sollte - muss die Software für alle betroffenen neu rausgegeben werden. Oder aber es ist ein Problem in einer Software, die dein Kollege ohnehin neu Entwickelt, dann müsste man den Fehler auch mit ihm absprechen) - "Wie lang brauche ich dafür" (Besonders wichtig , da man dich nicht stundenweise verplanen wird, sondern langfristiger. Wenn du eher fertig bist ist das vermeintlich weniger schlimm, aber wenn du länger brauchst musst du auf jeden Fall bescheid geben. Sonst wirst du anderweitig wieder verplant.) - "Habe ich alle Fehler die auftreten können getestet und abgefangen?" (Z.B. bei einem Adressformular einen Fehler bei Buchstaben in der PLZ) - "Ist meine Lösung sicher" (Stichwort Injection) Nur um dir mal einen groben Überblick zu geben. Wenn du einen ordentlichen Ausbilder hast, dann wirst du in Sachen Programmiersprache wenn nötig geschult werden und da du vorher selten weist , was eine Firma genau an Software und Programmiersprache benutzt (das liest man in den FIAE-Stellenausschreibungen nur selten) kannst du dich darauf ohnehin nicht einstellen. Z.B. nur weil eine Firma in Java entwickelt, heißt es nicht, dass es die neueste Version ist. Bearbeitet 16. Oktober 2010 von kylt Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
fisianer2009 Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 als ich finde,wenn man ernsthaft programmierer werden will (ich will damit nicht sagen das ich einer wär!), sollte man von klein anfangen... also heißt: html,css,php,javascript,java,c,c++ etc... als in der reihenfolge... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 (bearbeitet) Ich habe gesagt, dass eine Sprache wie Python einem nicht unnötige Steine in den Weg legt, wenn man mit dem Programmieren anfängt; es ist eine didaktisch sinnvolle Sprache. C++ hat als Lehrsprache in meinen Augen mehr Nachteile als Vorteile. Aber vielleicht erklärst Du mir und vorallem dem Threadersteller, wo die Vorteile von C++ als Lehrsprache liegen. Python bietet dem Anfänger einmal durch die Othogonalität der Sprache und durch den Interpreter viele Möglichkeiten, die aber in meinen Augen auch gleichzeitig die Nachteile sind. Python wie auch PHP haben z.B. keine festen Typenbindungen (siehe Chomsky Hierarchie), C/C++ dagegen schon. Gut, hier kann man dann Java als Gegenbeispiel anführen, aber letztendlich muss sich ein Entwickler nicht um Speicherallokierung o.ä. kümmern. Ich denke gerade einem Anfänger muss klar sein, was eben im Rechner geschieht, wenn man z.B. ein Array deklariert oder ein Objekt erzeugt wird. Denn nur dann kann man später effiziente Algorithmen entwerfen. Mir fällt häufig auf, dass gerade bei Java oder eben den Scriptsprachen, einfach programmiert wird ohne sich eben Gedanken über den Speicher zu machen. Bei Java kommt häufig das Argument "das macht doch der Garbage Collector, muss ich mich als nicht drum kümmern". Multithreading ist unter Java zwar möglich, aber bei Echtzeitverarbeitung stößt man eben hier auf große Probleme. Ebenso stellen sich Probleme ein, wenn man sehr große Datenmengen verarbeiten muss, denn hier kommt kommt es sehr wohl darauf an, wie man geschickt den Speicher allokiert oder das Prefetching der CPU ausnutzt. Gerade als Anfänger muss man eben lernen, dass man sich auch mit Speicherallokierung beschäftigt oder dass man eben real gar keine Objekte hat, sondern dass das eben nur eine Abstraktionsebene ist. Wenn man mal verstanden hat, wie Objekte, mehrdimensionale Arrays oder dynamische Datenstrukturen speichertechnisch abgebildet werden, dann kann man auch Algorithmen performant entwickeln, denn letztendlich muss ich bei einer Sprache wie Java, PHP oder Python in den Grundzügen wissen, wie der Interpreter meinen Speicher verwaltet. Deshalb denke ich auch, dass eine Sprache wie C oder C++ ganz klar ein "back to the roots" sind, d.h. als Anfänger lernt man, was ein Pointer ist, was ein call-by-value oder call-by-refernce ist, was eine feste Typenbindung ist. Als nächstes kommt dann, wie man aus einfachen Typen Structs erstellt, die man mit Zeigen dann auch schon sehr dynamisch machen kann. Structs wären dann eine Vorstufe zu Objekten. Dann würde man im nächsten Step zu Objekten und danach zu Metaprogrammierung via Templates kommen, wobei man dann gerade bei C++ eben auch sieht wie sich diese Metaprogrammierung auf die Typenbindungen auswirkt (sprich welche Einschränkungen man ggf durch den Compiler bekommt). Man kann gerne in einer Sprache wie Java oder PHP / Python beginne, aber entweder muss man dann zusätzlich eben die genannten Basisstrukturen lernen, die man sich eben bei dem Lernen mit C/C++ direkt im Lernprozess integriert hat. Was ich auch als Grundlagenprogrammiersprache immer sehr schön finde, ist Pascal, denn hier hat man eine sehr klar definierte Sprache, wobei eben Arrayüberläufe während des Kompilierens erkannt werden, aber Pascal auch die Möglichkeit bietet mit Zeigern und Structs (in Pascal nennt sich das Records) zu arbeiten. Leider wollen viele Anfänger möglichst schnell GUI oder Graphik programmieren, was eben mit C oder Pascal erst einmal weg fällt, da man sich primär auf der Konsole bewegt. Gerade in C++ ist eine GUI Anwendung für einen Anfänger sicherlich nicht so einfach zu erstellen, wie z.B. unter Java. Von graphischen Elementen wie z.B. ein drehender 3D Würfel möchte ich erst einmal nicht reden. Es mag für den Anfänger ein Frustfaktor sein, dass man eben nur auf der Konsole "wurschtelt", aber man lernt dadurch, dass man eben alle "schönen Komponenten" eben einen Preis haben, der sich eben durch Laufzeit- und Speicherkomplexität bemerkbar machen. Ich denke auch, dass man sich zu Beginn einer Programmierkarriere mit den Basics auseinandersetzen sollte, um eben ein Gefühl für die Komplexität der Materie zu bekommen. Man muss dieses sicherlich nicht als Formalismen aus Sicht der mathematischen / informatischen Strukturen betrachten, sondern kann diese auch intuitiv anhand von Beispielen lernen. Ich denke jemand der naiv einfach so eine Sprache wie PHP lernt und dort einfach den Befehl "sort" Verwendet um z.B. ein Array zu sortieren, wird sich in den seltensten Fällen Gedanken darüber machen, ob dahinter ein O(n*log(n)) oder ein O(n^2) Algorithmus steckt, wobei man durchaus in der Realität für kleine Datenmengen feststellen wird, dass manchmal der naive Sortieralgorithmus wie ein Bubblesort oder Selektionsort schneller sind, als ein Quicksort. Deshalb würde ich einen Anfänger immer zunächst C oder Pascal lehren, da er somit die Basisstrukturen erlernt; wobei man eben in diesem Zusammenhang Algorithmen erlernen soll und nicht die Sprache. Aber anhand einer Sprache wie C kann man eben die Basisstrukturen und Algorithmen im Detail erklären / erarbeiten, die man dann in Interpretersprachen wie PHP oder Java "geschenkt" bekommt. Für mich ist es essentiell wichtig, dass man weiß wo Probleme (Termination / Seiteneffekte) im Sinne der Algorithmen (Laufzeit- und Speicherkomplexität) auftreten können, was man eben in C sehr schön anhand von Pointern / Referenzen auch am Beispiel verdeutlichen kann. Bearbeitet 16. Oktober 2010 von flashpixx Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 (bearbeitet) hallo, danke kylt und flashpixx für eure ausführungen. (auch wenn ich bei flashpixx manche wörter nicht verstandenhabe ) Pascal wäre ihrgent wie praktischer, weil mein onkel ist auch programierer und der programiert schon länger mit delphi, wobei delphi ja auf pascal aufbaut. Er hatte mir schon einmal etwas zum delphi lernen gegeben, wo ich natürlich nichts gecheckt habe, weil es ja auf pascal aufbaut und das dort überhaupt nicht besprochen wurde. (übrigens finde ich delphi ganz cool, weil man schnell seine programm fläche erstellen kann, z. B. Taschenrechner.) flashpixx, wenn ich das richtig verstanden habe meintest du ja, dass man den aufbau lernen sollte. Ich denke das ist wichtig, damit man die nächsten sprachen leichter lernt und wie programme überhaupt aufgebaut sind, oder liege ich da falsch? lg benny Bearbeitet 16. Oktober 2010 von Pompeus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 danke kylt und flashpixx für eure ausführungen. (auch wenn ich bei flashpixx manche wörter nicht verstandenhabe ) Wenn Du etwas nicht verstehst, dann bitte _immer_ nachfragen. Das ist auch für einen (angehenden) Azubi immer wichtig. Man lernt dadurch, dass man fragt, auch wenn es einen selbst Überwindung kostest. Pascal wäre ihrgent wie praktischer, weil mein onkel ist auch programierer und der programiert schon länger mit delphi, wobei delphi ja auf pascal aufbaut. Er hatte mir schon einmal etwas zum delphi lernen gegeben, wo ich natürlich nichts gecheckt habe, weil es ja auf pascal aufbaut und das dort überhaupt nicht besprochen wurde. Ja, Delphi ist im Grunde die objektorientierte Version von Pascal. (übrigens finde ich delphi ganz cool, weil man schnell seine programm fläche erstellen kann, z. B. Taschenrechner.) Genau das meinte ich, dass man eben heute dadurch verführt wird, dass man eben in Delphi mal schnell eine Oberfläche zusammen klicken kann. Wenn ich jetzt - nichts gegen deinen Onkel - ihn vor das Notepad setze, kann er dann auch eine GUI komplett selbst schreiben? Wenn Du jetzt mit Delphi anfängst, dann machst Du Dir eben keine Gedanken darüber was überhaupt alles passiert, bis das Fenster auf Deinem Bildschirm erscheint. Deswegen wäre hier mal der Ansatz mit Pascal, was musst Du alles machen, damit nachher ein fertiges Fenster überhaupt erscheint und sich bedienen lässt. flashpixx, wenn ich das richtig verstanden habe meintest du ja, dass man den aufbau lernen sollte. Ich denke das ist wichtig, damit man die nächsten sprachen leichter lernt und wie programme überhaupt aufgebaut sind, oder liege ich da falsch? Ich denke den Kern hast Du getroffen. Du musst als Anfänger einmal die Sprache, sprich wie meine Vorposter gesagt hatten, die Vokabeln lernen. Zusätzlich musst Du aber auch verstehen, was jeder Befehl konkret im Rechner macht. An einem konkreten Beispiel: In PHP gibt es den Befehl "sort", in C gibt es den nicht. Sprich wenn Du in PHP nun anfangen würdest, könntest Du sehr einfach Daten sortieren, müsstest Du das gleiche aber in C machen, müsstest Du Dir eben selbst überlegen wie Du das machst. Und das ist der Kernpunkt. Du musst als Anfänger lernen Probleme mit Hilfe der Vokabeln / den Befehlen einer Programmiersprache zu lösen. Jeder Befehl den Du eintippst kostet Zeit und Speicher. Als "guter Programmierer" möchte man beides möglichst klein halten, d.h. man muss lernen ein Problem in möglichst kurzer Zeit und mit möglichst wenig Speicher zu verbrauchen zu lösen. Deswegen bin ich jemand, der primär eine Sprache wie C oder Pascal (nicht Delphi) dem Anfänger vorsetzen würde und ihn dann Stück für Stück Probleme lösen lasse, damit er sieht, wie etwas funktioniert. Wenn er dann diese Grundstrukturen "gefressen" hat, kann man dann auf eine andere Sprache wechseln, wo er dann nicht mehr alles selbst programmieren muss (diese Aufgabe sollte ein guter Ausbilder leisten). Natürlich kann man das ganze auch anders herum angehen und eben mit einer Sprache wie Java und PHP anfangen, dann wirst Du sehr schnell Dein Ziel erreichen. Aber eben bei manchen Problemen eben nicht mehr eine gute Lösung findest, weil Dir die Sprache eben viel abnimmt. Ich will das mal etwas allgemeiner formulieren: Die Informatik kämpft heute immer wieder mit dem Problem, dass wir immer mehr Daten haben und diese effizient verarbeiten müssen und genau dort ist der Punkt, wo man ansetzen kann, wenn man weiß wie Algorithmen funktionieren, d.h. wenn Du einmal verstanden hast, wie ein Rechner dann real Deinen eingegebenen Code auf der Hardware umsetzt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kylt Geschrieben 16. Oktober 2010 Teilen Geschrieben 16. Oktober 2010 Ich will das mal etwas allgemeiner formulieren: Die Informatik kämpft heute immer wieder mit dem Problem, dass wir immer mehr Daten haben und diese effizient verarbeiten müssen und genau dort ist der Punkt, wo man ansetzen kann, wenn man weiß wie Algorithmen funktionieren, d.h. wenn Du einmal verstanden hast, wie ein Rechner dann real Deinen eingegebenen Code auf der Hardware umsetzt. Off topic: Ich muss gerade schmuntzeln , manchmal muss man aber auch der Verlockung das Programm zu verstehen wiederstehen, sonst bekommt man nur ganz ganz viele neue graue Haare. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pompeus Geschrieben 16. Oktober 2010 Autor Teilen Geschrieben 16. Oktober 2010 Zu dem: Wenn Du etwas nicht verstehst, dann bitte _immer_ nachfragen. Das ist auch für einen (angehenden) Azubi immer wichtig. Man lernt dadurch, dass man fragt, auch wenn es einen selbst Überwindung kostest. ich habe es nun nach gegoolet, auch wenn da immer seehr viel informationen kommen. Zu: Wenn ich jetzt - nichts gegen deinen Onkel - ihn vor das Notepad setze, kann er dann auch eine GUI komplett selbst schreiben? Ja ich denke, dass er dies kann, weil er meinte: "Er könne das koplette programm (die delphi ausgabe von borland) selber noch mal schreiben" und auserdem habe ich ihn schon desöfteren ohne dieses borland programm arbeiten sehen. Wie ich vorhin schon gesagt habe, ich kann dir nur immer wieder für deine Ausführungen danken . nun werde ich mich morgen dann mal ans werk machen und eine geeignete seite fürs paskal lernen suchen, oder könntet ihr mir da eine vorschlagen. (ein buch geht auch) lg benny Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.