eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingJaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018 › Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
  • X-Received: by 2002:a0c:8b4c:: with SMTP id d12mr457062qvc.3.1546064001102; Fri, 28
    Dec 2018 22:13:21 -0800 (PST)
    X-Received: by 2002:a0c:8b4c:: with SMTP id d12mr457062qvc.3.1546064001102; Fri, 28
    Dec 2018 22:13:21 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
    0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.
    iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!v55no28
    54751qtk.0!news-out.google.com!m21ni7525qta.0!nntp.google.com!v55no2854749qtk.0
    !postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Fri, 28 Dec 2018 22:13:20 -0800 (PST)
    In-Reply-To: <a...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=188.146.112.172;
    posting-account=pyti1AoAAAAf66c003TUy10QAAnMWaKw
    NNTP-Posting-Host: 188.146.112.172
    References: <c...@g...com>
    <f...@g...com>
    <a...@g...com>
    <7...@g...com>
    <a...@g...com>
    <6...@g...com>
    <0...@g...com>
    <a...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <5...@g...com>
    Subject: Re: Jaki język polecić początkującemu? - komentarz do artykułu w
    Programista 9/2018
    From: s...@g...com
    Injection-Date: Sat, 29 Dec 2018 06:13:21 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Lines: 63
    Xref: news-archive.icm.edu.pl pl.comp.programming:213085
    [ ukryj nagłówki ]


    > > Nawyki nie są "cechą języka", tylko ludzi.
    >
    > Tak. Np. większosć ludzi ma złe nawyki żywieniowe.
    > Ale to nie jest problem żywności.

    Cenna uwaga!

    > > I to jest kod pełen
    > > anty-wzorców, których źródłem są właśnie złe nawyki.
    >
    > Dobrze. To może lepiej pokazać dobre wzorce na dobrym kodzie?

    Wzorce i antywzorce nie zależą od języka programowania! Podobnie jak wspomniane
    nawyki.

    > Nadal nie wiemy, czy należy zmienić język, żeby pisać dobrze.
    > Albo, wracając do pierwszego pytania, czy C++ jest (nie)dobry do nauki.

    Jest dobry:
    + jest prawdziwy (w nim się pisze wszelkie poważne systemy - nawet oprogramowanie do
    F-35 napisano w C++ rzucając wcześniej stosowaną Adę np. w F-22 i Euro Fighter 2000)
    + jest kompatybilny (z najważniejszymi językami: Asemblerem i C, a do pozostałych
    języków można w nim tworzyć rozszerzenia)
    + produkuje bardzo szybki, natywny kod (nie wymaga żadnej wirtualnej maszyny czy
    interpretera)
    + jest dobrze rozwinięty i nadal rozwijany
    + jest dobrze zrozumiany i jest sprawdzony
    + jest wieloplatformowy (jeśli się użyje odpowiednich bibliotek: Stl, Boost, Sdl,
    OpenGl czy Qt i jeśli się umiejętnie wydziela wywołania nieprzenośnych funkcji)
    + jest obiektowy
    + wspiera wielodziedziczenie
    + ma możliwość przeładowania operatorów
    + ma wsparcie dla metaprogramowania (szablony)
    + wspiera wyjątki (jako sposób obsługi błędów)
    + wspiera wiele stylów programowania i wiele paradygmatów programowania
    + darmowy
    + ma bardzo dobre BIBLIOTEKI DO WSZYSTKIEGO na liberalnych licencjach
    + jest przyjazny dla ucznia (można go poznawać stopniowo - w miarę potrzeb)
    + jest wiele podręczników (z Opus Magnum Jerzego Grębosza na czele)
    + jest standardem w konkursach dla programistów

    Wady:
    - koszmarne komunikaty linkera (Gnu g++)
    - koszmarne komunikaty kompilatora gdy coś nie gra w użytych szablonach (Gnu g++)
    - słaby debuger Gnu gdb lub jego interfejs w Qt Creator (w porównaniu do debugera
    Borlanda w C++ Builder).
    - ręczne zarządzanie pamięcią
    - brak konsekwencji w stosowaniu nazewnictwa między bibliotekami (np. w Stl i Qt) (do
    przeżycia)
    - wybiórcze stosowanie funkcji języka (np. nie stosowanie wyjątków tylko wartości
    zwracanych i nie standaryzowanych funkcji z opisem błędu np. w Qt)

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: