Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 – SELFHTML-Forum Forum als Ergänzung zum SELFHTML-Wiki und zur Dokumentation SELFHTML https://forum.selfhtml.org/self Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 10:44:42 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736593#m1736593 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736593#m1736593 <p>Hello,</p> <p>gibt es hier überhaupt noch jemanden, der die Funktionsweise einer Exception in den jeweiligen IDEs noch vollständig bis runter auf die Prozessorebene erklären kann mit allen Seiteneffekten und Nebenbedingungen?</p> <p>Ich würde für ein akzepteables Wiki-Feature 100€ Prämie ausloben. Da ich es ja bekanntermaßen nicht so dicke habe, wäre ich über weitere Sponsoren (und Lektoren) begeistert. Mein Angebot gilt vorerst bis zum 31.12.2019.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 12:12:14 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736594#m1736594 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736594#m1736594 <blockquote> <p>gibt es hier überhaupt noch jemanden, der die Funktionsweise einer Exception in den jeweiligen IDEs noch vollständig bis runter auf die Prozessorebene erklären kann mit allen Seiteneffekten und Nebenbedingungen?</p> </blockquote> <p>Alle IDEs, alle Programmiersprachen und dann runter über den Interpreter/Compiler bis hin zur Maschinensprache?</p> <blockquote> <p>Ich würde für ein akzepteables Wiki-Feature <strong>100€</strong> Prämie ausloben.</p> </blockquote> <p><strong>Getaggt unter "Jobangebote".</strong></p> <p>Hehe. Wir haben ein Mindestlohngesetz. Selbst eine Linkliste wäre teurer.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 13:18:25 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736595#m1736595 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736595#m1736595 <p>Hallo TS,</p> <p>ich würde es vermeiden wollen, in einer IDE eine Exception zu bekommen. Das ist nicht gut für die Nerven...</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - clusi </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 13:23:24 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736596#m1736596 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736596#m1736596 <p>Aloha ;)</p> <blockquote> <p>gibt es hier überhaupt noch jemanden, der die Funktionsweise einer Exception in den jeweiligen IDEs noch vollständig bis runter auf die Prozessorebene erklären kann mit allen Seiteneffekten und Nebenbedingungen?</p> </blockquote> <p>Ich sehe den Usecase dafür nicht so. Rein akademisch ist das zwar sicher auch ganz nett, aber magst du mir erläutern, was man davon praktisch gesehen hat, falls es da was gibt?</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 18:25:17 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736599#m1736599 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736599#m1736599 <p>Gibts überhaupt noch welche die ohne IDE entwickeln können?</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 09:51:43 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736606#m1736606 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736606#m1736606 <p>Hallo TS,</p> <p>erklären kann ich dazu ein paar Sachen, auch ohne Recherche. Für Wiki-Level würde ich noch ein paar Sachen nachlesen.</p> <p>Die Abläufe in einer interpretierten Umgebung sind aber jedenfalls anders als in einer compilierten.</p> <p>Bei (in Maschinensprache) compilieren Programmen können dann auch noch Betriebssystem-Eigenheiten dazu.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - clusi </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 15:20:20 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736597#m1736597 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736597#m1736597 <p>Hello,</p> <blockquote> <p>ich würde es vermeiden wollen, in einer IDE eine Exception zu bekommen. Das ist nicht gut für die Nerven...</p> </blockquote> <p><em>chchchch</em></p> <p>Hast Du da nicht ein Ironie/Humor-Kennzeichen vergessen?</p> <p>@ursus contionabundo:<br> Jedenfalls reden wir heute immer über Sachen, über die kaum noch jemand weiß, wie sie eigentlich funktionieren. Und ich habe nicht von gerechtem Lohn gesprochen für eine ausführliche Darlegung, sondern dass <strong>ICH</strong> dafür 100€ locker mache, in der Hoffnung, dass sich noch mehr Sponsoren finden würden, um eine gerechte Bezahlung zu ermöglichen ;-P</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 22:04:56 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736602#m1736602 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736602#m1736602 <p>Aloha ;)</p> <blockquote> <p>Jedenfalls reden wir heute immer über Sachen, über die kaum noch jemand weiß, wie sie eigentlich funktionieren.</p> </blockquote> <p>Ich kann Küchenmagnete auch dann vorzüglich dazu benutzen, meine Einkaufsliste damit zu befestigen, wenn ich die quantenmechanische Ursache für Magnetismus nicht verstanden habe.</p> <p>Will sagen: Ein Stück weit ist es völlig normal, sich auf einem Abstraktionslevel zu bewegen, ohne die darunterliegenden zu verstehen oder verstehen zu müssen.</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 18:59:15 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736600#m1736600 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736600#m1736600 <p>Ja, gibt es.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Fri, 16 Nov 18 19:56:12 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736601#m1736601 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736601#m1736601 <p>Tach!</p> <blockquote> <p>Gibts überhaupt noch welche die ohne IDE entwickeln können?</p> </blockquote> <p>Ja, aber warum sollte man sich das antun?</p> <p>dedlfix.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 09:46:12 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736605#m1736605 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736605#m1736605 <p>Hallo pl,</p> <p>bis 1995 war meine Entwicklungsumgebung ein Editor ohne jegliches Intellisense und ein Batchfile für den Compiler+Link. Sprache: dBase (Clipper).</p> <p>Immerhin gab es dort irgendwann Sourcelevel Debugger, das war eine Offenbarung.</p> <p>Dann musste ich mich ein paar Jahre mit Smalltalk herumärgern, bis wir fusioniert wurden und endlich Visual Studio.net ins Spiel kam.</p> <p>COBOL Programme auf dem IBM Host werden bis heute per Stupid-Edit und Compiler-Batch erstellt. Immerhin gibt's mittlerweile dort auch Sourcelevel Debugger.</p> <p>PHP habe ich anfangs auch nur mit Notepad und Debug-Echos gebaut.</p> <p>Heute ohne IDE ein C# Programm schreiben... Nein, könnte ich nicht. Ich könnte sicherlich ein Compile- oder Unittest-Script für ein C# Projekt bauen. Ich könnte ohne Intellisense editieren. Aber ich will nicht </p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - clusi </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 11:46:30 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736615#m1736615 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736615#m1736615 <blockquote> <p>Ja, gibt es.</p> </blockquote> <p>Ich hatte sogar schon Kunden in meiner Hotline die es geschafft haben eine <code>config.sys</code> mit <code>copy con</code> zu schreiben.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 10:03:38 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736607#m1736607 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736607#m1736607 <ul> <li>Weil der Beamer nur 1024x768px liefert.</li> <li>Weil 3(2) Kurstage für /P[a-z]{2-5}/-Grundlagen(Fortgeschritten) + IDE zu kurz sind.</li> <li>Weil manche IDEs auch nur Editoren mit Syntaxhervorhebung und einem Terminal sind.</li> <li>Weil manche IDEs natürlich an der fehlenden Umgebung für die Skripte scheitern (z.B. fehlt in PHP $_SERVER) und das Debugging dann doch anders gemacht werden muss.</li> <li>Weil die Position von <code>ALT</code> und <code>TAB</code> den Fingern bekannt sind.</li> </ul> <p>Andererseits fummle ich hier gerade (unter Linux) mit mit M$ Visual Code herum und freue mich darüber, dass der beim Tippen hilft:</p> <p><a href="/images/ed4cacc3-f07d-4c63-b5c3-2ce66dba23a0.png" rel="noopener noreferrer"><img src="/images/ed4cacc3-f07d-4c63-b5c3-2ce66dba23a0.png?size=medium" alt="" loading="lazy"></a></p> <p>wenn auch etwas merkwürdig... aber das spart manchmal den Blick in die Referenz.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 07:30:55 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736604#m1736604 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736604#m1736604 <blockquote> <p>Will sagen: Ein Stück weit ist es völlig normal, sich auf einem Abstraktionslevel zu bewegen, ohne die darunterliegenden zu verstehen oder verstehen zu müssen.</p> </blockquote> <p>So isses. Was OOP betrifft: Instanzen machen nur dann einen Sinn, wenn deren Methoden genutzt werden und es einen Grund gibt, diese Methoden in einem eigenen Namensraum bzw. einer eigenen Klasse zu definieren.</p> <p>Und wenn die Klasse nur eine Instanz zulässt ist schon die Instanziierung fraglich.</p> <p>MfG</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 15:43:47 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736627#m1736627 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736627#m1736627 <p>Aloha ;)</p> <blockquote> <p>So isses. Was OOP betrifft: Instanzen machen nur dann einen Sinn, wenn deren Methoden genutzt werden und es einen Grund gibt, diese Methoden in einem eigenen Namensraum bzw. einer eigenen Klasse zu definieren.</p> </blockquote> <p>Da würde ich dir völlig widersprechen. Ein großer Vorteil davon, wenn man Objekte als Instanz einer Klasse hat, ergibt sich gerade in typisierten Sprachen, in denen man die Struktur eines Objekts und seine Signatur durch einen einfachen Typcheck klären kann, ein großer Vorteil.</p> <p>Genauso sinnvoll ist OOP immer dann, wenn man viele ähnliche Objekte hat; dann ist es durchaus auch ein Vorteil, schon für die eigene Strukturierung und Lesbarkeit, das als Instanziierung einer Klasse zu realisieren.</p> <blockquote> <p>Und wenn die Klasse nur eine Instanz zulässt ist schon die Instanziierung fraglich.</p> </blockquote> <p>Da hast du nicht Unrecht. Klassen, die nur ein Singleton definieren, sind aus meiner Sicht eher ein Workaround dafür, dass es in den meisten Objektorientierten Sprachen keine einzelnen Objekte ohne Klassenzugehörigkeit gibt. Hier muss man mit Sicherheit keinen Sinn suchen, der über das Argument „aber die Sprache ist eben objektorientiert“ hinausgeht.</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 10:22:55 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736609#m1736609 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736609#m1736609 <p>Natürlich ist das eine Frage der Gewohnheit. Auch wenn ich mit dem <code>vi</code> begonnen habe meine ersten c-Programme zu schreiben und auch später ungezählte Perlscripts mit <code>vi</code> und <code>emacs</code> entwickelte, konnte ich mich nie mit diesen Editoren anfreunden.</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 12:25:58 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736621#m1736621 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736621#m1736621 <p>Hello,</p> <blockquote> <p>erklären kann ich dazu ein paar Sachen, auch ohne Recherche. Für Wiki-Level würde ich noch ein paar Sachen nachlesen.</p> <p>Die Abläufe in einer interpretierten Umgebung sind aber jedenfalls anders als in einer compilierten.</p> <p>Bei (in Maschinensprache) compilieren Programmen können dann auch noch Betriebssystem-Eigenheiten dazu.</p> </blockquote> <p>Genau ;-)</p> <p>Die Zusammenhänge sind mir übrigens so einigermaßen bekannt und ich vermute, dass hier noch keiner die totale Tragweite meines Aufrufes realisiert hat. Ich bin aber selber nicht in der Lage, meine privaten Erkenntnisse in der passenden Fachsprache nebst Erläuterungen wiederzugeben.</p> <p>#@ALL:<br> Also seht es doch mal positiv und macht einfach mit, Wege zum Verständnis zu ebnen, ohne ständig Gründe dagegen zu suchen :-)</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 10:17:59 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736608#m1736608 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736608#m1736608 <p>Tach!</p> <blockquote> <ul> <li>Weil der Beamer nur 1024x768px liefert.</li> <li>Weil 3(2) Kurstage für /P[a-z]{2-5}/-Grundlagen(Fortgeschritten) + IDE zu kurz sind.</li> </ul> </blockquote> <p>Es geht ums Entwickeln, nicht um Präsentationen oder Schulungen.</p> <blockquote> <ul> <li>Weil manche IDEs auch nur Editoren mit Syntaxhervorhebung und einem Terminal sind.</li> </ul> </blockquote> <p>Das soll ein Grund sein, wenigstens auf diesen Komfort zu verzichten?</p> <blockquote> <ul> <li>Weil manche IDEs natürlich an der fehlenden Umgebung für die Skripte scheitern (z.B. fehlt in PHP $_SERVER) und das Debugging dann doch anders gemacht werden muss.</li> </ul> </blockquote> <p>Eine IDE ohne Debug-Unterstützung würde mich nicht daran hindern, sie zu verwenden. Wenn Debugging nicht geht, hat man immer noch die anderen Features. Deshalb einen Editor vorzuziehen sehe ich keinen Sinn darin.</p> <blockquote> <p>Andererseits fummle ich hier gerade mit mit M$ Visual Code herum und freue mich darüber, dass der beim Tippen hilft: [...] wenn auch etwas merkwürdig... aber das spart manchmal den Blick in die Referenz.</p> </blockquote> <p>Eben. Natürlich kann man mit einem einfachen Editor entwickeln, aber die Hilfen unterm Mausklick oder einer Tastenkombination zu haben, die man sonst umständlicher durch Aufsuchen des Browsers und Aufsuchen der entsprechenden Handbuchseite holen müsste, hilft bei der Produktivität und dem Konzentrieren auf die eigentliche Aufgabe. Mit Autovervollständigung und direkten Hinweisen auf problematische Konstrukte kommt man auch schneller voran. Nur mit einem Editor zu entwickeln, würde ich jedenfalls nicht als heroische Tat ansehen.</p> <p>dedlfix.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 11:12:46 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736612#m1736612 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736612#m1736612 <p>hallo</p> <blockquote> <ul> <li>Weil der Beamer nur 1024x768px liefert.</li> <li>Weil 3(2) Kurstage für /P[a-z]{2-5}/-Grundlagen(Fortgeschritten) + IDE zu kurz sind.</li> <li>Weil manche IDEs auch nur Editoren mit Syntaxhervorhebung und einem Terminal sind.</li> <li>Weil manche IDEs natürlich an der fehlenden Umgebung für die Skripte scheitern (z.B. fehlt in PHP $_SERVER) und das Debugging dann doch anders gemacht werden muss.</li> <li>Weil die Position von <code>ALT</code> und <code>TAB</code> den Fingern bekannt sind.</li> </ul> <p>Andererseits fummle ich hier gerade (unter Linux) mit mit M$ Visual Code herum und freue mich darüber, dass der beim Tippen hilft:</p> <p><a href="/images/ed4cacc3-f07d-4c63-b5c3-2ce66dba23a0.png" rel="noopener noreferrer"><img src="/images/ed4cacc3-f07d-4c63-b5c3-2ce66dba23a0.png?size=medium" alt="" loading="lazy"></a></p> <p>wenn auch etwas merkwürdig... aber das spart manchmal den Blick in die Referenz.</p> </blockquote> <p>Ich habe kürzlich meine erste wirkliche Kundensite vollständig in meinem Javascript-Editor Modul entwickelt, der nichts anderes als ein Spezial-Purpose-Editor ist, der auch dem Kunden ausgeliefert werden soll.</p> <p>Was nützt mir die tollste Arbeitsumgebung, wenn</p> <ul> <li>niemand damit umgehen kann</li> <li>diese nicht verfügbar ist</li> <li>diese zwar Syntax-Highlighting kann, aber doch keine Ahnung von HTML hat.</li> </ul> <div class="signature">-- <br> <a href="https://beat-stoecklin.ch/pub/index.html" rel="nofollow noopener noreferrer">https://beat-stoecklin.ch/pub/index.html</a> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 10:36:31 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736610#m1736610 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736610#m1736610 <blockquote> <p>Eben. Natürlich kann man mit einem einfachen Editor entwickeln, aber die Hilfen unterm Mausklick oder einer Tastenkombination zu haben, die man sonst umständlicher durch Aufsuchen des Browsers und Aufsuchen der entsprechenden Handbuchseite holen müsste</p> </blockquote> <p>Es gibt auch Editoren die sowas untersützen bzw. in denen man das Ausführen externer Kommandos auf Shortcuts legen kann. Auf diese Art und Weise nutze ich sowohl die <code>perldoc</code> als auch eigens entwickelte Utilities für RPC und FTP. Und natürlich liegen auch Perl~ wie PHPinterpreter auf Shortcuts, was die gerade geladene Datei dem Interpreter übergibt.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 11:10:23 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736611#m1736611 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736611#m1736611 <blockquote> <p>Es geht ums Entwickeln, nicht um Präsentationen oder Schulungen.</p> </blockquote> <p>Du hast gefragt:</p> <blockquote> <blockquote> <p>Ja, aber warum sollte man sich das antun?</p> </blockquote> </blockquote> <p>"Entwickeln" schließt ja nicht aus, dass man in einem Kurs "entwickelt", z.b. bei der Lösung kundenspezifischer Probleme.</p> <blockquote> <blockquote> <ul> <li>Weil manche IDEs auch nur Editoren mit Syntaxhervorhebung und einem Terminal sind.</li> </ul> </blockquote> <p>Das soll ein Grund sein, wenigstens auf diesen Komfort zu verzichten?</p> </blockquote> <p>Naja. Was, wenn man schon einen Editor mit Syntaxhervorhebung und ein komfortables Terminal (+ Browser mit Analysewerkzeugen, + <code>tail -f</code> fürs Error-Log) hat, deren Bedienung gewohnt ist und die "IDE" keinen darüber hinaus gehenden Mehrwert bietet?</p> <blockquote> <p>Deshalb einen Editor vorzuziehen sehe ich keinen Sinn darin.</p> </blockquote> <p>Schon klar. Aber die Übergänge zwischen "Editor" und "IDE" verwischen ziemlich stark. Normalerweise verwende ich übrigens <a href="https://www.geany.org/" rel="nofollow noopener noreferrer">Geany</a>. Ich betrachte Geany aber eher als "Editor mit vielen Funktionen" und M$ VSC als "IDE"...</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 11:35:38 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736614#m1736614 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736614#m1736614 <p>Tach!</p> <blockquote> <blockquote> <p>Es geht ums Entwickeln, nicht um Präsentationen oder Schulungen.</p> </blockquote> <p>Du hast gefragt:</p> <blockquote> <blockquote> <p>Ja, aber warum sollte man sich das antun?</p> </blockquote> </blockquote> </blockquote> <p>Auf die Frage "wer kann", nicht "wer muss". Dass es Gegebenheiten gibt, wo man keine IDE verwenden kann, spricht ja nicht grundsätzlich gegen deren Verwendung, wenn man dazu in der Lage ist. Und auch wer mag, soll doch bei den Werkzeugen bleiben, die demjeinigen genehm sind. Die ursprüngliche Frage war aber mit einem Unterton gestellt, dass wer IDEs einsetzt nur zu doof für Editoren mit wenig(er) Komfort ist.</p> <p>dedlfix.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 11:50:27 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736617#m1736617 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736617#m1736617 <blockquote> <p>Die ursprüngliche Frage war aber mit einem Unterton gestellt, dass wer IDEs einsetzt nur zu doof für Editoren mit wenig(er) Komfort ist.</p> </blockquote> <p>Acho so. Das ist aber eine Idee, die mir so derart liegt, dass ich an diese Interpretation von PLs Frage nicht mal dachte. Mit IDE muss man nämlich mehr wissen und hat es dafür aber (wenn die übrigen Voraussetzungen stimmen) bequemer. Ein Glaube daran, das eine IDE Kenntnisse einer Programmiersprache oder gar Intelligenz ersetze, wäre ein offensichtlicher Irrglaube. Wer es es mit IDE kann kann es auch ohne. Eine Sprachreferenz sollte man in jedem Fall befragen können.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 12:06:12 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736618#m1736618 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736618#m1736618 <p>Ohne eine eigene Idee oder dem Verständnis der Ideen anderer nützen weder IDE noch Editioren.</p> <p>Mein Kunde hätte nie eine <code>config.sys</code> geschrieben wenn er die Idee die dahintersteckt nicht verstanden hätte.</p> <p>.</p> Erklärbärwettbewerb zum Thema "Exceptions" läuft! Deadline ist der 31.12.2019. Sat, 17 Nov 18 12:16:27 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736620#m1736620 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736620#m1736620 <p>Hello,</p> <blockquote> <p>Acho so. Das ist aber eine Idee, die mir so derart liegt, dass ich an diese Interpretation von PLs Frage nicht mal dachte. Mit IDE muss man nämlich mehr wissen und hat es dafür aber (wenn die übrigen Voraussetzungen stimmen) bequemer. Ein Glaube daran, das eine IDE Kenntnisse einer Programmiersprache oder gar Intelligenz ersetze, wäre ein offensichtlicher Irrglaube. Wer es es mit IDE kann kann es auch ohne. Eine Sprachreferenz sollte man in jedem Fall befragen können.</p> </blockquote> <p>Also OOP ohne IDE ist schon ganz schön heftig. Von der Assemblerschicht aufwärts alles selber zu gestalten ist wirklich ein Knüppeljob. Und selbst dann muss man noch eine Menge über Steuerregister, IVT, LDT, GDT , ..., Messaging, Signale, usw. der jeweils angepeilten Plattform wissen, um die Objectfiles ("Module") entsprechend vorbereiten zu können.</p> <p>| Und genau diese Überlegung brachte mich dazu, mal für das Thema "Exceptions" einen Erklärbärwettbewerb auszurufen! |</p> <p>Mein Angebot steht deshalb bis Ende des nächsten Jahres (31.12.2019!), und ich hoffe, dass sich da noch einige mit einem €-10er oder mehr als Sponsor anschließen. Wir können ja auch (Erster Preis 1x), (Zweiter Preis 2x), (Dritter Preis 3x) daraus machen. Wenn Ihr damit einverstanden seid, würde ich die Fachpresse über den Wettbewerb informieren - ganz nach dem Motto:</p> <h4>Die Energie des Verstehens</h4><p>Und ich wünsche mir zu Weihnachten, dass sich alle Stammposter ihre Antworten vorher genauer überlegen, als leider z. Zt. üblich!</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 12:15:43 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736619#m1736619 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736619#m1736619 <blockquote> <p>Mein Kunde hätte nie eine <code>config.sys</code> geschrieben wenn er die Idee die dahintersteckt nicht verstanden hätte.</p> </blockquote> <p>Wozu das denn? Man kann DOOM I und II auch unter der grafischen Oberfläche von Windows 97 spielen. Sogar mit TCP/IP gegeneinander!</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 14:05:45 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736622#m1736622 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736622#m1736622 <blockquote> <blockquote> <p>Mein Kunde hätte nie eine <code>config.sys</code> geschrieben wenn er die Idee die dahintersteckt nicht verstanden hätte.</p> </blockquote> <p>Wozu das denn? Man kann DOOM I und II auch unter der grafischen Oberfläche von Windows 97 spielen. Sogar mit TCP/IP gegeneinander!</p> </blockquote> <p>Die Idee war: Windows 95 zu installieren. Ohne <code>config.sys</code> kein CD Laufwerk, ohne CD Laufwerk kein Windows 95. Und die Idee des Kunden war, seine CD's mit dem Computer abzuspielen.</p> <p>So einfach ist das manchmal. Sogar ohne TCP/IP.</p> Erklärbärwettbewerb zum Thema "Exceptions" läuft! Deadline ist der 31.12.2019. Sat, 17 Nov 18 14:08:11 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736623#m1736623 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736623#m1736623 <p>Hello,</p> <blockquote> <p>Also OOP ohne IDE ist schon ganz schön heftig.</p> </blockquote> <p>Manchmal möchte ich nicht wissen was manche unter OOP verstehen.</p> <p>MfG</p> Erklärbärwettbewerb zum Thema "Exceptions" läuft! Deadline ist der 31.12.2019. Sat, 17 Nov 18 17:01:06 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736635#m1736635 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736635#m1736635 <p>Aloha ;)</p> <blockquote> <p>Also OOP ohne IDE ist schon ganz schön heftig. Von der Assemblerschicht aufwärts alles selber zu gestalten ist wirklich ein Knüppeljob. Und selbst dann muss man noch eine Menge über Steuerregister, IVT, LDT, GDT , ..., Messaging, Signale, usw. der jeweils angepeilten Plattform wissen, um die Objectfiles ("Module") entsprechend vorbereiten zu können.</p> </blockquote> <p>Ein Texteditor ist keine IDE und trotzdem benötigt man manchmal nicht mehr als selbigen, um objektorientiert zu programmieren. Ich verstehe nicht, inwiefern die Nichtnutzung einer IDE dazu führt, dass man „von der Assemblerschicht aufwärts alles selber“ gestalten muss?</p> <p>Vielleicht unterscheidet sich ja unsere Definition von IDE.</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Erklärbärwettbewerb zum Thema "Exceptions" läuft! Deadline ist der 31.12.2019. Sun, 18 Nov 18 11:44:33 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736660#m1736660 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736660#m1736660 <blockquote> <p>Mein Angebot steht deshalb bis Ende des nächsten Jahres (31.12.2019!), und ich hoffe, dass sich da noch einige mit einem €-10er oder mehr als Sponsor anschließen. Wir können ja auch (Erster Preis 1x), (Zweiter Preis 2x), (Dritter Preis 3x) daraus machen. Wenn Ihr damit einverstanden seid, würde ich die Fachpresse über den Wettbewerb informieren</p> </blockquote> <p>Das ist ja deine Privatsache, kannst du also machen wie du möchtest. Oder möchtest du das im Namen des Vereins machen? Dann möchte ich dich bitten, das im Vereinsforum erst abzustimmen.</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 14:10:13 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736624#m1736624 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736624#m1736624 <p>Die erste Frage betreff Verständnis ist, was IDEs mit Exceptions zu tun haben sollen.</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 15:47:04 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736628#m1736628 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736628#m1736628 <p>Aloha ;)</p> <blockquote> <p>[...] ich vermute, dass hier noch keiner die totale Tragweite meines Aufrufes realisiert hat.</p> </blockquote> <p>Da hast du völlig Recht, hab ich nicht. Deshalb ja meine Nachfragen, auf die du bislang nicht eingegangen bist.</p> <p>Positiv zu denken hat mich im übrigen bisher da auch nicht zur Erkenntnis geleitet.</p> <p>Du musst mir das aber auch nicht erläutern, wenn du nicht möchtest.</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 16:45:34 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736631#m1736631 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736631#m1736631 <p>Hello,</p> <blockquote> <p>Die erste Frage betreff Verständnis ist, was IDEs mit Exceptions zu tun haben sollen.</p> </blockquote> <p>Die IDE sollte alle Module des Systems kennen und passend kombinieren:</p> <ul> <li>Projektverwaltung</li> <li>...</li> <li>Darstellung in der gewünschten Progammiersprache</li> <li>Quelltext</li> <li>Librairies</li> <li>...</li> <li>Objektfiles</li> <li>Assembler-Ebenen für die unterschiedlichen Zielplattformen</li> <li>Linkerstrategien</li> <li>...</li> <li>die tiefsten Tiefen der Register und UEFI-Module</li> <li>...</li> </ul> <p>usw.</p> <p>Das möchte man nun wirklich nicht mehr alles eigenhändig verwalten, oder?</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 16:49:50 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736632#m1736632 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736632#m1736632 <p>In Sachen Exceptions sehe ich das auch so: Zum Klassifizieren braucht man keine Instanzen sondern nur Klassen. Eine Exception selbst braucht auch keine Methoden. Also ist das Erstellen einer Klasseninstanz nicht notwendig. Für mich ein klarer Fall für einen <a href="http://rolfrost.de/exclass.html" rel="nofollow noopener noreferrer">Trait</a>.</p> <p>MfG</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 16:37:35 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736630#m1736630 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736630#m1736630 <p>Hello,</p> <blockquote> <blockquote> <p>[...] ich vermute, dass hier noch keiner die totale Tragweite meines Aufrufes realisiert hat.</p> </blockquote> <p>Da hast du völlig Recht, hab ich nicht. Deshalb ja meine Nachfragen, auf die du bislang nicht eingegangen bist.</p> <p>Positiv zu denken hat mich im übrigen bisher da auch nicht zur Erkenntnis geleitet.</p> <p>Du musst mir das aber auch nicht erläutern, wenn du nicht möchtest.</p> </blockquote> <p>Ich möchte gerne.</p> <p>Wie lauten die Fragen? Habe ich die tatsächlich übersehen? Das will ich gerne wieder gutmachen...</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 16:58:14 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736634#m1736634 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736634#m1736634 <p>Aloha ;)</p> <blockquote> <blockquote> <p>Positiv zu denken hat mich im übrigen bisher da auch nicht zur Erkenntnis geleitet.</p> <p>Du musst mir das aber auch nicht erläutern, wenn du nicht möchtest.</p> </blockquote> <p>Ich möchte gerne.</p> </blockquote> <p>Sehr gut </p> <blockquote> <p>Wie lauten die Fragen? Habe ich die tatsächlich übersehen? Das will ich gerne wieder gutmachen...</p> </blockquote> <p>Ich <a href="https://forum.selfhtml.org/self/2018/nov/16/mehrere-instanzen-einer-exception-class/1736596#m1736596" rel="noopener noreferrer">hatte mich gefragt</a>, wo der praktische Mehrwert liegt oder ob es sich um rein akademisches Interesse handelt.</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sun, 18 Nov 18 07:55:38 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736652#m1736652 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736652#m1736652 <blockquote> <p>Das möchte man nun wirklich nicht mehr alles eigenhändig verwalten, oder?</p> </blockquote> <p>Und was hat die Verwaltung mit Exceptions zu tun?</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 16:56:13 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736633#m1736633 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736633#m1736633 <p>Hello,</p> <blockquote> <p>In Sachen Exceptions sehe ich das auch so: Zum Klassifizieren braucht man keine Instanzen sondern nur Klassen. Eine Exception selbst braucht auch keine Methoden. Also ist das Erstellen einer Klasseninstanz nicht notwendig. Für mich ein klarer Fall für einen <a href="http://rolfrost.de/exclass.html" rel="nofollow noopener noreferrer">Trait</a>.</p> </blockquote> <p>Eine "Exception" ~= "Exitroutine" benötigt auch keine Klassen. Sie muss aber vom OS unterstützt werden, wenn das Programm anschließend noch ordentlich beendet werden soll für den Fall, dass sie nicht gezielt ins Programm zurückführen kann.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sat, 17 Nov 18 17:51:31 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736638#m1736638 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736638#m1736638 <p>Hello,</p> <blockquote> <p>Eine "Exception" ~= "Exitroutine" benötigt auch keine Klassen.</p> </blockquote> <p>Völlig falsch! Eine Exception ist keine Exitroutine!</p> <p>Im Übrigen meldet sich jedes Programm beim Beenden an das OS zurück mit einem sogenannten Exitcode. Wobei ein <code>Prozess beendet mit Exit-Code 255</code> heißt daß es per Exception beendet wurde. exit 0 hingegen ist ein fehlerfreier Return.</p> <p>MfG</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 17:03:16 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736636#m1736636 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736636#m1736636 <p>Hello,</p> <blockquote> <blockquote> <p>Wie lauten die Fragen? Habe ich die tatsächlich übersehen? Das will ich gerne wieder gutmachen...</p> </blockquote> <p>Ich <a href="https://forum.selfhtml.org/self/2018/nov/16/mehrere-instanzen-einer-exception-class/1736596#m1736596" rel="noopener noreferrer">hatte mich gefragt</a>, wo der praktische Mehrwert liegt oder ob es sich um rein akademisches Interesse handelt.</p> </blockquote> <p>Ich will es gar nicht so hoch aufhängen "akademisches Interesse", sondern möchte den Ball flach halten und es "technisches Interesse" nennen. Wie wird es in der Praxis abgehandelt bis hin zur untersten Schicht...</p> <p>Als "akademisch" würde ich es nur dann bezeichnen, wenn wir uns an keiner konkreten Sprache orientieren dürfen und/oder alle Schichten streng kategorisiert werden müssten, usw.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sat, 17 Nov 18 18:57:14 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736639#m1736639 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736639#m1736639 <p>Aloha ;)</p> <blockquote> <p>Ich will es gar nicht so hoch aufhängen "akademisches Interesse", sondern möchte den Ball flach halten und es "technisches Interesse" nennen. Wie wird es in der Praxis abgehandelt bis hin zur untersten Schicht...</p> <p>Als "akademisch" würde ich es nur dann bezeichnen, wenn wir uns an keiner konkreten Sprache orientieren dürfen und/oder alle Schichten streng kategorisiert werden müssten, usw.</p> </blockquote> <p>Ich meinte das sprichwörtliche akademische Interesse und wollte damit keinen fachlichen Gütegrad festlegen </p> <p>Also im Sinne von: Ist das Thema von Interesse, weil es an sich eben interessant ist, oder hat man direkte/praktische Vorteile davon, darüber Bescheid zu wissen?</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sun, 18 Nov 18 11:54:00 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736663#m1736663 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736663#m1736663 <p>Als Diskussionsgrundlage von oben nach unten:</p> <ul> <li> <p>Eine shell (die NICHT unbedingt ein "Kommandzeilenetwas" ist) startet Prozesse. <strong>Als Elternprozess selbst verläuft diese nicht fehlerhaft wenn ein Kindprozess fehlerhaft verläuft</strong>. Eine Shell selbst ist Kind- oder Enkelprozess eines Steuerprogramms eines OS (z.B. initd/systemd unter Linux), welches selbst nur vom Kernel verwaltet wird.</p> </li> <li> <p>Ein Compiler/Interpreter untersucht den Quelltext auf <strong>Syntaxfehler</strong>, manche (Compiler müssen das ja tun) auch auf Aufrufe fehlender Funktionen bzw. Klassen, manche also auch schon auf die Existenz der Libs (z.b. Klassendateien) und signalisiert diese. <strong>Der Elternprozess selbst verläuft hier nicht fehlerhaft</strong>, der Kindprozess (Compiler/Interpreter) bricht aber ab.</p> </li> <li> <p>Wird das Kompilat in einer "VM" ausgeführt (wie Java) werden <strong>Laufzeitfehler</strong> an diese gemeldet. <strong>Der Elternprozess (VM) selbst verläuft hier nicht fehlerhaft</strong>, der Kindprozess bricht aber ab.</p> </li> <li> <p>Wird das Kompilat eines Compiler/Interpreters direkt vom Compiler/Interpreter ausgeführt, dann werden <strong>Laufzeitfehler</strong> an den Elternprozess (eben der Kompiler/Interpreter) gemeldet. <strong>Auch hier verläuft der Elternprozess nicht fehlerhaft</strong>, der Kindprozess bricht aber ab.</p> </li> <li> <p>Ist das Kompilat stand-alone ausführbar, dann fügt der Compiler beim Kompilieren eine Fehlerbehandlung hinzu. Die kann "hart codiert" werden oder durch Verlinken von libs (-> .dll, "dynamic link libary" (win); -> .so, "shared object" (linux) ) Die Routinen liefert also die libarys der Sprache. <strong>Auch hier verläuft der Elternprozess (z.B. die Shell!) nicht fehlerhaft</strong>, der Kindprozess bricht aber ab.</p> </li> <li> <p>Im Assembler-Programm können Befehle zu unmöglichen oder unerlaubten Aktionen führen, z.B. dem Versuch, Daten in/aus nicht erlaubten Speicherbereichen zu pooken oder zu peeken. Auch muss der Assembler bekannte und erlaubte Befehle vom Rest zu unterscheiden wissen. <a href="https://runtimebasic.net/Assembler:Funktionen:Beschreibung-Kurz-CPU" rel="nofollow noopener noreferrer">Fehler werden über Interrupts gehändelt</a>. Werden Assemberprogramme ausgeführt und sind fehlerhaft, dann <strong>verläuft der Elternprozess (der Assembler selbst) nicht fehlerhaft</strong>, der Kindprozess bricht aber ab.</p> </li> </ul> <p><strong>Bis hierher sind die Elternprozesse immer in der Lage den Fehler des Kindprozesses an den eigenen Elternprozess weiterzumelden , bzw. sollen dazu in der Lage sein. Sind sie es nicht ergibt sich manchmal ein Bluescreen. Bluescreens treten besonders dann auf, wenn ein Prozess, der keinen Elternprozess hat, einen Fehler hat oder nicht abfangen kann.</strong></p> <ul> <li>Bei erkannten Fehlern auf echter Prozessorebene tritt der letzte Satz des vorherigen Absatzes automatisch in Kraft. <a href="https://de.wikipedia.org/wiki/Pentium-FDIV-Bug" rel="nofollow noopener noreferrer">Manche enden aber nicht in einem Abbruch sondern mit falschem Ergebnis</a>.</li> </ul> <blockquote> <p>Wie wird es in der Praxis abgehandelt bis hin zur untersten Schicht...</p> </blockquote> <p>Wenn Du es NOCH genauer wissen willst grenze Deine Frage ein.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 11:00:56 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736657#m1736657 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736657#m1736657 <blockquote> <p>Hello,</p> <blockquote> <p>Eine "Exception" ~= "Exitroutine" benötigt auch keine Klassen.</p> </blockquote> <p>Völlig falsch! Eine Exception ist keine Exitroutine!</p> </blockquote> <p>Die "Exception" an sich nicht - deren Behandlung (und, falls programmierbar und programmiert: Erkennung) aber schon.</p> <p>Ich würde schon etwas wie <code>exit(2)</code> als "Exitroutine" bezeichnen - weil die syntaktische Ausgestaltung als Funktionaufruf (also: call) und die nachfolgenden (wenn auch aus Sicht eines Programmierers oft "unsichtbaren") Aktionen (Man denke an allein an den Garbage Collector!) nahelegen, dass es genau das ist.</p> <blockquote> <p>Im Übrigen meldet sich jedes Programm beim Beenden an das OS zurück mit einem sogenannten Exitcode. Wobei ein <code>Prozess beendet mit Exit-Code 255</code> heißt daß es per Exception beendet wurde. exit 0 hingegen ist (regelmäßig) ein fehlerfreier Return.</p> </blockquote> <p>Eben der Elternprozess (dem der Exit des Kindes signalsiert wird) soll (kann) den Exit-Code auswerten.</p> <p>Zutreffend ist, dass Programme für den Elternprozess (also nicht für das OS!) einen Exit-Status-Code hinterlassen und dass dieser, wenn es denn keine Null ist, signalisiert: Da ging was schief (Fatale Fehler) oder aber auch: vielleicht (Notizen, Warnungen) ging was schief. <a href="https://en.wikipedia.org/wiki/Exit_status" rel="nofollow noopener noreferrer">Was aber genau welcher Code (!=0) signalisiert ist Vereinbarungssache und soll sich an Konventionen - die durchaus sehr unterschiedlich sind - halten</a>.</p> <p>Das jetzt PHP (und Perl) als Interpreter eine 255 als exit-code hinterlassen wenn ein Syntaxfehler (compilation error) auftrat (Perl übrigens gerne eine 9 wenn es denn ein fehlendes Package vermutet oder eine Subroutine nicht definiert ist) ist z.B. eine solche Konvention.</p> <p>Beispiele (Jeweils die letzte Zeile zeigt den Exit-Code):</p> <pre><code class="block">$> echo -e "foo bar;" | perl; echo $? Can't locate object method "foo" via package "bar" (perhaps you forgot to load "bar"?) at - line 1. 9 </code></pre> <pre><code class="block">$> echo -e "foo bar(;" | perl; echo $? syntax error at - line 1, near "(;" Execution of - aborted due to compilation errors. 255 </code></pre> <pre><code class="block">$> echo -e "<?php\nfoo();" | php; echo $? PHP Fatal error: Uncaught Error: Call to undefined function foo() in Standard input code:2 Stack trace: #0 {main} thrown in Standard input code on line 2 255 </code></pre> <pre><code class="block">$> echo -e "<?php\nfoo" | php; echo $? PHP Parse error: syntax error, unexpected end of file in Standard input code on line 3 255 </code></pre> <p>Bei diesen Beispielen geht gar nichts schief. Aber der Elternprozess (Hier der Interpreter, der diesen Exit-Code an die Shell durchreicht.) bekommt eine 3 signalisiert:</p> <pre><code class="block">$> echo -e "exit(3);" | perl; echo $? 3 </code></pre> <pre><code class="block">$> echo -e "<?php\nexit(3);" | php; echo $? 3 </code></pre> <p>Dann wäre da noch der Umstand, dass die Ausgabe von Fehlermeldungen auf die Error-Konsole (stderr) erfolgen kann (Ausgaben im Beipiel unten unterdrückt). Klarer Fall von "Routine" - in dem Fall des Interpreters/Kompilers.</p> <pre><code class="block">$> echo -e "<?php\nfoo();" | php 2> /dev/null; echo $? 255 </code></pre> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 15:31:38 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736682#m1736682 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736682#m1736682 <p>Hallo pl,</p> <p>Wenn ich ein PHP Script starte, das einen Syntax-Error enthält (Parse Error), endet PHP.EXE mit ERRORLEVEL 255.</p> <p>Wenn ich ein PHP Script starte, das auf einen Fatal Error läuft (z.B. ungefangene Exception), endet PHP.EXE mit ERRORLEVEL 255.</p> <p>Wenn ich ein C# Programm starte, dass nichts weiter tut als <code>throw new Exception("Foo!");</code>, endet der Prozess (reproduzierbar) mit ERRORLEVEL E0434352 (oder -532462766), was ein .net interner Code für das Windows SEH (Structured Exception Handling) ist.</p> <p>D.h. deine Annahme mit Exit Code 255 ist auf begrenzte Beobachtungen gestützt und nicht zu verallgemeinern. Es gibt unter Windows eine Menge von definierten Systemfehlercodes, und die meisten Shell-Programme liefern sie auch zurück wenn einer davon auftritt. Aber ansonsten ist hier viel Raum für Kreativität. Perl und PHP sind hier bereits kreativ - 255 ist kleinster gemeinsamer Nenner für alle Exitcode-fähigen Betriebssystem; selbst wenn ein Exitcode nur 8-bittig sein sollte, ist 255 immer noch möglich. Unter Windows hat der Systemfehlercode 255 aber eine ganz andere Bedeutung: ERROR_EA_LIST_INCONSISTENT - The extended attributes are inconsistent. Das ist irgendein interner Error des File Systems.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - clusi </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sun, 18 Nov 18 14:49:31 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736677#m1736677 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736677#m1736677 <blockquote> <blockquote> <p>Das möchte man nun wirklich nicht mehr alles eigenhändig verwalten, oder?</p> </blockquote> <p>Und was hat die Verwaltung mit Exceptions zu tun?</p> </blockquote> <p>Ganz einfach: Wenn man beim Verwalten der Exceptions was falsch macht <a href="https://forum.selfhtml.org/self/2018/nov/16/mehrere-instanzen-einer-exception-class/1736673#m1736673" rel="noopener noreferrer">kommt sowas raus</a>.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 13:29:05 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736672#m1736672 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736672#m1736672 <blockquote> <p>Zutreffend ist, dass Programme für den Elternprozess (also nicht für das OS!) einen Exit-Status-Code hinterlassen</p> </blockquote> <p>Doch genau das: <strong>Jedes</strong> Programm meldet sich mit einem bestimmten Status von 0..255 an das OS zurück!</p> <p>Und selbstverständlich tun das auch PHP und Perl Scripts! Und auch dann wenn kein explizites <code>exit 0;</code> angewiesen wurde meldet sich ein Perlscript spontan mit Status 0 an das OS zurück -- Sofern es keinen Ausnahmefehler oder einen Absturz gab oder es per kill-Signal vom OS an Script beendet wurde.</p> <p>Und das war schon immer so!</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 13:41:42 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736673#m1736673 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736673#m1736673 <blockquote> <p>Das jetzt PHP (und Perl) als Interpreter eine 255 als exit-code hinterlassen wenn ein Syntaxfehler (compilation error) auftrat (Perl übrigens gerne eine 9 wenn es denn ein fehlendes Package vermutet oder eine Subroutine nicht definiert ist)</p> </blockquote> <p>Auch falsch.</p> <pre><code class="block">Undefined subroutine &main::foo called at .. pack.pl line 15. Prozess beendet mit Exit-Code 255 </code></pre> <p>MfG</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 14:42:03 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736676#m1736676 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736676#m1736676 <blockquote> <p>Doch genau das: Jedes Programm meldet sich mit einem bestimmten Status von 0..255 an das OS zurück!</p> </blockquote> <p>Nein. An den Parent-Prozess. Ob das OS vermittelt ist irrelevant.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 14:05:16 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736674#m1736674 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736674#m1736674 <blockquote> <blockquote> <p>Das jetzt PHP (und Perl) als Interpreter eine 255 als exit-code hinterlassen wenn ein Syntaxfehler (compilation error) auftrat (Perl übrigens gerne eine 9 wenn es denn ein fehlendes Package vermutet oder eine Subroutine nicht definiert ist)</p> </blockquote> <p>Auch falsch.</p> <pre><code class="block">Undefined subroutine &main::foo called at .. pack.pl line 15. Prozess beendet mit Exit-Code 255 </code></pre> </blockquote> <p>Niemand außer Dir weiß was Du getan hast, <strong>weil Du den Code der übrigen Zeilen nicht zeigst</strong>, sondern nur Behauptungen aufstellst. <strong>Ich habe folgendes getan:</strong></p> <p>1.)</p> <pre><code class="block">$> echo -e "foo bar;" | perl; echo $? Can't locate object method "foo" via package "bar" (perhaps you forgot to load "bar"?) at - line 1. 9 </code></pre> <p>2.)</p> <pre><code class="block">$> echo -e "foo();" | perl; echo $? Undefined subroutine &main::foo called at - line 1. 9 </code></pre> <p>und 3.)</p> <pre><code class="block">$> echo -e "foo bar(;" | perl; echo $? syntax error at - line 1, near "(;" Execution of - aborted due to compilation errors. 255 </code></pre> <p>Das ist auch nachvollziehbar. (Wobei ich mir nicht ganz sicher bin, ob sich Dein spezielles Perl (wohl auch mitsamst Deinem geheimen Framework) unter Deinem speziellen OS anders verhält.) Aber aus meinen Versuchen 1.) und 2.) folgt, dass Perl <em>"gerne mal"</em> den Exit-Code 9 zurück gibt, <em>"wenn es denn ein fehlendes Package vermutet oder eine Subroutine nicht definiert ist."</em></p> <p>Obige Ergebnisse zu Versuch 1.) und 2) entsprechen ergo genau meiner Aussage, die Du als "falsch" bezeichnest - sie ist aber definitiv und nach allen Regeln der Logik <strong>richtig</strong>.</p> <p>Vielleicht liegt es ja an Deinem Framework, welches die Exitcodes verhunzt. Irgendwas muss wird schließlich in Deinen geheimen Zeilen 1 bis 14 stehen.</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 14:54:53 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736678#m1736678 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736678#m1736678 <blockquote> <blockquote> <blockquote> <p>Das jetzt PHP (und Perl) als Interpreter eine 255 als exit-code hinterlassen wenn ein Syntaxfehler (compilation error) auftrat (Perl übrigens gerne eine 9 wenn es denn ein fehlendes Package vermutet oder eine Subroutine nicht definiert ist)</p> </blockquote> <p>Auch falsch.</p> <pre><code class="block">Undefined subroutine &main::foo called at .. pack.pl line 15. Prozess beendet mit Exit-Code 255 </code></pre> </blockquote> <p>Niemand außer Dir weiß was Du getan hast, <strong>weil Du den Code der übrigen Zeilen nicht zeigst</strong>, sondern nur Behauptungen aufstellst.</p> </blockquote> <p>Du hast behauptet, nicht ich! Im übrigen ist klar ersichtlich, was diesen Exit-Code 255 erzeugt hat!</p> <p>.</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sun, 18 Nov 18 15:10:12 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736681#m1736681 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736681#m1736681 <blockquote> <blockquote> <blockquote> <p>Das möchte man nun wirklich nicht mehr alles eigenhändig verwalten, oder?</p> </blockquote> <p>Und was hat die Verwaltung mit Exceptions zu tun?</p> </blockquote> <p>Ganz einfach: Wenn man beim Verwalten der Exceptions was falsch macht</p> </blockquote> <p>Exceptions werden nicht verwaltet!</p> <p>Btw., ich lese hier immer wieder, daß catch dazu dient, Exceptions zu fangen. Das ist jedoch auch nicht richtig, denn gefangen wird eine Exception im try{}Block wobei man das besser als ein Auffangen bezeichnen sollte.</p> <p>So ist das was in catch gemacht wird in erster Linie ein Lookup: Nämlich ob Exceptions <strong>gefallen und aufgefangen</strong> worden sind.</p> <p>Mitnichten also werden Exceptions verwaltet, das ist völliger Unfug!</p> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Sun, 18 Nov 18 15:04:32 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736680#m1736680 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736680#m1736680 <blockquote> <p>Du hast behauptet, nicht ich!</p> </blockquote> <p>Was, bitte, erzeugt: <code>Prozess beendet mit Exit-Code 255</code> ?</p> <blockquote> <p>Im übrigen ist klar ersichtlich, was diesen Exit-Code 255 erzeugt hat!</p> </blockquote> <p>Nein. So lange nicht klar ist, was obiges erzeugt und so lange die Zeilen 1 bis 14 geheim sind ist gar nichts "klar ersichtlich".</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sun, 18 Nov 18 15:55:21 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736684#m1736684 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736684#m1736684 <p>Aloha ;)</p> <blockquote> <p>Btw., ich lese hier immer wieder, daß catch dazu dient, Exceptions zu fangen. Das ist jedoch auch nicht richtig, denn gefangen wird eine Exception im try{}Block wobei man das besser als ein Auffangen bezeichnen sollte.</p> </blockquote> <p>Nein, im try-Block fängt man sie sich <em><strong>ein</strong></em>.</p> <blockquote> <p>So ist das was in catch gemacht wird in erster Linie ein Lookup: Nämlich ob Exceptions <strong>gefallen und aufgefangen</strong> worden sind.</p> </blockquote> <p>Auch nein, denn würde schon der try-Block die Exceptions auffangen, dann könnten Sie später im Fall der Nichtbeachtung nicht weiter fallen. Deshalb ist das schon völlig richtig, dass erst der catch-Block die Exceptions fängt (und dann eventuell bewusst weiterwirft).</p> <p>Gerade in typisierten Sprachen mit Vererbung von der Exception-Klasse kommt das zum Tragen, da ein Catch-Block nicht nur alle Fehler fangen, sondern auch nur eine einzige Art Fehler fangen kann.</p> <blockquote> <p>Mitnichten also werden Exceptions verwaltet, das ist völliger Unfug!</p> </blockquote> <p>Wer Code verwalten kann, kann auch Exceptions verwalten.</p> <p>Häng dich doch nicht immer so an einzelnen Worten auf – vor allem dann nicht, wenn du im Zweifelsfall der bist, dessen Vorstellung davon, was die Wörter bedeuten, mit dem, was gefühlt alle anderen darunter verstehen, auseinandertriftet... Außer, du möchtest in Zukunft nur noch Selbstgespräche führen, dann kannst du dir natürlich weiter die Begriffe so zurechtlegen wie du lustig bist.</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Mon, 19 Nov 18 11:21:19 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736714#m1736714 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736714#m1736714 <p>hi <a href="/users/6547" class="mention registered-user" rel="noopener noreferrer">@Rolf B</a></p> <p>jeder Prozess meldet sich beim Beenden an seinen Parent. Wobei dieser Parent selbstverständlich auch das OS sein kann, so habe ich das mal gelernt. Was das OS selbst an Errorcodes definiert ist ein völlig anderes Thema.</p> <p>Nur sollte beim Programmieren wenigstens die Kenntnis vorhanden sein, daß es überhaupt einen Exitstatus gibt und daß eine nicht aufgefangene Exception auch vom übergeordneten Prozess wahrgenommen wird eben über den Exit Status != 0 und eben auch vom OS.</p> <p>Die diesbezügliche Dokumentation ist gerade auch in Perl sehr umfangreich, das kann jeder selber lesen. Siehe POSIX, siehe die, siehe exit, perlvar usw.</p> <p>Des Weiteren gibt es für die Kommunikation unter Prozessen nicht nur den Exitstatus. So kann z.B. auch das OS an einen Perlprozess Signale senden, bspw. ein Signal zum beenden.</p> <p>MfG</p> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sun, 18 Nov 18 18:08:30 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736689#m1736689 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736689#m1736689 <p>Hallo,</p> <p>im Hochsprachenkonstrukt try / catch kann man durchaus sagen, dass die Exception irgendwo geworfen und von den catch-Blöcken gefangen wird. Je nachdem, was die Catch-Blöcke dann tun, wird die Exception verschluckt, weitergeworfen (rethrow) oder durch eine neu geworfe Exception ersetzt.</p> <p>Kurzer Regress zu dem, was ich über Perl gelernt habe: Wenn ich in Perl Exceptions fangen will, implementiere ich das so, dass ich den Code in eine eval-Klammer lege. Die Eval-Klammer fängt die Exception und stellt mir den geworfenen Wert in $@ bereit. Hier ist die Aufgabenteilung also anders: eval() macht die ganze Arbeit und danach kann der Programmierer die Trümmer begutachten.</p> <p>Aber - das ist alles Highlevel und eine Abstraktion dessen, was auf Betriebssystemebene passiert. Schon das Wort Betriebssystem lässt erkennen, dass es jetzt spezifisch wird - jedes Betriebssystem anders. Übrigens sind 32-bit Windows und 64-bit Windows zwei unterschiedliche Betriebssysteme!</p> <p>Win32: Jeder Windows Thread verfügt über einen Thread-Informationsblock (TIB), der an der Adresse FS:0 zu finden ist (ja, die guten alten Segmentregister). Der erste Eintrag des TIB ist ein Zeiger auf eine EXCEPTION_REGISTRATION Struktur aus zwei DWORDs: Ein Previous-Pointer (auf eine ältere Exception-Registration) und eine Prozedur-Adresse. Diese Struktur liegt nicht irgendwo, sondern auf dem Stack, im Stackframe der Procedure die einen try-Block aufbauen will. Wenn eine Exception geworfen wird (Win23 API Funktion), folgt Windows der Liste der registrierten Exceptionhandler und ruft den Callback auf. Der bekommt einige Informationen zur Exception und kann sagen: "Kann ich behandeln" oder "Lass fliegen". Sagt er "kann ich behandeln", wird die Handlerkette nochmal aufgerufen, diesmal mit einem "Unwind" Parameter. Das ist die Aufforderung für die Handler, eventuell fällige Aufräumarbeiten durchzuführen. Der Handler, der "kann ich behandeln" sagt, legt dann fest, wo die Programmausführung weitergeht und wie der Stackpointer zu justieren ist, damit der Code so weiterlaufen kann als wäre nichts geschehen. Das ist nicht trivial, ich habe es auch noch nie selbst gemacht, Microsoft hat es mies dokumentiert und die beiden Texte im Netz, die dazu was beschreiben, habe ich nur partiell verstanden .</p> <p>Win64: funktioniert ganz anders, da wird nichts auf den Stack gelegt. Weil - ein Buffer Overrun könnte das manipulieren oder zerstören. Statt dessen erzeugt man im EXE eine spezielle Steuertabelle, in der steht, in welchem Programmbereich welche Exceptionregeln gelten sollen (ich habe aufgehört, das genauer durchdringen zu wollen) und Win64 baut daraus den Stack Unwind selbsttätig zusammen. Vorteil ist, dass man Null Overhead hat um einen try-Block zu markieren. Ob man in einem try-Block ist, wird erst geprüft wenn die Exception fliegt.</p> <p>Außer dem Structured Exception Handling (das es schon in Win95 gab) existiert seit WinXP noch Vectored Exception Handling - damit kann man einen zentralen Handler für alle Exception hinterlegen.</p> <p>All das sind Informationen für Compilerbauer und Assemblerprogrammierer. Microsoft dokumentiert das deshalb so schlecht, weil man das gar nicht selbst nutzen soll. Auf Assemblerebene ist das alles eher simpel und frei von OOP: Man registriert einen Exception Handler, führt Code aus und nimmt den Handler wieder weg. Falls Betriebssystem oder eigener Code entscheiden, dass jetzt eine Exception fällig ist, wird RaiseException() aufgerufen und diese Funktion bekommt einen Exception Code, ein paar Flags und eine Liste von frei definierten Parametern übergeben. Im Handler kann man Code, Flags und Parameter abfragen. Die Laufzeitumgebung einer Hochsprache fügt hier ihre eigene Logik ein, um Destruktoren von Objekten auf dem Stack aufzurufen und Dinge wie Exception-Objekte zu erzeugen. Damit so etwa wie ein sauberer Stacktrace möglich ist, braucht eine Hochsprache außer der EXCEPTION_REGISTRATION noch ein paar Informationen mehr, um zu wissen wo genau der Stackframe beginnt, so dass außer dem Handler-Walk auch ein Stack-Walk möglich ist um den Stacktrace aufzubauen.</p> <p>Und was machen Perl oder PHP? Die compilieren ihre Programme nicht in Maschinencode. Sie übersetzen Sourcecode in einen Zwischencode und interpretieren den. Wie von PHP ein try-Block aufgebaut wird, habe ich allerdings nicht durchschaut, es gibt in der ZEND-Engine keinen Opcode dafür (nur für throw und catch). Im PHP Wiki ist das auch nicht dokumentiert. Es ist hier also schwierig für jemanden, der in der ZEND Engine die Bits nicht beim Vornamen kennt, hier durchzublicken. Ich würde allerdings vermuten, dass PHP auch in der Windows Implementierung nicht das SEH von Windows verwendet, sondern sein eigenes Süppchen kocht.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - clusi </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Sun, 18 Nov 18 21:09:04 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736693#m1736693 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736693#m1736693 <p>Aloha ;)</p> <blockquote> <p>im Hochsprachenkonstrukt try / catch kann man durchaus sagen, dass die Exception irgendwo geworfen und von den catch-Blöcken gefangen wird. Je nachdem, was die Catch-Blöcke dann tun, wird die Exception verschluckt, weitergeworfen (rethrow) oder durch eine neu geworfe Exception ersetzt.</p> </blockquote> <p>Eben. Genau das war doch meine Aussage.</p> <p>Grüße,</p> <p>RIDER</p> <div class="signature">-- <br> Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller<br> # <a href="https://twitter.com/Camping_RIDER" rel="nofollow noopener noreferrer">Twitter</a> # <a href="http://steamcommunity.com/id/Camping_RIDER" rel="nofollow noopener noreferrer">Steam</a> # <a href="https://www.youtube.com/user/RidersFlame" rel="nofollow noopener noreferrer">YouTube</a> # <a href="http://wiki.selfhtml.org/wiki/Benutzer:Camping_RIDER" rel="nofollow noopener noreferrer">Self-Wiki</a> # <a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[ </div> Exceptions explizit erklären?: 100€ Prämie! Bitte denkt mal positiv! Mon, 19 Nov 18 10:22:57 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736709#m1736709 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736709#m1736709 <p>Hello Rolf,</p> <p>hier wird es langsam spannend!</p> <p>Du bist mMn im Moment der führende Erklärbär, auch wenn noch viele Details fehlen ;-)</p> <p>Ich akzeptiere die Antwort daher schon mal <strong>[der Haken ist leider nicht verfügbar?!]</strong> und gebe ein (+), bitte aber um Verständnis, dass das angepeilte Ziel noch weit entfernt ist :-)</p> <p>Ich würde es deshalb begrüßen, wenn Du die Neugierigen unter uns (z. B. mich) weiterhin begleiten und unterstützen würdest.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Tue, 20 Nov 18 14:59:19 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736799#m1736799 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736799#m1736799 <p>Hello Hotti,</p> <blockquote> <p>jeder Prozess meldet sich beim Beenden an seinen Parent.</p> </blockquote> <p>Wenn er vorher abkackt, meldet sich da gar nichts mehr...</p> <blockquote> <p>Wobei dieser Parent selbstverständlich auch das OS sein kann, so habe ich das mal gelernt. Was das OS selbst an Errorcodes definiert ist ein völlig anderes Thema.</p> </blockquote> <p>... und man kann nur hoffen, dass OS und IDE die Teilprozesse ausreichend stabil gekapselt haben und überwachen, ob sie noch leben, oder ob sie zum Zombie geworden sind, oder ob sie einfach nur noch wirr Speicheradressen adressieren, die ihnen gar nicht gehören und deshalb tunlichst für den kaputten Prozess unerreichbar sind. Das entscheidet aber die IDE beim Zusammenstellen des Codes und den passenden Requests beim OS.</p> <blockquote> <p>Nur sollte beim Programmieren wenigstens die Kenntnis vorhanden sein, daß es überhaupt einen Exitstatus gibt und daß eine nicht aufgefangene Exception auch vom übergeordneten Prozess wahrgenommen wird eben über den Exit Status != 0 und eben auch vom OS.</p> </blockquote> <p>Der Exit-Status eines Programmmodules hat mMn nichts mit den Exceptions zu tun, die man als Programmierer einbaut in seinen Programmfluss. Um einen Exit-Status zu erhalten muss man seine "App" mindestens in eine virtual (real) Maschine einpacken, oder einen Fork beantragen, oder ... Das OS kümmert sich dann. Um die Exceptions kümmert es sich aber nicht. Dazu muss der Code entsprechend schlau assembliert werden.</p> <blockquote> <p>Des Weiteren gibt es für die Kommunikation unter Prozessen nicht nur den Exitstatus. So kann z.B. auch das OS an einen Perlprozess Signale senden, bspw. ein Signal zum beenden.</p> </blockquote> <p>Das ist mMn eine ganz andere Ebene, als die berühmten Exceptions.</p> <p>Aber genaus <strong>DAS</strong> wollte ich ja von jemandem erklärt haben, der mindestens so tief einsteigen mag, wie RolfB.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Wer kann Exceptions noch explizit erklären? - 100€ Prämie! - Timeout/Deadline = 31.12.2019 Tue, 20 Nov 18 16:16:50 Z https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736810#m1736810 https://forum.selfhtml.org/self/2018/nov/16/wer-kann-exceptions-noch-explizit-erklaeren-100eu-praemie-timeout-strich-deadline-gleich-31-punkt-12-punkt-2019/1736810#m1736810 <p>Hallo Tom,</p> <p>da ein Prozess nicht direkt andere aufruft, sondern das OS dazwischen hängt, kriegt das OS den mit und kann Dir dann das Klopapier rüberreichen. Ich mag das jetzt nicht testen, viel Tipparbeit, aber die Beziehung Shell ⇒ Programm ist die gleiche wie bei Programm ⇒ Subprogramm, insofern bekommt ein Programm das schon mit.</p> <p>Ob man aber garantiert erkennen kann, dass ein Subprozess wegen einer ungefangenen Exception in die gerannt ist - da bin ich mir gar nicht sicher. Das mag betriebssystemspezifisch sein. In einem Russisch Roulette Betriebssystem wie DOS kann es natürlich sein, dass man gar nichts mehr mitbekommt. Weil die Exception dazu führte, dass der Instruction Pointer des Prozessors auf eine lustige Stelle im Grafikspeicher gesetzt wurde, oder so ähnlich, und die Karre nun den Dreifinger-Gruß braucht. Oder den Any Key<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>.</p> <p>Ansonsten ist die Beziehung zwischen Prozessen für das Thema "Exception Handling innerhalb von Prozessen" ein Fall für die Copacabanas: "Klingt interessant" - "Ist es aber nicht".</p> <blockquote> <p>Um die Exceptions kümmert sich (das OS) aber nicht.</p> </blockquote> <p>Windows schon. Es stellt dafür eine Standardinfrastruktur bereit. Ob man die nutzen MUSS, weil es Funktionen im Windows API gibt, die SEH Exceptions werfen, das weiß ich nicht.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - clusi </div> <hr class="footnotes-sep"> <section class="footnotes"> <ol class="footnotes-list"> <li id="fn1" class="footnote-item"><p>Wenn der Computer sagt "Hit any key to continue" und ein Luser fragt, wo der ist, zeigt man auf die „Continue“-Taste am Computergehäuse. <a href="#fnref1" class="footnote-backref">↩︎</a></p> </li> </ol> </section>