{"id":4164,"date":"2025-04-13T00:46:55","date_gmt":"2025-04-12T21:46:55","guid":{"rendered":"https:\/\/demensdeum.com\/blog\/2025\/04\/13\/manual-is-your-best-friend\/"},"modified":"2025-04-15T12:50:54","modified_gmt":"2025-04-15T09:50:54","slug":"manual-is-your-best-friend","status":"publish","type":"post","link":"https:\/\/demensdeum.com\/blog\/de\/2025\/04\/13\/manual-is-your-best-friend\/","title":{"rendered":"Warum Dokumentation Ihr bester Freund ist"},"content":{"rendered":"<p>(Und wie nicht ein Guru sein kann, dessen Rat nach dem Update nicht mehr funktioniert)<\/p>\n<p>&#8220;Apps d\u00fcrfen nur \u00f6ffentliche APIs verwenden und m\u00fcssen auf dem derzeit Versandbetrieb ausgef\u00fchrt werden.&#8221; Apple App Review -Richtlinien<\/p>\n<p>Wenn Sie jemals mit einem neuen Framework gearbeitet haben und sich erwischt haben: &#8220;Jetzt verstehe ich alles, Dokumentation ist f\u00fcr Bohrungen&#8221;-Sie sind definitiv nicht allein. Viele Entwickler haben einen nat\u00fcrlichen Instinkt: zuerst versuchen und nur dann &#8211; lesen. Das ist in Ordnung.<\/p>\n<p>Aber zu diesem Zeitpunkt k\u00f6nnen Sie leicht den richtigen Weg ausschalten und sich in einer Situation befinden, in der der Code funktioniert &#8230; aber erst heute und nur &#8220;ich habe&#8221;.<\/p>\n<h2> Warum ist es einfach, es herauszufinden &#8211; ist es nicht genug? <\/ h2><\/h2>\n<p>Freiimvorki, insbesondere geschlossen und propriet\u00e4r, sind komplex und mehrfach. Sie haben eine Menge versteckter Logik-, Optimierungs- und Implementierungsfunktionen, die:<\/p>\n<p>* nicht dokumentiert;<br \/>\n* nicht garantiert;<br \/>\n* kann sich jederzeit \u00e4ndern;<br \/>\n* sind ein kommerzielles Geheimnis und k\u00f6nnen durch Patente gesch\u00fctzt werden<br \/>\n* Enth\u00e4lt Fehler, Fehler, die nur den Entwicklern des Frameworks bekannt sind.<\/p>\n<p>Wenn Sie &#8220;auf eine Ahnung&#8221; handeln, k\u00f6nnen Sie leicht Architektur in zuf\u00e4lligen Beobachtungen aufbauen, anstatt die klar beschriebenen Regeln zu unterst\u00fctzen. Dies f\u00fchrt dazu, dass der Code anf\u00e4llig f\u00fcr Aktualisierungen und Kantenf\u00e4lle wird.<\/p>\n<h2> Dokumentation ist keine Einschr\u00e4nkung, sondern Unterst\u00fctzung <\/ H2><\/h2>\n<p>Die Entwickler von Frameworks erstellen aus einem bestimmten Grund Handb\u00fccher &#8211; dies ist eine Vereinbarung zwischen Ihnen und ihnen. W\u00e4hrend Sie als Teil der Dokumentation fungieren, versprechen sie:<\/p>\n<p>* Stabilit\u00e4t;<br \/>\n* Unterst\u00fctzung;<br \/>\n* vorhersehbares Verhalten.<\/p>\n<p>Wenn Sie \u00fcber diesen Framework hinausgehen, wird alles, was als n\u00e4chstes passiert, ausschlie\u00dflich zu Ihrer Verantwortung.<\/p>\n<p>Experimente? Sicherlich. Aber im Rahmen der Regeln.<br \/>\nNeugier ist die Super -VIA des Entwicklers. Erforschen Sie, versuchen Sie, nicht standardm\u00e4\u00dfige, Testgrenzen &#8211; all dies ist notwendig. Aber es gibt ein wichtiges &#8220;aber&#8221;: &#8220;:<\/p>\n<p>Sie m\u00fcssen im Rahmen der Dokumentation und der Best Practices experimentieren.<\/p>\n<p>Dokumentation ist kein Gef\u00e4ngnis, sondern eine Karte. Sie zeigt, welche M\u00f6glichkeiten wirklich geplant und unterst\u00fctzt werden. Es sind solche Experimente, die nicht nur n\u00fctzlich, sondern auch sicher sind.<\/p>\n<h2> Vorsicht: Guru <\/ H2><\/h2>\n<p>Manchmal k\u00f6nnen Sie echte &#8220;Experten&#8221; begegnen:<\/p>\n<p>* Sie f\u00fchren Kurse durch<br \/>\n* Auf Konferenzen auff\u00fchren,<br \/>\n* B\u00fccher und Blogs schreiben,<br \/>\n* teilte &#8220;ihren Ansatz&#8221; zum Framework.<\/p>\n<p>Aber selbst wenn sie \u00fcberzeugend klingen, ist es wichtig, sich zu erinnern:<br \/>\nWenn ihre Ans\u00e4tze der Dokumentation widersprechen, sind sie instabil.<\/p>\n<p>Solche &#8220;empirischen Muster&#8221; k\u00f6nnen:<\/p>\n<p>* Arbeit nur an einer bestimmten Version des Frameworks;<br \/>\n* Seien Sie anf\u00e4llig f\u00fcr Aktualisierungen;<br \/>\n* In unvorhersehbaren Situationen brechen.<\/p>\n<p>Guru ist cool, wenn sie die Handb\u00fccher respektieren. Andernfalls m\u00fcssen ihre Tipps durch offizielle Dokumentation gefiltert werden.<\/p>\n<h2> ein wenig solide <\/p>\n<h2><\/h2>\n<p>Drei Ideen aus soliden Prinzipien sind hier besonders relevant:<\/p>\n<p>* \u00d6ffnen\/geschlossenes Prinzip: Erweitern Sie das Verhalten durch eine \u00f6ffentliche API, gehen Sie nicht in die Innenseiten.<br \/>\n* Liskov Substitionsprinzip: Verlassen Sie sich nicht auf die Umsetzung, verlassen Sie sich auf den Vertrag. Erkrankungen &#8211; Alles wird brechen, wenn die Implementierung ersetzt wird.<br \/>\n* Abh\u00e4ngigkeitsinversion: Hoch -Level -Module sollten nicht von Modulen mit niedrigem Level abh\u00e4ngen. Beide Typen sollten von Abstraktionen abh\u00e4ngen. Die Abstraktion sollte nicht von den Details abh\u00e4ngen. Details sollten von Abstraktionen abh\u00e4ngen.<\/p>\n<p>Was bedeutet das in der Praxis? Wenn Sie ein Framework verwenden und direkt an seine internen Details gebunden sind, versto\u00dfen Sie gegen dieses Prinzip.<br \/>\nStattdessen m\u00fcssen Sie die Abh\u00e4ngigkeit von \u00f6ffentlichen Schnittstellen, Protokollen und Vertr\u00e4gen aufbauen, die der Rahmen offiziell unterst\u00fctzt. Das gibt:<\/p>\n<p>* Die beste Isolation Ihres Codes aus \u00c4nderungen im Framework;<br \/>\n* Die F\u00e4higkeit, Abh\u00e4ngigkeiten einfach zu testen und zu ersetzen;<br \/>\n* Vorhersehbares Verhalten und Stabilit\u00e4t der Architektur.<\/p>\n<p>Wenn Ihr Code von den Details und nicht von Abstraktionen abh\u00e4ngt, werden Sie buchst\u00e4blich in eine bestimmte Implementierung einbettet, die jederzeit verschwinden oder sich \u00e4ndern kann.<\/p>\n<h2> Und wenn der Fehler? <\/ h2><\/h2>\n<p>Manchmal kommt es vor, dass Sie alles richtig gemacht haben, aber es funktioniert falsch. Dies passiert &#8211; Frameworks sind nicht perfekt. In diesem Fall:<\/p>\n<p>* Sammeln Sie ein minimal reproduziertes Beispiel.<br \/>\n* Stellen Sie sicher, dass Sie nur dokumentierte API verwenden.<br \/>\n* Senden Sie einen Fehlerport-sie werden Sie definitiv verstehen und h\u00f6chstwahrscheinlich helfen.<\/p>\n<p>Wenn das Beispiel auf Hacks oder Bypass basiert, m\u00fcssen die Entwickler es nicht unterst\u00fctzen, und h\u00f6chstwahrscheinlich wird Ihr Fall einfach vermissen.<\/p>\n<h2> wie man das Maximum aus dem Framework <\/ h2> dr\u00fcckt<\/h2>\n<p>* Lesen Sie die Dokumentation. Ernsthaft.<br \/>\n* Befolgen Sie die Anleitungen und Empfehlungen der Autoren.<br \/>\n* Experiment &#8211; aber innerhalb des beschriebenen.<br \/>\n* \u00dcberpr\u00fcfen Sie die Tipps (sogar die ber\u00fchmtesten Lautsprecher!) Durch das Handbuch.<br \/>\n* Falten Sie Fehler mit minimalen F\u00e4llen und Respekt vor dem Vertrag.<\/p>\n<h2> Schlussfolgerung <\/ H2><\/h2>\n<p>Freiimvorki sind keine schwarzen Kisten, sondern Werkzeuge, die die Nutzungsregeln haben. Sie zu ignorieren bedeutet, den Code &#8220;nach zuf\u00e4llig&#8221; zu schreiben. Aber wir m\u00f6chten, dass unser Code lange Zeit lebt, Benutzer begeistert und nicht vom kleinen Update abbricht.<\/p>\n<p>Also: Vertrauen, aber \u00fcberpr\u00fcfen Sie. Und ja, lesen Sie die Handb\u00fccher. Sie sind Ihre Supermacht.<\/p>\n<h2> Quellen <\/ h2><\/h2>\n<p><a href=\"https:\/\/developer.apple.com\/app-store\/review\/guidelines\/\" rel=\"noopener\" target=\"_blank\">https:\/\/developer.apple.com\/app-store\/review\/guidelines\/<\/a><br \/>\n<a href=\"https:\/\/en.wikipedia.org\/wiki\/SOLID\" rel=\"noopener\" target=\"_blank\">https:\/\/en.wikipedia.org\/wiki\/SOLID<\/a><br \/>\n<a href=\"https:\/\/en.wikipedia.org\/wiki\/API\" rel=\"noopener\" target=\"_blank\">https:\/\/en.wikipedia.org\/wiki\/API<\/a><br \/>\n<a href=\"https:\/\/en.wikipedia.org\/wiki\/RTFM\" rel=\"noopener\" target=\"_blank\">https:\/\/en.wikipedia.org\/wiki\/RTFM<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Und wie nicht ein Guru sein kann, dessen Rat nach dem Update nicht mehr funktioniert) &#8220;Apps d\u00fcrfen nur \u00f6ffentliche APIs verwenden und m\u00fcssen auf dem derzeit Versandbetrieb ausgef\u00fchrt werden.&#8221; Apple App Review -Richtlinien Wenn Sie jemals mit einem neuen Framework gearbeitet haben und sich erwischt haben: &#8220;Jetzt verstehe ich alles, Dokumentation ist f\u00fcr Bohrungen&#8221;-Sie sind<a class=\"more-link\" href=\"https:\/\/demensdeum.com\/blog\/de\/2025\/04\/13\/manual-is-your-best-friend\/\">Continue reading <span class=\"screen-reader-text\">&#8220;Warum Dokumentation Ihr bester Freund ist&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[49],"tags":[],"class_list":["post-4164","post","type-post","status-publish","format-standard","hentry","category-blog","entry"],"translation":{"provider":"WPGlobus","version":"3.0.2","language":"de","enabled_languages":["en","ru","zh","de","fr","ja","pt"],"languages":{"en":{"title":true,"content":true,"excerpt":false},"ru":{"title":true,"content":true,"excerpt":false},"zh":{"title":true,"content":true,"excerpt":false},"de":{"title":true,"content":true,"excerpt":false},"fr":{"title":true,"content":true,"excerpt":false},"ja":{"title":true,"content":true,"excerpt":false},"pt":{"title":true,"content":true,"excerpt":false}}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts\/4164","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/comments?post=4164"}],"version-history":[{"count":6,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts\/4164\/revisions"}],"predecessor-version":[{"id":4172,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts\/4164\/revisions\/4172"}],"wp:attachment":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/media?parent=4164"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/categories?post=4164"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/tags?post=4164"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}