eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingjaki wybrac jezyk? › Re: jaki wybrac jezyk?
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.POSTED!not-for
    -mail
    From: Michal Kleczek <k...@p...onet.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: jaki wybrac jezyk?
    Date: Wed, 17 Aug 2011 14:52:08 +0200
    Organization: http://onet.pl
    Lines: 54
    Message-ID: <j2gdhq$oa$1@news.onet.pl>
    References: <2...@v...googlegroups.com>
    <5...@n...onet.pl>
    <a...@e...googlegroups.com>
    <op.vz9ot2qr8x7o78@notebook>
    <3...@h...googlegroups.com>
    <j2d2k9$q10$1@news.onet.pl>
    <3...@m...googlegroups.com>
    <j2fm3d$q1a$1@news.onet.pl> <s...@j...net>
    <j2g3i0$j3j$1@news.onet.pl> <s...@j...net>
    NNTP-Posting-Host: 77-252-124-164.ip.netia.com.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: news.onet.pl 1313585530 778 77.252.124.164 (17 Aug 2011 12:52:10 GMT)
    X-Complaints-To: n...@o...pl
    NNTP-Posting-Date: Wed, 17 Aug 2011 12:52:10 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20110624
    Thunderbird/5.0
    In-Reply-To: <s...@j...net>
    Xref: news-archive.icm.edu.pl pl.comp.programming:191957
    [ ukryj nagłówki ]

    On 2011-08-17 14:12, Stachu 'Dozzie' K. wrote:
    >>>
    >>> Przepraszam, ale w poważnym języku o statycznym systemie typów taka
    >>> głupota zostanie wykryta na etapie kompilacji.
    >>
    >> Zostaje wykryta - ja dostaje warning w 1 i 2 linijce main()
    >
    > Wykryte są jedynie niesprawdzone operacje rzutowania. To zdecydowanie za
    > mało. Jest istotna różnica między dodaniem Integera i Stringa do
    > kontenera Integerów: pierwsze powinno się powieść, drugie powinno
    > wylecieć w powietrze, choćby w czasie wykonania programu przy operacji
    > dodania elementu.
    >

    W koncu nie wiem, czy chcesz miec kontrole statyczna, czy dynamiczna.

    Jesli chodzi o statyczna - to jest. Kompilator nie ma mozliwosci wykryc
    zlego typu argumentu dla operacji "add" jezeli wczesniej (poprzez jawne
    rzutowanie) programista mowi mu, ze kontener jest okreslonego typu.

    Jesli chodzi o dynamiczna - to tez jest. Tyle ze nie w tym miejscu, w
    ktorym bys chcial - to fakt.

    > Poza tym ostrzeżenia nie są dla mnie satysfakcjonujące ze względu na
    > sposób ich prezentacji i uciszania w sunowskim kompilatorze. Albo muszę
    > usunąć wszystkie (nie zawsze w ogóle mogę ze względu na inne operacje
    > użyte w programie), albo dostaję kilometry ostrzeżeń, albo ignoruję
    > wszystkie jak leci.
    >

    Mozesz uzyc @SuppressWarnings.

    >>> Java jest ewenementem, bo
    >>> to język o typowaniu statycznym ale dynamicznym.
    >>>
    >>
    >> Tzn chodzi ci o to, ze informacja o typie jest dostepna w runtime?
    >
    > Nie. Chodzi o to, że *mimo że* informacja o typie jest dostępna w czasie
    > kompilacji, to sprawdzanie typu zostaje w większości (w kontenerach)
    > zrzucone na run-time.
    >

    Nie rozumiem. W ogolnosci po wprowadzeniu generykow nie ma potrzeby
    _explicite_ sprawdzac typu w runtime (czyli nie ma potrzeby robienia
    rzutowania explicite). Niczym to sie nie rozni od dowolnego innego
    jezyka bez RTTI.
    TreeMap (TreeSet) jest wyjatkiem, bo jej wymagania co do kluczy
    (elementow) sa takie, ze albo jest dostarczony Comparator, albo typ
    elementu jest podtypem Comparable. To znowu wynika z tego, ze te klasy
    powstaly przed wprowadzeniem generykow.

    --
    Michal

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: