Richtig für Programmieren an der UNI lernen

Darknet

Bekanntes Mitglied
Ich möchte mal mein Problem mit den Programmieren in Klausuren erzählen und zwar.

Merke ich immer wenn ich lerne das ich zu umständlich Programmiere der Code wird aufgebläht und es dauert länger und ist umständlicher.
Aber wie lernt man auf die logisch einfache Lösung zu kommen?
 

White_Fox

Top Contributor
Mein Prof sagt immer: Programmieren lernt man nur dadurch, daß man es macht. Und soweit ich das heute beurteilen kann, hatte er Recht.
 
X

Xyz1

Gast
Das Was ist klar, nur das Wie da ist man noch etwas uneins.
Kleinkinder lernen zB durch fühlen und tasten ganz gut. Nur ist das für Erwachsene die lesen und schreiben können nur bedingt übertragbar...
Besonders schnell lernt ein Kind übrigens zB wenn es auf eine heiße Herdplatte fasst, also try & Error...
Hinweis: nein, ich lasse natürlich niemanden auf Herdplatten fassen. Nur ein Beispiel.
 

ocsme

Top Contributor
@Darknet, ich kenne das Problem nur zu gut.
Programmieren lernt man wie hier schon gesagt nur indem man es TUT. Doch weiß ich nur zu gut wie man sich fühlt wenn man eine Idee hat schreibt ein Programm es läuft super doch dann kommt ein Kommilitone oder jemand aus dem Forum :D hihi und sagt naja ist ein 3 Zeiler o_O ich hab doch 100 Zeilen Code geschrieben?

Doch dazu kann ich nur sagen von solchen Gedanken solltest du dich lösen. Auch ist es heute glaube ich nicht mehr so gerne gesehen wenn man 20 Zeilen zu 1er Zeile schreibt! ( Vorausgesetzt natürlich das Funktioniert). Denn wer soll so etwas später noch lesen können? Stellt man sich vor das macht jeder dann hat man 1000 von solchen Zeilen wer soll da noch durchblicken?

Klar sieht es super GEIL aus wenn man dann so ein 1,2,3.. Zeiler da stehen hat wo jemand anderes 20 Zeilen für brauch doch unser Prof sagt dann immer mit einem Lächeln und wenn ihr euch den Code ein halbes Jahr später wieder anschaut (Ohne Kommentare natürlich die brauch man ja nicht :p)! Was dann?

Wie gesagt ich denke leider auch noch super oft so. Doch vieles kommt auch mit der Zeit :)

Hoffe ich konnte dir mit diese gebrochenen Text etwas helfen :)

LG
 

M.L.

Top Contributor
Was immer eine logisch einfache Lösung für ein Problem sein kann. Diese einfache Lösung kann immerhin das (Zwischen)Ergebnis längerer Versuch-und-Irrtum Verfahren sein. Weiterhin kann das Betrachten anderer Codes helfen. Und nicht einfach " drauf los" programmieren, sondern nach Clean Code Prinzipien: https://cleancodeacademy.com
 

White_Fox

Top Contributor
Klar sieht es super GEIL aus wenn man dann so ein 1,2,3.. Zeiler da stehen hat wo jemand anderes 20 Zeilen für brauch doch unser Prof sagt dann immer mit einem Lächeln und wenn ihr euch den Code ein halbes Jahr später wieder anschaut (Ohne Kommentare natürlich die brauch man ja nicht :p)! Was dann?

Wie gesagt ich denke leider auch noch super oft so. Doch vieles kommt auch mit der Zeit :)
Sobald du dich das erste Mal so richtig in deinem eigenen Code verlaufen hast, so tief daß du alles wieder umwirfst und nochmal von vorne anfängst (was in solchen Situationen nicht selten sogar das Beste ist), lernst du das ganz fix. Glaub mir, ich habe da Erfahrung...strukturierte Arbeit hab ich auf die harte Tour gelernt, aber der Schmerz ist ja der große Lehrer der Menschen. ;)

Aber, kleine Erfahrung: Auch wenn es anfangs wehtut ist es manchmal wirklich das Beste, alles umzuwerfen (Heil VKS!) und ein paar Schritte zurückzugehen und von vorne anzufangen. So hat man Gelegenheit, aus seinen Fehlern zu lernen. In meinem Projekt, an dem ich jetzt ca. 1,5a arbeite, habe ich einige Logkommentare wie "Der aktuelle Weg ist eine Sackgasse -> Letzter Commit vor dem großen Umbruch" drin.
Aber: dafür habe ich seit heute endlich wieder eine lauffähige Version, und eine Softwarestruktur die ich ganz gut überblicke. (Es sind zwar nur 79 Dateien in 12 Packeten, aber immerhin. :))
 

mihe7

Top Contributor
Merke ich immer wenn ich lerne das ich zu umständlich Programmiere der Code wird aufgebläht und es dauert länger und ist umständlicher.
Das ist ganz normal. Anfangs geht es erstmal darum, Probleme zu lösen. Den Rest würde ich als Kombination aus Erfahrung und bewusster Zielsetzung sehen: wenn Du weißt, dass Du es "im Prinzip kannst", dann kannst Du Dich darauf konzentrieren, bessere Lösungen zu finden. Das kannst Du natürlich auch "trainieren", indem Du z. B. ein Problem nimmst, dieses löst und anschließend nach anderen Lösungen suchst. Im Clean Code Bereich gibt es dafür Katas. Einfach mal Google bemühen.
 

MoxxiManagarm

Top Contributor
Programmieren besteht aus vielen Aspekten, welche man ich auf verschiedene Weisen aneignen kann/muss.

Zum einen wäre da die Grammatik. Diese ist eigentlich dein Vokabular wie bei jeder Fremdsprache auch. Du lernst sie durch Anwendung. Du kannst sie jederzeit in x-beliebigen Nachschlagewerken anschauen. Je häufiger du sie verwendest, umso sicherer kannst du damit umgehen. Auch gehören ein paar Gepflogenheiten dazu, so wie man Sätze mit Groß- und Kleinschreibung und Satzzeichen verziert, wird auch Code entsprechend formuliert. Diese Gepflogenheiten mögen sich leicht bei einigen Sprachen unterscheiden. Wenn man das einmal beherrscht, sind diese Grundlagen für neue Sprachen meist total schnell auf andere Sprachen angewandt. Du findest immer wieder Gemeinsamkeiten.

Dann kommen ein paar Fortgeschrittene Techniken dazu um größere Probleme meistern zu können. Dazu gehören allgemeine Themen wie Algorithmen, Patterns und Datenstrukturen. Das ist viel Lernen und Verstehen. Du musst ihre Vor- und Nachteile kennen um sie gezielt einsetzen zu können. Sie sind unabhängig von der eigentlichen Sprache. Das musst du nicht alles sofort können. Dieser Wissensbestand wächst immerzu.

Dann kommen technische Aspekte hinzu, z.B. Datenformate (json, xml), REST API, Cryptography, Datenbanken - all das. Diese sind meist auf spezielle Aufgaben zugeschnitten. Auch hier heißt es lernen und verstehen. Eigne dir einfach nach und nach Teile an.

Der wohl am schwersten zu erlernende Aspekt ist das Vorgehen, die logische zielgerichtete und möglichst einfache Herangehensweise. Viele scheitern daran, nicht jeder kann es. Hier hilft sogar teilweise das Lösen von non-Programmier-Knobelaufgaben zum Üben. Gerade bei objektorientierten Sprachen wie Java kann ich dir nur einen Tipp geben, stelle dir Problemstellungen bildlich vor. Du musst diese Bilder dann "nur" in Code übersetzen. Ich weiß, das mag auch vielen schwer fallen, aber das ist es nicht.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Klassen für Objekt richtig erstellen Java Basics - Anfänger-Themen 8
? Wie sind ESCAPE-Sequenzen (z.B \f für einen Seitenvorschub) richtig anuwenden? Java Basics - Anfänger-Themen 3
S Pfad für Datei falsch - wie richtig angeben? Java Basics - Anfänger-Themen 7
G Richtig OO-programmierte Eventhandler für JPopupMenu Java Basics - Anfänger-Themen 3
7 Formel für Apfelschiessen funktioniert nicht richtig Java Basics - Anfänger-Themen 7
G ersatz für header.h in java ? swict-case kanns nicht richtig Java Basics - Anfänger-Themen 6
D Regex greift nicht richtig Java Basics - Anfänger-Themen 4
C Darstellung von Datum - Codes richtig? Java Basics - Anfänger-Themen 2
C Rechnen mit Brüchen, ist meine Lösung soweit richtig? Java Basics - Anfänger-Themen 4
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
K Hab ich dass so richtig erklärt (Objekte und Referenzen)? Java Basics - Anfänger-Themen 5
I Bild richtig speichern / Hochkant im File Explorer, nach Upload vertikal Java Basics - Anfänger-Themen 9
B Hashmap richtig bauen, die Tripel auf Zahl abbildet? Java Basics - Anfänger-Themen 10
K Warum läuft das Programm nicht(bzw. nicht richtig) Java Basics - Anfänger-Themen 4
K REGEX - Rechnungsbetrag wird nicht richtig ausgelesen. Java Basics - Anfänger-Themen 3
B Semaphoren in Abhängigkeit an Bedingungen richtig setzen Java Basics - Anfänger-Themen 3
berserkerdq2 Habe ich die Aufgabe richtig gelöst? Java Basics - Anfänger-Themen 3
R CSV Reader läuft nicht richtig an Java Basics - Anfänger-Themen 8
E Umlaute und Sonderzeichen werden nach der Build Project nicht richtig angezeigt Java Basics - Anfänger-Themen 2
G jButton führt Main Methode nicht richtig aus Java Basics - Anfänger-Themen 3
G Main Methode wird beim ersten Aufruf nicht richtig ausgeführt Java Basics - Anfänger-Themen 1
milan123 das ist meine aufgabe ich hab das problem das bei mir Wenn ich die Richtung der Linien verändern will und drei davon sind richtig, verändere ich die 4 Java Basics - Anfänger-Themen 3
JensXF Methode überschreiben, so richtig? Java Basics - Anfänger-Themen 4
C Programm das feststellen kann, ob eine eingegebene Zahl einem Schaltjahr entspricht, richtig geschrieben? Java Basics - Anfänger-Themen 11
C Sind die while-Schleifen richtig in for-Schleifen ersetzt worden? Java Basics - Anfänger-Themen 8
S Daten/Klassen/Packages richtig updaten!? Java Basics - Anfänger-Themen 2
L Ist der Code richtig Java Basics - Anfänger-Themen 3
J Wie bestehenden Quellcode in IDE richtig übernehmen Java Basics - Anfänger-Themen 27
F Methoden Methode richtig aufrufen Java Basics - Anfänger-Themen 3
D Klassen Klassendiagramm richtig erstellen Java Basics - Anfänger-Themen 20
J Module richtig einbinden Java Basics - Anfänger-Themen 2
B Sind meine If-Statements richtig angesetzt ? Java Basics - Anfänger-Themen 27
V Boolean Wert nicht richtig erkannt Java Basics - Anfänger-Themen 4
X Wie Generics richtig benutzen ? Java Basics - Anfänger-Themen 5
P Stringbuilder richtig einsetzen Java Basics - Anfänger-Themen 1
T if else Befehl funktioniert nicht richtig Java Basics - Anfänger-Themen 27
A Array richtig füllen Java Basics - Anfänger-Themen 2
S String richtig formatieren Java Basics - Anfänger-Themen 2
P Methoden richtig anwenden Java Basics - Anfänger-Themen 3
O Popoup Menü im JTable richtig anzeigen Java Basics - Anfänger-Themen 6
X Best Practice Ein int Array richtig mischen Java Basics - Anfänger-Themen 20
D Richtig Vorbereiten auf eine Programmier Klausur Studium. Java Basics - Anfänger-Themen 7
M ObservableList wird nicht richtig geleert Java Basics - Anfänger-Themen 0
T Sortieralgorithmen richtig? Java Basics - Anfänger-Themen 1
X Objekte einer ArrayList richtig ausgeben? Java Basics - Anfänger-Themen 8
S Wie implementiere ich MouseDragged richtig Java Basics - Anfänger-Themen 7
F Konstruktor richtig implementiert? Frage zu Benutzereingaben... Java Basics - Anfänger-Themen 9
I OOP Objektnamen über die Konsole richtig einlesen Java Basics - Anfänger-Themen 9
P Input/Output PQ-Formel wird nicht richtig berechnet Java Basics - Anfänger-Themen 6
P Zeichenkette Zeichen ausschlißen funktioniert nicht richtig Java Basics - Anfänger-Themen 9
H Wie lerne ich Java richtig? Java Basics - Anfänger-Themen 2
N Ich weiß nicht, wie ich meinen Code richtig designen soll und komme nicht weiter Java Basics - Anfänger-Themen 4
B Wie instanzisiert man einen Cursor richtig? Java Basics - Anfänger-Themen 3
J Polymorphie und Dynamisches Binden richtig nutzen Java Basics - Anfänger-Themen 11
N Best Practice Ist die Sortierung richtig? Java Basics - Anfänger-Themen 3
J Erste Schritte Lottozahlen richtig generieren. Java Basics - Anfänger-Themen 12
J Behauptung so richtig? Java Basics - Anfänger-Themen 10
R Listen richtig implementieren Java Basics - Anfänger-Themen 3
B OOP Objekt in IF erzeugen - funktioniert nicht so richtig Java Basics - Anfänger-Themen 11
A Methode richtig überladen Java Basics - Anfänger-Themen 6
H Aufgabe so richtig gelöst? Java Basics - Anfänger-Themen 14
S Code richtig / besser machbar? (Nicht sicher, ob Code selbst falsch ist) Java Basics - Anfänger-Themen 4
W Ist mein Struktogram richtig erstellt worden? Java Basics - Anfänger-Themen 4
L Taschenrechner mit switch und while funktioniert noch nicht richtig Java Basics - Anfänger-Themen 22
U Mehrfach verwendete Sub-Klassen richtig einbinden Java Basics - Anfänger-Themen 4
L Schleife funktioniert nicht richtig Java Basics - Anfänger-Themen 12
Meeresgott OOP Richtig mit java.util.Property umgehen Java Basics - Anfänger-Themen 22
Y Erste Schritte Ich verstehe this. nicht so richtig Java Basics - Anfänger-Themen 5
I Programm von mir - keine Ahnung mehr ob richtig falsch:-( Java Basics - Anfänger-Themen 6
M Abstände richtig wiedergeben Java Basics - Anfänger-Themen 2
S nio move() funktioniert nicht richtig Java Basics - Anfänger-Themen 2
J Timer richtig pausieren Java Basics - Anfänger-Themen 2
B Ist meine Klasse richtig kommentiert? Java Basics - Anfänger-Themen 2
kilopack15 Ist diese setter-Methode richtig? Java Basics - Anfänger-Themen 2
H OOP, wie gehts richtig? (Beispiel von meinem Prof) Java Basics - Anfänger-Themen 6
S Primzahlen berechnen funktioniert nicht richtig Java Basics - Anfänger-Themen 1
kilopack15 Lösungsansatz richtig? Java Basics - Anfänger-Themen 23
Meeresgott OOP Socket Verbindung richtig Kapseln Java Basics - Anfänger-Themen 0
Meeresgott OOP Gui, Logik und Datenbank richtig aufbauen Java Basics - Anfänger-Themen 43
T Datum wird auf der Konsole richtig ausgegeben, aber im Textarea kommt ERROR Java Basics - Anfänger-Themen 8
C Warum funktioniert mein If Statement nicht richtig? Java Basics - Anfänger-Themen 18
J Aufgabe(Threads) richtig verstanden/implementiert Java Basics - Anfänger-Themen 27
K Erste Schritte Wie lerne ich Java richtig? Java Basics - Anfänger-Themen 22
U Richtig *.properties speichern Java Basics - Anfänger-Themen 0
N Lambda Ausdrücke richtig schreiben Java Basics - Anfänger-Themen 4
B OOP Wie benutze ich die Main Funktion richtig? Java Basics - Anfänger-Themen 10
3 Gitternetz richtig darstellen Java Basics - Anfänger-Themen 3
B Exception richtig einbinden Java Basics - Anfänger-Themen 1
D CSV Files richtig zusammenführen Java Basics - Anfänger-Themen 3
D Array richtig ausgeben Java Basics - Anfänger-Themen 6
Z HashMap richtig benutzen Java Basics - Anfänger-Themen 2
S Variable (int) erhöht sich nicht richtig Java Basics - Anfänger-Themen 18
J Vererbung Wurden die Aufgaben richtig programmiert? Java Basics - Anfänger-Themen 20
J Iterator Funktioniert nicht richtig in StackImplementierung Java Basics - Anfänger-Themen 3
L0MiN Input/Output Wie kann ich Kompilierfehler richtig ausgeben lassen (Runtime)? Java Basics - Anfänger-Themen 1
J Programm im Jar-Format funktioniert nicht richtig Java Basics - Anfänger-Themen 9
L Arrays richtig initialisieren Java Basics - Anfänger-Themen 1
V Java Regex richtig parsen Java Basics - Anfänger-Themen 2
O Programm funktioniert nur im Debugger richtig Java Basics - Anfänger-Themen 2
M Programm wird nicht richtig ausgeführt Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben