-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!plix.pl!newsfeed1.plix.pl!goblin2!gobli
n.stu.neva.ru!aioe.org!.POSTED!not-for-mail
From: "Stachu 'Dozzie' K." <d...@g...eat.some.screws.spammer.invalid>
Newsgroups: pl.comp.programming
Subject: Re: Petzold Programowanie Windows
Date: Tue, 31 Jan 2012 12:22:20 +0000 (UTC)
Organization: Aioe.org NNTP Server
Lines: 102
Message-ID: <s...@j...net>
References: <jg6omq$rbu$1@node2.news.atman.pl> <jg7der$hhb$1@inews.gazeta.pl>
<s...@j...net> <jg8eam$rsa$1@inews.gazeta.pl>
<s...@j...net> <jg8lhq$m2v$1@inews.gazeta.pl>
NNTP-Posting-Host: 32kR2H3mw0v3HL1sSnS9/A.user.speranza.aioe.org
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2
Content-Transfer-Encoding: 8bit
X-Complaints-To: a...@a...org
User-Agent: slrn/pre0.9.9-111 (Linux)
X-Notice: Filtered by postfilter v. 0.8.2
Xref: news-archive.icm.edu.pl pl.comp.programming:194973
[ ukryj nagłówki ]On 2012-01-31, M.M. <m...@g...pl> wrote:
> Stachu 'Dozzie' K. <d...@g...eat.some.screws.spammer.invalid> napisał(a):
>
>> On 2012-01-31, M.M. <m...@g...pl> wrote:
>> [...]
>> >> Każdy rozsądny programista raczej weźmie jakąś gotową bibliotekę GUI
>> >> która ułatwia pracę.
>> > Winapi to nic innego jak (miedzy innymi) jakas gotowa biblioteka GUI
>> > ktora ulatwia prace.
>>
>> WinAPI to nic innego jak API systemu Windows. Niezbędna rzecz, żeby
>> zrobić cokolwiek, chociaż niekoniecznie trzeba zaraz w tym paprać
>> samemu. Zwykle lepiej zlecić coś gotowej bibliotece dostarczającej
>> abstrakcje.
> WinAPI dostarcza pewien zestaw abstrakcji, np. uchwyty do obiektow GDI,
> standardowe funkcje ktore rozpoznaja na rzecz jakiego uchwytu zostaly
> wywolane, abstrakcje okna, abstrakcje urzadzenia graficznego, czcionki,
> gotowe frameworki aplikacji jedno- i wielo-dokumentowej, zestaw standardowych
> kontrolek, zasoby z mozliwoscia wizualnego projektowania - troche tego jest.
To samo można powiedzieć o API X11. I nie znaczy to, że od razu jest to
API wysokopoziomowe czy wygodne.
>> WinAPI zostało stworzone do dostarczenia programiście API do systemu
>> operacyjnego. I owszem, bardzo dobrze _dostarcza_ to API. Tylko że samo
>> dostarczone API jest miernej jakości.
> Niezgadzam sie.
To się niezgadzaj. Fakt jest taki, że w WinAPI jest burdel na kółkach,
a funkcje miewają po paręnaście parametrów, z czego w większości się
wstawia NULL i 0. Nie tak wygląda przemyślane i wygode API.
>> Porównaj sobie lepiej jak wygląda API uniksowe (mówię tu generalnie o
>> funkcjach komunikacji z OS-em, a nie o samym GUI).
> Ale jak mozna takie porownanie sensownie zrobic? Z czym mam porownywac
> CreateWindow z WinApi jesli z unixa nie mam analizowac GUI?
Czy dla ciebie WinAPI to tylko zestaw funkcji do budowania interfejsu
graficznego? Jeśli tak, to możemy w tym miejscu zakończyć dyskusję.
> Chyba
> rozmawiamy o czym innym.
Dlatego zaznaczyłem, że zmieniam grunt. Zostawiamy GUI i przechodzimy do
całokształtu komunikacji programów użytkownika z systemem operacyjnym.
> Moze chcesz powiedziec ze jak zlosliwy
> programista przekaze bzdurne agrumenty w API unixa to unix padnie
> rzadziej niz Windows?
Nie, gdzie niby tak twierdzę? Ja twierdzę, że API uniksów jest lepiej
przemyślane. Przykładami są tworzenie procesów (usługa-program dla
użytkownika) i obsługa gniazd i plików (w uniksach otwarty socket jest
praktycznie takim samym deskryptorem, co otwarty plik na dysku albo
STDIN/STDOUT).
> To jakby jakosc implementacji a nie jakosc
> API. Windows wiadomo slynal z braku odpornosci na wszelkie bledy
> czy ataki. Pewne interfejsy z API unix/linux bardziej lubie niz
> z WinAPI ale nie na tyle zeby WinAPI uznac za cos nieudanego.
To przyjrzyj się jeszcze raz, jak często wywołujesz funkcje mające po
paręnaście parametrów i jak jest zorganizowana obsługa sieci i plików.
>> Tam nawet nie ma podziału na "usługę" i "program
>> użytkownika", bo i po co? Zysku z tego właściwie żadnego, a dodatkowy
>> kłopot przy pisaniu daemona i przy zarządzaniu nim.
> Jest potrzebne obycie. Ja robilem copy-paste powtarzajacego sie
> kodu we wszystkich uslugach w jakies 60s i potem normalnie pisalem.
Tylko po *uj, skoro nie ma żadnego zysku na takiej organizacji?
>> > Dostarcza wszystkie podstawowe kontrolki GUI, niektore
>> > mozna narysowac w graficznym edytorze zamiast wklepywac recznie...
>> > W czasach gdy aplikacje napisane w winapi wydajnie smigaly, to
>> > konkurencyjne
>> > gnomy czy kde co chwile padaly, albo nie mogly pracowac z powodu braku
>> > zasobow i nie wspolpracowaly z urzadzeniami - to chyba o czyms swiadczy.
>> To znaczy kiedy? Za czasów GNOME 0.4beta1?
> Z czasow windows 95. Na windows 95 bylo duzo aplikacji graficznych bazujacych
> na winapi i mozna w nich bylo pracowac. Oczywiscie z pewnymi problemami i nie
> mozna bylo systemu narazac na celowe ataki, jednak szlo pracowac. W owczesnych
> odpowiednikach na linuxie nie bylo mowy.
Jeszcze raz, ale od początku i powoli. O czym ty w ogóle tu mówisz?
>> > Sa jeszcze inne zalety gui z winapi. Po pierwsze nigdy nie mialem problemu
>> > z uruchamianiem swoich aplikacji napisanych w gui winapi pod linuxem.
>>
>> No ja miałem. Głównie takie, że aplikacje napisane pod WinAPI nie
>> kompilują się bez przepisania, bo oczywiście binarnej kompatybilności
>> nie ma.
> Wszystkie moje aplikacje napisane z GUI WinAPI dzialaja pod linuxem w
> wersji binarnej :) Oczywiscie jeszcze z uzyciem wine. Aplikacji z
> delphi, z visual basica, z borlnad buildera z reguly nie udawalo mi sie
> uruchomic.
A widzisz. U mnie odwrotnie. Anecdotal evidence.
--
Secunia non olet.
Stanislaw Klekot
Następne wpisy z tego wątku
- 31.01.12 12:32 Michoo
- 31.01.12 12:58 M.M.
- 31.01.12 14:50 Michoo
- 31.01.12 15:31
- 31.01.12 16:06 Marek Borowski
- 31.01.12 19:10 M.M.
- 31.01.12 21:30 Michoo
- 31.01.12 22:27 M.M.
- 01.02.12 07:48 identifikator: 20040501
- 01.02.12 09:24 Roman W
- 01.02.12 15:02 R.e.m.e.K
- 01.02.12 15:13 Stachu 'Dozzie' K.
- 01.02.12 16:05 R.e.m.e.K
- 02.02.12 08:02 Maciej Pilichowski
- 02.02.12 08:15 M.M.
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 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??
Najnowsze wątki
- 2025-02-15 Łódź => NodeJS Developer <=
- 2025-02-15 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-15 Warszawa => Developer .NET (mid) <=
- 2025-02-15 Wrocław => Senior SAP Support Consultant (SD) <=
- 2025-02-14 Zdalne załączanie grzałki bojlera elektrycznego
- 2025-02-14 Warszawa => Kierownik ds. kluczowych Klientów <=
- 2025-02-14 Częstochowa => Product Manager - Systemy infrastruktury teleinformaty
- 2025-02-14 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-02-14 Warszawa => Data Engineer (Tech Leader) <=
- 2025-02-14 Czy ma sens grupa news:pl.soc.polityka-prawna ? :-)
- 2025-02-14 e-paper
- 2025-02-14 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-14 Warszawa => System Architect (Java background) <=
- 2025-02-14 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-14 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=