Ein Unternehmen mit einem soliden Open-Source-Projekt, das mit einem traditionellen Closed-Source-Produkt konkurriert, scheint unschlagbar. Ich habe diesen Artikel gelesen, in dem der Autor dieses Szenario darstellt: Angenommen, man könnte einen Softwaremarkt - etwa das Netzwerkmanagement - auf zwei Produkte aufteilen. Einer tat alles Mögliche und kostete eine Million Dollar, der …
Angenommen, ich habe eine Klasse für andere Klassen, die erweitert werden sollen: public class LoginPage { public String userId; public String session; public boolean checkSessionValid() { } } und einige Unterklassen: public class HomePage extends LoginPage { } public class EditInfoPage extends LoginPage { } Tatsächlich hat die Unterklasse keine …
Reicht es aus, Methoden nur nach dem Argumentnamen (nicht nach dem Typ) zu unterscheiden, oder ist es besser, ihn expliziter zu benennen? Zum Beispiel T Find<T>(int id)vs T FindById<T>(int id). Gibt es einen guten Grund, es expliziter zu benennen (dh hinzuzufügen ById), anstatt nur den Argumentnamen beizubehalten? Ein Grund, an …
Von: http://www.artima.com/lejava/articles/designprinciples4.html Erich Gamma: Ich denke, das stimmt auch nach zehn Jahren noch. Vererbung ist eine coole Möglichkeit, das Verhalten zu ändern. Aber wir wissen, dass es spröde ist, weil die Unterklasse leicht Annahmen über den Kontext treffen kann, in dem eine Methode aufgerufen wird, die sie überschreibt. Aufgrund des …
Nehmen wir an, ich habe die folgende Logik. Wie schreibt man das in Functional Programming? public int doSomeCalc(int[] array) { int answer = 0; if(array!=null) { for(int e: array) { answer += e; if(answer == 10) break; if(answer == 150) answer += 100; } } return answer; } Die Beispiele …
Mit isdem instanceofOperator von C # und dem Operator von Java können Sie auf die von einer Objektinstanz implementierte Schnittstelle (oder, noch schlimmer, ihre Basisklasse) verzweigen. Ist es angemessen, diese Funktion für Verzweigungen auf hoher Ebene zu verwenden, basierend auf den Fähigkeiten, die eine Schnittstelle bietet? Oder sollte eine Basisklasse …
Beispielsweise weist die System.IO.Path.CombineMethode in .NET die folgenden Überladungen auf: Combine(params String[]) Combine(String, String) Combine(String, String, String) Combine(String, String, String, String) Was ist der Sinn der letzten drei? Die erste würde sie alle abdecken, als ob Sie genau hinschauen, verwendet es das paramsSchlüsselwort. Das Argument der Abwärtskompatibilität würde nur die …
Beliebte Programmiersprachen (C #, Java, C ++) sind alle Sprachen der 3. Generation (mit einem höheren Abstraktionsgrad von den physischen Teilen der Maschine). Assemblersprachen werden als 2. und Maschinensprachen als Sprachen der 1. Generation klassifiziert. Anfänglich dachte ich, SQL sollte als Sprache der 4. Generation betrachtet werden, da es abstrakter …
Bedenken Sie: public function polynominal($a, $b, $c, $d) { return $a * pow($x, 3) + $b * pow($x, 2) + $c * $x + $d; } Angenommen, Sie schreiben verschiedene Tests für die obige Funktion und beweisen sich und anderen, dass "es funktioniert". Warum dann nicht diese Tests entfernen und …
Die meisten Aufgaben in meiner Schule für die anfänglichen Programmierstunden erforderten die Verwendung von Arrays. Ich arbeite jetzt ganztägig und habe nie ein Array für ein Projekt verwendet, an dem ich gearbeitet habe. Selbst in den bestehenden Projekten habe ich nie die Verwendung von Arrays gesehen. Meiner Meinung nach ist …
Ich habe 2 Tage Zeit, um eine sehr ernsthafte Entscheidung über die Tools und Plattformen zu treffen, die mein Unternehmen verwenden wird, um seine WPF-Anwendung auf Linux / Android / iOS zu portieren. Natürlich kann ich meinen Senioren sagen, dass 2 Tage kaum ausreichen, um über alle möglichen Optionen zu …
In den Nachrichten gab es eine Geschichte über einen Mann, dessen Paypal-Konto versehentlich mit 92.233.720.368.547.800 US-Dollar belastet wurde. Woher kommt diese Nummer? Welche Art von Programmierfehler wird wahrscheinlich zu dieser Zahl führen?
Ich habe in letzter Zeit eine Menge Codeüberprüfungen durchgeführt und bin mir nicht sicher, welche positiven und negativen Auswirkungen und welche Professionalität es hat, positive und / oder lustige Kommentare in Codeüberprüfungen einzubringen. Wir verwenden Github als unsere Codeüberprüfungsplattform in meinem Team, sodass die Kommentare von jedermann eingesehen werden können. …
Ich versuche, diese CSS-Präprozessoren zu erforschen. Gibt es irgendwelche Vorteile von sass gegenüber less als CSS-Präprozessor? Zu den Faktoren, die ich suche, gehören die Größe der Community, die Reife des Softwareprojekts usw. Ich weiß, dass diesbezüglich noch eine andere Frage gestellt wurde , die jedoch nicht konstruktiv formuliert und abgeschlossen …
Angenommen, Sie schreiben einen TDD-Stil für ein Yahtzee-Spiel. Sie möchten den Teil des Codes testen, der bestimmt, ob ein Satz mit fünf Würfeln ein volles Haus ist oder nicht. Soweit ich weiß, befolgen Sie bei TDD folgende Grundsätze: Schreiben Sie zuerst die Tests Schreiben Sie das Einfachste, was funktioniert Verfeinern …
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.