eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › Carnegie-Mellon przestaje uczyc programowania obiektowego
Ilość wypowiedzi w tym wątku: 255

  • 161. Data: 2011-04-14 18:43:59
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: p...@p...onet.pl

    > On 14 Kwi, 15:50, "kenobi" <p...@p...onet.pl> wrote:

    >

    > > nie mam czasu ani checi na zapoznawanie sie kernelem linuksa - skoro wiesz

    > > o czym mowisz to moze opowiesz jak to programisci c dziargaja "o o" w linux

    > Uchwyt pliku, id procesu, socket....

    > Pozdrawiam

    whatever, musze uwazac aby nie umrzec z nudow (albo od nudnosci)
    od tego 'oo' <bynajmniej nie zart - realne zagrozenie> ;
    rano mialem jakis zaczatek drobnego pomyslu - powroce do c2 to poczuje sie
    lepiej ;-)

    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl


  • 162. Data: 2011-04-14 19:13:24
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Michal Kleczek <k...@g...com>

    A. L. wrote:

    > On Thu, 14 Apr 2011 17:12:53 +0200, Michal Kleczek <k...@g...com>
    > wrote:
    >
    >>Anegdota:
    >>od razu zapuscilem gugla na "z language" i dostalem linki do wikipedii.
    >>Poniewaz jest to zwiazane z "formal methods" seria odnosnikow zaprowadzila
    >>mnie do http://en.wikipedia.org/wiki/B-Method - wymyslonej przez tegoz
    >>samego autora co Z. Tam przeczytalem ze:
    >>"B method has been used in some major safety-critical system applications
    >>in Europe (such as in Paris Métro Line 14 and Ariane 5 rocket)." - no, w
    >>koncu to metody formalne - do hardkorowych zastosowan.
    >>I natychmiast mi sie przypomnialo o wypadku
    >>http://en.wikipedia.org/wiki/Ariane_5_Flight_501
    >>spowodowanym przez blad w oprogramowaniu.
    >>
    >>Ehh... zycie jest okrutne.
    >
    > Proponuje postudiowac DOKLADNIE przyczyny wypadku Ariane 5.

    Postudiowalem, a powyzsze bylo tylko anegdota (celem tak naprawde bylo
    posmianie sie ze stereotypow w rodzaju "OO - dobrze", "formal methods -
    niezawodnie). Ale:

    > Problem
    > polegal na tym ze do Ariane 5 zastosowano system nawigacyjny od Ariane
    > 4 ktory byl zaprojektowany na mniejsze przyspieszenia niz Ariane 5
    > mogla osiagac podczas startu.
    >
    > Trudno w tym przypadku obwiniac sofrwate - software zachowal sie
    > prawidlowo. Gdy liczby otrzymywane z systemu nawigacyjnego
    > przekroczyly dopuszczalny zakres, komputer wylaczyl system
    > nawigacyjny. Zgodnie ze specyfikacja.

    To jakies waskie pojmowanie "prawidlowego zachowania oprogramowania".

    Niewatpliwie wypadek byl spowodowany wadliwym dzialaniem systemu
    komputerowego. Co wiecej - nie byla to awaria sprzetu (tzn. nic sie nie
    spalilo, ani tez nie nastapila np. przypadkowa zmiana zawartosci pamieci),
    lecz wadliwe dzialanie oprogramowania, ktore nie bylo przygotowane na
    obsluge rzeczywistych danych wejsciowych. Nie nazwalbym tego "software
    zachowal sie prawidlowo". To, ze zachowal sie zgodnie z jakas tam
    specyfikacja nie oznacza, ze zachowal sie prawidlowo.

    Operacja sie udala, pacjent zmarl. MSPANC

    >
    > Nie znam formalnych metod ktore sprawdzalyby poprawnosc i logike
    > zalozen projektowych.
    >

    Czyli stosowanie metod formalnych nie zapobieglo wypadkowi.
    Nie znam sie na metodach formalnych, ale wydawalo mi sie, ze stosowanie ich
    ma zapobiegac pojawianiu sie bledow zarowno w implementacji jak i
    _specyfikacji wymagan_ .

    --
    Michal


  • 163. Data: 2011-04-14 19:25:38
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: A.L. <l...@a...com>

    On Thu, 14 Apr 2011 21:13:24 +0200, Michal Kleczek <k...@g...com>
    wrote:

    >
    >To jakies waskie pojmowanie "prawidlowego zachowania oprogramowania".
    >
    >Niewatpliwie wypadek byl spowodowany wadliwym dzialaniem systemu
    >komputerowego. Co wiecej - nie byla to awaria sprzetu (tzn. nic sie nie
    >spalilo, ani tez nie nastapila np. przypadkowa zmiana zawartosci pamieci),
    >lecz wadliwe dzialanie oprogramowania, ktore nie bylo przygotowane na
    >obsluge rzeczywistych danych wejsciowych. Nie nazwalbym tego "software
    >zachowal sie prawidlowo". To, ze zachowal sie zgodnie z jakas tam
    >specyfikacja nie oznacza, ze zachowal sie prawidlowo.
    >

    Software zachowuje sie prawidlowo jezeli dziala zgodnie ze
    specyfikacja. Specyfikacja moze byc nieprawilowa.


    >Operacja sie udala, pacjent zmarl. MSPANC
    >
    >>
    >> Nie znam formalnych metod ktore sprawdzalyby poprawnosc i logike
    >> zalozen projektowych.
    >>
    >
    >Czyli stosowanie metod formalnych nie zapobieglo wypadkowi.
    >Nie znam sie na metodach formalnych, ale wydawalo mi sie, ze stosowanie ich
    >ma zapobiegac pojawianiu sie bledow zarowno w implementacji jak i
    >_specyfikacji wymagan_ .

    Zalezy gdzie sie zaczyna owa "specyfikacja". W przypadku Ariadne 5 byl
    blad ludzki: nie powinno sie adaptowac modulu z Ariadne 4. Natomiast
    nei wiem czy specyfikacja porgramu mowiaca ze komputer ma byc
    wylaczony gdy zakres liczb zostanie przekroczony byla specyfikacja
    sensowna czy nie. Takie rzeczy nie poddaje sie zadnym formalnym
    sprawdzianom.

    A.L.


  • 164. Data: 2011-04-14 19:27:12
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Wojciech Jaczewski <w...@o...pl>

    Mariusz Marszałkowski wrote:

    >> nie mam czasu ani checi na zapoznawanie sie kernelem linuksa - skoro
    >> wiesz o czym mowisz to moze opowiesz jak to programisci c dziargaja "o o"
    >> w linux
    > Uchwyt pliku, id procesu, socket....
    > Pozdrawiam

    Z tego co ja dotychczas widziałem, wielu miłośników programowania
    obiektowego nie lubi korzystać bezpośrednio z deskryptora pliku, uważając to
    za zbyt "niskopoziomowe" i koniecznie trzeba opakować to w jakiś obiekt-
    zaciemniacz intencji programisty.
    Dlatego do "programowania obiektowego" tego nie zaliczyłem.


  • 165. Data: 2011-04-14 19:41:03
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Michal Kleczek <k...@g...com>

    Wojciech Jaczewski wrote:

    > Mariusz Marszałkowski wrote:
    >
    >>> nie mam czasu ani checi na zapoznawanie sie kernelem linuksa - skoro
    >>> wiesz o czym mowisz to moze opowiesz jak to programisci c dziargaja "o
    >>> o" w linux
    >> Uchwyt pliku, id procesu, socket....
    >> Pozdrawiam
    >
    > Z tego co ja dotychczas widziałem, wielu miłośników programowania
    > obiektowego nie lubi korzystać bezpośrednio z deskryptora pliku, uważając
    > to za zbyt "niskopoziomowe" i koniecznie trzeba opakować to w jakiś
    > obiekt- zaciemniacz intencji programisty.

    Wszystko sie zgadza, tylko jest dokladnie odwrotnie - gdyby API do systemu
    bylo zrobione w jakims porzadnym obiektowym jezyku programowania, zaden
    "deskryptor pliku" zaciemniajacy intencje programisty nie bylby potrzebny.
    On jest potrzebny _wlasnie_ dlatego, ze koncepcje obiektowe implementuje sie
    w jezyku, ktory OO nie wspiera.

    --
    Michal


  • 166. Data: 2011-04-14 19:53:21
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Wojciech Jaczewski <w...@o...pl>

    Andrzej Jarzabek wrote:

    >> Chciałem. Opamiętanie się, zajęło mi około dwa lata (pracy
    >> zarobkowej + własnych eksperymentów).
    >
    > Wybacz, ale po pierwsze to co piszesz nie przekonuje mnie,

    Cóż poradzić.

    >> Stosowanie rozwiązań modnych ma swoje zalety, ale czasem
    >> warto modę odrzucić.
    >
    > Czasem warto też myśleć o inżynierii w kategoriach innych niż moda.

    W takim razie co innego niż moda sprawia, że programowanie obiektowe jest
    tak popularne?

    >> > klepiąc kod niczego się porządnie nie nauczysz.
    >>
    >> Są w internecie kody źródłowe projektów, które się udały
    >> i utrzymały się przez wiele lat. Można oglądać i próbować
    >> naśladować.
    >
    > Można. Tylko że w ten sposób niczego się porządnie nie nauczysz. To
    > tak jakbyś chciał nauczyć się budowy mostów oglądając wszystkie mosty
    > w zasięgu spaceru i eksperymentując z przerzucaniem kładki nad
    > strumykiem.

    Dla mnie "porządnie" oznacza, że umiem osiągnąć określony cel. I tę
    umiejętność w dziedzinie programowania w jakimś tam stopniu nabyłem. Nie
    wiem dlaczego miałbym się uczyć, jak osiągnąć ten sam cel przy pomocy
    dłuższej, mniej czytelnej, ale za to obiektowej struktury programu.


  • 167. Data: 2011-04-14 20:02:49
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Wojciech Jaczewski <w...@o...pl>

    Michal Kleczek wrote:

    > Tak swoja droga nie slyszalem o LT krytykujacym OO - raczej krytykujacym
    > C++ jako nie nadajacym sie do programowania kernela (wrecz chodzi mi po
    > glowie jakies jego zdanie ze OO mozna robic w C i dlatego uzywamy C).

    Ja pamiętam kojarzę jeden, gdzie też było wspomniane o OO:
    http://lwn.net/Articles/249460/

    a w nim fragment:

    "- inefficient abstracted programming models where two years down the road
    you notice that some abstraction wasn't very efficient, but now all
    your code depends on all the nice object models around it, and you
    cannot fix it without rewriting your app.

    In other words, the only way to do good, efficient, and system-level and
    portable C++ ends up to limit yourself to all the things that are
    basically available in C. And limiting your project to C means that people
    don't screw that up, and also means that you get a lot of programmers that
    do actually understand low-level issues and don't screw things up with any
    idiotic "object model" crap."

    >> Zdecydowanie chciałbym kiedyś osiągnąć taki poziom jak L.T. a nie jak 99%
    >> "profesjonalistów", mających pojęcie o "dobrych praktykach".
    >
    > Chcialem tylko niesmiale zaznaczyc, ze odwolywanie sie do autorytetu
    > (nawet jesli Linus moze byc za taki uznany) jest slabym argumentem w
    > dyskusji.

    Nawet jeśli nie jest to argument w dyskusji, warto pokazać ludzi, którzy nie
    ulegli modzie i odnieśli sukces.


  • 168. Data: 2011-04-14 20:11:53
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Maciej Sobczak <s...@g...com>

    On Apr 14, 9:13 pm, Michal Kleczek <k...@g...com> wrote:

    > Nie znam sie na metodach formalnych, ale wydawalo mi sie, ze stosowanie ich
    > ma zapobiegac pojawianiu sie bledow zarowno w implementacji jak i
    > _specyfikacji wymagan_ .

    Nie. Metody formalne mają za zadanie zapewnić, że implementacja jest
    zgodna ze specyfikacją. Mogą też znaleźć sprzeczność oraz
    niekompletność w specyfikacji, jeśli takie są.

    Ale żadne metody formalne nie zagwarantują, że specyfikacja poprawnie
    odzwierciedla to, co należało zrobić - bo zawsze można zrobić
    specyfikację i "poprawną" implementację do złego problemu. To jest
    ostatnie ludzkie ogniwo, które jeśli zostanie wyeliminowane, to
    wszyscy pójdziemy na szczaw.

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


  • 169. Data: 2011-04-14 20:17:04
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Michal Kleczek <k...@g...com>

    Wojciech Jaczewski wrote:

    > Michal Kleczek wrote:
    >
    >> Tak swoja droga nie slyszalem o LT krytykujacym OO - raczej krytykujacym
    >> C++ jako nie nadajacym sie do programowania kernela (wrecz chodzi mi po
    >> glowie jakies jego zdanie ze OO mozna robic w C i dlatego uzywamy C).
    >
    > Ja pamiętam kojarzę jeden, gdzie też było wspomniane o OO:
    > http://lwn.net/Articles/249460/
    >
    > a w nim fragment:
    >
    > "- inefficient abstracted programming models where two years down the road
    > you notice that some abstraction wasn't very efficient, but now all
    > your code depends on all the nice object models around it, and you
    > cannot fix it without rewriting your app.
    >
    > In other words, the only way to do good, efficient, and system-level and
    > portable C++ ends up to limit yourself to all the things that are
    > basically available in C. And limiting your project to C means that people
    > don't screw that up, and also means that you get a lot of programmers that
    > do actually understand low-level issues and don't screw things up with any
    > idiotic "object model" crap."

    Innymi slowy - jak sie zle zaprojektuje (inefficient abstraction), to bedzie
    trudne w utrzymaniu. A uzycie C zapobiega zlemu projektowaniu.
    Rozumiem ze "struct inode" i "struct inode_operations" to sa "dobre
    abstrakcje" i wlasnie dlatego sa dobre, ze sa w C.
    Mialem lepsze zdanie o Linusie...

    >
    >>> Zdecydowanie chciałbym kiedyś osiągnąć taki poziom jak L.T. a nie jak
    >>> 99% "profesjonalistów", mających pojęcie o "dobrych praktykach".
    >>
    >> Chcialem tylko niesmiale zaznaczyc, ze odwolywanie sie do autorytetu
    >> (nawet jesli Linus moze byc za taki uznany) jest slabym argumentem w
    >> dyskusji.
    >
    > Nawet jeśli nie jest to argument w dyskusji, warto pokazać ludzi, którzy
    > nie ulegli modzie i odnieśli sukces.

    Nie bardzo rozumiem dlaczego uwazasz uzywanie OO za "mode". To, ze ty nie
    lubisz i ze Linus nie lubi ( na razie jeszcze nie wiemy czy przypadkiem to
    nie wynika z tego, ze obydwaj _nie umiecie_ ), to nie znaczy ze OO jest
    tylko "moda" - jest naprawde cala masa swietnego oprogramowania OO.
    Warto byloby byc bardziej otwartym na to, co robia inni i nabrac dystansu do
    tego co robi sie samemu.

    --
    Michal


  • 170. Data: 2011-04-14 20:17:07
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: p...@p...onet.pl


    > >>> nie mam czasu ani checi na zapoznawanie sie kernelem linuksa - skoro
    > >>> wiesz o czym mowisz to moze opowiesz jak to programisci c dziargaja "o
    > >>> o" w linux
    > >> Uchwyt pliku, id procesu, socket....
    > >> Pozdrawiam
    > >
    > > Z tego co ja dotychczas widziałem, wielu miłośników programowania
    > > obiektowego nie lubi korzystać bezpośrednio z deskryptora pliku, uważając
    > > to za zbyt "niskopoziomowe" i koniecznie trzeba opakować to w jakiś
    > > obiekt- zaciemniacz intencji programisty.
    >
    > Wszystko sie zgadza, tylko jest dokladnie odwrotnie - gdyby API do systemu
    > bylo zrobione w jakims porzadnym obiektowym jezyku programowania, zaden
    > "deskryptor pliku" zaciemniajacy intencje programisty nie bylby potrzebny.
    > On jest potrzebny _wlasnie_ dlatego, ze koncepcje obiektowe implementuj sie
    > w jezyku, ktory OO nie wspiera.
    >

    uchwyty do resourcow i caly ten stuff z tym, to raczej nie jest OOP :-O

    wogle zapomnialem ze mozna jedno z drugim mieszac, choc teraz przypomina mi
    sie ze kiedys kilka lat temu o ile pamiatam czytalem cos w czym autor troche
    zbaczal w tym kierunku

    w sumie jest to jednak ciekawa mysl by pomyslec o ew paralelach i o tych
    uchwytach w osobnosci


    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl

strony : 1 ... 10 ... 16 . [ 17 ] . 18 ... 26


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: