Programmieren lernen

Adnann307

Mitglied
Ich möchte Programmieren lernen wie der Titel schon sagt.
Also naja ich kann ja zum Teil programmieren aber ich hab die Basics vergessen.
Und des was ich drauf hab ist von scrippt kiddis gelernt worden.
Also ich weiß ja schon was ich tue. Wenn mir jemand sagt programmiere einen Taschenrechner
würde ich 3 JTextFields hinkatschen, 4 Knöpfe für + - % *…. Des OOP kann ich auch.
Hättet ihr vielleicht einen Youtuber der jemanden was gut beibringt oder sowas. Hab ein Buch für Java Programmierung, aber ich und Bücher werden nie Freunde.
 

JCODA

Top Contributor
Ich finde meist Bücher zum Durcharbeiten langweilig. Ich empfehle dir: Nimm dir ein kleines Projekt vor. Dieses Projekt sollte einige Themen beinhalten, die du schon kennst und 1-2 Themen/Algorithmen, die du noch nicht kennst. Erst wenn du weißt, welche Probleme (="unbekannte/neue Dinge") du lösen möchtest kannst du gezielt nach einer Lösung suchen. Hier bieten sich wieder Bücher an: "Die Insel" ist ein wunderbares kostenloses Nachschlagewerk. Oder wenn es eben spezieller wird, dann Fachliteratur, die genau die Lösung für dein Problem beschreibt.
 

Javinner

Top Contributor
Ich bin immer wieder aufs Neue verwundert, dass es Menschen gibt, die etwas machen wollen, was unmittelbar mit Lesen und Schreiben zu tun hat und gleichzeitig mit Bücher auf dem Kriegspfad stehen.
Ich bin gespannt, wie der Protagonist sich hier schlägt :)
aber Java-Bücher sind teuer
Und nicht alle Bücher sind bekömmlich, so dass ich bereits von zwei Fehlkäufen sprechen kann.
 

Adnann307

Mitglied
Ich hätte noch zwei Frage an euch alle?
Programmiert ihr um Geld zu bekommen(egal ob beruflich oder nebenbei)?
Und seit wann programmiert ihr?
 

L0oNY

Bekanntes Mitglied
Auch wenn mihe es schon erwähnt hat, aber ich möchte es nochmal zusammenfassen
Ich möchte Programmieren lernen [..]
[..] ich kann [..] programmieren [..] ich hab die Basics vergessen.
[..]
ich weiß[..] was ich tue.
[..]
Des OOP kann ich auch.
[..]
Oder in meinen Worten:
Ich möchste spanisch lernen. Ich kann spanisch, aber ich habe die Wörter vergessen. Ich kann mich aber in spanisch artikulieren und Grammatik kann ich auch.

:D:D:D
PS: ich programmiere nicht, um Geld zu bekommen, sondern ich werde dafür bezahlt, dass ich programmiere ... oder eben während der Arbeitszeit irgendwelche Foren trolle.
 

Adnann307

Mitglied
Also ich hab mal jetzt in 15min einen Taschenrechner programmiert(ohne Frame, Ausgabe in der Konsole)
Mir fallen aber keine andere Programme ein die ich als Anfänger programmieren kann.
Also für Ping Pong oder so reicht mein wissen noch nicht aus.
Hättet ihr irgendwelche Vorschläge?

Java:
package Übungen;

import java.util.Scanner;

public class SwitchCase {

    public static void main(String[] args) {
       
        int summe;
        int operator;
   
    System.out.println("Nenne sie ihre erste Zahl:");
   
    Scanner scan = new Scanner(System.in);
   
    int zahl1 = scan.nextInt();
   
    System.out.println("Nenne sie ihre zweite Zahl:");
   
    int zahl2 = scan.nextInt();
   
   
    System.out.println("Geben sie ihren Operator ein(1 = +,2 = -, 3 = *, 4 = /):");
   
   
    operator = scan.nextInt();
   
    switch(operator){
    case(1):
        summe = zahl1 + zahl2;
    System.out.println(summe);
    break;
    case(2):
        summe = zahl1 - zahl2;
    System.out.println(summe);
    break;
    case(3):
        summe = zahl1 * zahl2;
    System.out.println(summe);
    break;
    case(4):
        summe = zahl1 / zahl2;
    System.out.println(summe);
    break;
    default:
        System.out.println("Ungültige Eingabe!");
       
        scan.close();
       
       
       
       
       
    }

    }
}
 

JCODA

Top Contributor
Viele kleine Aufgaben, aber mathematisch: https://projecteuler.net/archives
Ansonsten:
leicht: Computer würfelt Zufallszahl zwischen 1 und 1000. Der User kann nun Zahlen eingeben und muss die Zufallszahl erraten. Bei einem falschen Tipp, wird ein "höher"/"niedriger"-Tipp gegeben. Erweiterung: Was ist die optimale Strategie? Programmiere diese optimale Strategie, sodass der Computer gegen sich selbst spielt.

etwas anspruchsvoller: Ein Vier gewinnt auf der Konsole. Next Level: Mit KI.
Ansonsten sowas wie "Mastermind"? Minesweeper auf der Konsole... Oder doch zuerst ein TicTacToe ... Es gibt so vieles ...
 

Javinner

Top Contributor
Hättet ihr irgendwelche Vorschläge?
41J-ht4cveL._SX324_BO1,204,203,200_.jpg
 

Adnann307

Mitglied
@Meniskusschaden Also hab mir mal jetzt bei Youtube ein Video angeschaut zu Game of Life.
1. Ich glaub nicht das ich des schaffen kann.
2. Überhaupt kein Plan wie es in der Konsole gehen soll XD
3. Ich will nicht einfach den Text von jmd abschreiben, daraus lern ich nichts....
 

Adnann307

Mitglied
@JCODA

Was meinst du jetzt mit Tipp, das ich dann nochmal eine Zufallszahl ausblende aber nur von 0-500. Oder was meinst du?(soll ich dich Sietzen?)

Java:
import java.util.Random;
import java.util.Scanner;

public class ZufallszahlErraten {

    public static void main(String[] args) {
       
       
       
        System.out.println("Erraten sie die Zahl(0-1000)! \nGeben sie ihre Zahl ein:");
       
        Scanner scan = new Scanner(System.in);
        int x = scan.nextInt();
       
        scan.close();
       
        Random würfel = new Random();
        int y = würfel.nextInt(1001);
        System.out.println(y);
       
       
       
        if(x==y) {
           
            System.out.println("Du hast die Zahl erraten!");
           
            }else {
               
                System.out.println("Viel Glück beim nächsten mal!");
               
            }
 

JCODA

Top Contributor
Generell: Die Zufallszahl wird erst am Ende bekanntgegeben.
Der User wird solange gefragt, bis er richtig antwortet oder er eine negative Zahl eingibt, dann wird das Programm beendet. Wenn er falsch geraten hat, bekommt er die Information, ob er zu hoch oder zu niedrig geraten hat und kann dann eben erneut raten.
 

Adnann307

Mitglied
Also mein Code siehst so aus.
Ich versuchs mal in einer do-while schleife.

Java:
import java.util.Random;
import java.util.Scanner;

public class Raten {

    public static void main(String[] args) {

        Random rnd = new Random();
        int y = rnd.nextInt(1001);
       
        int x = 0;
       
        while(y != x) {
           
            System.out.println("Geben sie ihre Zahl ein:");
           
            Scanner scan = new Scanner(System.in);
            x = scan.nextInt();
           
            if(y == x) {
               
                System.out.println("Du hast die Zahl erraten!");
            }else if(y<x) {
               
                System.out.println("Deine Zahl ist zu hoch!");
            }else if(y>x) {
               
                System.out.println("Deine Zahl ist zu niedrig!");
            }
           
        }
       
       
    }

}
 
K

kneitzel

Gast
Fange ich mal mit der Beantwortung der einfachen Frage an:
Bin wohl einer der Gruftis hier und entwickle schon über 30 Jahre Software. Verdiene mit diesem Hobby mein Unterhalt in dem ich für ein großen IT Konzern Software entwickle. Habe aber auch noch ein kleines Gewerbe eben für meine privaten Projekte....

Nun zum schweren Teil:
Software entwickeln wollen impliziert automatisch, dass man sehr viel Lesen muss. Wenn man mit Büchern eher auf Kriegsfuß steht, dann sehe ich hier Eingriffes Problem. Lesen ist das a und o - natürlich müssen das nicht Bücher sein, aber bei Problemen kommt halt oft Google und Co ins Spiel und die Ergebnisse wollen normalerweise gelesen werden ...

Und dann ist wirklich die Frage, was Du genau willst und was du schon kannst. In dem Code im Thread habe ich wirklich etwas mit OO gesehen daher wundert mich die Aussage, dass dies etwas ist, dass Du bereits beherrscht.

Und was willst Du genau lernen? Paar einfache Java Konstrukte wie im Thread sind das eine,aber wirkliches Prigrammieren ist in meinen Augen etwas anderes.

Aus meiner Sicht gibt es viele Dinge, die sehr wichtig sind. Da Java wohl deine Wahl war bezüglich Entwicklung von Software und Java eine Objektorientierte Sprache ist, ist dies eine sehr wichtige Grundlage. Das Buch, dass ich hier am liebsten empfehle, weil es mir sehr gut gefallen hat, ist Object Thinking von Microsoft Press. (Buch, Englisch, ... ja, nicht Dein Freund, aber da kommt man aus meiner Sicht nicht drumherum, wenn man das richtig machen will ....)

Man kann sich auch durchaus mal etwas nach sogenannten Pattern umsehen. Google wird da bestimmt sehr viel zu finden. Das kann etwas helfen, denn dann muss man nicht selbst überlegen, wie man denn evtl. ein Stück Metall in ein Holz bekommt, sondern man erkennt Muster (Nagel, Schraube, ...) und weiß dann genau, wie man die ins Holz bekommt (Hammer, Schraubendreher, ....)

Da du noch sehr am Beginn zu stehen scheinst: evtl. ist ein Kurs für Dich interessant. Da wirst Du dann durch diverse Themen geleitet und am Ende jedes Kapitels gibt es dann hoffentlich Übungsvorschläge.

Dein Beispielmit dem Taschenrechner kann man noch etwas zerlegen. Woraus setzt sich denn Dein Taschenrechner zusammen? So bekommst du dann evtl. einzelne Klassen. Das mag Dir etwas nach ‚Overkill‘ Aussehen, aber das wird später unerlässlich.

Wenn Du dann einzelne Parts entwickelst, dann kannst Du Dich mit dem Berich Testing beschäftigen. Ohne Unit Tests ist jede Entwicklung gleich für einen Zielort: Papierkorb. Ab einer gewissen Größenordnung (und da geht es noch nicht um große Projekte!) ist eine Entwicklung sonst schlicht unmöglich! Und die Qualität ist mehr wie problematisch!

Um den Taschenrechner zu nehmen: der soll doch etwas mehr machen können, oder? Also sollte er doch z.B. Eingaben richtig verarbeiten können. Z.B. gebe ich ein:
(
51
+
13
)
*
7
+
3
*
4

Wie kann man diese Eingaben intern speichern? Wie dann später auswerten? Punkt vor Strich soll er evtl. können?

Das könnte z.B. zu einer Baumstruktur werden. Jeder Baum besteht aus Nodes. Es gibt verschiedene Nodes:
- Zahl - speichert eine Zahl, hat keine Children
- Gruppierung - hat ein Child, evtl. Status Open/Closed
- Operation - Hier gibt es diverse Operationen. Je nach Operation hat man ein oder mehrere Children.

So ein Baum und jeder Node kann geprüft werden auf Vollständigkeit. Das bedeutet, dass es keine Nodes gibt, welche offene Children haben.
So ein Baum oder Node kann evaluiert werden. Der Zahl Node gibt dann nur die Zahl zurück, die Addition gibt halt die Auswertung vom linken Child + Auswertung vom rechten Child zurück, ....
Hier musst Du dann im Detail überlegen, wann welche Eingabe zulässig ist und wie du den Baum aufbaust. Dabei würde ich das Punkt vor Strich Rechnung erst mal weg lassen. Die Operationen werden in der Reihenfolde der Eingabe ausgewertet.
Wenn Du das hast, dann kannst Du noch überlegen, was das Punkt vor Strich bedeutet. Das Ist dann auch relativ einfach, du musst im Baum nur eine Art Drehung ausführen...

Wenn das noch zu kompliziert ist, dann bau einen Taschenrechner, der statt infix Notierung (Operation zwischen den Operanden wie 3 + 4) nur Präfix Notierung versteht, d.h. die Operation kommt vor den Operanden. Also + 3 4 statt 3 + 4. Ein 3 + ( 4 + 5 ) wäre ein + 3 + 4 5.

Das wäre so eine Sache, die mir so durch den Kopf geht. Das wäre eine sehr komplexe Übung mit OO drin und du kannst die einzelnen Teile gut testen da es kaum Abhängigkeiten nach außen gibt. Und du hast Abstrakte Datentypen... sich die Daten vorzustellen ist eine gute Übung. Kannst das aber auch sehr schön auf einem Zettel Papier durchspielen und so ....

Das einfach einmal kurz von meiner Seite aus.

Viele Grüße und Viel Spaß und Erfolg,

Konrad
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
brypa Wie Programmieren lernen? Java Basics - Anfänger-Themen 15
S Kreisberechnung3 Buch: Programmieren lernen mit Java von Hans-Peter Habelitz Java Basics - Anfänger-Themen 39
D Richtig für Programmieren an der UNI lernen Java Basics - Anfänger-Themen 8
S Erste Schritte Hilfe beim lernen von Programmieren Java Basics - Anfänger-Themen 2
P Selber Programmieren lernen oder Uni? Java Basics - Anfänger-Themen 12
Matze 12 häufige Fehler beim Programmieren lernen Java Basics - Anfänger-Themen 2
V Buch:Programmieren lernen mit Java-Aufgaben zu schwer ? Java Basics - Anfänger-Themen 2
R Operatoren Möglicher Fehler im Buch Programmieren lernen mit Java Java Basics - Anfänger-Themen 7
A Variablen Programmieren lernen mit Java -Fehler Java Basics - Anfänger-Themen 3
C "Programmieren lernen mit Java" Fehler Java Basics - Anfänger-Themen 24
K Erste Schritte Bruder will programmieren lernen! Java Basics - Anfänger-Themen 18
J "vernünftig" programmieren lernen Java Basics - Anfänger-Themen 3
M Einsteigerprobleme beim Programmieren lernen Java Basics - Anfänger-Themen 11
K Programmieren lernen? Java Basics - Anfänger-Themen 13
T Java wirklich gut zum programmieren lernen? Java Basics - Anfänger-Themen 43
G Programmieren lernen Java Basics - Anfänger-Themen 7
J Programmieren lernen Java Basics - Anfänger-Themen 5
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
B OOP was heißt objektorientiertes Programmieren (fragt ein absoluter Anfänger) Java Basics - Anfänger-Themen 17
laxla123 Rechteck programmieren Java Basics - Anfänger-Themen 4
A Erste Schritte Dynamische Stempel im PDF Exchange programmieren Java Basics - Anfänger-Themen 0
D Programmieren nach UML Java Basics - Anfänger-Themen 2
Y Taschenrechner programmieren Java Basics - Anfänger-Themen 3
B Überweisung programmieren Java Basics - Anfänger-Themen 7
bluetrix Programmieren eines Bots für Zahlen-Brettspiel Java Basics - Anfänger-Themen 9
D Ampel Programmieren die jede 10 sekunden ihre farbe wechselt Java Basics - Anfänger-Themen 6
J ArrayList add methode selbst programmieren Java Basics - Anfänger-Themen 10
00111010101 Objektorientiertes Programmieren mit Vererbung (Zahlen in Array verschwinden) Java Basics - Anfänger-Themen 3
thor_norsk Fernseher programmieren mit Java Java Basics - Anfänger-Themen 4
M Jenga Regeln Java Programmieren Java Basics - Anfänger-Themen 1
M Ressourcensparend programmieren Java Basics - Anfänger-Themen 3
G Spielerwechsel programmieren Java Basics - Anfänger-Themen 1
J Solitär (Brettspiel) programmieren Java Basics - Anfänger-Themen 3
H Objektorientiertes Programmieren Java Basics - Anfänger-Themen 4
K 12- Stunden Konverter Programmieren Java Basics - Anfänger-Themen 1
WAB9703-04 Programm zum automatischen Ausfüllen von Formularen programmieren Java Basics - Anfänger-Themen 3
L Zahlenspiel programmieren Java Basics - Anfänger-Themen 1
TimoN11 Automat programmieren Java Basics - Anfänger-Themen 4
G Erste Schritte Array Mittelwert Methode Programmieren Java Basics - Anfänger-Themen 5
ehmo würfelspiel programmieren anfänger Java Basics - Anfänger-Themen 1
N Ufospiel programmieren Java Basics - Anfänger-Themen 13
KogoroMori21 Vorbereitung auf die Programmieren Klausur vom ersten Semester Java Basics - Anfänger-Themen 4
Drinkerbell Erste Schritte Zu blöd zum Programmieren? Java Basics - Anfänger-Themen 9
G Stack programmieren Java Basics - Anfänger-Themen 6
I Brauche Hilfe bei Objektorientiertem programmieren Java Basics - Anfänger-Themen 23
T Auf einem Schachbrett bewegen programmieren Java Basics - Anfänger-Themen 2
G Bruchrechner programmieren Java Basics - Anfänger-Themen 6
G Ufo Spiel programmieren Java Basics - Anfänger-Themen 13
D Schachbrett (8x8) programmieren Java Basics - Anfänger-Themen 3
J Spiel programmieren Java Basics - Anfänger-Themen 16
J Hilfe beim Programmieren Java Basics - Anfänger-Themen 5
M Quiz in Java programmieren mit Array Java Basics - Anfänger-Themen 8
S Spiel-Programmieren. Wenn ein Objekt den anderen berührt. Java Basics - Anfänger-Themen 6
K Java programmieren Java Basics - Anfänger-Themen 6
V_Fynn03 Kontrolle des Quelltextes (Bank programmieren)(GUI) Java Basics - Anfänger-Themen 6
D Was tun gegen zu komplzierten Denken beim Programmieren Java Basics - Anfänger-Themen 27
V_Fynn03 Bruchrechner programmieren (2 Klassen) Java Basics - Anfänger-Themen 9
N Ticketautomat programmieren Java Basics - Anfänger-Themen 63
M Rechner programmieren Java Basics - Anfänger-Themen 3
V_Fynn03 Java Bruchrechner programmieren Java Basics - Anfänger-Themen 13
J Java Suchfunktion Programmieren Java Basics - Anfänger-Themen 1
L Erste Schritte Bin ich "zu dumm" oder nicht geeignet zum Programmieren? Java Basics - Anfänger-Themen 3
U Ist jemad gut in programmieren (JAVA) und kann mir helfen? Java Basics - Anfänger-Themen 1
H Uhr programmieren Java Basics - Anfänger-Themen 10
T Schalter programmieren Java Basics - Anfänger-Themen 17
S Ampel Programmieren Java Basics - Anfänger-Themen 5
P Erste Schritte Probleme mit dem Programmieren Java Basics - Anfänger-Themen 12
B Folgende Abfrage dynamisch programmieren? Java Basics - Anfänger-Themen 8
D Beim Programmieren auf die Logisch einfache Lösung kommen. Java Basics - Anfänger-Themen 17
B UML Klassen Diagramm zu Java Code Programmieren und ausführen Java Basics - Anfänger-Themen 21
steven789hjk543 Kann man mit Java und Eclipse einen Virus programmieren? Java Basics - Anfänger-Themen 13
S Spiel programmieren mit Java Java Basics - Anfänger-Themen 11
A Kalender programmieren, ich finde meinen Fehler nicht. Java Basics - Anfänger-Themen 9
V Zeichenkette programmieren Java Basics - Anfänger-Themen 20
O Fenster programmieren Java Basics - Anfänger-Themen 2
R Uebersichtlicher bzw. besser Programmieren Java Basics - Anfänger-Themen 13
N Dynamisches Programmieren/Fibonacci Java Basics - Anfänger-Themen 1
B Spielfiguren für ein Beute-Jägerspiel programmieren Java Basics - Anfänger-Themen 12
F ArrayListe manuell programmieren? Java Basics - Anfänger-Themen 24
X Erste Schritte Einstieg ins Programmieren Java Java Basics - Anfänger-Themen 2
O Erste Schritte ln(1+x) Reihe Programmieren Java Basics - Anfänger-Themen 6
Ellachen55 Weihnachtsbaum in Eclipse programmieren Java Basics - Anfänger-Themen 6
L Klassen Geldrückgabe - Aufgabe Programmieren Java Basics - Anfänger-Themen 23
H Stern Dreieck (Buch: Grundkurs Programmieren) Java Basics - Anfänger-Themen 2
V Variablen Vorkommen programmieren Java Basics - Anfänger-Themen 18
S Dreieckssignal programmieren Java Basics - Anfänger-Themen 5
K Fehler beim Programmieren von TicTacToe Java Basics - Anfänger-Themen 12
M Spiel programmieren Java Basics - Anfänger-Themen 16
A Fenster programmieren Java Basics - Anfänger-Themen 1
V OOP Kassensystem objektorientiert programmieren Java Basics - Anfänger-Themen 15
A Erste Schritte DoodleJump programmieren: Kollisionsabfrage Java Basics - Anfänger-Themen 4
CT9288 Kleine Simulation programmieren, denkanstöße erbeten Java Basics - Anfänger-Themen 19
H Welche IDE zum Buch "Programmieren mit Java" von Reinhard Schiedermeier des Verlags Pearson Studium Java Basics - Anfänger-Themen 19
D Könnt ihr mir helfen beim Programmieren eines Ping Pong Spieles? Java Basics - Anfänger-Themen 9
M Rekursive Methode Programmieren Java Basics - Anfänger-Themen 3
I Spielbrett programmieren: Datenstruktur Java Basics - Anfänger-Themen 3
G Rekursives Programmieren --> harmonische Reihe Java Basics - Anfänger-Themen 3
A Endlich anfangen mit Programmieren ! Java Basics - Anfänger-Themen 8
L Karawane programmieren Java Basics - Anfänger-Themen 0
kokojamboo92 Spiel programmieren Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben