🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: WPF - tworzenie w XAML czy w kodzie, co wygodniejsze?

#22000
From: Maciej Pilichowski
Date: Wed, 16 Feb 2011 11:47
96 lines
4671 bytes
On Wed, 16 Feb 2011 08:33:02 +0100, Łukasz 'Maly' Ostrowski
<maly@USUNnemo.pl> wrote:

>>>public class FileCounter : Dictionary<string, int>
>> To jest obejscie problemu, nie powiem, ze nie dziala, ale obejscie.
>
>To nie jest obejście, to jest rozwiązanie syntetycznego
>problemu jaki sobie postawiłeś.

Alez. To tylko obejscie. Dla prawdziwego typedefa dzialaloby to tez
dla struktur i mialbys wszystkie konstruktory.

Po prostu -- typedef jest zastepnikiem o nowej nazwie, a nie od nowa
widziana klasa.

>>>Może jeszcze makr brakuje? 
>> Brakuje.
>
>Wielkie zło języka C, 

Nie potrafisz -- nie uzywaj.

>> Eventy -- np. OnPropertyChanged -- za kazdym razem trzeba powielac ten
>> sam kod (wysylanie eventow), bo raz ze odpalanie eventow musi sie
>> odbywac z poziomu klasy-rodzica, to w C# nie ma wielodziedziczenia.
>> Mozna np. obejrzec sobie klasy generowane przez SQLMetala, zeby
>> policzyc ile tam jest realnego kodu, a ile wlasnie powtorek.
>
>He? Co konkretnie trzeba powielić?

if (moje_property!=value)
{
  OnPropertyChanged("moje_property");
  moje_property = value;
}

I tak raz za razem. Takze OnPropertyChanged trzeba ciagle powielac
(body).

>> Brak foreach (ref ), ktore trzeba rozpisywac albo na wygenerowanie
>> nowej kolekcji albo iterowanie via for -- w C++ dzieki makrom mialem i
>> foreacha i foreacha ref (analogie rzecz jasna).
>
>Bosko. Miałeś makra. To przypomina praktycznie pisanie w Qt,
>makro na makrze, wymagany preprocesor, praktycznie własny
>dialekt, to jest porażka.

Wolisz naprawde pisac 

for (int i = 0....

???

>Wcześniej napisałeś "mnóstwo", cztery wyimaginowane 
>problemu to już byłoby "cała masa"? ;-).

Po co mam pisac wiecej, skoro sa wyimaginowane, a nawet Twoj typedef
sie kladzie na dzien dobry.

>> public typedef(FileCounter, Dictionary<string,int>)
>
>Konkretnie jaką to ma przewagę nad:
>public class FileCounter : Dictionary<string, int> {}
>? (to jest jakieś 5 znaków różnicy, a tylko zaciemniasz
>orginalną intencję).

Wrecz przeciwnie -- typedef mowi "to jest TYLKO typedef", natomiast
jak piszesz cos "obok", to po 2 latach zaczynasz sie domyslac "hmm,
ale dlaczego nie uzylem typedefa? Czyzby tu bylo jakies drugie dno?".

>Tak jak obok napisał 3P, według Ciebie, najlepiej
>jakbyś zamiast:

Chcesz ze mna dyskutowac, czy ze swoimi imaginacjami?

>> Ale pewnie lepiej jest bez makr, bo ktos jeszcze napisze potegowanie
>> przy pomocy makr i bedzie mial side effects.
>
>Huh? Zawsze jest lepiej bez makr, makra zostały wymyślone
>na potrzeby C. Makra to zło.

Po raz drugi -- nie rozumiesz, nie umiesz -- nie uzywaj.



A generalnie nie chodzi o to, zeby pisac krocej (mniej znakow), ale
zeby wyrazac WPROST sens idei.

Na nieszczescie C# np. Eric Lippert wychodzi z podobnych zalozen co i
Ty. Po co wprowadzac jakis tam feature (nameof np.) jak mozna napisac
cala klase i uzyskac mniej wiecej cos podobnego.

milego dnia, hej
-- 
Moja wyprzedaz wszystkiego: ksiazki, plyty, filmy.
http://www.garaz.pol.pl/
Technical Details
Message-ID: <gudnl61k8h5b1k5l3qdn1cojr5uci903na@4ax.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!feeder.erje.net!xlned.com!feeder1.xlned.com!eweka.nl!hq-usenetpeers.eweka.nl!193.201.147.67.MISMATCH!feeder1.cambriumusenet.nl!feed.tweaknews.nl!209.197.12.242.MISMATCH!nx01.iad01.newshosting.com!209.197.12.246.MISMATCH!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <ih6k62$j39$1@inews.gazeta.pl> <dtifj6hm7ehrhqohiof58hs9n6k0hqonpu@4ax.com> <8e1de6bc-b3fa-401e-afe4-5dd874217c4e@v7g2000yqh.googlegroups.com> <204kl6te7qitni1tgegpovdmqs0ore9a2j@4ax.com> <e648ffc1-e203-4770-b1a9-7376e57fc0c7@s11g2000yqh.googlegroups.com> <41nkl658m9qai2p4s0on8h4ekcnhhfi6bm@4ax.com> <1e94u0l78j3eo.1se305ybk2bwm.dlg@40tude.net> <ukoml6ddks7vaon2asc0hn9b9hmf9sk7th@4ax.com> <1gsodsdrig3vx.krczhslmijt7.dlg@40tude.net>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!feeder.erje.net!xlned.com!feeder1.xlned.com!eweka.nl!hq-usenetpeers.eweka.nl!193.201.147.67.MISMATCH!feeder1.cambriumusenet.nl!feed.tweaknews.nl!209.197.12.242.MISMATCH!nx01.iad01.newshosting.com!209.197.12.246.MISMATCH!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: Maciej Pilichowski <Pilichowski.MaciejSkasujTo@gmail.com>
Newsgroups: alt.pl.comp.lang.csharp
Subject: Re: WPF - tworzenie w XAML czy w kodzie, co wygodniejsze?
Date: Wed, 16 Feb 2011 12:47:19 +0100
Message-ID: <gudnl61k8h5b1k5l3qdn1cojr5uci903na@4ax.com>
References: <ih6k62$j39$1@inews.gazeta.pl> <dtifj6hm7ehrhqohiof58hs9n6k0hqonpu@4ax.com> <8e1de6bc-b3fa-401e-afe4-5dd874217c4e@v7g2000yqh.googlegroups.com> <204kl6te7qitni1tgegpovdmqs0ore9a2j@4ax.com> <e648ffc1-e203-4770-b1a9-7376e57fc0c7@s11g2000yqh.googlegroups.com> <41nkl658m9qai2p4s0on8h4ekcnhhfi6bm@4ax.com> <1e94u0l78j3eo.1se305ybk2bwm.dlg@40tude.net> <ukoml6ddks7vaon2asc0hn9b9hmf9sk7th@4ax.com> <1gsodsdrig3vx.krczhslmijt7.dlg@40tude.net>
X-Newsreader: Forte Agent 1.93/32.576 English (American)
MIME-Version: 1.0
Lines: 96
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 79.187.252.98
X-Trace: 1297856840 unt-rea-a-02.news.neostrada.pl 2505 79.187.252.98:54348
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit