Ist die Sichtbarkeit privatevon Klassenfeldern / Eigenschaften / Attributen sinnvoll? In OOP werden Sie früher oder später eine Unterklasse einer Klasse erstellen. In diesem Fall ist es gut, die Implementierung zu verstehen und sie vollständig ändern zu können. Eines der ersten Dinge, die ich mache, wenn ich eine Klasse untergeordnete, …
Wenn unveränderliche Objekte¹ gut und einfach sind und Vorteile bei der gleichzeitigen Programmierung bieten, warum erstellen Programmierer dann immer wieder veränderbare Objekte²? Ich habe vier Jahre Erfahrung in der Java-Programmierung und aus meiner Sicht ist das erste, was Leute nach dem Erstellen einer Klasse tun,, Getter und Setter in der …
Ein Kollege sagte mir, dass die Erstellung von Java-Objekten die teuerste Operation ist, die Sie ausführen können. Daraus kann ich nur den Schluss ziehen, so wenig Objekte wie möglich zu erstellen. Dies scheint den Zweck der objektorientierten Programmierung etwas zu entkräften. Wenn wir keine Objekte erstellen, schreiben wir nur einen …
Insbesondere in Bibliotheken enthalten Pakete häufig Klassen, die nach einem einzigen Konzept organisiert sind. Beispiele: xml, sql, user, config, db . Ich denke, wir alle fühlen uns ziemlich natürlich, dass diese Pakete im Singular korrekt sind . com.myproject. xml .Element com.myproject. sql .Connection com.myproject. Benutzer .Benutzer com.myproject. Benutzer .UserFactory Wenn …
Warum brauchen wir private Variablen in Klassen? Jedes Buch über Programmierung, das ich gelesen habe, besagt, dass dies eine private Variable ist, so definiert man es, hört aber dort auf. Der Wortlaut dieser Erklärungen kam mir immer so vor, als hätten wir wirklich eine Vertrauenskrise in unseren Beruf. Die Erklärungen …
Getter und Setter werden oft als nicht richtig kritisiert. Andererseits hat der meiste OO-Code, den ich gesehen habe, umfangreiche Getter und Setter. Wann sind Getter und Setter gerechtfertigt? Versuchen Sie, sie zu vermeiden? Sind sie im Allgemeinen überbeansprucht? Wenn Ihre Lieblingssprache Eigenschaften hat (meine hat), werden solche Dinge auch als …
In den letzten Monaten scheint das Mantra "Komposition gegenüber Vererbung bevorzugen" aus dem Nichts aufgetaucht zu sein und fast zu einer Art Mem innerhalb der Programmgemeinschaft geworden zu sein. Und jedes Mal, wenn ich es sehe, bin ich ein bisschen verwirrt. Es ist, als ob jemand gesagt hätte "zugunsten von …
Ich habe gerade meinen ersten Job als Softwareentwickler vor über einem Monat angefangen. Alles, was ich über OOP, SOLID , DRY , YAGNI, Designmuster, SRP usw. gelernt habe , kann aus dem Fenster geworfen werden. Sie verwenden C # .NET-Webformulare und erledigen fast alles im Code Behind mit sehr wenigen …
Ich suche hier eine Empfehlung. Ich habe Probleme damit, ob es besser ist, NULL oder einen leeren Wert von einer Methode zurückzugeben, wenn der Rückgabewert nicht vorhanden ist oder nicht bestimmt werden kann. Nehmen Sie die folgenden zwei Methoden als Beispiele: string ReverseString(string stringToReverse) // takes a string and reverses …
In der objektorientierten Programmierung gibt es natürlich keine genaue Regel für die maximale Länge einer Methode, aber ich fand diese beiden Anführungszeichen immer noch etwas widersprüchlich. Ich würde gerne hören, was Sie denken. In Clean Code: Ein Handbuch für agiles Software-Handwerk , sagt Robert Martin: Die erste Regel für Funktionen …
Ich arbeite mit Webentwicklung seit 2009, als ich mit PHP anfing. Als ich zu ASP.NET gewechselt bin, habe ich viel über DDD und OOAD gehört, bei denen diese "Geschäftslogik" und "Geschäftsregeln" einen hohen Stellenwert haben. Der Punkt ist, dass sich alle Apps, die ich bis jetzt entwickelt habe, um CRUD-Operationen …
Ich lerne gerade TDD. Nach meinem Verständnis sind private Methoden nicht testbar und sollten nicht besorgt sein, da die öffentliche API genügend Informationen zur Überprüfung der Objektintegrität bereitstellt. Ich habe OOP für eine Weile verstanden. Ich verstehe, dass private Methoden Objekte gekapselter machen und somit Änderungen und Fehlern widerstehen. Sie …
Die Kapselung sagt mir, dass ich alle oder fast alle Felder privat machen und diese durch Getter / Setter verfügbar machen soll. Aber jetzt erscheinen Bibliotheken wie Lombok , die es uns ermöglichen, alle privaten Felder durch eine kurze Annotation freizugeben @Data. Es werden Getter, Setter und Setting-Konstruktoren für alle …
Um beispielsweise eine CPU in Android eingeschaltet zu lassen, kann ich folgenden Code verwenden: PowerManager powerManager = (PowerManager)getSystemService(POWER_SERVICE); WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "abc"); wakeLock.acquire(); Ich denke aber die lokalen Variablen powerManagerund wakeLockkönnen beseitigt werden: ((PowerManager)getSystemService(POWER_SERVICE)) .newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakelockTag") .acquire(); Eine ähnliche Szene wird in der iOS-Benachrichtigungsansicht angezeigt, z. B .: von …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.