-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.n
eostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Mon, 03 Oct 2011 15:00:55 +0200
From: Szyk <s...@o...pl>
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1
MIME-Version: 1.0
Newsgroups: pl.comp.programming
Subject: Re: WinMM / DirectSound / Kernel Streaming / ASIO / GSIF ?
References: <j6bo05$bs2$1@inews.gazeta.pl>
In-Reply-To: <j6bo05$bs2$1@inews.gazeta.pl>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 62
Message-ID: <4e89b208$0$2444$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 178.42.139.162
X-Trace: 1317646856 unt-rea-a-01.news.neostrada.pl 2444 178.42.139.162:50835
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.comp.programming:192572
[ ukryj nagłówki ]Drogi Fiże, wielki generale Kenobi, czcigodny profesorze Kibonte...
> ktos moze udzielic jakiejs porady (glownie uwzgledniajace to co
> powiedzialem: bez dodatkowych libow i rownolegly dzwiek najlepiej
> z mala latencja) - zna chocby jakies dobre materialy do
> dokumentacji itp?
Zdaje się, że święcie wierzysz w:
1) boskość WinApi (szybkość, funkcjonalność, poprawność koncepcyjną)
2) nie omylność M$ (zwłaszcza jego WinApi jako dzieła więczącego rozwój
systemów operacyjnych)
3) wyższość programowania proceduralnego (język C)
Podczas gdy nawet M$ nie wierzy w 1) i 2) ani nawet w 3):
ad 1) wkrótce po premierze Windows 95 okazało się, że do gier jest
potrzebne coś lepszego niż WinApi - więc szybko dokręcono zestaw
bibliotek DirectX. Nie wiem czemu unikasz DirectX skoro (OIMW) są to
biblioteki C obecne we wszystkich windach od 1998 roku. OIMW DirectX
góruje zarówno szybkością jak i funkcjonalnością nad WinApi. OIMW w
nowszych windach pod WinApi śmiga DirectX.
ad 2) Brnięcie w zaparte w technologie M$ może być uzasadniane a)
stabilnością i b) funkcjonalnością oferowaną przez windę które
przewyższają konkurencję. I faktycznie przewaga M$ Windows jest ogromna
i raczej nie zagrożona. Tym nie mniej ograniczanie się do jednego
systemu to brnięcie w kanał. Można zrozumieć też pogląd że nie warto się
zajmować systemami które nie rokują jako alternatywa wobec Windows (na
ile poważne jest Kubuntu: ostatnie wyszło w kwietniu a do września nie
działały sterowniki NVidia Geforce 2MX (chyba dla pozostałych Geforców
też nie działały bo widziałem podobne nagłówki na liście błędów) bo
jakieś tam ABI nie grało i dopuki odpowiednia ilość użytkowników nie
potwierdziła tego błędu nikt się tym nie zajmował). Dlatego moim zdaniem
rozsądną strategią obronną przed dominacją M$ i przed brnięciem w nie
rokujące systemy są biblioteki wieloplatformowe. Konkretnie mam na
myśli, że zamiast WinApi czy DirectX raczej bym brnął w SDL lub OpenGL i
OpenAL (jeśli już się trzymać czystego C i robienia dem czy gier).
ad 3) Pewną zaletą czystego C jest to, że jest większa świadomość jakie
funkcje się wywołuje, oraz łatwość wywołania dowolnej metody. Jednak pod
względem architektury programu stosowanie C to praktycznie ciągła pogoń
za cechami C++. Plik źródłowy *.c opisuje zawartość pliku *.o w którym
oprócz funkcji często znajdują się również "zmienne globalne" konieczne
by przechowywać dane robocze programu. Więc czym jest taki plik *.o? No,
jest on po prostu obiektem typu singleton. I cały program to seria tych
singletonów zakodowanych w języku C. Więc wybierając język C nie ma
ucieczki przed obiektówką jeśli chodzi o architekturę programu. Dlatego
moim zdaniem naiwnością jest wypieranie się obiektówki rzekomo przez
kodowanie w czystym C. Natomiast łatwość wywołania jakiejś metody ma
znaczenie tam gdzie projekt programu jest zły i trzeba stosować triki.
Przyznam, że to jest problem z bibliotekami w C++ - kiedy nie wszystko
mogę zrobić po swojemu, albo zgodnie z jakimś najnowszym trendem. Tym
nie mniej te problemy raczej nie przekonają mnie by wyprzeć się
stringów, kontenerów i uogólnionych algorytmów oraz reszty oferowanej
przez takie biblioteki jak Qt.
W sumie ja mogę zrozumieć dlaczego ktoś brnie w C i WinApi. Może być
tak, że z projektowaniem programów nie najlepiej sobie radzi i go to nie
interesuje i chce poćwiczyć WinApi (zwłaszcza gdy wymaga tego pracodawca
czy uczelnia). W tym wypadku - ok - jest to świadoma decyzja.
Następne wpisy z tego wątku
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-12-16 W telefonie brak szufladki na drugą kartę SIM
- 2024-12-16 Szukam monitora HDMI ok. 4"
- 2024-12-16 Poznań => Key Account Manager <=
- 2024-12-16 Akwarium w aucie
- 2024-12-16 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-12-16 Warszawa => Expert Recruiter 360 <=
- 2024-12-16 Gdańsk => System Architect (background deweloperski w Java) <=
- 2024-12-16 Warszawa => Key Account Manager <=
- 2024-12-16 Warszawa => Spedytor Międzynarodowy <=
- 2024-12-16 Białystok => Analityk w dziale Trade Development (doświadczenie z Po
- 2024-12-16 Warszawa => Programista Microsoft Dynamics 365 Business Central <=
- 2024-12-16 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2024-12-16 Szczecin => Key Account Manager (ERP) <=
- 2024-12-16 Lublin => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-12-16 Gdańsk => Specjalista ds. Sprzedaży <=