-
X-Received: by 10.140.98.168 with SMTP id o37mr315203qge.11.1449235122042; Fri, 04
Dec 2015 05:18:42 -0800 (PST)
X-Received: by 10.140.98.168 with SMTP id o37mr315203qge.11.1449235122042; Fri, 04
Dec 2015 05:18:42 -0800 (PST)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!b51no6372727qgf.0!n
ews-out.google.com!f23ni1147qge.0!nntp.google.com!f78no6371898qge.1!postnews.go
ogle.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Fri, 4 Dec 2015 05:18:41 -0800 (PST)
In-Reply-To: <f...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=165.225.80.115;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
NNTP-Posting-Host: 165.225.80.115
References: <n3n4m5$grf$1@node1.news.atman.pl>
<2...@g...com>
<7...@g...com>
<9...@g...com>
<f...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b...@g...com>
Subject: Re: Pakowanie struktur
From: Maciej Sobczak <s...@g...com>
Injection-Date: Fri, 04 Dec 2015 13:18:42 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:208949
[ ukryj nagłówki ]> Rozmawialiśmy o
> szczególikach, typu:
> 1) można się przejechać na big/lit endian
> 2) najpierw memcpy, potem operator rzutowania
> 3) różny padding w strukturach
> 4) różny rozmiar inta na różnych platformach lub wersjach programu.
Właśnie te szczególiki powodują, że te triki to złe rozwiązania.
> aktywne unikanie tego ryzyka zajmuje
> czas. Zobacz jak łatwo rypnąć się po poprawce pól w strukturze.
Jeśli problemem jest czas lub poprawki pól w strukturach (ale przecież protokół miał
być znany?), to taki kod można wygenerować. Po to są standardy w rodzaju ASN.1 i jemu
podobne. Albo nawet niestandardowe, ale poręczne wynalazki typu MessagePack.
Co do czasu - ogólnie, pisanie poprawnych programów może zająć więcej czasu, niż
niepoprawnych. Ale akurat poprawna obsługa protokołu sieciowego to jest jedno z tych
miejsc, gdzie oszczędność czasu na etapie kodowania się nie opłaca.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 04.12.15 21:26 M.M.
- 07.12.15 10:14 Tomasz Kaczanowski
- 07.12.15 12:02 M.M.
- 07.12.15 15:12 Maciej Sobczak
- 07.12.15 15:40 M.M.
- 07.12.15 16:22 witek
- 07.12.15 17:05 M.M.
- 07.12.15 18:40 witek
- 07.12.15 19:03 Sebastian Biały
- 07.12.15 19:29 M.M.
- 07.12.15 19:41 M.M.
- 07.12.15 19:55 witek
- 07.12.15 20:06 M.M.
- 07.12.15 20:25 witek
- 07.12.15 20:34 Sebastian Biały
Najnowsze wątki z tej grupy
- 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
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=