eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingjak napisać szybki programRe: jak napisać szybki program
  • Data: 2009-05-21 03:26:02
    Temat: Re: jak napisać szybki program
    Od: "Mariusz Marszałkowski" <b...@W...gazeta.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Jędrzej Dudkiewicz <j...@g...com> napisał(a):

    > bartekLTG wrote:
    > > Maciej Pilichowski wrote:
    > >> aby zawsze pisac ++var zamiast
    > >> var++ (o ile merytorycznie nie zachodzi koniecznosc tego drugiego),
    > >
    > > Im dluzej o tym mysle, tym bardziej nie rozumiem, o co Ci mogło chodzic;-)
    >
    > O ile pamiętam "rationale", to w C++ do iteracji winien być używany
    > iterator. Będący obiektem, potencjalnie dużym i skomplikowanym. Kiedy w
    > kodzie pojawia się "var++", w to miejsce należy zwrócić "starą" wartość
    > var, a następnie zaaplikować operator++ na var, kiedy pojawia się ++var,
    > nie trzeba zwracać kopii.
    >
    > JD

    Może tak jest wydajniej, ale czy to nie jest pomylenie idei? Język C++
    względem C i asemblera, zdecydowanie lepiej nadaje się do zarządzania
    dużymi projektami i do ponownego wykorzystania kodu. Dzięki temu
    jest optymalizowane co innego - czas i nakład ludzkiej pracy. Po co
    używać języka wysokopoziomowego i jednocześnie wnikać w niuanse kompilacji?
    W C++ pisze się na przeciążonych obiektach a = b + c dlatego żeby
    ułatwić sobie życie, a nie dlatego że a = c + b jest mniej wydajnie.

    Jeśli ktoś chce wydajnie zapisać program to musi użyć języka C i/albo
    asemblera. Języki te mają to do siebie, że ich kompilatory nie wstawiają
    do kodu wynikowego żadnych ukrytych wstawek. Kompilator wygeneruje to
    co napiszesz.

    Warto pamiętać że optymalizowanie zapisu może przyspieszyć program
    co najwyżej liniowo. Zoptymalizowany w ten sposób program może
    działać szybciej, ale jednocześnie przestaje być podatny na modyfikacje.
    Jeśli po pewnym czasie pracy nad programem przychodzi pomysły na
    modyfikację algorytmu, która może przyspieszyć więcej niż dobre
    zakodowanie, to prawdopodobnie będzie trzeba napisać wszystko od nowa.
    Twierdzę to w oparciu o doświadczenia jakie zdobyłem pisząc program do
    gry w szachy - optymalizowałem go na oba sposoby około roku czasu.
    Jeśli bym mógł wrócić do programowania szachów, nigdy więcej bym programu
    nie zoptymalizował pod względem zapisu.

    Ale jeśli ktoś nadal chce optymalizować zapis, to polecam dwie lektury:
    - Optymalizacja Kodu - Kris Kaspersky
    - Procesory Pentium - Michael L. Schmit

    Pzdr










    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

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: