Fragen an die (Berufs)Programmierer unter euch



  • AlexNeumann schrieb:

    Ich glaube nicht das man als Programmierer ein Mathe-Ass sein muss. Es sei den du willst bei der NASA arbeiten für ein Forschungsprojekt.

    Nicht unbedingt als Programmierer, obwohl das auch von Vorteil ist, aber als Spieleprogrammierer ist es fast zwingend, soweit ich weiß. Spieleprogrammierung besteht zu einem sehr großen Teil aus Mathematik.



  • mantiz schrieb:

    Nicht unbedingt als Programmierer, obwohl das auch von Vorteil ist, aber als Spieleprogrammierer ist es fast zwingend, soweit ich weiß. Spieleprogrammierung besteht zu einem sehr großen Teil aus Mathematik.

    Ja klar, aber unbedingt ein Mathe-Ass? Was verstehst du darunter. Ein promovierter Mathematiker mit Doktortitel? Oder jemand mit Mathe L-Kurs die Note 1? (mit E-Kurs meine ich, es gibt Grundkurs, Erweiterungskurs und Leistungskurs.)

    Ich denke, da reichen Kenntisse wie Cosinus, Sinus, FlÄchenberechnung und all so ein Zeugs was man in der Realschule gelernt hat.



  • Ich glaube nicht das man als Programmierer ein Mathe-Ass sein muss.

    Hmm,schau dir mal den Kern von aktuellen 3D engines an. Da wird schon ein wenig Mathematik gebraucht 😮
    Ausser, du willst der sein, der die Texturen in die Karten einbastelt?!

    Lange Rede... : Mathematik ist essentiell für Softwareentwicklung!



  • TorstenM_u schrieb:

    Hmm,schau dir mal den Kern von aktuellen 3D engines an. Da wird schon ein wenig Mathematik gebraucht 😮
    Ausser, du willst der sein, der die Texturen in die Karten einbastelt?!

    Lange Rede... : Mathematik ist essentiell für Softwareentwicklung!

    Na dann lern ich das eben, wo ist das Problem?



  • AlexNeumann schrieb:

    TorstenM_u schrieb:

    Hmm,schau dir mal den Kern von aktuellen 3D engines an. Da wird schon ein wenig Mathematik gebraucht 😮
    Ausser, du willst der sein, der die Texturen in die Karten einbastelt?!

    Lange Rede... : Mathematik ist essentiell für Softwareentwicklung!

    Na dann lern ich das eben, wo ist das Problem?

    du stellst dir das ein bisschen zu einfach vor mit dem lernen.



  • Reicht es wenn ich Bücher lese wie 3D-Spieleprogrammierung mit DirectX 9? Naja was heisst reicht, reichen nicht, aber fürs erste? Dann selber Spiele proggen und so lernt man weiter.



  • proggen? 😮



  • Um mal auf die C++ Bücher zurückzukommen. Ich lese im Moment das Buch: Intensivkurs C++ wo bei ich zu diesem Buch sagen muss, dass ich davon nicht sehr begeistert bin, weil die Deklklarationsmethode veraltet ist zum Beispiel schreiben die:

    #include <iostream>
    int main()
    {
     std::cout << "Hallo User!" << std::endl;
    return 0;
    }
    

    Stattdessen hätte man das doch einfacher machen können und zwar:

    #include <iostream.h>
    main()
    {
     cout << "Hallo User"\n";
    }
    

    Immer das std:: vor jedem Schlüsselwort halte ich nicht für praktisch! Das mal dazu.

    Jetzt muss mir einer von euch erklären, weil im Buch nicht beschrieben, warum wenn ich im Header die Extension ".h" eintippe dann nicht mehr mit "using namespace std;" deklarieren muss und ohne diese Extension schon! Versteht Ihr was ich meine?

    Ich habe mir 4 Bücher aus der Uni Münster ausgeliehen: Einmal das "Intensivkurs C++", dann dass Buch "C++ Objektorientierste Programmierung", habe da mal so reingestöbert, macht einen guten Eindruck. Danach lese ich das Buch: Grundkurs Software-Entwicklung mit C++, und dann Praktische C++ Programmierung. Ich glaube das letzte Buch werde ich abgeben, weil so wie in Intensivkurs mit den Quellcodes.



  • Du willst das beste Buch abgeben? 🙄 🙄



  • Das erste Beispiel ist gültiges C++, das zweite nicht.

    Im ersten bindest Du die C++-Header ein, wo halt alles im Namespace std liegt, was meiner Meinung nach aber sehr schön ist, da man so viele Dinge sehr schön voneinander abgrenzen kann.

    Im zweiten Beispiel bindest Du die alten C-Header ein, die nur aus Kompatibilitätsgründen enthalten sind, weil der C89-Standard (glaub' ich) in C++ unterstützt wird. C kennt afaik keine Namespaces, daher liegen die Funktionen dort auch nicht darin. 🙂

    // Edit: Außerdem fehlt im zweiten Beispiel das "void" vor dem main, was aber auch überholt ist, korrekt ist "int main()", Parameter, falls notwendig gehören dann noch dazu.



  • oreilly schrieb:

    Du willst das beste Buch abgeben? 🙄 🙄

    Kann es sein, dass du der ein und der selbe Unregistrierte User bist? wtf??, lernprofi, orreily?? sag die Wahrheit.



  • richtig



  • Ach so, nochwas: Nicht die erste Methode ist veraltet, sondern die zweite. 🙂



  • mantiz schrieb:

    Das erste Beispiel ist gültiges C++, das zweite nicht.

    Im ersten bindest Du die C++-Header ein, wo halt alles im Namespace std liegt, was meiner Meinung nach aber sehr schön ist, da man so viele Dinge sehr schön voneinander abgrenzen kann.

    Im zweiten Beispiel bindest Du die alten C-Header ein, die nur aus Kompatibilitätsgründen enthalten sind, weil der C89-Standard (glaub' ich) in C++ unterstützt wird. C kennt afaik keine Namespaces, daher liegen die Funktionen dort auch nicht darin. 🙂

    // Edit: Außerdem fehlt im zweiten Beispiel das "void" vor dem main, was aber auch überholt ist, korrekt ist "int main()", Parameter, falls notwendig gehören dann noch dazu.

    Das mit void stimmt. Ich habe mit Absicht das weggelassen. Normalerweise schreibe ich das rein. Ich sehe in vielen Foren, dass die Programmierer einfach main() schreiben. Trotzdem finde ich das viel praktischer wenn man unter der Headeranweisung using namespace std; deklariert. Dann muss ich nicht jedes Mal std:: schreiben. Du meinst in C unterstützt das nicht? Naja heute ist C++ angesagt ;).

    schonwiederich oder wer immer du bist schrieb:

    richtig

    Dann würde ich dir vorschlagen sich für ein Namen zu entscheiden, denn so wie du das machst finde ich ziemlich albern.



  • mantiz schrieb:

    Ach so, nochwas: Nicht die erste Methode ist veraltet, sondern die zweite. 🙂

    Ah da bin ja froh, wie gesagt, finde ich besser.



  • [quote=Mantiz]Ach so, nochwas: Nicht die erste Methode ist veraltet, sondern die zweite.[/quote]

    Moment das hast du ja schon geschrieben

    [quote=mantiz]Das erste Beispiel ist gültiges C++, das zweite nicht.
    [/quote]

    Also was denn nun, ist die zweite veraltet mit dem main() ohne int oder void, oder meintest du das mit std:: ?



  • AlexNeumann schrieb:

    Um mal auf die C++ Bücher zurückzukommen. Ich lese im Moment das Buch: Intensivkurs C++ wo bei ich zu diesem Buch sagen muss, dass ich davon nicht sehr begeistert bin, weil die Deklklarationsmethode veraltet ist zum Beispiel schreiben die:

    #include <iostream>
    int main()
    {
     std::cout << "Hallo User!" << std::endl;
    return 0;
    }
    

    Stattdessen hätte man das doch einfacher machen können und zwar:

    #include <iostream.h>
    main()
    {
     cout << "Hallo User"\n";
    }
    

    Immer das std:: vor jedem Schlüsselwort halte ich nicht für praktisch! Das mal dazu.

    So, wie Du das geschrieben hast, findest Du die zweite Variante besser, was aber kein gültiges C++ ist, und von "using namespace std;" hast Du auch nichts geschrieben ... 😕



  • [quote=mantiz]

    #include <iostream>
    int main()
    {
     std::cout << "Hallo User!" << std::endl;
    return 0;
    }
    

    Stattdessen hätte man das doch einfacher machen können und zwar:

    #include <iostream.h>
    main()
    {
     cout << "Hallo User"\n";
    }
    

    So, wie Du das geschrieben hast, findest Du die zweite Variante besser, was aber kein gültiges C++ ist, und von "using namespace std;" hast Du auch nichts geschrieben ... 😕[/quote]

    Ja using namespace std; habe ich weggelassen weil man das nicht mehr braucht. Weil ich ja #include <iostream.h> geschrieben hab. Das funktioniert! Würde ich eintippen #include <iostream> müsste ich darunter using namespace std; deklarieren.



  • Ja, wobei das aber keinesfalls das gleiche ist, würdest Du es wie in der ersten Variante machen, aber nach dem #include ein "using namespace std;" schreiben und anschließend das "std::" weglassen, dann ist das gültiges C++, während Du in der zweiten Variante die C-Header verwendest, was dann allerdings veraltet ist und kein gültiges C++ darstellt.



  • Ich habe mich auch ueber diese Branche der Spieleprogrammierung informiert, und muss dir auf alle Fälle sagen, dass du da zu 90-95% studiert haben musst.

    Und Mathe ist in der Spieleprogrammierung eigentlich wichtiger als das Programmieren an sich, laut meinen Erkundigungen auf alle Fälle. Und glaub mir, wenn du denkst, dass du in der Spieleprogrammierung mit einfachen Cosinus/Sinus und Flächenberechnungen auskommst, hast du dich - leider - geirrt.

    Was ich dich noch fragen wollte:
    Hast du schon Programme mit irgendeiner Programmiersprache programmiert? Wenn nein glaube ich nicht, dass du dann schon in ein oder zwei Jahren nen Spiel - mit Engine, DirektX,... - programmieren kannst.

    Ich glaube, soweit ich es bei deinen Posts rauslesen kann, dass du das etwas zu leicht einschätzt. Programmieren ist nicht nur ein wenig Code - welche auswendig gelernt wurde - auf den Bildschirm zu tippen! Du benötigst viel Erfahrtung und logische Denkweisen, um v.a. grössere Projekte zu realisieren.

    MFG Lyrix


Anmelden zum Antworten