eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › Pakowanie struktur
Ilość wypowiedzi w tym wątku: 65

  • 41. Data: 2015-12-07 20:34:50
    Temat: Re: Pakowanie struktur
    Od: Sebastian Biały <h...@p...onet.pl>

    On 2015-12-07 20:06, M.M. wrote:
    > Ja mogę odpowiedzieć, że proponujesz strzelanie z armaty do komarów.

    Nie. Jesli chcesz prawidłowo zapisywać obiekty z uwzględnieniem wielu
    czynników od sprzetowych do programowych to nie masz wyjścia - musisz
    serializować. Robi to każdy poważny projekto programistyczny mający do
    czynienia z persistent storage. Niektore z internalnych serializatorów
    stały się samodzielnymi bytami, tu masz podsumowanie:

    https://en.wikipedia.org/wiki/Comparison_of_data_ser
    ialization_formats

    > Do czego taka rozmowa doprowadzi? Do niczego?

    Pozwala ona innym czytelnikom na zrozumienie że zapisywanie struktur raw
    bylo dobre w czasach CP/M na ZX Spectrum. Faktem jest że niektóre języki
    jak C/C++ są pod tym względem niewybaczalne i tym bardziej należy mieć
    świadomość co się robi.


  • 42. Data: 2015-12-07 21:30:13
    Temat: Re: Pakowanie struktur
    Od: "M.M." <m...@g...com>

    On Monday, December 7, 2015 at 8:35:21 PM UTC+1, Sebastian Biały wrote:
    > On 2015-12-07 20:06, M.M. wrote:
    > > Ja mogę odpowiedzieć, że proponujesz strzelanie z armaty do komarów.
    >
    > Nie. Jesli chcesz prawidłowo zapisywać obiekty z uwzględnieniem wielu
    > czynników od sprzetowych do programowych to nie masz wyjścia - musisz
    > serializować. Robi to każdy poważny projekto programistyczny mający do
    > czynienia z persistent storage. Niektore z internalnych serializatorów
    > stały się samodzielnymi bytami, tu masz podsumowanie:
    >
    > https://en.wikipedia.org/wiki/Comparison_of_data_ser
    ialization_formats
    >
    > > Do czego taka rozmowa doprowadzi? Do niczego?
    >
    > Pozwala ona innym czytelnikom na zrozumienie że zapisywanie struktur raw
    > bylo dobre w czasach CP/M na ZX Spectrum. Faktem jest że niektóre języki
    > jak C/C++ są pod tym względem niewybaczalne i tym bardziej należy mieć
    > świadomość co się robi.

    Ale jeśli tak kategorycznie napiszesz, to dużo czytelników używających
    prostszych mechanizmów pomyśli: ojeju, wszystkie moje programy działają
    przez przypadek i zaraz padną. A tymczasem aż tak źle nie jest. Zapisu
    struktur raw często można używać z powodzeniem. A co do świadomości,
    to myślę, że biblioteka do której linka podałeś, wymaga więcej świadomości
    chociażby ze względu na to, że dużo dzieje się w destruktorach, a
    klamerki nie są opcjonalne. Programista zawsze powinien być świadomy
    tego co robi. Uważam że masz rację, należy używać porządnego, bezpiecznego i
    przenośnego kodu. Ale nie przesadzałbym z całkowitym zakazem operowania na
    binarnych formatach.

    Kolejna sprawa. Jeśli mamy program ciut bardziej zaawansowany, to w nim
    protokoły sieciowe lub formaty plików też zazwyczaj są ciut bardziej
    zaawansowane niż format dający się upakować do binarnej struktury. I tak
    i tak trzeba użyć jakiegoś formatu ogólnego, np. xmla. A w prostych i
    małych programach, może właśnie używanie ad-hoc formatu binarnego jest
    najbardziej adekwatne.

    Sorry, ale przyznając częściowo rację, nadal upieram się, ze foramty
    binarne nadal mają się dobrze.


    Pozdrawiam


  • 43. Data: 2015-12-07 22:36:24
    Temat: Re: Pakowanie struktur
    Od: szemrany <s...@o...off>

    On Mon, 7 Dec 2015 12:30:13 -0800 (PST), M.M. wrote:

    > Sorry, ale przyznając częściowo rację, nadal upieram się, ze foramty
    > binarne nadal mają się dobrze.

    Imho to ślepa uliczka... zderzyłem się już z _własnymi_ starymi
    rozwiązaniami tego typu, które się rozsypały po kolejnej aktualizacji
    narzędzi/bibliotek/środowisk... jeśli programuje się na serio to prędzej
    czy później dostanie się kopniaka od takich patentów. Uciekać jak najdalej.

    --
    howgh
    szemrany
    "Trzeba z żywymi naprzód iść, po życie sięgać nowe,
    a nie w uwiędłych laurów liść z uporem stroić głowę"


  • 44. Data: 2015-12-07 22:40:54
    Temat: Re: Pakowanie struktur
    Od: witek <w...@g...pl.invalid>

    M.M. wrote:
    >
    > Ale jeśli tak kategorycznie napiszesz, to dużo czytelników używających
    > prostszych mechanizmów pomyśli: ojeju, wszystkie moje programy działają
    > przez przypadek i zaraz padną.

    Właśnie tak.
    Działają na sprzecie na którym zostały skompilowane i jest mała szansa,
    że zadziałają lub dadzą się skompilować na czymkolwiek innym lub
    czymkolwiek innym.






  • 45. Data: 2015-12-08 11:00:37
    Temat: Re: Pakowanie struktur
    Od: "M.M." <m...@g...com>

    On Monday, December 7, 2015 at 10:40:55 PM UTC+1, witek wrote:
    > M.M. wrote:
    > >
    > > Ale jeśli tak kategorycznie napiszesz, to dużo czytelników używających
    > > prostszych mechanizmów pomyśli: ojeju, wszystkie moje programy działają
    > > przez przypadek i zaraz padną.
    >
    > Właśnie tak.
    > Działają na sprzecie na którym zostały skompilowane i jest mała szansa,
    > że zadziałają lub dadzą się skompilować na czymkolwiek innym lub
    > czymkolwiek innym.

    Moje działają. W mniejszych aplikacjach jedyne zabezpieczenie jakie
    stosowałem, to przedefiniowanie typów podstawowych. Tak rzadko dziś
    występuje bigendian?

    W większych aplikacjach, w których przewidywałem wersje plików lub protokołów,
    najczęściej stosowałem formaty tekstowe, ponieważ, jak już pisałem, w
    żadną 'strukturę liniową' nie da się upakować skomplikowanego formatu
    danych.

    Pozdrawiam


  • 46. Data: 2015-12-08 12:09:00
    Temat: Re: Pakowanie struktur
    Od: RW <b...@g...pl>

    On Mon, 07 Dec 2015 15:40:54 -0600, witek wrote:

    > M.M. wrote:
    >>
    >> Ale jeśli tak kategorycznie napiszesz, to dużo czytelników używających
    >> prostszych mechanizmów pomyśli: ojeju, wszystkie moje programy działają
    >> przez przypadek i zaraz padną.
    >
    > Właśnie tak.
    > Działają na sprzecie na którym zostały skompilowane i jest mała szansa,
    > że zadziałają lub dadzą się skompilować na czymkolwiek innym lub
    > czymkolwiek innym.

    W wielu wypadkach to w zupelnosci wystarcza. Jak zmienia sprzet, to
    przekompiluja program i albo testy przejda (bo maja testy, prawda?) i jest
    OK, albo testy padna i wtedy zobacza, ze jest problem.

    RW


  • 47. Data: 2015-12-08 12:10:26
    Temat: Re: Pakowanie struktur
    Od: RW <b...@g...pl>

    On Mon, 07 Dec 2015 19:03:00 +0100, Sebastian Biały wrote:

    > On 2015-12-07 15:40, M.M. wrote:
    >>> serialize(&struct, file);
    >>> Nawet krócej. I wiem, że nie jestem zależny od pierdyliona rzeczy, nad
    >>> którymi mogę nie mieć kontroli (endiany, opcje kompilatora, itd.).
    >> Jeśli taki kod generuje jakiś automat
    >
    > http://www.boost.org/doc/libs/1_59_0/libs/serializat
    ion/doc/index.html

    Slyszalem rozne horror stories na temat czasow kompilacji bibliotek
    stosujacych serializacje z Boosta, ale to dawno temu bylo. Nadal jest tak
    zle?

    RW


  • 48. Data: 2015-12-08 13:20:36
    Temat: Re: Pakowanie struktur
    Od: Maciej Sobczak <s...@g...com>


    > Sorry, ale przyznając częściowo rację, nadal upieram się, ze foramty
    > binarne nadal mają się dobrze.

    Ale nikt tu nie krytykuje formatów binarnych. Chodzi o to, żeby nie polegać na
    przypadku i na zachowaniach niezdefiniowanych w pisaniu takich programów.

    Nawet w przypadku formatu binarnego (nawet najprostszego) właściwym rozwiązaniem jest
    serializacja, być może do pośredniego bufora, na którym odbywa się I/O. Wtedy mamy
    pełną kontrolę nad tym co się dzieje i przy okazji nie łamiemy większości standardów
    kodowania. A to, że taki (nawet najprostszy) serializator zaraz nam się przyda gdzieś
    indziej, to jest naturalna wartość dodana ze zrobienia czegoś rzetelnie.

    --
    Maciej Sobczak * http://www.inspirel.com


  • 49. Data: 2015-12-08 14:16:44
    Temat: Re: Pakowanie struktur
    Od: "Stachu 'Dozzie' K." <d...@g...eat.some.screws.spammer.invalid>

    On 2015-12-07, M.M. <m...@g...com> wrote:
    > On Monday, December 7, 2015 at 8:35:21 PM UTC+1, Sebastian Biały wrote:
    >> On 2015-12-07 20:06, M.M. wrote:
    >> > Ja mogę odpowiedzieć, że proponujesz strzelanie z armaty do komarów.
    >>
    >> Nie. Jesli chcesz prawidłowo zapisywać obiekty z uwzględnieniem wielu
    >> czynników od sprzetowych do programowych to nie masz wyjścia - musisz
    >> serializować. Robi to każdy poważny projekto programistyczny mający do
    >> czynienia z persistent storage. Niektore z internalnych serializatorów
    >> stały się samodzielnymi bytami, tu masz podsumowanie:
    >>
    >> https://en.wikipedia.org/wiki/Comparison_of_data_ser
    ialization_formats
    [...]
    > Sorry, ale przyznając częściowo rację, nadal upieram się, ze foramty
    > binarne nadal mają się dobrze.

    Jakbyś trochę się orientował w temacie, to byś wiedział o istnieniu
    formatów ASN.1, BSON, MessagePack, Thrift, Protocol Buffers i innych.
    To są formaty binarne, a wszystkie służą do serializacji danych.

    --
    Secunia non olet.
    Stanislaw Klekot


  • 50. Data: 2015-12-08 14:50:16
    Temat: Re: Pakowanie struktur
    Od: "M.M." <m...@g...com>

    On Tuesday, December 8, 2015 at 2:16:46 PM UTC+1, Stachu 'Dozzie' K. wrote:
    > On 2015-12-07, M.M. wrote:
    > > On Monday, December 7, 2015 at 8:35:21 PM UTC+1, Sebastian Biały wrote:
    > >> On 2015-12-07 20:06, M.M. wrote:
    > >> > Ja mogę odpowiedzieć, że proponujesz strzelanie z armaty do komarów.
    > >>
    > >> Nie. Jesli chcesz prawidłowo zapisywać obiekty z uwzględnieniem wielu
    > >> czynników od sprzetowych do programowych to nie masz wyjścia - musisz
    > >> serializować. Robi to każdy poważny projekto programistyczny mający do
    > >> czynienia z persistent storage. Niektore z internalnych serializatorów
    > >> stały się samodzielnymi bytami, tu masz podsumowanie:
    > >>
    > >> https://en.wikipedia.org/wiki/Comparison_of_data_ser
    ialization_formats
    > [...]
    > > Sorry, ale przyznając częściowo rację, nadal upieram się, ze foramty
    > > binarne nadal mają się dobrze.
    >
    > Jakbyś trochę się orientował w temacie, to byś wiedział o istnieniu
    > formatów ASN.1, BSON, MessagePack, Thrift, Protocol Buffers i innych.
    > To są formaty binarne, a wszystkie służą do serializacji danych.

    Jakbyś przeczytał wątek i sekundę się zastanowił, to byś zrozumiał o
    czym pisałem, albo nie.

strony : 1 ... 4 . [ 5 ] . 6 . 7


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: