🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.pl.comp.lang.csharp
Article #753

Re: Juz jest! :) Visual C# Standard :)

#753
From: Marek Janaszewski USUNTO. z adre...
Date: Thu, 08 Apr 2004 20:04
82 lines
5728 bytes
tibe wrote:
[...]
>> Wydaje mi się, że trochę przysłania. Ja uważam, że z darmowymi
>> komponentami należy uważać, a w ogóle należy uważać w wpychaniem do
>> swojej aplikacji zbyt dużej ilości komponentów. W końcu to obcy kod.
>> A tak w ogóle to od Ciebie zależy od czego uzależnisz swoje
>> możliwości w stworzeniu programu. Jeśli do każdej głupoty
>> potrzebujesz masy komponentów.
>
> Nie wiem wszystkiego ale skoro componentone sa takie drogie to chyba
> sa
> cos warte, pozatym jak znajde czas to sprawdze na czym polega ten
> trik z rejestracja
> jak pisze Pan Jacek
> "Zamawiasz Resource Kit na stronach Microsoftu i rejestrujesz to na
> stronach ComponentOne. O ile dobrze zrozumialem licencje mozesz
> korzystac z komponentow bez ograniczen....."
> Gdyby jednak tak bylo to firma je robiaca poszlaby z torbami ...

Witam!

Moja wypowiedź była generalna, nie używałem ComponentOne i nic do nich nie
mam. Po prostu spotkałem się z manierą instalowania do wszystkiego
komponentów przez co środowisko staje się zaśmiecone darmowymi komponentami.
Moim zdaniem budowanie z tego programów jest dyskusyjne. Chodzi o
stabilność, szybkość działania, oraz ogóle panowanie na tym co się dzieje.

Aktualnie pracuje w Delphi, tam jest zrobiona przez Borlanda bibioteka VCL,
która podobnie jak aktualnie .NET Framework jest nakładką na Win32 API.
Zresztą chodzą słuchy, że ktoś z ekipy Delphi pracował nad C#. Takie
komponenty są przez programistów bombardowane wywołaniem metod. Można w nich
znaleźć błędy i niedogodności, albo całe rozwiązania źle wymyślone. Nie
wyobrażam sobie tak bezkrytycznego umieszczania w swojej aplikacji dowolnego
obiektu ze świata. To o czym piszą w książkach, czyli ponowne wykorzystanie
kodu przez programowanie obiektowe, nie dzieje się bez kosztu. Programista
wywołuje różne metody w różnej kolejności a obiekt przed tym ma się obronić.
Do tego dokumentacja i wykorzystanie obiektów zgodnie z koncepcją autora.

W Pascalu (Delphi) jest zwyczaj aby wszystkie typy, w tym klasy zaczynać od
dużej litery T, pola obiektów od F, itd. Dlatego nazwy obiektów w VCL są
charakterystyczne poczynając od TObject. Na grupach Delphi spotkałem się z
żartobliwymi postulatami aby napisać komponenty: TIf, TFor, TWhile, itd :-)
Znana jest tendencja, że wizualne programowanie przekształcania się głupie
programowanie. Oczywiście nie mam konkretnie nic do osoby pytającej albo do
ComponentOne. Rozumiem także, że to mają być narzędzia RAD i zakup
mocniejszego komputera jest tańszy od pracy programisty. Tylko apelowałem o
zachowanie umiaru.

Np. jak patrzę na ADO.NET wydaje się to całkiem zachęcająco ponieważ nie
wszystko polega na powiązaniu komponentów za pomocą właściwości. Trzeba
napisać trochę kodu, napisać kilka zapytań SQL, wiedzieć jak wygląda
koncepcja tego użycia. Nie ćwiczyłem jeszcze łączenia DataSet ze zwykłymi
kontrolkami ale podobno można tego dokonać ze zwykłymi. Każda warta jest
dobrze wyodrębnione a ja jestem odpowiedzialny i decyduje jak je połączyć.
Jest to automat, ale umiarkowany i sterowalny. Natomiast nie mam dobrego
zdania o rozwiązaniu Borlanda zastosowanym VCL do baz danych. Są osobne
kontrolki to baz danych, kilka komponentów, które trzeba połączyć i można
wyświetlać albo edytować dane. To wszystko ładnie wygląda ale na pokazie a
budowa realnej aplikacji jest o wiele bogatsza. U Borlanda brak jest dobrze
wydzielonych warstw określone za co, która jest odpowiedzialna.

> Co do obcego kodu to w przypadku robienia raportow z baz banych jest
> to
> dobra opcja, przynajmiej ja nie widze siebie robiacego owe raporty w
> inny sposob, a moze nie znam sposobu...
[...]

Faktycznie raporty to osobny problem. Spotkałem się z kilkoma rozwiązaniami
i zwykle okazały się nienajlepsze. Dziwnym trafem jakoś obsługa ekranu i UI
jest lepiej opanowana od drukarki. A wydawało by się, że interakcja z
użytkownikiem jest trudniejsza od beznamiętnego generowania wydruków.

Tak mi się wydaje, że być może warto by coś pokombinować z HTML-em. W .NET
jest ASP i ciekawe czy by nie dało się zmusić jego do generowanie HTML-a na
żądanie aplikacji zamiast serwera WWW. Coś takiego trzeba by łamać na strony
i można drukować za pomocą IE. Na pewno dobrą cechą tych raportów była by
ich przenośność, itd.

-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Technical Details
Message-ID: <c54ogb$olq$1@news.atman.pl>
Path: mbox-mo1.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.tpinternet.pl!news.atman.pl!not-for-mail
References: <c4bpvb$7e$1@news.onet.pl> <c4sfnb$6ro$1@nemesis.news.tpi.pl> <c4simv$di1$1@news.onet.pl> <c4trq0$b0n$1@nemesis.news.tpi.pl> <c51slh$agk$1@nemesis.news.tpi.pl> <c525oa$24dv$1@news.atman.pl> <c538av$cso$1@atlantis.news.tpi.pl> <c53s4n$1q18$1@news.atman.pl> <c547je$51g$1@nemesis.news.tpi.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.tpinternet.pl!news.atman.pl!not-for-mail
From: "Marek Janaszewski \(USUN_TO. z adresu!\)" <USUN_TO...@gazeta.pl>
Newsgroups: alt.pl.comp.lang.csharp
Subject: Re: Juz jest! :) Visual C# Standard :)
Date: Thu, 8 Apr 2004 22:04:36 +0200
Organization: ATMAN
Lines: 83
Message-ID: <c54ogb$olq$1@news.atman.pl>
References: <c4bpvb$7e$1@news.onet.pl> <c4sfnb$6ro$1@nemesis.news.tpi.pl> <c4simv$di1$1@news.onet.pl> <c4trq0$b0n$1@nemesis.news.tpi.pl> <c51slh$agk$1@nemesis.news.tpi.pl> <c525oa$24dv$1@news.atman.pl> <c538av$cso$1@atlantis.news.tpi.pl> <c53s4n$1q18$1@news.atman.pl> <c547je$51g$1@nemesis.news.tpi.pl>
NNTP-Posting-Host: staticline702.toya.net.pl
Mime-Version: 1.0
X-Trace: news.atman.pl 1081468235 25274 217.113.228.127 (8 Apr 2004 23:50:35 GMT)
X-Complaints-To: use...@atman.pl
NNTP-Posting-Date: Thu, 8 Apr 2004 23:50:35 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit