W naszej firmie zazwyczaj upewniamy się, że piszemy kompleksowy test dla naszych stron internetowych / aplikacji internetowych. Oznacza to, że uzyskujemy dostęp do adresu URL, wypełniamy formularz, przesyłamy formularz na inny adres URL i sprawdzamy wyniki strony. Robimy to w celu przetestowania weryfikacji formularza, sprawdzenia, czy szablony HTML mają poprawne …
Czytałem w wielu miejscach (cholera, nawet sam tak napisałem), że zbieranie śmieci może (teoretycznie) być szybsze niż ręczne zarządzanie pamięcią. Jednak pokazywanie jest znacznie trudniejsze niż opowiadanie. Tak naprawdę nigdy nie widziałem żadnego kodu, który demonstruje ten efekt w działaniu. Czy ktoś ma (lub wie, gdzie mogę znaleźć) kod, który …
Czy posiadanie zmiennych lokalnych zmiennych w funkcji, które są używane tylko wewnętrznie (np. Funkcja nie ma skutków ubocznych, a przynajmniej nie celowo) jest nadal uważane za „niefunkcjonalne”? np. podczas sprawdzania stylu kursu „Programowanie funkcjonalne ze Scalą” uznaje każde varużycie za złe Moje pytanie, jeśli funkcja nie ma skutków ubocznych, czy …
Niektóre języki programowania, takie jak np. Scala, mają pojęcie Optiontypów (zwanych także Maybe), które mogą zawierać wartość lub nie. Z tego, co o nich czytałem, są one powszechnie uważane za lepszy sposób radzenia sobie z tym problemem niż null, ponieważ wyraźnie zmuszają programistę do rozważenia przypadków, w których może nie …
Jestem w trakcie tworzenia własnego języka programowania, który robię do celów edukacyjnych. Napisałem już leksyk i parser rekurencyjnego zapisu dla podzbioru mojego języka (obecnie obsługuję wyrażenia matematyczne, takie jak + - * /i nawiasy). Analizator składni oddaje mi Streszczenie Drzewo Składni, w którym wywołuję Evaluatemetodę, aby uzyskać wynik wyrażenia. Wszystko …
Czytałem ten blog Joela Spolsky'ego o 12 krokach do lepszego kodu . Nieobecność Test Driven Development naprawdę mnie zaskoczyła. Chcę więc zadać pytanie guru. Czy TDD nie jest naprawdę warte wysiłku?
Ostatnio natknąłem się na nowo napisany kod, który był przeplatany dużą ilością Debug.Assert (C #). Czy powinniśmy nadal używać tego na szeroką skalę, pomimo ogólnego stosowania TDD, BDD i testów jednostkowych?
Oto klasa C ++, która składa się z trzech wartości. class Foo{ //Constructor Foo(std::string, int, char); private: std::string foo; char bar; int baz; }; Wszystkie typy parametrów są różne. Mógłbym przeciążyć konstruktora, aby kolejność nie miała znaczenia. class Foo{ //Constructors Foo(std::string, char, int); Foo(std::string, int, char); Foo(char, int, std::string); Foo(char, …
Nie uważam się za eksperta DDD, ale jako architekt rozwiązań staram się stosować najlepsze praktyki, gdy tylko jest to możliwe. Wiem, że wokół DDD jest wiele dyskusji na temat przeciwników i przeciwników „stylu” setera no (publicznego) i widzę obie strony argumentu. Mój problem polega na tym, że pracuję w zespole …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć w programie Software Engineering Stack Exchange. Migrował 6 lat temu . Mam pytanie, chodzi o to, dlaczego programiści wydają się lubić współbieżność i programy wielowątkowe w ogóle. Rozważam tutaj 2 główne podejścia: podejście asynchroniczne oparte w zasadzie na …
Czy istnieje zestaw reguł zatwierdzonych przez branżę, aby uniknąć blokady dostawcy? Mam na myśli coś, co można pokazać kierownikowi lub innemu decydentowi, co jest łatwe do zrozumienia i weryfikacji. Czy istnieje powszechnie przyjęty zestaw reguł, lista kontrolna lub zestaw warunków, które pomagają wykryć i zapobiec blokowaniu się dostawcy w obiektywny …
Hasła nie należy przechowywać w postaci zwykłego tekstu z oczywistych względów bezpieczeństwa: musisz przechowywać skróty, a także należy ostrożnie generować skrót, aby uniknąć ataków na tęczową tablicę. Zwykle jednak wymagane jest przechowywanie ostatnich n haseł i wymuszanie minimalnej złożoności i minimalnej zmiany między różnymi hasłami (aby uniemożliwić użytkownikowi korzystanie z …
Mówię tylko o tym, co przeczytałem na SO, więc wybacz mi, ale wszystko, co czytam, mówi, że jedną z głównych zalet Git nad Subversion jest to, że Git przekazuje cały kod źródłowy deweloperowi lokalnie, nie musząc nic robić na serwer. Przy ograniczonym użyciu SVN i TortoiseSVN miałem cały kod źródłowy, …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.