-
Data: 2020-06-09 22:43:13
Temat: Re: Embedded HTTP Server
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> >> Nie użycie go
> >> świadczy o bardzo kiepskiej jakości kodzie
> > Według jakich kryteriów?
>
> Programowania defensywnego na inpucie.
Rzucam tezą, że ktoś z dobrą intencją ulepił koncept a cała masa ludzi ten koncept
powiela, już bez zastanowienia o co autorowi chodziło.
Weź sobie funkcję std::sort. Ma trzy argumenty, trzeci to właśnie callback
komparatora (zwany w kręgach zbliżonych do akademickich "predykatem"). Otwórz sobie
header "algorithm" ze swojego kompilatora i poszukaj tam co robi funkcja std::sort ze
swoim trzecim argumentem (czyli "inputem", jak to nazywasz).
Sprawdza, czy programista nie podał pustego wskaźnika/funktora/itp.?
Tak więc biblioteka HTTP jest właśnie w takim towarzystwie (przynajmniej w tej
konkretnej kwestii...).
> > Od kiedy to biblioteki HTTP służą do weryfikacji programów?
>
> W każdym inpucie powinna być weryfikacja,
To nie jest input, tylko część programu. Inputem jest URL z przeglądarki albo dane z
formatki w POST. I *to* należy walidować.
> ponieważ *ułatwia* to
> debugowanie klientowi.
Debugowanie ułatwia fakt, że gdybyś faktycznie spróbował zrobić taki błąd w tej
bibliotece, zamiast trollować na rympał, to byś zobaczył, że std::function rzuca
wtedy wyjątek, który biblioteka uczciwie wypisuje na podanym strumieniu do logowania
błędów.
Spróbuj.
To programowanie defensywne, podobnie jak paranoja wokół unit testów, to niestety
efekt braku refleksji nad własnym warsztatem.
> > Targetem są świadomi inżynierowie, którzy nie oczekują od biblioteki HTTP, że im
zrobi weryfikację poprawności programu...
>
> Chyba takich jest relatywnie mało. Sądzepo ilości assertów w poważnych
> biblitekach.
No to ile assertów znalazłeś w std::sort na trzecim argumencie?
Ja sprawdziłem w bibliotekach standardowych z trzech różnych kompilatorów.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 09.06.20 22:47 heby
- 09.06.20 23:14 Maciej Sobczak
- 09.06.20 23:15 heby
- 09.06.20 23:32 heby
- 10.06.20 07:50 Tomasz Kaczanowski
- 10.06.20 08:09 heby
- 10.06.20 20:57 Maciej Sobczak
- 10.06.20 21:13 Maciej Sobczak
- 10.06.20 22:35 Maciej Sobczak
- 10.06.20 22:52 heby
- 10.06.20 22:54 heby
- 10.06.20 22:55 heby
- 23.06.20 09:33 Wojciech Muła
- 23.06.20 23:13 Maciej Sobczak
Najnowsze wątki z tej grupy
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
Najnowsze wątki
- 2025-12-14 Dla UTRWALENIA: jak działają "EKO" ZBRODNIARZE
- 2025-12-13 Emisyjność BEV
- 2025-12-13 Dla odprężenia - niezły zawodnik
- 2025-12-12 Cyna dylemat
- 2025-12-12 Warszawa => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-12-12 Warszawa => Architekt rozwiązań (Workday) - Legal Systems <=
- 2025-12-12 Warszawa => Dynamics 365 Commerce/POS Developer <=
- 2025-12-12 Wrocław => React Developer with knowledge of C++ <=
- 2025-12-12 Białystok => Programista React ze znajomością C++ <=
- 2025-12-12 Warszawa => Microsoft Dynamics 365 Finance Consultant <=
- 2025-12-11 To już efekt Żurka czy coś jeszcze GORSZEGO?
- 2025-12-11 Policjanci w mieście Łodzi zmierzą ci prędkość z błędem mniejszym niż producent w laboratorium :-)
- 2025-12-11 Warszawa => Senior Java Developer <=
- 2025-12-11 Kolejny prezent
- 2025-12-10 hameryka




2035 rok coraz mniej realny? Europa traci tempo w wyścigu o elektromobilność