-
Data: 2020-06-10 22:35:55
Temat: Re: Embedded HTTP Server
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]
> > Ja sprawdziłem w bibliotekach standardowych z trzech różnych kompilatorów.
>
> To sprawdź jeszcze resztę świata. Zacznij od Qt.
A co mi tam. Sprawdziłem. Zacząłem od Qt.
https://github.com/qt/qtbase/blob/dev/src/corelib/to
ols/qalgorithms.h
Konkretnie, funkcja qSort z callbackiem komparatora jest tutaj:
https://github.com/qt/qtbase/blob/dev/src/corelib/to
ols/qalgorithms.h#L181
i bez walidowania swoich argumentów woła qSortHelper, który jest tutaj:
https://github.com/qt/qtbase/blob/dev/src/corelib/to
ols/qalgorithms.h#L340
i który bez walidowania swoich argumentów wywołuje callback tutaj:
https://github.com/qt/qtbase/blob/dev/src/corelib/to
ols/qalgorithms.h#L351
> Spodoba Ci się
Bez szału. Tzn. walidację callbacków robią poprawnie - w sensie że nie robią. O, to w
sumie podobnie jak w bibliotece standardowej. Konsensus w tej sprawie się przez to
poszerzył o kolejną zgodną opinię.
Natomiast ogólne wrażenie - jak na bibliotekę, która miała rzekomo inspirować
jakością, nie urywa.
Przykładowo, w jednym miejscu (w qSortHelper, 343) jest tak:
int span = int(end - start);
a w innym (w qStableSortHelper, 452) tak:
const int span = end - begin;
Dziwne, nie? I niekonsekwencja w nazwach iteratorów albo w użyciu const w dokładnie
takim samym idiomie, to akurat najmniejszy pikuś.
Ćwiczenie: czy wartość (end - start) zawsze mieści się w int?
Co się stanie, jeśli się nie zmieści? Jak to wpłynie na następne dwie linijki:
if (span < 2)
return;
?
Dalej: oszczędzanie na nawiasach klamrowych, niekonsekwentne ich stosowanie, albo raz
się namespace kończy komentarzem, innym razem bez komentarza. To tak na szybko.
Nie twierdze, że bardzo źle. W kategorii open-source na pewno powyżej średniej.
Ale nie o to chodzi. Chodzi o to, że strasznie jestem ciekaw, jaki argument teraz
wymyślisz.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 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
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
Najnowsze wątki
- 2025-04-30 Szczecin => Key Account Manager IT <=
- 2025-04-30 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-04-30 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-04-29 Nożownik zaatakował i zabił lekarza
- 2025-04-29 Polecam żarówki Blackout na Blackout z dużym gwintem
- 2025-04-29 Porażka kasty sędziowskiej przed Trybunałem Sprawiedliwości UE
- 2025-04-29 Kombinacja znaków A11 i B33?
- 2025-04-29 Na jakim etapie jest sprawa karna "gaśnicowego" Brauna z grudnia 2023?
- 2025-04-29 TSUE jest "przeciw a nawet za" neosędziami :-)
- 2025-04-29 Wrocław => Konsultant wdrożeniowy (systemy kontrolingowe) <=
- 2025-04-29 China => Production Coordinator / Representant Product Dev <=
- 2025-04-29 Warszawa => Specjalista rekrutacji IT <=
- 2025-04-28 Hiszpania bez pradu
- 2025-04-28 chinska stal
- 2025-04-28 QR kody