-
Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!feeder.erje.net!
feeder.news-service.com!news.astraweb.com!border3.a.newsrouter.astraweb.com!not
-for-mail
Date: Sun, 17 May 2009 17:21:00 +0100
From: Bronek Kozicki <b...@s...net>
Organization: (my opinions are just mine)
User-Agent: Thunderbird 2.0.0.21 (Windows/20090302)
MIME-Version: 1.0
Newsgroups: pl.comp.programming
Subject: Re: jak napisać szybki program
References: <9...@r...googlegroups.com>
In-Reply-To: <9...@r...googlegroups.com>
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 30
Message-ID: <0002ea5c$0$2239$c3e8da3@news.astraweb.com>
NNTP-Posting-Host: b92092d9.news.astraweb.com
X-Trace: DXC=XPHjS<lLF]Im=FFS;n7SGML?0kYOcDh@J_^QjE]8T\P@PkmdZLC6KKJ7\DGiI4a0dB18>`@C
\EdHD]AUDaNR`U^H
Xref: news-archive.icm.edu.pl pl.comp.programming:181931
[ ukryj nagłówki ]Marteno Rodia wrote:
> Góglałem, ale nie udało mi się znaleźć syntetycznej odpowiedzi na
> pytanie. Interesuje mnie, jak należy pisać program, żeby wykonywał się
> on szybko. Z reguły pisuję w Javie, teraz mam napisać program (a
> właściwie część do większego programu) w C++, który wykonuje pewne
> obliczenia potrzebne do kompresji wideo. Będzie dużo danych i dużo
zasady są podobne: ograniczać coupling, maksymalizować cohesion
Albo po kolei
1. dbać o projekt, bo źle zaprojektowany kod ciężko się optymalizuje
2. mało zachować dynamicznych, dużo invariants
3. bardzo ostrożnie podchodzić do pracy wielwątkowej, tak żeby korzyści
nie zostały skonsumowane przez narzut synchronizacji (trzeba balansować)
4. nie trzymać zasobów dłużej niż są potrzebne jeżeli, unikać
dynamicznej alokacji zasobów(znowu trzeba balansować)
5. jasne reguły kto jest właścicielem czego i jak długo
i specyficzne dla C++:
stosować RAII, nie bać się wyjątków (jeżeli koszt CPU błędu przekracza
koszt wyjątku.), nie bać się szablonów itp., nie przesadzać z OOP (dobry
projekt w C++ może się obejść bez "wszystko jest obiektem dziedziczącym
z interfejsu"), .
B.
--
Remove -trap- when replying. Usun -trap- gdy odpisujesz.
Następne wpisy z tego wątku
- 17.05.09 17:18 A.L.
- 17.05.09 18:53 Marteno Rodia
- 17.05.09 19:13 A.L.
- 17.05.09 19:21 jelen
- 17.05.09 19:53 A.L.
- 17.05.09 19:55 A.L.
- 17.05.09 20:27 Jacek Czerwinski
- 17.05.09 20:31 Wojtek Pietruszewski
- 17.05.09 20:35 A.L.
- 17.05.09 20:52 Bronek Kozicki
- 17.05.09 20:53 Bronek Kozicki
- 17.05.09 20:59 A.L.
- 17.05.09 21:00 A.L.
- 17.05.09 21:01 A.L.
- 17.05.09 21:40 Wojciech Muła
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=