Einige Programmiersprachen wie zB Scala haben das Konzept von OptionTypen (auch als Maybe), die entweder einen Wert enthalten können oder nicht. Nach dem, was ich über sie gelesen habe, werden sie allgemein als überlegene Lösung für dieses Problem angesehen null, da sie den Programmierer ausdrücklich dazu zwingen, die Fälle zu …
Aus heutiger Sicht passt diese Frage nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich Debatten, Argumente, Abstimmungen oder erweiterte Diskussionen hervorrufen. Wenn Sie der Meinung sind, dass diese Frage verbessert und möglicherweise erneut geöffnet werden …
Ich habe diesen Blog von Joel Spolsky über 12 Schritte zu besserem Code gelesen . Das Fehlen von Test Driven Development hat mich wirklich überrascht. Also möchte ich die Frage an die Gurus werfen. Lohnt sich TDD nicht wirklich?
Hier ist eine C ++ - Klasse, die mit drei Werten erstellt wird. class Foo{ //Constructor Foo(std::string, int, char); private: std::string foo; char bar; int baz; }; Alle Parametertypen sind unterschiedlich. Ich könnte den Konstruktor überladen, damit die Reihenfolge keine Rolle spielt. class Foo{ //Constructors Foo(std::string, char, int); Foo(std::string, int, …
Ich bin dabei, meine eigene Programmiersprache zu erstellen, die ich zu Lernzwecken verwende. Ich habe bereits das Lexer und ein rekursives Descent-Parser für eine Teilmenge meiner Sprache geschrieben (derzeit unterstütze ich mathematische Ausdrücke wie + - * /und in Klammern). Der Parser gibt mir einen abstrakten Syntaxbaum zurück, auf dem …
Ich betrachte mich nicht als DDD-Experte, sondern versuche als Lösungsarchitekt, wenn immer möglich, Best Practices anzuwenden. Ich weiß, dass es eine Menge Diskussionen um die Vor- und Nachteile des No-Setter-Stils in DDD gibt, und ich kann beide Seiten des Arguments sehen. Mein Problem ist, dass ich in einem Team mit …
Kürzlich bin ich auf einen neu geschriebenen Code gestoßen, der mit viel Debug.Assert (C #) durchsetzt war. Sollten wir dies trotz der Verwendung von TDD, BDD und Unit Testing im Allgemeinen immer noch in großem Umfang nutzen?
Ich habe einige Erfahrung mit dem Schreiben kleiner Werkzeuge in Haskell und finde es sehr intuitiv zu bedienen, insbesondere zum Schreiben von Filtern (unter Verwendung von Filtern interact), die ihre Standardeingabe verarbeiten und an die Standardausgabe weiterleiten. Kürzlich habe ich versucht, einen solchen Filter für eine Datei zu verwenden, die …
Passwörter sollten aus offensichtlichen Sicherheitsgründen nicht im Klartext gespeichert werden: Sie müssen Hashes speichern und den Hash sorgfältig generieren, um Regenbogentabellenangriffe zu vermeiden. Allerdings, in der Regel Sie die Anforderung haben die letzten speichern n Passwörter und minimaler Komplexität und minimalen Wechsel zwischen den verschiedenen Passwörter zu erzwingen (um den …
Diese Frage wurde von Stack Overflow migriert, da sie in Software Engineering Stack Exchange beantwortet werden kann. Vor 6 Jahren migriert . Ich habe eine Frage, es geht darum, warum Programmierer Nebenläufigkeit und Multithread-Programme im Allgemeinen zu lieben scheinen. Ich betrachte hier zwei Hauptansätze: Ein asynchroner Ansatz, der im Wesentlichen …
Gibt es eine Reihe von branchenweit anerkannten Regeln, um eine Lieferantenbindung zu vermeiden? Ich meine, etwas, das man einem Manager oder einem anderen Entscheidungsträger zeigen kann, das leicht zu verstehen und leicht zu überprüfen ist. Gibt es allgemein anerkannte Regeln, eine Checkliste oder eine Reihe von Bedingungen, mit deren Hilfe …
Was ist ein guter Weg, um eine Methode zu benennen, die prüft, ob X ausgeführt werden muss, und ob X dies bei Bedarf tut? Wie kann man beispielsweise eine Methode benennen, die eine Benutzerliste aktualisiert, wenn sich neue Benutzer angemeldet haben? UpdateListIfNeededscheint zu lang, während einfach UpdateListimpliziert, dass jedes Mal …
In Objective-C sehe ich zwei gebräuchliche Muster für Blöcke. Eines ist ein Paar von Erfolg: / Misserfolg: Blöcke, das andere ist eine einzelne Vervollständigung: Block. Angenommen, ich habe eine Aufgabe, die ein Objekt asynchron zurückgibt, und diese Aufgabe schlägt möglicherweise fehl. Das erste Muster ist -taskWithSuccess:(void (^)(id object))success failure:(void (^)(NSError …
Ich gehe nur auf das, was ich auf SO gelesen habe, also vergib mir, aber alles, was ich gelesen habe, besagt, dass ein großer Vorteil von Git gegenüber Subversion darin besteht, dass Git dem Entwickler den gesamten Quellcode lokal zur Verfügung stellt, ohne irgendetwas tun zu müssen der Server. Mit …
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.