Inżynieria oprogramowania

10
Optymalna struktura danych dla naszego własnego API

Jestem na wczesnym etapie pisania głównego trybu Emacsa dla sieci Stack Exchange ; jeśli regularnie używasz Emacsa, to w końcu przyniesie ci korzyść. Aby zminimalizować liczbę wywołań do interfejsu API Stack Exchange (ograniczenie do 10000 na IP dziennie) i po prostu być ogólnie odpowiedzialnym...

10
Testowanie klienta REST na serwerze REST. Jak robić mecze?

Pisząc testy jednostkowe, często używa się urządzeń: mało danych do przetestowania, więc możemy powiedzieć: 1. Zdobądź wszystkich klientów, którzy powinni dołączyć Willy Wonka. 2. Usuń klienta 3, a teraz zdobądź klientów nie powinien już zawierać Willy Wonka. To dobrze w testach jednostkowych....

10
Czy istnieje sposób użycia gcc jako biblioteki?

Każdy zna rozwiązanie, które działa mniej więcej tak: #include <stdio.h> #include <gcc.h> /* This .h is what I'm looking for. */ int main (void) { /* variables declaration (...) */ /* The following line is supposed to be equivalent to: * $ gcc main.c -o main */ results =...

10
Jak wdrożyć leniwą ocenę if ()

Obecnie implementuję ewaluator wyrażeń (wyrażenia jednowierszowe, takie jak formuły) w oparciu o: wprowadzone wyrażenie jest tokenizowane w celu oddzielenia literalnych boolanów, liczb całkowitych, dziesiętnych, ciągów, funkcji, identyfikatorów (zmiennych) Zaimplementowałem algorytm Shunting-yard...

10
CoffeeScript i nazwane funkcje

W innym miejscu pojawił się spór o terminologię nazwanej funkcji w CoffeeScript. W szczególności ktoś odniósł się do czegoś takiego: foo = -> console.log("bar") jako nazwana funkcja. Jednak sprzeciwiano się temu, że wszystko w CoffeeScript jest funkcjami anonimowymi i nie ma żadnych...

10
Poprawki Open Source, praw autorskich i trywialne

Powiedzmy, że programista opracował bibliotekę dla swojej komercyjnej aplikacji o zamkniętych źródłach. Ponieważ chcą zwrócić się społeczności open source, publikują tę bibliotekę, powiedzmy, na licencji GPL, ale nadal używają jej we własnej aplikacji. Ponieważ są właścicielami praw autorskich, w...

10
Konieczność nauki rozszerzenia języka haskell do produkcji

Podstawowy język Haskell jest naprawdę prosty. Pochodząc z tła OO, główną trudnością jest dostosowanie się do czysto funkcjonalnego paradygmatu. Ucząc się „podstawowego” języka Haskell, zawsze brałem pod uwagę rozszerzenia językowe jako zabawki dla osób CS lub eksperymenty dla przyszłych wersji...

10
Skuteczne spotkania zespołu

Jestem liderem zespołu złożonego z 8 programistów w firmie złożonej z około 20 osób technicznych. Pracują nad wieloma projektami, w projekty te zaangażowane są także osoby z innych zespołów, które są poza moją kontrolą. Moja organizacja nie rozwija odpowiednio sprawnego rozwoju i są w pewnym...