Softwareentwicklung

Fragen und Antworten für Fachleute, Akademiker und Studenten, die im Lebenszyklus der Systementwicklung arbeiten



6
Warum setzen wir private Member-Funktionen in Header?
Die Antwort auf die Frage, warum wir private Membervariablen in C ++ - Header einfügen, lautet, dass die Größe der Klasse an den Stellen bekannt sein muss, an denen Instanzen deklariert werden, damit der Compiler Code generieren kann, der sich entsprechend im Stapel bewegt. Warum müssen wir private Mitglieder in …
16 c++  history 

2
Wie vermeiden Traits in Scala den "Diamantfehler"?
(Hinweis: Aus offensichtlichen Gründen habe ich im Titel 'error' anstelle von 'problem' verwendet.;)). Ich habe ein paar grundlegende Lektüren zu Traits in Scala gemacht. Sie ähneln Interfaces in Java oder C #, ermöglichen jedoch die Standardimplementierung einer Methode. Ich habe mich gefragt: Kann dies nicht den Fall des "Diamantenproblems" verursachen, …


5
Algorithmus zum Abflachen überlappender Bereiche
Ich suche nach einer guten Möglichkeit, eine Liste potenziell überlappender numerischer Bereiche zu reduzieren (aufzuteilen). Das Problem ähnelt dem dieser Frage: Schnellster Weg, um überlappende Datumsbereiche aufzuteilen , und viele andere. Die Bereiche sind jedoch nicht nur ganze Zahlen, und ich suche nach einem anständigen Algorithmus, der leicht in Javascript …

5
Wie vermeide ich eine übermäßige Methodenüberladung?
Wir haben ziemlich viele Stellen im Quellcode unserer Anwendung, an denen eine Klasse viele Methoden mit gleichen Namen und unterschiedlichen Parametern hat. Diese Methoden haben immer alle Parameter einer 'vorherigen' Methode plus einen weiteren. Es ist ein Ergebnis der langen Evolution (Legacy-Code) und dieses Denkens (ich glaube): " Es gibt …

3
Verwirrt über die Definition von 'Abstraktion' in OOP
Ich versuche die Definition von 'Abstraktion' in OOP zu verstehen. Ich bin auf einige Hauptdefinitionen gestoßen. Sind sie alle gültig? Ist einer von ihnen falsch? Ich bin verwirrt. (Ich habe die Definition mit meinen eigenen Worten neu geschrieben). Definition 1: Abstraktion ist das Konzept, ein Objekt aus der realen Welt …

2
Wie kann ich eine universelle Konstruktion effizienter gestalten?
Eine "universelle Konstruktion" ist eine Wrapper-Klasse für ein sequentielles Objekt, mit der es linearisiert werden kann (eine starke Konsistenzbedingung für gleichzeitige Objekte). Hier ist zum Beispiel eine angepasste wartefreie Konstruktion in Java aus [1], die das Vorhandensein einer wartefreien Warteschlange voraussetzt, die die Schnittstelle erfüllt WFQ(für die nur ein einmaliger …


6
Bin ich aus TDD-Sicht eine schlechte Person, wenn ich einen Test mit einem Live-Endpunkt anstelle eines Schein-Endpunkts durchführe?
Ich folge TDD religiös. Meine Projekte haben in der Regel eine Testabdeckung von mindestens 85% mit aussagekräftigen Testfällen. Ich arbeite viel mit HBase , und die Haupt-Client-Oberfläche, HTable, ist ein echtes Problem. Das Schreiben meiner Komponententests dauert drei- oder viermal länger als das Schreiben von Tests, die einen Live-Endpunkt verwenden. …



4
Gibt es einen Unterschied zwischen iterabel und aufzählbar?
Viele Sprachen scheinen sehr ähnliche Strukturen zu haben, die als iterabel oder aufzählbar bezeichnet werden. Dies sind Strukturen, über die iteriert oder aufgezählt werden kann und die mir äußerst ähnlich erscheinen. Sind diese Wörter synonym oder gibt es einen subtilen semantischen Unterschied zwischen iterierbar und aufzählbar, der die Wahl des …

2
Algorithmus für die schnelle Tag-Suche
Das Problem ist folgendes. Es gibt eine Reihe von einfachen Entitäten E, an die jeweils eine Reihe von Tags T angehängt ist. Jede Entität kann eine beliebige Anzahl von Tags haben. Die Gesamtzahl der Entitäten liegt bei fast 100 Millionen, und die Gesamtzahl der Tags liegt bei etwa 5000. Die …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.