-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: "Mariusz Marszałkowski" <b...@W...gazeta.pl>
Newsgroups: pl.comp.programming
Subject: Re: jak napisać szybki program
Date: Thu, 21 May 2009 03:26:02 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 58
Message-ID: <gv2hk9$77r$1@inews.gazeta.pl>
References: <9...@r...googlegroups.com>
<guooce$u1t$1@news.onet.pl> <gup1i8$rlj$1@mx1.internetia.pl>
<gurkis$5d7$1@news.onet.pl> <gurld3$7gl$1@news.onet.pl>
NNTP-Posting-Host: localhost
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1242876362 7419 172.20.26.236 (21 May 2009 03:26:02 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Thu, 21 May 2009 03:26:02 +0000 (UTC)
X-User: brodacz100
X-Forwarded-For: 89.229.16.190
X-Remote-IP: localhost
Xref: news-archive.icm.edu.pl pl.comp.programming:182074
[ ukryj 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/
Następne wpisy z tego wątku
- 21.05.09 03:51 Mariusz Marszałkowski
- 21.05.09 03:57 Mariusz Marszałkowski
- 21.05.09 06:35 Jacek Czerwinski
- 21.05.09 09:50 Paweł Kierski
- 21.05.09 13:20 Marcin 'Malcom' Malich
- 21.05.09 16:07 Mariusz Marszałkowski
- 21.05.09 16:58 Marcin 'Malcom' Malich
- 21.05.09 20:20 Mariusz Marszałkowski
- 21.05.09 21:04 Jacek Czerwinski
- 21.05.09 21:55 Mariusz Marszałkowski
- 23.05.09 21:59 Maciej Sobczak
- 24.05.09 00:06 A.L.
- 28.05.09 19:32 Mariusz Marszałkowski
- 30.05.09 05:15 Mariusz Marszałkowski
- 07.06.09 05:20 Remek
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-14 granice
- 2025-07-14 Awaria VM?
- 2025-07-14 Gdańsk => Programista Kotlin <=
- 2025-07-14 Warszawa => Junior Rekruter <=
- 2025-07-14 Warszawa => Specjalista rekrutacji IT <=
- 2025-07-14 Wkłady do zniczy...
- 2025-07-14 Warszawa => Specjalista ds. Sprzętu Komputerowego <=
- 2025-07-14 Re: PO chroniło i chroni policyjnych bandziorów [zawiasy za katowanie obywatela (Poznań czerwiec 2012)]
- 2025-07-14 Warszawa => International Freight Forwarder <=
- 2025-07-14 Warszawa => Recruiter 360 <=
- 2025-07-14 Re: Rz?Âd ZAKAZUJE magazyn?Â?w energii ?!! Nowe prawo od 14 lipca to SZOK! ??Â
- 2025-07-14 Warszawa => Sales Assistant <=
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek