Article View: pl.comp.lang.javascript
Article #50988Re: Funkcja korzystająca z instrukcji switch
From: Vax
Date: Fri, 20 Jan 2012 12:00
Date: Fri, 20 Jan 2012 12:00
169 lines
7856 bytes
7856 bytes
W dniu 2012-01-20 10:34, NKAB - pisze:
>>> naczęściej generuje
>>
>> O tak, materiału porównawczego zapewne masz tyle, by uznać go za
>> reprezentatywny. Wybacz, ale twórczość amatorska i kursy dla opornych
>> pisane przez przypadkowe osoby się nie liczą.
>>
>
> Dla amatorów startujących bardzo się liczą.
> Naucz przdszkolaka liczyć przy pomocy ułamków a nie patyczków.
- Drogie dzieci, w naturze i w życiu _najczęściej_ występują liczby 1,
2, 3, 4, 5, 6, 7, 8, 9 i 10. Np. Ania ma 3 gruszeczki, a Andrzejek ma 4
latka.
- Psze pani, psze pani, a pani ile ma lat?
- A ja, to jestem wyjątkiem.
- A ile dzieci jest w przedszkolu?
- Nasze przedszkole też jest wyjątkowe.
- A Ania zjadła już pół gruszki, to ile teraz ma? I ile dni ma rok?
- Won do kąta gówniarzu, ale to już!!!
> Tu na grupie liczy się prostota i komunikatywność na poziomie
> przedszkolaka.
Rozumiem, już się pakuję i wynoszę. Przez te kilka lat, gdy mnie nie
było, jakoś bardzo to miejsce zdziecinniało. Ale żeby aż przedszkole...
> Tu każdy ma prawo się pomylić i dobrze, gdy ktoś
> tą pomyłkę zauważy i skoryguje.
Jak widać nie dobrze, bo niektórzy nie potrafią się pogodzić z krytyką
;p A racja - w przedszkolu dzieci nie należy krytykować, ale chwalić,
chwalić, motywować i ew. delikatnie naprowadzać. To takie pedagogiczne.
Nie ważne, że robią głupoty, ważne, żeby pasji nie zabić.
No litości.
> Tu ważny jest też język pozbawiony
> agresji, bo agresja jest destrukcyjna (stąd ten polityczny akapit).
> Gdyby kolega nie rżnął nieomylnego bufona to nie byłoby sprawy.
Nie zauważyłem, żeby prof nie umiał się przyznać do błędu, ani by bronił
przegranej sprawy. Chyba, że piszesz o innym uczestniku dyskusji?
Tylko dlaczego w trzeciej osobie?
Zauważ, że jeśli chcieć być uczciwym, to właśnie Ty strasznie przeżywasz
krytykę i wyjeżdżasz z adpersonami.
> Ja chociaż zawodowo programuję i zarabiam niemałe pieniądze,
> obijając się całe dnie (dzierżawa programów),
> to jestem programistą amatorem, nie kończyłem żadnych studiów
> informatycznych a jedynie technikum elektryczne.
To tym bardziej mógłbyś powstrzymać się od udzielania "dobrych rad"
innym amatorom. Naczyta się jakiś młody durnot o informatyce i zapadną
mu w pamięć - niby lepiej, niż naczytać się durnot od "miszczów
kierownicy" w temacie prowadzenia, ale też szkodzi.
Masz przykład na sobie - skądś przyswoiłeś jakąś wypaczoną wizję switcha
i puszczasz głupoty dalej (udając znawcę - wszak kto się nie zna, to za
uczenie innych się nie bierze, nie?).
> Klientów mam tylko dlatego, że moje programy są proste, ergonomiczne,
> zrozumiałe dla każdego, nie wymnagają kursów obsługi, są niezawodne
> bo proste.
Nie. Klientów masz dlatego, że ich nie obchodzi Twój kod, ale to, że
działa. Możesz traktować switcha jako "inny zapis elseifów", możesz
uważać (jak wcześniej prof), że default się wykonuje zawsze i gdy tylko
stosować go będziesz na końcu (a to można inaczej?! ojej) to mimo, że
pojęcie autora o programowaniu będzie błędne i naiwne, to programy będą
działać. Kartografia dobrze się miała w czasach "gdy Ziemia była jeszcze
płaska" a zaćmienia słońca trafnie przewidywano na długo przed Kopernikiem.
U mnie z powtórzeniem tego samo w trzech case _po_kolei_ test
rekrutacyjny byś oblał. I nie za rozwlekłość kodu.
A jakbyś jeszcze się pokrętnie tłumaczył, że uczyniłeś tak specjalnie,
żeby było "bardziej zrozumiale" to byś zarobił jeszcze minusa za
traktowanie innych jak idiotów, nie rozumiejących, co znaczy słowo "break".
Widzisz, _proste_, "ergonomiczne" i skuteczne, to były wozy drabiniaste.
Ale spokojnie, na taki transport też klientów znajdziesz, ich nie
interesuje czym i jak, ale żeby było dowiezione.
> nadrabiam niedróbkę:
>
>
> <script>
>
>
> zn='';
> z='ab';
>
> switch(z)
> {
> case z: if(z.substring(0,1)=='a')zn="lit-a";break;
> case z: if(z.substring(1,2)=='b')zn="lit-b";
> }
no, tożeś nadrobił... "case z" dwukrotnie, nono... ;)
Ten drugi to się na bank wykona.
Ale widzę, że odkryłeś (przypadkiem), że case nie musi być stałą.
Np.:
z=1
a=1
switch(z){
case a++:
case a++:
case a++:alert('trafiony')
}
alert(a)
przetestuj dla kolejnych naturalnych wartości z.
a potem wersja "przedszkolaczek":
z=1
a=1
switch(z){
case (alert('raz'),a++):
case (alert('dwa'),a++):
case (alert('trzy'),a++):break
default:alert('nie umiem dalej...');
}
analogicznie, dla kolejnych naturalnych z.
Ze zrozumieniem "jak to działa" nie będzie chyba problemu? ;)
Zaiste, ciekawe, dlaczego dla z=2 alertuje się "raz" i "dwa" ale nie
"trzy" - przecież nie ma break? Na dobrą sprawę mógłby być, nie ma go
"dla zmyły" ;D
Mam nadzieję, że teraz rozumiesz, czym się różni programista od prostego
kodera. I wcale nie chodzi o to, że programiści tak piszą. Oni wiedzą,
że tak się da i jak to będzie działać. Raz na jakiś czas się przydaje,
by nie komplikować zadania "prostotą".
(...)
> Tak aż do tego wyjaśnienia to traktowałem
> bo jest to oczywiste standardowe i wystarczające.
Dla kogoś z małymi aspiracjami "switch to taki inny zapis else-if" może
i jest wystarczające. Tylko po co zaniżać poziom niegdyś świetnej grupy?
> Jedno mnie tylko zastanawia dlaczego nie WY nie daliście
> koledze rozwiązanie tylko ja amator.
Bo nie jest mym obowiązkiem udzielanie odpowiedzi.
Natomiast jest mym prawem prostowanie czegoś mało mądrego, jeżeli mam
taki kaprys. Za drugiego się nie wypowiadam.
> Czy to nie dlatego ja mam klientów, bo z nadętymi informatykami
> ciężko i bardzo drogo się współpracuje?
Na jakiej podstawie uważasz, że zarabiasz "niemałą kasę" i masz "mnóstwo
klientów" a _inni_nie_? I kto tu jest *nadęty*?
Po raz kolejny zarzucasz innym własne przypadłości.
Mogło by się okazać, że Twoi wszyscy klienci przynoszą mniej kasy, niż
czyjś jeden. Choć nie sądzę, by ktokolwiek okazał się takim bucem, by na
grupie o programowaniu próbować epatować zarobkami, czy innymi
_słabo_weryfikowalnymi_ chełpliwymi przechwałkami o sukcesach zawodowych.
To, że "programujesz" jak przedszkolak, nie implikuje tego, że musisz
się zachowywać jak przedszkolak.
Chyba straciłem ochotę na dalszą dyskusję.
v.
Technical Details
Message-ID:
<jfbl07$3r5$1@news.icm.edu.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!.POSTED!not-for-mailReferences:
<a06e9e8f-2ae6-41a8-b804-31e3ef49e304@d10g2000vbh.googlegroups.com> <jeebqu$2r0$1@inews.gazeta.pl> <jel0oj$hbq$1@news.icm.edu.pl> <jeouk7$1m$1@inews.gazeta.pl> <jep6t6$ges$1@mx1.internetia.pl> <jepa9c$hn4$1@news.icm.edu.pl> <jf0lrh$2k0$1@inews.gazeta.pl> <jf0ucr$gs4$1@mx1.internetia.pl> <jf39d9$mf$1@inews.gazeta.pl> <jf49km$jko$1@news.icm.edu.pl> <jf625l$s3j$1@inews.gazeta.pl> <jf6c82$uhd$1@news.icm.edu.pl> <jfbcg2$evr$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!.POSTED!not-for-mail From: Vax <mail@zepsul.sie> Newsgroups: pl.comp.lang.javascript Subject: Re: Funkcja korzystająca z instrukcji switch Date: Fri, 20 Jan 2012 13:00:27 +0100 Organization: ICM, Uniwersytet Warszawski Lines: 169 Message-ID: <jfbl07$3r5$1@news.icm.edu.pl> References: <a06e9e8f-2ae6-41a8-b804-31e3ef49e304@d10g2000vbh.googlegroups.com> <jeebqu$2r0$1@inews.gazeta.pl> <jel0oj$hbq$1@news.icm.edu.pl> <jeouk7$1m$1@inews.gazeta.pl> <jep6t6$ges$1@mx1.internetia.pl> <jepa9c$hn4$1@news.icm.edu.pl> <jf0lrh$2k0$1@inews.gazeta.pl> <jf0ucr$gs4$1@mx1.internetia.pl> <jf39d9$mf$1@inews.gazeta.pl> <jf49km$jko$1@news.icm.edu.pl> <jf625l$s3j$1@inews.gazeta.pl> <jf6c82$uhd$1@news.icm.edu.pl> <jfbcg2$evr$1@inews.gazeta.pl> NNTP-Posting-Host: 89-68-3-67.dynamic.chello.pl Mime-Version: 1.0 X-Trace: news.icm.edu.pl 1327060808 3941 89.68.3.67 (20 Jan 2012 12:00:08 GMT) X-Complaints-To: usenet@news.icm.edu.pl NNTP-Posting-Date: Fri, 20 Jan 2012 12:00:08 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:9.0) Gecko/20111222 Thunderbird/9.0.1 In-Reply-To: <jfbcg2$evr$1@inews.gazeta.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit