eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCarnegie-Mellon przestaje uczyc programowania obiektowego › Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
  • Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.PO
    STED!not-for-mail
    From: Paweł Kierski <n...@p...net>
    Newsgroups: pl.comp.programming
    Subject: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Date: Fri, 01 Apr 2011 09:43:40 +0200
    Organization: http://onet.pl
    Lines: 70
    Message-ID: <in3vnc$3mr$1@news.onet.pl>
    References: <1...@4...com>
    <4d9232b8$0$2487$65785112@news.neostrada.pl>
    <in2kbb$940$1@inews.gazeta.pl> <in2qlf$tln$1@news.onet.pl>
    <in2tjp$bp1$1@inews.gazeta.pl>
    NNTP-Posting-Host: 195.182.34.201
    Mime-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: news.onet.pl 1301643820 3803 195.182.34.201 (1 Apr 2011 07:43:40 GMT)
    X-Complaints-To: n...@o...pl
    NNTP-Posting-Date: Fri, 1 Apr 2011 07:43:40 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.15) Gecko/20110303
    Thunderbird/3.1.9
    In-Reply-To: <in2tjp$bp1$1@inews.gazeta.pl>
    Xref: news-archive.icm.edu.pl pl.comp.programming:189610
    [ ukryj nagłówki ]

    W dniu 2011-04-01 00:01, Wojciech Jaczewski pisze:
    > Paweł Kierski wrote:
    >
    >>> Jest bardzo dużo programów w C, które przy tych wadach, mają jedną
    >>> ogromną zaletę: poprawnie działają. Gdyby inne języki były tak znacząco
    >>> lepsze, bardzo szybko powstałyby konkurencyjne, lepsze, programy w tych
    >>> językach i wyparły z użycia te napisane w C.
    >>
    >> Pytanie, czy są też łatwe w serwisowaniu?
    >
    > Zależy co rozumieć pod pojęciem serwisowanie. Binarki powstałe z programów w
    > czystym C są nieco bardziej przenośne niż w C++. Dla mnie to jest miłe, gdy
    > mogę binarkę zlinkowaną dynamicznie przenieść z nowszego systemu (np.
    > Debian) na starszy i nie muszę kompilować.

    Tak - to kolejna potencjalna przewaga C - jest "częścią wspólną" dla
    większej liczby platform. Co pociąga za sobą również ograniczenia
    względem C++.

    > Które łatwiej serwisować w sensie modyfikować - nie wiem.
    >
    >> C bywa bardziej ekonomiczny, bo jest prostszy do nauczenia się niż C++
    >> (więcej tańszych i wystarczająco dobrych programistów)
    >
    > Nie byłbym pewny czy tak jest. Rozwiązania w C zwykle są proste, bo do
    > tworzenia takich skłania język. Programista by się za bardzo namęczył, gdyby
    > zrobił to w sposób skomplikowany, więc więcej czasu poświęca na szukanie
    > rozwiązań prostych. Ale chyba łatwiej wymyślić jakiś C++-owy przerost formy
    > nad treścią (dzięki wsparciu języka nie aż tak zawiły) niż dobre rozwiązanie
    > w C.

    Tradycyjny argument w drugą stronę: interfejs (klasa czysto
    abstrakcyjna) "obiektu plikopodobnego" w C++ vs. "ręczny polimorfizm"
    ze strukturami zawierającymi wskaźniki do funkcji obsługujących
    read/write/seek. Architektonicznie to samo, gdzie prostszy zapis -
    wiadomo. Oczywiście dla znających oba języki.

    >> Lepsze (w sensie "ładności") języki i programy w nich pisane nie
    >> powstają właśnie ze względu na ekonomię. C i C++ (często jako "C
    >> z klasami" albo i gorzej)
    >
    > Co jest takiego złego w "C z klasami". Być może każdy trochę inaczej
    > definiuje co to pojęcie oznacza. Ja osobiście bardzo lubę styl C ze
    > standardowymi kontenerami C++ oraz shared_ptr. Czy uważasz to za "C z
    > klasami", czy coś innego?

    Pisanie w marnym C, gdzie słowa class używa się kompletnie bez sensu.
    C z ograniczonym wykorzystaniem kontenerów i shared_ptr to de facto
    odpowiednio ograniczony C++. I to bardzo przydatne bywa, choć
    obiektowość może wykorzystywać tylko w prostych narzędziach.

    >> i marnie napisany, ale (dzięki sporemu
    >> wysiłkowi kolejnych programistów ze "sznurkiem i taśmą klejącą")
    >> działający poprawnie program jest często wystarczający. Nijak się ma to
    >> do dobrze napisanych projektów w C/C++.
    >
    > Wolę ten sznurek i taśmę klejącą wewnątrz programu niż na zewnątrz.
    [...]

    Znów nam się terminologia rozjechała 8-) Miałem na myśli serwisowanie
    systemów, które już dawno nadają się do "ultymatywnej refaktoryzacji"
    (czyt. napisania od zera), bo zostały napisane przed zaprojektowaniem,
    a potem były długo rozwijane.

    Dobry zespół po prostu napisze tak, że zmiany nie będą ciągłym
    proszeniem się o katastrofę - bez względu na język.

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

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: