The Art Of Computer Programming
Geizhals » Forum » Programmierung » The Art Of Computer Programming (39 Beiträge, 1496 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
......
Re(6): The Art Of Computer Programming
16.09.2020, 10:40:49
Einen virtuellen Assembler Code kannst du schwer aus einem Buch abtippen. Kennst du die Bücher überhaupt?

Für Code Monkeys gebe ich dir recht, die müssen das nicht unbedingt verstehen. Solange ihnen jemand ein klares Design vorgibt.

Aber beim Design kann es schon von Vorteil sein, welche Funktionen bzw Datenstrukturen aus den hunderten Libraries man einsetzt.

Wenn man zB nicht weiß, welche verschiedenen No-SQL Datenbank-Typen (=Datenstrukturen) es gibt und in welchen Situationen man welchen Typ am besten einsetzt, wird am Ende vielleicht eine suboptimale Lösung (Performance…) rauskommen.

Gleiches gilt für die Auswahl der geeigneten Programmiersprache & Umgebung. Es gibt Probleme, die man in 2 Minuten in Excel gelöst hat. Klassisch in Java oder Python auskodiert dauerts u.U. eine Woche.

Und ich habe schon tragische Implementierungen gesehen, einfach weil der Monkey keine Ahnung von Rekursion hatte und daher versuchte, einen trivialen Algorithmus durch „flachklopfen“ der Rekursion zu erstellen. Mit allen Limitierungen, die die Rekursion an sich aufhebt.

Für mich ist Programmieren ein Handwerk - KEINESFALLS herabwürdigend gemeint!
Ein Maurer soll gut mauern können. Aber Materialauswahl, Farben oder Raumgrößen entscheidet meist ein anderer. Aber trotzdem ist es oft hilfreich, wenn ein Maurer breitere Kenntnisse hat.



16.09.2020, 11:26 Uhr - Editiert von Paulas_Papa, alte Version: hier
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
.......
Re(7): The Art Of Computer Programming
16.09.2020, 11:26:17
Wenn man zB nicht weiß, welche verschiedenen No-SQL Datenbank-Typen
(=Datenstrukturen) es gibt und in welchen Situationen man welchen Typ am
besten einsetzt, wird am Ende vielleicht eine suboptimale Lösung
(Performance…) rauskommen.


Aha.

No-SQL Datenbank-Typen = Datenstrukturen, hmm...

Und ich habe schon tragische Implementierungen gesehen, einfach weil der
Monkey keine Ahnung von Rekursion hatte und daher versuchte, einen trivialen
Algorithmus durch „flachklopfen“ der Rekursion zu erstellen. Mit allen
Limitierungen, die die Rekursion an sich aufhebt.


Welche Limitierungen heben Rekursionen denn auf? Das "Flachklopfen" der Rekursion ist normalerweise eine Optimierung um sich den Stack zu sparen wenn TCO nicht drin ist. Hat früher der Assembler-Programmierer gerne gemacht (niemand braucht stack overflows). Heute zugegebenermaßen nicht mehr so interessant.

Für mich ist Programmieren ein Handwerk - KEINESFALLS herabwürdigend gemeint!
Ein Maurer soll gut mauern können. Aber Materialauswahl, Farben oder
Raumgrößen entscheidet meist ein anderer. Aber trotzdem ist es oft hilfreich,
wenn ein Maurer breitere Kenntnisse hat.


Das Tragische heute ist, dass der "andere" meist nicht mal grundlegende Kenntnisse vom Handwerk oder von der Sicht des Users hat. Deshalb sehen die auch die Häuser so be*PIEP* aus.

----------------------------------------------------------------------------------------------------------
Alle aktuellen Erkenntnisse zu COVID-19, von Wissenschaftlern für Journalisten

Faustregel: 1 Langstreckenflug emittiert (pro Passagier) so viel CO2 wie 1 Jahr Autofahren (pro Auto) Yes, Prime Minister Global Warming Part 1, Part 2


16.09.2020, 11:31 Uhr - Editiert von Lazy Jones, alte Version: hier
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
.........
Re(9): The Art Of Computer Programming
16.09.2020, 11:54:43
Habe ich einen Graphen vor mir, oder eher ein Key-Value Problem? Ist das
vielleicht assoziativ oder hierarchisch? Oder ist es vielleicht eine
objektbasierte Sache oder eher eine dokumentbasierte.


Und um das zu erkennen braucht man Bücher? Nicht jeder ist auf der Nudelsuppen daher gschwommen.

Das alles sind schlussendlich Datenstrukturen. Eine Datenbank persistiert
Datenstrukturen.


Ah geh. Wer hätte das gedacht.

Und Flachklopfen macht in manchen Situationen sicher Sinn. Bloß würde man es erst tun, wenn man erkennt, dass die saubere, rekursive Implementierung neue
Probleme aufwirft. Einfach weil wartbarer Code über den Life Cycle hinweg
enorme Vorteile bringt.


Das Flachklopfen übernimmt heutzutage der Compiler. Assembler ist eher eine kleine Nische für sehr hardwarenahe Programmierung. Aber selbst dafür wird heutzutage eher C oder C++ eingesetzt.

In meinem Fall war es wirklich lustig: nach einigen Tagen tauchte der Typ mit
der Frage auf, wie viele Nachfolger denn ein Task in etwa haben könnte. Dafür
müsste er nämlich das Array dimensionieren, in dem er mangels Kenntnis der
Rekursion "flachklopft". Ein anschließender Code review zeigte, dass aus einem
gedachten rekursiven 10-Zeiler plötzlich mehr als 100 Zeilen Chaos entstanden
waren.


Tjo, unfähige Programmierer gibts halt überall. Das hat IMHO wenig mit der Ausbildung zu tun. Wir hatten schon viele Studierte bei uns in der Firma, die dann unfähig waren die einfachsten SQL-Abfragen zu schreiben.

Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung