Softwareentwicklung

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

1
Wie soll ich mit inkompatiblen Konfigurationen mit dem Builder-Muster umgehen?
Dies wird durch diese Antwort auf eine separate Frage motiviert . Das Builder-Muster wird verwendet, um die komplexe Initialisierung zu vereinfachen, insbesondere mit optionalen Initialisierungsparametern. Ich weiß jedoch nicht, wie ich mich gegenseitig ausschließende Konfigurationen richtig verwalten soll. Hier ist eine ImageKlasse. Imagekann aus einer Datei oder aus einer Größe …

3
Datei während des Schreibens unter Linux lesen
Soweit ich weiß, erhält der Prozess, der in die Datei schreibt, beim Schreiben einer Datei eine exklusive Sperre. Daher können andere Prozesse nicht zum Lesen auf diese Datei zugreifen. Mit den oben genannten Kenntnissen kann ich nicht verstehen, wie ich ein Video im Media Player abspielen kann, wenn der Browser …
9 linux  io  locks 

2
So vermeiden Sie… Helfer- oder… Manager-Klassen
Ich habe einige Helferklassen in meinem Projekt. Ich habe gelesen, dass dies eine schlechte Sache ist, aber ich vermute, dass "Helper" das falsche Suffix für sie ist. Ich werde ein Beispiel geben. Erstens habe ich eine UserKlasse. Ich brauche eine Methode GetSuggestedFriends()für einen Benutzer. Ich möchte die Logik zum Bestimmen …


3
Vorteil / Nachteil der Deklaration aller Variablen in einem JUnit-Test
Ich habe einige Komponententests für neuen Code bei der Arbeit geschrieben und ihn zur Codeüberprüfung gesendet. Einer meiner Mitarbeiter machte einen Kommentar dazu, warum ich Variablen, die in einer Reihe dieser Tests verwendet werden, außerhalb des Testbereichs platzierte. Der Code, den ich gepostet habe, war im Wesentlichen import org.junit.Test; public …

5
So teilen Sie Speicher zwischen in C / C ++ geschriebenen Anwendungen
Ich gehe durch ein in C / C ++ geschriebenes Programm zur Steuerung in der Robotik. Grundsätzlich werden drei verschiedene Programme gleichzeitig ausgeführt und kommunizieren über den gemeinsamen Speicher. Beim Google-Herumdenken fand ich, dass vxWorks und die Interprozess-Header der Boost-Bibliotheken ( Boost-Dokumentation: Speicher zwischen Prozessen teilen ). Jetzt möchte ich …
9 c++  c  memory  memory-usage  boost 

2
Wann wird eine benutzerdefinierte Ausnahme in C # erstellt?
Ich schreibe eine Klasse für die Schnittstelle mit einem einfachen Hardwaregerät über einen COM-Port. Das Gerät kann für die Verwendung verschiedener Modi konfiguriert werden, sodass meine Klasse eine SetOperatingModeFunktion hat, die einen enumTyp annimmt UsbDeviceMode. Es sieht ungefähr so ​​aus: class UsbDevice { public void SetOperatingMode(UsbDeviceMode mode) { byte[] buffer …

2
Sollte ich die Benutzer-ID in der REST-URL-Struktur angeben?
Grundsätzlich besteht eine Funktion meiner App darin, die Freunde des angemeldeten Benutzers abzurufen. Eigentlich zögere ich zwischen beiden Endpunkten: GET / api / users / friends GET / api / users /: userId / friends Die Verwendung von 1 userIdwäre über das Authentifizierungstoken erreichbar. Bei Verwendung von 2 müsste der …


7
Wie überprüfen Sie, ob der Code automatisch abgedeckt wurde?
Ich bin dabei, einen Bamboo-Server für einige neue Projekte für einen Push an TDD in einem CI / CD-Workflow einzurichten. Sicher, Unit-Tests sind großartig, aber nur so protokolliert, wie sie vorhanden sind. Dies ist möglicherweise besser in einem GIT-Pre-Recieve-Hook für bestimmte Zweige (z. B. Entwicklungs- und Hauptversionszweige), aber wie sollte …


1
Ist aufdringliches JavaScript erforderlich, um eine Funktion von AngularJS zu unterstützen?
Ich beginne damit, dass ich gerade etwas über AngularJS lerne und diesen Artikel gelesen habe, der für aufdringliches JavaScript als das Richtige einzutreten scheint: http://www.ng-newsletter.com/posts/angular-for-the-jquery-developer.html Mein Verständnis ist, dass unauffälliges JavaScript im Allgemeinen als "das Richtige" angesehen wird (was vielleicht umstritten ist, aber außerhalb des Rahmens meiner Frage liegt). Aber …

2
Gibt es eine kanonische Möglichkeit, Instanzmethoden in Python zwischenzuspeichern?
Ich habe einige rechenintensive Funktionen in meinem Python-Skript, die ich zwischenspeichern möchte. Ich habe nach Lösungen für den Stapelüberlauf gesucht und viele Links gefunden: /programming/4431703/python-resettable-instance-method-memoization-decorator https://wiki.python.org/moin/PythonDecoratorLibrary#Memoize http://pythonhosted.org/cachetools/ https://pythonhosted.org/Flask-Cache/ (Ich habe dieses für Kolbenanwendungen verwendet, aber dieses ist keine Kolbenanwendung). Am Ende habe ich dies in mein Programm eingefügt. Es scheint …
9 python 

1
Wie vermeide ich einen Alptraum der Modulabhängigkeitskette, der durch transitive Abhängigkeiten verursacht wird?
Viele (die meisten?) AngularJS-Leute scheinen sich dafür einzusetzen, AngularJS-Apps in viele Module aufzuteilen. Brian Ford gibt in seinem Blog bereits an, dass das Verpacken nach Schichten (Controller, Service usw.) eine "dumme" Vorstellung ist, also werde ich nicht einmal dorthin gehen. (Siehe http://briantford.com/blog/huuuuuge-angular-apps .) Angenommen, Sie modularisieren eine App nach Funktionen. …


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.