Lernen



  • und warum willst du das gleichzeitig machen?



  • Okay, wieso dann Java und C++?

    Man sagt (z.B. hier im Forum), dass man für C++ locker en halbes Jahr einplanen sollte, vorrausgesetzt man kann schon etwas programmieren. Ansonsten länger. Mit 16 solltest du dir also im Klaren drüber sein, dass du etwas Zeit brauchst.

    Java ist da ein Stück einfacher, aber auch da gibt es Fallstricke und Dinge, die Zeit bedürfen.

    Auf der anderen Seite dürfte es soviel im Web zu App Entwicklung geben, dass du dir grobe GUIs mit halber "Fachlogik" auch recht easy zusammenklickern dürftest.

    Mein persönlicher Rat daher ist, dass du dir ein kleines Projekt aufsetzt, dir Ziele und sowas definierst und einfach mal drauf los entwickelst. In dem Fall mit Java. Grundlagentutorials gibt es genug, Android Doku gibt es auch. Und wenn du halbwegs ernst am Ball bleibst wirst du immer weiter und mehr lernen, wirst in der Schule in den mathematischen Fächern besser (behaupte ich mal), wirst deinen Informatik-Lehrer vielleicht sogar recht schnell vom Wissen und Können überholen und alte Programme bieten mehr als genug Optimierungs- und Refaktorisierungspotenzial für später 😉

    Edit: Learning by Doing, bei speziellen Fragen kannst du gerne hier im Forum fragen. Aber erwarte nicht, dass es allzu einfach wird.



  • Lieber eine Programmiersprache gescheid als zwei nur halb. Alleine an C++ kannst du Jahre lang lernen und Erfahrung sammeln (wenn du wirklich produktiv sein willst), da ist kein Platz für eine zweite Sprache.



  • Und ich würd das auf gar keinen Fall parallel machen!
    So besteht nämlich das Risiko, das du dir etwas in Java angewöhnst (*hust* new *hust*, aber auch anderes, bspw. viel zu viel Vererbung und Interfaces) und es dann in C++ verwendest, bevor du die besseren Alternativen kennen lernst.
    Lieber erst C++, dann Java. Andersherum geht natürlich auch, allerdings muss man dann gut aufpassen, dass man so etwas nicht macht.



  • [quote="Aoki_zu_faul_zum_einlogge"]Wie lernt man am effektivsten zwei Programmiersprachen zugleich? es handelt sich um java und c++{/quote]
    Das wäre der direkte Weg in ewige Stümperschaft.



  • Aoki_zu_faul_zum_einlogge schrieb:

    Wie lernt man am effektivsten zwei Programmiersprachen zugleich? es handelt sich um java und c++

    Wenn man programmieren kann, ist das relativ einfach. Ich gehe aber davon aus, dass du das eben nicht kannst. Dann lerne zusammen mit einer Programmiersprache das Programmieren an sich. Da Java etwas einfacher ist und du Android programmieren willst, bietet sich Java an.



  • C++ zu erlernen ist sehr demoralisierend, fang mit Java an, da muss man weniger verstehen um Sachen zum Laufen zu bringen. Dadurch machst du in kürzerer Zeit auch größere Lernvortschritte.



  • Mr.Long schrieb:

    C++ zu erlernen ist sehr demoralisierend, fang mit Java an, da muss man weniger verstehen um Sachen zum Laufen zu bringen. Dadurch machst du in kürzerer Zeit auch größere Lernvortschritte.

    Nur scheinbare, man lernt keinen Stil, der für mehr als Minisachen geht, und muss sich später komplett neuorientieren.



  • Ich bin in C++ schon ziemlich weit deshalb würde ich es lieber fortsetzen
    Wäre es denn möglich eine Android Apk vollständig mit C++ zu schreiben?



  • Wenn du einfach nur Apps entwickeln willst, dann reicht nur Java. Das hat geringeren Umfang und man hat schneller Ergebisse.

    Wenn du beides koennen willst, dann wuerde ich erstmal C++ lernen. Das dauert zwar erstmal lange, aber man hat eine solide Grundlage fuer viele andere Programmiersprachen und lernt auch, seine Programme ordentlich zu strukturieren. Ich behaupte aber mal, dass man wenn man C++ gut kann, es schafft Java in einem Tag zu lernen und dann nur noch ein bisschen zur Gewoehnung braucht.
    Andersherum gilt das aber nicht, denn viele Sachen, die in Java ueblich sind, sind in C++ schlechter Stil und fehleranfaellig. Ein Javaprogrammierer, der C++ lernt braucht vielleicht sogar laenger als ein Neuling, bis er die Fehler einsieht.

    P.S. Man glaubt in C++ immer, dass man schon "recht weit" ist, weil man seinen eigenen Stil kaum beurteilen kann, sondern ihn immer gut findet.



  • Achso na dann weiß ich nicht wie weit ich bin 😃

    Ehm ich habe mal eine Kleine Frage sollte man zu allem etwas mehr oder weniger großes programmieren oder reicht es auch wenn man denkt es verstanden zu haben?



  • Aoki_san schrieb:

    Ehm ich habe mal eine Kleine Frage sollte man zu allem etwas mehr oder weniger großes programmieren oder reicht es auch wenn man denkt es verstanden zu haben?

    Auf jeden Fall etwas programmieren - glauben es verstanden zu haben tut man schnell, aber man täuscht sich dabei auch sehr schnell!



  • Ich finde da auch, dass man ausrecihende Beispiele (oder Projekte) braucht um gewisse Dinge ordentlich zu verstehen.

    Ich meine, wer braucht bei einem 10-20 Zeilen Programm schon Funktions- oder Methodenzeiger (als Beispiel, ja ich weis, man kann genügend Beispiele damit und dafür konstruieren, aber grad am Anfang der C++ Lernphase wäre es mesitens vom Verständnis einfacher ein oder 2 ifs zu verwenden)?



  • Ich habe noch eine wichtige Frage:

    Die Anweisung c = c & k;
    bewirkt die bitweise UND-Verknüpfung:
    0000 0000 0000 0101 k ist gleich 5
    0000 0000 0001 0100 c ist gleich 20
    0000 0000 0000 0100 Das Ergebnis von c & k ist 4.

    Das war die Erklärung zum Bit Operator & und das ist verdammt unverständlich finde ich

    Sollte ich im Internet nach einer besser Erklärung suchen oder weiter lesen und hoffen dass es nochmal erklärt wird? bzw es einfach ignorieren weil es vermutlich nicht wichtig sein wird? (wegen der kurzen erklärung)



  • 0 & 0 = 0
    0 & 1 = 0
    1 & 0 = 0
    1 & 1 = 1
    


  • die bitweise UND Verknüpfung ist keine mathematische, sondern eine bitweise Operation.

    0 & 0 = 0
    0 & 1 = 1
    1 & 0 = 0
    1 & 1 = 1

    im Vergleich dagegen ODER:
    0 | 0 = 0
    1 | 0 = 1
    0 | 1 = 1
    1 | 1 = 1

    edit: war ja klar, dass da einer schneller ist...



  • Edit: Ich teste es nochmal



  • Das Resultat stimmt, was das aber mit dem Vergleichsoperator == auf sich hat bleibt mir schleierhaft.

    Wie es funktioniert bei solchen längeren Bitfolgen: (ich nenne die Operanden mal Lhs und Rhs (von Left / Right Hand Side), wie in der Programmierung üblich)
    Bitweise Und-Operator:
    Das Bit an der n-ten Position im Resultat ist 1, wenn das n-te Bit in Lhs und das n-te Bit in Rhs 1 sind.
    Bitweise Oder-Operator:
    Das Bit an der n-ten Position im Resultat ist 1, wenn das n-te Bit in Lhs oder das n-te Bit in Rhs 1 sind.

    Also ganz intuitiv eigentlich.



  • EDIT: Ah okay dankeschön



  • Kommt drauf an. Ist die linke und die rechte Seite 1? Wenn ja, dann 1. Ansonsten 0.


Anmelden zum Antworten