-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: "Wojciech \"Spook\" Sura" <wojciech.sura_no@spam_poczta.medi.com.pl>
Newsgroups: pl.comp.programming
Subject: Re: kwestia estetyczna
Date: Fri, 05 Aug 2011 11:42:27 +0200
Organization: Optopol Technology
Lines: 69
Message-ID: <o...@l...medicom.local>
References: <j1f3om$2bsb$1@news.mm.pl>
NNTP-Posting-Host: 207.162.akron.net.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2; format=flowed; delsp=yes
Content-Transfer-Encoding: Quoted-Printable
X-Trace: inews.gazeta.pl 1312537348 10021 86.111.207.162 (5 Aug 2011 09:42:28 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Fri, 5 Aug 2011 09:42:28 +0000 (UTC)
X-User: spoko_ws
User-Agent: Opera Mail/11.50 (Win32)
Xref: news-archive.icm.edu.pl pl.comp.programming:191698
[ ukryj nagłówki ]Dnia 04-08-2011 o 23:40:37 <g...@h...com> napisał(a):
> Witam,
>
> Czy taka konstrukcja narusza jakieś zasady/sty dobrego projektowania lub
> jeszcze innego wzorca projektowego? Chodzi mi o drabinkę if..else
Jeśli zaprzeczylibyśm sensowności tego rozwiązania, to na dobrą sprawę
należałoby odrzucić również konstrukcję switch/case, która przecież
spełnia praktycznie tą samą rolę. Różnica jest taka, że drabinka if..else
pozwala uwzględnić kilka różnych warunków (a także - na przykład -
odrzucić warunki, które w danym momencie są zbędne), gdy switch z czymś
takim sobie nie radzi.
Poza tym - jaką alternatywę zaproponowałbyś dla takiej drabinki? Wyciąć
else nie możesz, bo często ma ono kluczowe znaczenie. Co najwyżej możesz
każdy warunek pakować do kolejnego bloku w else, tzn.
if (war1)
{
}
else if (war2)
{
}
else S;
na
if (war1)
{
}
else
{
if (war2)
{
}
else S;
}
Wydaje mi się jednak, że na dłuższą metę drugie rozwiązanie jest znacznie
mniej czytelne - szczególnie, gdy warunków masz dużo.
Pozdrawiam -- Spook.
--
Używam klienta poczty Opera Mail: http://www.opera.com/mail/
Następne wpisy z tego wątku
- 05.08.11 12:52 Artur Muszyński
- 05.08.11 20:33 g...@p...onet.pl
- 06.08.11 16:09 Karol Y
- 06.08.11 16:34 m...@t...pl
- 06.08.11 17:50 A.L.
- 06.08.11 20:13 m...@t...pl
- 06.08.11 21:24 A.L.
- 06.08.11 22:49 Wojciech Muła
- 06.08.11 23:21 m...@t...pl
- 07.08.11 00:05 A.L.
- 07.08.11 06:15 m...@t...pl
- 07.08.11 08:29 g...@p...onet.pl
- 07.08.11 10:02 m...@t...pl
- 07.08.11 10:03 Wojciech Jaczewski
- 07.08.11 15:06 p...@p...onet.pl
Najnowsze wątki z tej grupy
- 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??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2025-01-06 śnieg
- 2025-01-05 Żarówka do lampy z czujnikiem ruchu
- 2025-01-05 Rozkręcają się
- 2025-01-04 pozew za naprawę sprzętu na youtube
- 2025-01-04 gasik
- 2025-01-04 13. Raport Totaliztyczny: Powszechna Deklaracja Praw Człowieka Nie Chroni Przed Wyzyskiem Ani Przed Eksploatacją
- 2025-01-04 Zbieranie danych przez www
- 2025-01-04 reverse engineering i dodawanie elementów do istniejących zamkniętych produktów- legalne?
- 2025-01-04 w Nowym Roku 2025r
- 2025-01-04 Warszawa => Specjalista ds. IT - II Linia Wsparcia <=
- 2025-01-04 Warszawa => Java Developer <=
- 2025-01-04 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-04 Warszawa => System Architect (Java background) <=
- 2025-01-04 Wrocław => Application Security Engineer <=
- 2025-01-04 Chrzanów => Specjalista ds. public relations <=