eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCzym jest programowanie? › Re: Czym jest programowanie?
  • 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!news.internetia.pl!not-for-mail
    From: Michoo <m...@v...pl>
    Newsgroups: pl.comp.programming
    Subject: Re: Czym jest programowanie?
    Date: Thu, 14 Jun 2012 21:18:20 +0200
    Organization: Netia S.A.
    Lines: 44
    Message-ID: <jrddju$t7n$1@mx1.internetia.pl>
    References: <4fce791d$0$26684$65785112@news.neostrada.pl>
    <jqmkur$70l$1@inews.gazeta.pl>
    <4fcf1480$0$26697$65785112@news.neostrada.pl>
    <jqn67e$339$1@inews.gazeta.pl>
    <4fcf21e7$0$1308$65785112@news.neostrada.pl>
    <jqn7ut$eur$1@inews.gazeta.pl> <jqnla2$9un$1@inews.gazeta.pl>
    <y2ia1qc4thf8$.hnbv89yzd18u$.dlg@40tude.net>
    <jqnnmi$mcn$1@inews.gazeta.pl> <jqsj08$tgo$1@mx1.internetia.pl>
    <jqurbn$34$1@inews.gazeta.pl>
    <7...@g...com>
    <g...@s...invalid> <jr51r9$9oi$1@inews.gazeta.pl>
    <f...@v...googlegroups.com>
    <jr57bu$9g7$1@inews.gazeta.pl>
    <e...@g...com>
    <f...@g...com>
    <jr6ur2$lo2$1@inews.gazeta.pl>
    <c...@g...com>
    <a...@g...com>
    <jrb8hh$rkf$1@mx1.internetia.pl>
    <0...@g...com>
    NNTP-Posting-Host: 83.238.197.12
    Mime-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: mx1.internetia.pl 1339701694 29943 83.238.197.12 (14 Jun 2012 19:21:34 GMT)
    X-Complaints-To: a...@i...pl
    NNTP-Posting-Date: Thu, 14 Jun 2012 19:21:34 +0000 (UTC)
    In-Reply-To: <0...@g...com>
    X-Tech-Contact: u...@i...pl
    User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:8.0) Gecko/20120216
    Icedove/8.0
    X-Server-Info: http://www.internetia.pl/
    Xref: news-archive.icm.edu.pl pl.comp.programming:197919
    [ ukryj nagłówki ]

    On 14.06.2012 12:31, Wojciech Muła wrote:
    > W dniu czwartek, 14 czerwca 2012 01:39:27 UTC+2 użytkownik Michoo napisał:
    >>> Ale nie żartujmy o C++ lambdach, bo dojdziemy do ściany
    >>> a.k.a. closure. Lambdy bez podanych wprost argumentów nie
    >>> mają dostępu do niczego z zewnętrznego zakresu, tak samo
    >>> jest w phpie, tylko w phpie ciut ładniejsza składnia.
    >>>
    >> Przecież mają:
    >> int b=64;
    >> int a=32;
    >> auto l = [&]()->int { return b+a; };
    > ^^^^^
    >
    > A to co, jak nie podanie explicite zakresu dostępu.
    Sposobu dostępu - wartość czy referencja (czy brak).

    > O tym pisałem, że programista *musi* przy definicji
    > ustalić, do czego funkcja ma dostęp.
    Zarzucasz, że jeżyk daje za duże możliwości programiście zamiast
    ograniczyć się do jedynej słusznej wersji? No bez jaj...

    >
    > BTW funkcje anonimowe są ogólnie przereklamowane.
    Uważam, że są wygodne:
    1. jak masz powtarzające się 3-4 linijki istotne tylko w obrębie
    jakiegoś bloku to robienie z tego metody jest zaśmiecaniem klasy.
    Funkcja anonimowa to rozwiązuje
    2. callbacki/sygnały - główna zaleta w tym przypadku to "koncentracja"
    kodu - miejsce użycia i deklaracja są zaraz obok, mniejszy narzut,
    prostsze utrzymanie:
    a) obj.registerSignal(NEW_DATA,
    [&](vector<int> const &data) { buffer.add(data); });
    b) obj.registerSignal(NEW_DATA, slotNewData);
    ...
    void slotNewData(vector<int> const &data);
    ...
    void foo::slotNewData(vector<int> const &data){
    buffer.add(data);
    }


    --
    Pozdrawiam
    Michoo

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

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: