Inżynieria oprogramowania

Pytania i odpowiedzi dla profesjonalistów, nauczycieli akademickich i studentów pracujących w cyklu życia systemów

14
Dlaczego mechanizm zapobiegania iniekcji SQL ewoluował w kierunku używania sparametryzowanych zapytań?
Z mojego punktu widzenia atakom wstrzykiwania SQL można zapobiec poprzez: Dokładne przeglądanie, filtrowanie, kodowanie danych wejściowych (przed wstawieniem do SQL) Korzystanie z przygotowanych instrukcji / sparametryzowanych zapytań Przypuszczam, że każdy ma swoje zalety i wady, ale dlaczego numer 2 wystartował i został uznany za mniej więcej faktyczny sposób zapobiegania atakom …


16
Dlaczego warto używać! Boolean_variable Over boolean_variable == false
Komentarz do tego pytania: Sprawdzanie, czy metoda zwraca false: przypisać wynik do zmiennej tymczasowej, czy bezpośrednio wywołać metodę w warunkowym? mówi, że powinieneś używać !booleanzamiast boolean == falsepodczas testowania warunków. Dlaczego? Dla mnie boolean == falsejest znacznie bardziej naturalny w języku angielskim i jest bardziej wyraźny. Przepraszam, czy to tylko …

9
std :: shared_ptr jako ostateczność?
Właśnie oglądałem strumienie „Going Native 2012” i zauważyłem dyskusję std::shared_ptr. Byłem nieco zaskoczony, słysząc nieco negatywny pogląd Bjarne'a std::shared_ptri jego komentarz, że powinien on zostać użyty jako „ostateczność”, gdy czas życia obiektu jest niepewny (co, moim zdaniem, rzadko powinno tak być). Czy ktoś chciałby wyjaśnić to nieco głębiej? Jak możemy …

24
Jak wyjaśnić różnicę między wartością NULL a wartością zero?
Praca nad problemem wykorzystującym formułę zmiany procentowej: percent change = 100 * [(new value - old value) / old value] Jak wyjaśniłbym tę różnicę new value or old value = NULL, zamiast 0komuś, kto może nie być programistą? Mój szef zastanawia się, dlaczego w TextBoxie jest pusty ciąg zamiast wartości, …
59 null  tsql 

12
Czy powinienem ponownie używać zmiennych?
Czy powinienem ponownie używać zmiennych? Wiem, że wiele najlepszych praktyk mówi, że nie powinieneś tego robić, jednak później, gdy inny programista debuguje kod i ma 3 zmienne, które wyglądają podobnie, jedyną różnicą jest to, że są tworzone w różnych miejscach w kodzie, może być zmieszany. Testowanie jednostkowe jest tego doskonałym …

11
Kiedy zatwierdzić kod?
Podczas pracy nad projektem kod może zostać opracowany dość szybko w ciągu jednego dnia lub kawałek po kawałku przez dłuższy okres kilku tygodni / miesięcy / lat. Ponieważ zatwierdzenia kodu stają się uważane za miarę rozwoju projektu, tak naprawdę nie oznacza to, że napisano więcej kodu niż projekt o mniejszej …

13
Filozofia stojąca za niezdefiniowanym zachowaniem
Specyfikacje C \ C ++ pomijają wiele zachowań, które kompilatory mogą wdrożyć na swój własny sposób. Jest wiele pytań, które ciągle zadawane są tutaj o to samo i mamy kilka świetnych postów na ten temat: https://stackoverflow.com/questions/367633/what-are-all-the-common-undefined-behaviour-that-ac-programmer-should-know-abo https://stackoverflow.com/questions/4105120/what-is-undefined-behavior https://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points Moje pytanie nie dotyczy tego, co to jest niezdefiniowane zachowanie, czy jest …


12
Jak działają komputery? [Zamknięte]
To prawie krępujące pytanie ... Mam dyplom z informatyki (i drugi w toku). Pracuję jako pełnoetatowy programista .NET od prawie pięciu lat. Generalnie wydaje mi się kompetentny w tym, co robię. Ale nie wiem, jak działają komputery! Proszę, zostań ze mną na chwilę. Szybkie Google zatytułowane „Jak działa komputer” przyniesie …

8
Dlaczego ludzie wyłączają JavaScript?
Wczoraj zadałem pytanie Czy powinienem zawracać sobie głowę opracowaniem kodu JavaScript wyłączonego? . Myślę, że consencus brzmi: tak, powinienem opracować JavaScript. Teraz chcę tylko zrozumieć, dlaczego użytkownicy wyłączają JS. Wygląda na to, że wielu programistów (myślę, że ludzie, którzy odpowiedzieli na pytania są programistami) wyłącza JS. Dlaczego. Dlaczego użytkownicy wyłączają …




17
Pojedyncza instrukcja, jeśli nawiasy blokowe czy nie? [Zamknięte]
Który jest lepszy / bardziej ogólnie akceptowany? To: if(condition) { statement; } Lub: if(condition) statement; Wolę ten pierwszy, ponieważ uważam, że łatwiej jest stwierdzić, co faktycznie należy do bloku if, ratuje innych przed późniejszym dodawaniem nawiasów klamrowych (lub tworzeniem błędu przez zapominanie o) i sprawia, że ​​wszystkie twoje instrukcje if …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.