eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › teoria bledow
Ilość wypowiedzi w tym wątku: 9

  • 1. Data: 2011-05-04 06:39:44
    Temat: teoria bledow
    Od: " " <f...@g...pl>

    jak chwile sie nad tym zastanowilem (mimo
    zlego samopoczucia) to wyszlo mi ze bledy
    mozna podzielic na uchwytne (uchwycone)
    i nie

    np caly szereg bledow ma swoje detekcyjne ify
    ale tez niektore nie maja (i to czyni to rozroznienie
    dla mnie)

    np powiedmy ze w dodawaniu 2+2 jest blad
    i daje 5

    malo kto sprawdza takie rzeczy, ale blad sie
    moze rozpropagowac az program uderzy w sciane
    np na bledzie ochrony pamieci

    to jest tez ciekawe czy sa takie (albo czy
    sa mozliwe) takie systemy w ktorych
    prog nie moze uderzyc w sciane - tylko
    np produkowac smieci i nic wiecej -
    najprwniej i tak zostaloby wiele mozlowosci
    wewnetrznego 'kalectwa' takiego progda
    nawet gdyby nie mogl sie wywalic

    smutne ale moze to te demka i wywiady nt
    bulletstorma tak na mnie podzialaly



    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 2. Data: 2011-05-04 07:33:25
    Temat: Re: teoria bledow
    Od: " " <f...@g...pl>

    na przyklad jesli sie zastanowic
    jakie sytuacje mogly by wystepowac
    w przypadku proby zapisu albo
    odczytu poza zakresem tablicy

    - moze byc dozwolone (niby glupie
    nie do pojecia ale jednak)
    - moglby byc natychmiastowy crash (ma
    swoje zalety)
    - moglby byc cichy fail (faile maja swoje
    zalety aczkolwiek tutaj raczej nie bardzo adekwatne)
    - mozna tez zrobic by bylo to niemozliwe np
    dajac zawinieta arytmetyke indeksu takiej tablicy)

    moze sa jeszcze inne opcje - w kazdym razie jest
    to ciekawe

    --
    sonic youth - rather ripped



    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 3. Data: 2011-05-04 08:07:13
    Temat: Re: teoria bledow
    Od: Michal Kleczek <k...@g...com>

    > jak chwile sie nad tym zastanowilem (mimo
    > zlego samopoczucia) to wyszlo mi ze bledy
    > mozna podzielic na uchwytne (uchwycone)
    > i nie
    >

    "Bledy" "uchwycone" nie sa bledami.
    Proponuje ci sprobowac jednak zastanowic sie przede wszystkim nad precyzja
    jezyka, ktorego uzywasz.

    > np caly szereg bledow ma swoje detekcyjne ify
    > ale tez niektore nie maja (i to czyni to rozroznienie
    > dla mnie)
    >
    > np powiedmy ze w dodawaniu 2+2 jest blad
    > i daje 5
    >
    > malo kto sprawdza takie rzeczy,

    A niby jak to sprawdzic?
    Jezeli programista z gory zna wynik, to po co pisze program (lub fragment
    programu) obliczajacy tenze wynik?

    > ale blad sie
    > moze rozpropagowac az program uderzy w sciane
    > np na bledzie ochrony pamieci
    >
    > to jest tez ciekawe czy sa takie (albo czy
    > sa mozliwe) takie systemy w ktorych
    > prog nie moze uderzyc w sciane - tylko
    > np produkowac smieci i nic wiecej -

    A po co komu taki program?

    --
    Michal


  • 4. Data: 2011-05-04 08:48:54
    Temat: Re: teoria bledow
    Od: apl <a...@i...pl>


    > malo kto sprawdza takie rzeczy, ale blad sie
    > moze rozpropagowac az program uderzy w sciane
    > np na bledzie ochrony pamieci
    >
    > to jest tez ciekawe czy sa takie (albo czy
    > sa mozliwe) takie systemy w ktorych
    > prog nie moze uderzyc w sciane - tylko
    > np produkowac smieci i nic wiecej -

    Moim zdaniem program nigdy nie powinien produkować śmieci. Częstą
    przyczyną trudno wykrywalnych błędów jest automatyczne "zerowanie"
    zmiennych na etapie kompilacji. To kardynalny błąd! Pamięć
    przydzielana zmiennym powinna raczej być ustawiana na wartości
    nieakceptowalne dla typu zmiennych, a przynajmniej wszystkie bity na
    True, tak aby użycie wartości zmiennej, której nie nadał program,
    automatycznie powodowało "uderzenie o ścianę". Zero jest najczęściej
    akceptowane jako "dobra" dana, natomiast wartości skrajnie wielkie
    będą na ogół prowadzić do przesterowań. Ja, w swojej praktyce stosuję
    właśnie takie przekorne podejście i inicjuję zmienne tak, aby nie
    wchodziło w rachubę użycie przypadkowej wartości.
    apl


  • 5. Data: 2011-05-04 09:18:07
    Temat: Re: teoria bledow
    Od: Paweł Kierski <n...@p...net>

    W dniu 2011-05-04 10:48, apl pisze:
    >
    >> malo kto sprawdza takie rzeczy, ale blad sie
    >> moze rozpropagowac az program uderzy w sciane
    >> np na bledzie ochrony pamieci
    >>
    >> to jest tez ciekawe czy sa takie (albo czy
    >> sa mozliwe) takie systemy w ktorych
    >> prog nie moze uderzyc w sciane - tylko
    >> np produkowac smieci i nic wiecej -
    >
    > Moim zdaniem program nigdy nie powinien produkować śmieci. Częstą
    > przyczyną trudno wykrywalnych błędów jest automatyczne "zerowanie"
    > zmiennych na etapie kompilacji. To kardynalny błąd! Pamięć
    > przydzielana zmiennym powinna raczej być ustawiana na wartości
    > nieakceptowalne dla typu zmiennych, a przynajmniej wszystkie bity na
    > True, tak aby użycie wartości zmiennej, której nie nadał program,
    > automatycznie powodowało "uderzenie o ścianę". Zero jest najczęściej
    > akceptowane jako "dobra" dana, natomiast wartości skrajnie wielkie
    > będą na ogół prowadzić do przesterowań. Ja, w swojej praktyce stosuję
    > właśnie takie przekorne podejście i inicjuję zmienne tak, aby nie
    > wchodziło w rachubę użycie przypadkowej wartości.

    VC w konfiguracji Debug domyślnie ustawia wartości bajtów 0xCC.

    Część coding standards zabrania deklarowania zmiennej bez jej
    inicjowania. Są też narzędzia do statycznej analizy kodu, które
    pokazują potencjalne użycie niezainicjowanych zmiennych.

    --
    Paweł Kierski
    n...@p...net


  • 6. Data: 2011-05-04 13:08:54
    Temat: Re: teoria bledow
    Od: " " <f...@g...pl>


    > > malo kto sprawdza takie rzeczy,
    >
    > A niby jak to sprawdzic?
    > Jezeli programista z gory zna wynik, to po co pisze program (lub fragment
    > programu) obliczajacy tenze wynik?
    >

    to bylo napisane troche zartem ale pokazuje
    ze nie wszystkie bledy moga byc uchwycane

    malo kto spodziewa sie ze procesor ma takie
    bledy by dawac asserta na 4==2+2
    > > ale blad sie
    > > moze rozpropagowac az program uderzy w sciane
    > > np na bledzie ochrony pamieci
    > >
    > > to jest tez ciekawe czy sa takie (albo czy
    > > sa mozliwe) takie systemy w ktorych
    > > prog nie moze uderzyc w sciane - tylko
    > > np produkowac smieci i nic wiecej -
    >
    > A po co komu taki program?
    wlasnie mysle ze jest mozliwe ze program ktoremu
    odjac mozliwosc wpadania na sciane w
    analogicznej sytuacji przyklei sie do sciany
    albo wpadnie w jakies oscylacje slowem
    sytuacja sie pewnie tylko zmieni - ciekawe
    jest jednak o tym pomyslec


    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 7. Data: 2011-05-04 18:07:19
    Temat: Re: teoria bledow
    Od: " " <f...@g...pl>

    apl <a...@i...pl> napisał(a):

    >
    > > malo kto sprawdza takie rzeczy, ale blad sie
    > > moze rozpropagowac az program uderzy w sciane
    > > np na bledzie ochrony pamieci
    > >
    > > to jest tez ciekawe czy sa takie (albo czy
    > > sa mozliwe) takie systemy w ktorych
    > > prog nie moze uderzyc w sciane - tylko
    > > np produkowac smieci i nic wiecej -
    >
    > Moim zdaniem program nigdy nie powinien produkowa=E6 =B6mieci. Cz=EAst=B1
    > przyczyn=B1 trudno wykrywalnych b=B3=EAd=F3w jest automatyczne "zerowanie"
    > zmiennych na etapie kompilacji. To kardynalny b=B3=B1d! Pami=EA=E6
    > przydzielana zmiennym powinna raczej by=E6 ustawiana na warto=B6ci
    > nieakceptowalne dla typu zmiennych, a przynajmniej wszystkie bity na
    > True, tak aby u=BFycie warto=B6ci zmiennej, kt=F3rej nie nada=B3 program,
    > automatycznie powodowa=B3o "uderzenie o =B6cian=EA". Zero jest najcz=EA=B6c=
    > iej
    > akceptowane jako "dobra" dana, natomiast warto=B6ci skrajnie wielkie
    > b=EAd=B1 na og=F3=B3 prowadzi=E6 do przesterowa=F1. Ja, w swojej praktyce s=
    > tosuj=EA
    > w=B3a=B6nie takie przekorne podej=B6cie i inicjuj=EA zmienne tak, aby nie
    > wchodzi=B3o w rachub=EA u=BFycie przypadkowej warto=B6ci.
    > apl

    ogolnie koncepcja takiego podejscia do bledow aby program jak najszybciej
    walil w sciane jest w pewnym sensie chyba madra - ale to podejscie by
    inicjowac takimi wartosciami mi sie nie podoba, np. po cholere inicjowac
    zlymi by chwile pozniej przeinicjowywac dobrymi,[[ zreszta kwestia
    przeoczonych inicjacji to raczej maly podzbior przypadkow - mz czesciej
    program wypada z drogi np na skutek blednych kolejnosci
    rozwiazywania operacji w wyrazeniu, ostatnio mialem jakis podobny do
    takiego blad korego szukalem przez poltorej godziny ze zdziwniem
    doszukujac sie o co chodzi " bitsBuffer[y][x][i] = baseAddress[yt + x<<2 +
    i];" a i kiedys wczesniej zdarzalo mi sie ze bez masy nawiasow w wyrazeniach
    np rzutowania nie dzialaja w domyslny sposob -- tutaj zreszta o ile
    pamietam uderzal wlasnie w sciane (BAD_ACCESS)



    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 8. Data: 2011-05-04 19:12:33
    Temat: Re: teoria bledow
    Od: "Waldek M." <w...@l...localdomain>

    Dnia Wed, 04 May 2011 10:07:13 +0200, Michal Kleczek napisał(a):
    > "Bledy" "uchwycone" nie sa bledami.

    Wiem, że trochę wyrwane z kontekstu - ale IHHO, to nieprawda.
    Błąd to nadal błąd, póki go nie rozwiążesz.

    Spotkałem się z klasyfikacją "błąd" i "defekt", gdzie błąd to ogólnie
    niepoprawne działanie/implementacja, a defekt to błąd, który nie
    został na czas naprawiony. Jednakże:

    http://www.sjp.pl/co/b%B3%B1d
    znaczenie:
    1. niezgodność z obowiązującymi normami; pomyłka,
    2. złe, niewłaściwe postępowanie

    Błąd można usunąć; od tego jednak nie przestaje być sobą ;-)

    Pozdrawiam,
    Waldek

    P.S. Naprawdę musicie dyskutować z trollem?


  • 9. Data: 2011-05-05 11:43:36
    Temat: Re: teoria bledow
    Od: apl <a...@i...pl>

    > -----------------------
    > ogolnie koncepcja takiego podejscia do bledow aby program jak najszybciej
    > walil w sciane jest w pewnym sensie chyba madra - ale to podejscie by
    > inicjowac takimi wartosciami mi sie nie podoba, np. po cholere inicjowac
    > zlymi by chwile pozniej przeinicjowywac dobrymi,[[ zreszta kwestia
    > przeoczonych inicjacji to raczej maly podzbior przypadkow - mz czesciej
    >-------------------
    Np. robisz obliczeniówkę w wyniku której dostajesz dużą strukturę,
    zmieniasz parametry i powtarzasz sesję, w wyniku której ta sama
    struktura jest modyfikowana. Jeśli nie zainicjujesz ponownie, to
    możesz otrzymać część wyników z poprzedniej sesji (dobrze
    wyglądających), natomiast ponowne zainicjowanie skrajnie wielkimi
    wartościami pokaże ci, że pewne wyniki są śmieciami. W dużym
    programie, do którego wraca się niekiedy po wielu miesiącach i
    modyfikuje dla aktualnych potrzeb, można łatwo przeoczyć różne
    ograniczenia wykluczające wyprowadzanie takich śmieci.
    apl

strony : [ 1 ]


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: