Thread View: pl.comp.objects
141 messages
141 total messages
Page 2 of 3
Started by Marek Wywiał
Mon, 21 Aug 2006 07:25
Page 2 of 3 • 141 total messages
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Sun, 27 Aug 2006 14:40
Date: Sun, 27 Aug 2006 14:40
22 lines
1984 bytes
1984 bytes
Witam A.L. wrote: > Doskonalosc techniczna" oddaje najlepiej nastepujacy cytat, > potwierdzajacy to co od dawna wiadomo, a mianowicie ze C++ powstaje > "metoda alchemiczna": Wkladamy troche g... do sloika i potrzasamy. > Potem patrzymy co wyszlo. Jak rowneiz to ze tworcy jezyka nie sa w > stanie zrozumeic co robia. Widac jest za trudny dla nich. Awantura o niższości/wyższości C++ i Javy przewijała się już wiele razy i nic z niej nie wynika. Te języki sa calkiem różne, chociaż składnie strasznie myli. Nie ma możliwości w pełni zastąpić Javy C++'em, ani C++ Javą. Co więcej cały czas twórcy Javy korzystają z doświadczeń twórców i koderów C++, więc nie wiem dokładnie o co chodzi w tej wojnie. Pozdrawiam. -- |\/\/| Seweryn Habdank-Wojewódzki `\/\/
Re: Wyj?tki w konstruktorze
Author: A.L.
Date: Sun, 27 Aug 2006 15:02
Date: Sun, 27 Aug 2006 15:02
40 lines
3095 bytes
3095 bytes
On Sun, 27 Aug 2006 16:40:58 +0200, Seweryn Habdank-Wojewódzki <habdank@gmail.com> wrote: >Witam > >A.L. wrote: > >> Doskonalosc techniczna" oddaje najlepiej nastepujacy cytat, >> potwierdzajacy to co od dawna wiadomo, a mianowicie ze C++ powstaje >> "metoda alchemiczna": Wkladamy troche g... do sloika i potrzasamy. >> Potem patrzymy co wyszlo. Jak rowneiz to ze tworcy jezyka nie sa w >> stanie zrozumeic co robia. Widac jest za trudny dla nich. > >Awantura o niższości/wyższości C++ i Javy przewijała się już wiele razy i nic z >niej nie wynika. Te języki sa calkiem różne, chociaż składnie strasznie myli. >Nie ma możliwości w pełni zastąpić Javy C++'em, ani C++ Javą. Co więcej cały >czas twórcy Javy korzystają z doświadczeń twórców i koderów C++, więc nie wiem >dokładnie o co chodzi w tej wojnie. Ja tez nei wiem. Chyba chodzi o to ze niektorzy do jezyka takiego czy owego zywia "uczucia wyzsze" czyli milosc. Na drobna uwage ze "panienka jest troszke garbata i ma lekko krzywy nos" reaguja z wsciekloscia. Rzecz nie jest anegdotyczna, byla pzredmiotem badan psychiatrow amerykanskicg. Stwierdzono, ze spora czesc spoleczenstwa "uczlowiecza" przedmioty i traktuje je jak ludzi, lacznie z zywieniem w stosunku do nich owych "uczuc wyzszych". Stwierdzono w palme pierwszenstwa maja wlasciele samochodow nadajacy swym samochodom pieszczotliwe imiona i czepiacy przyjemnosc z fizycznego kontaktu z owymi. Drudzy w kolejnosci sa programisci zakochujacy sie w swoich jezykach. Trzeci - posiadacze broni. Natomiast zgadzam sie s powyzsza uwago co do relacji C++ i Java, aczkolwiek nie zgadzaem sie z, cytuje, "Co więcej cały czas twórcy Javy korzystają z doświadczeń twórców i koderów C++" albowiem o ile mi wiadomo to tworcy Javy w duzej czesci wywodza sie ze spolecznosci Smalltalka. A.L.
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Sun, 27 Aug 2006 16:14
Date: Sun, 27 Aug 2006 16:14
24 lines
2157 bytes
2157 bytes
Witam A.L. wrote: > aczkolwiek nie zgadzaem sie z, cytuje, "Co więcej cały czas twórcy > Javy korzystają z doświadczeń twórców i koderów C++" albowiem o ile > mi wiadomo to tworcy Javy w duzej czesci wywodza sie ze spolecznosci > Smalltalka. Co do społeczności Smalltalka nie mogę się wypowiadać. Natomiast, co do nieustannego pobierania pewnych idei czy pomysłów z C++, to przykładami, o czym była wiele razy mowa, są: szblony - zamienione na genericsy, friendy - zwięte dokładnie z C++, nawet spomentowane jako coś co nie miało być w Javie, ale jednak zotało wciągnięte z C++ jako dobra cecha. Jest jeszcze parę ficzerów trochę odleglejszych i mocno zmienionych jednak ideologicznie pochodzą z C lub C++. Większość tego "materiału" została dogłębnie omówiona na tej grupie i na grupie z C. Pozdrawiam. -- |\/\/| Seweryn Habdank-Wojewódzki `\/\/
Re: Wyj?tki w konstruktorze
Author: Andrzej 'Rudy' Dąbrowski
Date: Sun, 27 Aug 2006 18:17
Date: Sun, 27 Aug 2006 18:17
31 lines
2543 bytes
2543 bytes
A.L. narzeźbił(a): > On Sun, 27 Aug 2006 16:40:58 +0200, Seweryn Habdank-Wojewódzki > <habdank@gmail.com> wrote: > >>Witam >> >>A.L. wrote: >> >>> Doskonalosc techniczna" oddaje najlepiej nastepujacy cytat, >>> potwierdzajacy to co od dawna wiadomo, a mianowicie ze C++ powstaje >>> "metoda alchemiczna": Wkladamy troche g... do sloika i potrzasamy. >>> Potem patrzymy co wyszlo. Jak rowneiz to ze tworcy jezyka nie sa w >>> stanie zrozumeic co robia. Widac jest za trudny dla nich. >> >>Awantura o niższości/wyższości C++ i Javy przewijała się już wiele razy i >>nic z niej nie wynika. Te języki sa calkiem różne, chociaż składnie >>strasznie myli. Nie ma możliwości w pełni zastąpić Javy C++'em, ani C++ >>Javą. Co więcej cały czas twórcy Javy korzystają z doświadczeń twórców i >>koderów C++, więc nie wiem dokładnie o co chodzi w tej wojnie. > > Ja tez nei wiem. Chyba chodzi o to ze niektorzy do jezyka takiego > czy owego zywia "uczucia wyzsze" czyli milosc. Na drobna uwage ze > "panienka jest troszke garbata i ma lekko krzywy nos" reaguja z > wsciekloscia. Czy w społeczności Javy też są tacy ludzie? Zastanawia mnie geneza takiego podejścia. -- Pozdrawiam, Andrzej
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Sun, 27 Aug 2006 18:38
Date: Sun, 27 Aug 2006 18:38
43 lines
3282 bytes
3282 bytes
Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > Witam > > A.L. wrote: > > > aczkolwiek nie zgadzaem sie z, cytuje, "Co więcej cały czas twórcy > > Javy korzystają z doświadczeń twórców i koderów C++" albowiem o ile > > mi wiadomo to tworcy Javy w duzej czesci wywodza sie ze spolecznosci > > Smalltalka. > > Co do społeczności Smalltalka nie mogę się wypowiadać. Natomiast, co do > nieustannego pobierania pewnych idei czy pomysłów z C++, to przykładami, o > czym była wiele razy mowa, są: szblony - zamienione na genericsy, friendy - > zwięte dokładnie z C++, nawet spomentowane jako coś co nie miało być w Javie, > ale jednak zotało wciągnięte z C++ jako dobra cecha. Jest jeszcze parę > ficzerów trochę odleglejszych i mocno zmienionych jednak ideologicznie > pochodzą z C lub C++. Większość tego "materiału" została dogłębnie omówiona na > tej grupie i na grupie z C. Nonsens. Zadnego friend w Javie nie ma i mam nadzieje nie bedzie. Jesli juz Java bedzie ulepszana pod wzgledem wprowadzania bardziej fine-grained konstrukcji do kontroli dostepu do pakietow/klas/... to niech juz za inspiracje posluzy im cos bardziej sensownego niz C++: chocby Ada albo Eiffel. Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. I nie - Java generics nie sa wzorowowane na tym potworze. W Javovych genericsach sie nie da programowac. No i to co niektorym umyka: nie ma dualizmu Java/C++ - spolecznosc C++ jest zabawna sama w sobie - zupelnie bez Javy czy jakiegos innego jezyka. Zauwaz, ze jak ktos sie nabija z C++, to zupelnie nie musi wspominac Javy. O Javie bowiem wspominaja prawie wylacznie ci od C++. Maja widocznie jakies kompleksy co do jezyka, ktory w mainstreamie zdetronizowal C++. A. PS. Ja tam zaluje ze w PL Ruby i Lisp nie sa popularne. Spolecznosci tych jezykow sa chyba nawet bardziej obiecujace niz ta od C++. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Sun, 27 Aug 2006 18:46
Date: Sun, 27 Aug 2006 18:46
21 lines
2086 bytes
2086 bytes
Andrzej 'Rudy' Dąbrowski <a.r.dabrowskiSPAM@gmail.com> napisał(a): > A.L. narzeźbił(a): > > Ja tez nei wiem. Chyba chodzi o to ze niektorzy do jezyka takiego > > czy owego zywia "uczucia wyzsze" czyli milosc. Na drobna uwage ze > > "panienka jest troszke garbata i ma lekko krzywy nos" reaguja z > > wsciekloscia. > > Czy w społeczności Javy też są tacy ludzie? Zastanawia mnie geneza takiego > podejścia. Sa. Ale - ciekawostka - bardziej to dotyczy frameworkow i bibliotek niz samego jezyka. Z tego powodu zjawisko to jest zdecydowanie bardziej hermetyczne. Popularnym obiektem milosci jest tez wszystko co ma w nazwie Agile. To nie dotyczy co prawda jezyka, ale wiezi emocjonalne sa dosc mocne. A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Michal Przybylek
Date: Sun, 27 Aug 2006 19:05
Date: Sun, 27 Aug 2006 19:05
63 lines
4059 bytes
4059 bytes
"A.L." <alewando@fala2005.com> wrote: > Rzecz nie jest anegdotyczna, byla pzredmiotem badan psychiatrow > amerykanskicg. Stwierdzono, ze spora czesc spoleczenstwa > "uczlowiecza" przedmioty i traktuje je jak ludzi, lacznie z > zywieniem w stosunku do nich owych "uczuc wyzszych". Stwierdzono w > palme pierwszenstwa maja wlasciele samochodow nadajacy swym > samochodom pieszczotliwe imiona i czepiacy przyjemnosc z fizycznego > kontaktu z owymi. Drudzy w kolejnosci sa programisci zakochujacy sie > w swoich jezykach. Trzeci - posiadacze broni. Wydaje mi sie, ze w naszym folklorze rzecz jest o wiele bardziej skomplikowana... Zawsze ciekawilo mnie co jest odpowiedzialne za powstawanie subkultur celebrujacych pewne aspekty (np. Linuks, C++, Python, Lisp, Haskell, Perl) i chorobliwie zwalczajacych inne (np. Micorsoft, Windows, C++, Perl). Zauwazylem, ze glowne powody sa trzy: 1. Poczucie indywidualnosci. Chec wyobcowanie sie od reszty "szarej masy", nabrania tozsamosci, wyrazenia buntu przeciwko "reszcie". Czesto takie subkultury tworza sie wokol idei malo popularnych. Podlozem trawalosci subkultury jest trudnosc dostania sie do niej (skomplikowanie narzedzia, niewygosnosc urzycia, poziom intelektualny potrzebny do opanowania ; to jest tez mocno zwiazane z koleinym punktem). Co ciekawe, z czasem jezeli taka subkultura zaczyna sie dostatecznie rozrastac, tworzy sie kontr-kultura przeciwstawiajaca sie tejze. 2. Dysonans poznawczy. Kiedy posiascie danej rzeczy wymaga wiele wysilku, kiedy narzedzie jest niewygodne, zas my stoimy juz _po fakcie_ podjecia tych nieprzyjaznych dzialan, wtedy z pomoca przychodzi nam dysonans poznawczy. Jest to mechanizm, ktory pomaga zachowac nam spokoj poprzez dorobienie ideologii do podjetego dzialan. Skoro podjelismy pewne dzilanie i nie ma silnych przeslanek tlumaczacych trud podejcia, umysl dorabia nam przeslanki sztuczne, zazwyczaj bazujace na silnych emocjach, tak abysmy mogli poczuc sie wewnetrznie spojni, spojrzec bez wstydu w lustro i powiedziec "tak, nie jestem idiota, to co robie ma gleboki sens". Nt. dysonansu poznawczego bylo wiele badan i niektore wyniki sa wrecz szokujace. Radze poczytac :-) 3. Przywiazanie. Jest wiele rzeczy na swiecie. Ale te, ktorych my urzywamy sa jedynymi szczegolnymi. Wyrazistymi. Kazda jest inna i z unikalnym charakterem (w przeciwienstwie do pozostalych, ktore obserwujac z daleka staja sie jednolite i metne). Pozatym, maja te wazna ceche, ze sa nasze. *** Do ciekawych zjawisk dodam jeszcze ludzi chorobliwie zwalczajacych wszelkie subkultury (takze to co nie jest subkultura, ale im sie "kojarzy"). mp
Re: Wyj?tki w konstruktorze
Author: Michal Przybylek
Date: Sun, 27 Aug 2006 19:12
Date: Sun, 27 Aug 2006 19:12
10 lines
1520 bytes
1520 bytes
"Michal Przybylek" <mrp@neostrada.pl> wrote: > urzywamy używamy Pisalem w pospiechu. mp
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Sun, 27 Aug 2006 21:43
Date: Sun, 27 Aug 2006 21:43
64 lines
3271 bytes
3271 bytes
Witam Aleksander Galicki wrote: > Nonsens. Zadnego friend w Javie nie ma i mam nadzieje nie bedzie. Cytuje: http://blogs.sun.com/gbracha/entry/developing_modules_for_development post z 7 Kwietnia tego roku. "I'd favour the introduction of a "friend" keyword that can apply to packages, classes and members. C++ was not all bad." > Jesli juz > Java bedzie ulepszana pod wzgledem wprowadzania bardziej fine-grained > konstrukcji do kontroli dostepu do pakietow/klas/... to niech juz za > inspiracje posluzy im cos bardziej sensownego niz C++: chocby Ada albo > Eiffel. Może i tak, być. A co z historią dokładania enumów, które nota bene były już w dziadku - ANSI C? > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. Oczywiście, że nie, bo w C++ są szablony. > I nie - Java generics nie sa wzorowowane na tym potworze. W Javovych > genericsach sie nie da programowac. Oczywiście. > Zauwaz, > ze jak ktos sie nabija z C++, to zupelnie nie musi wspominac Javy. Oczywiście. > O Javie bowiem wspominaja prawie wylacznie ci od C++. A kolegium na rzecz Ruby, co mówi o Javie? > Maja widocznie jakies kompleksy co do jezyka, ktory w mainstreamie > zdetronizowal C++. Chciałeś powiedzieć, że wyparł C, a C++ nigdy nie był w mainstreamie. To co ludzie nazywają C++ nigdy nie było C++, tylko C z dołożonym słowem kluczowym class i tyle. Zresztą w Javie też ludzie (oczywiście nie wszyscy) paskudnie piszą. Szczególnie popatrz na projekty które wymagają znacznego przemyślenia i znajomości nie tylko kodowania, ale także tematu. Proponuję Ci poszukanie błędów projektowych np. w JSR-73. Ja znalazłem ich kilka, a wiem, że nie dokładnie wszystko sprawdziłem. > PS. Ja tam zaluje ze w PL Ruby i Lisp nie sa popularne. Spolecznosci tych > jezykow sa chyba nawet bardziej obiecujace niz ta od C++. Oczywiście. -- |\/\/| Seweryn Habdank-Wojewódzki `\/\/
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Sun, 27 Aug 2006 23:44
Date: Sun, 27 Aug 2006 23:44
71 lines
3820 bytes
3820 bytes
Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > Witam > > Aleksander Galicki wrote: > > > Nonsens. Zadnego friend w Javie nie ma i mam nadzieje nie bedzie. > > Cytuje: > > http://blogs.sun.com/gbracha/entry/developing_modules_for_development > > post z 7 Kwietnia tego roku. > > "I'd favour the introduction of a "friend" keyword that can apply to packages, > classes and members. C++ was not all bad." To komentarz postronnego internauty. Nic przeciez z tego nie wynika. > > Jesli juz > > Java bedzie ulepszana pod wzgledem wprowadzania bardziej fine-grained > > konstrukcji do kontroli dostepu do pakietow/klas/... to niech juz za > > inspiracje posluzy im cos bardziej sensownego niz C++: chocby Ada albo > > Eiffel. > > Może i tak, być. > > A co z historią dokładania enumów, które nota bene były już w dziadku - ANSI C? No chyba nie powiesz ze ANSI C wprowadzil do uzycia enumy? > > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. > > Oczywiście, że nie, bo w C++ są szablony. No wiec Java nie korzystala tu z doswiadczen C++. > > O Javie bowiem wspominaja prawie wylacznie ci od C++. > > A kolegium na rzecz Ruby, co mówi o Javie? Zupelnie co innego niz kolegium od C++ :-) I z innego powodu. > > Maja widocznie jakies kompleksy co do jezyka, ktory w mainstreamie > > zdetronizowal C++. > > Chciałeś powiedzieć, że wyparł C, a C++ nigdy nie był w mainstreamie. To co > ludzie nazywają C++ nigdy nie było C++, tylko C z dołożonym słowem kluczowym > class i tyle. Zresztą w Javie też ludzie (oczywiście nie wszyscy) paskudnie > piszą. Szczególnie popatrz na projekty które wymagają znacznego przemyślenia i > znajomości nie tylko kodowania, ale także tematu. To kwestia nazewnictwa. Chcesz nazwac to C z klasami - prosze bardzo - niczego to nie zmienia. [Moim ulubionym jest porownanie C++ do osmiornicy, ktora stworzono przybijac psu cztery dodatkowe nogi. To nic dziwnego, ze zranione zwierze probuje poruszac sie za pomoca czterech oryginalnych nog. Trzeba niezwyklego samozaparcia by nauczyc sie korzystac z dodatkowych konczyn.] > > Proponuję Ci poszukanie błędów projektowych np. w JSR-73. Ja znalazłem ich > kilka, a wiem, że nie dokładnie wszystko sprawdziłem. No ale co to ma do tematu? Ja wcale nie twierdze ze Java jest idealna. Mnie w pracy bola zupelnie inne JSRy. A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Mon, 28 Aug 2006 10:02
Date: Mon, 28 Aug 2006 10:02
87 lines
4683 bytes
4683 bytes
Witam Aleksander Galicki wrote: > Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > >> http://blogs.sun.com/gbracha/entry/developing_modules_for_development >> >> post z 7 Kwietnia tego roku. >> >> "I'd favour the introduction of a "friend" keyword that can apply to >> packages, classes and members. C++ was not all bad." > > To komentarz postronnego internauty. Nic przeciez z tego nie wynika. Nie dokońca postronnego, bo blog jest na sun.com. >> > Jesli juz >> > Java bedzie ulepszana pod wzgledem wprowadzania bardziej fine-grained >> > konstrukcji do kontroli dostepu do pakietow/klas/... to niech juz za >> > inspiracje posluzy im cos bardziej sensownego niz C++: chocby Ada albo >> > Eiffel. >> >> Może i tak, być. >> >> A co z historią dokładania enumów, które nota bene były już w dziadku - ANSI >> C? > > No chyba nie powiesz ze ANSI C wprowadzil do uzycia enumy? A gdzie były pierwsze. Znam je z C, który znam od 1989. Jeśli coś miało enumy wcześniej to mi powiedz, chętnie się czegoś dowiem. A napewno nie była to oryginalna konstrukcja C++. >> > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. >> >> Oczywiście, że nie, bo w C++ są szablony. > > No wiec Java nie korzystala tu z doswiadczen C++. Hehe, w szczególności notacja jest rżnięta. A może pomysł nie jest C++ owy, aby tworzyć klasy parametryzowane typami. Idea jest wzięta z C++. A realizacja jest wykonana na imarę Javy, czyli odeszli od typizacji statycznej na rzecz dynamicznej i dlatego ich funkcjonalność jest inna. Nie jestem w ogóle przekonany o tym, że ani procent pomysłu nie został wzięty z C++. A znam różnice, bo kilka programów/przykładów napisałem tak, aby klasy były generyczne, więc mniej więcej znam różnice pomiędzy szablonami i genericsami. >> > O Javie bowiem wspominaja prawie wylacznie ci od C++. >> >> A kolegium na rzecz Ruby, co mówi o Javie? > > Zupelnie co innego niz kolegium od C++ :-) I z innego powodu. Nie ma to znaczenia. Ludzie lubią mówić o wyższości Świąt jednych nad drugimi. > To kwestia nazewnictwa. Chcesz nazwac to C z klasami - prosze bardzo - > niczego to nie zmienia. Chodzi nie o język, tylko oto, jak go ludzie używają. > [Moim ulubionym jest porownanie C++ do osmiornicy, ktora stworzono przybijac > psu cztery dodatkowe nogi. To nic dziwnego, ze zranione zwierze probuje > poruszac sie za pomoca czterech oryginalnych nog. Trzeba niezwyklego > samozaparcia by nauczyc sie korzystac z dodatkowych konczyn.] Czyżbyś dopuszczał kastę magików, która potrafi poruszać tymi 4 doszytymi kończynami. Proszę zalicz mnie do nich, bo potrafię pomimo teoretycznej trudności poruszać nimi i to nawet dość sprawnie. > No ale co to ma do tematu? Ja wcale nie twierdze ze Java jest idealna. Więc właśnie. Każdy język ma wady. Mnie denerwuje dziadowski i mało optymalizowalny design. Tak na marginesie, podobno mają wejść do Javy szybkie kontenery, które nie będą sprawdzać np. czy ktoś nie wyskoczył poza zakres - czy to przypadkiem nie jest pomysł twórców C++, aby nie obciązać kontenerów niepotrzebną funkcjonalnością? Pozdrawiam. -- |\/\/| Seweryn Habdank-Wojewódzki `\/\/
Re: Wyj?tki w konstruktorze
Author: Adam Karpierz
Date: Mon, 28 Aug 2006 12:48
Date: Mon, 28 Aug 2006 12:48
11 lines
1573 bytes
1573 bytes
"A.L." <alewando@fala2005.com> wrote in message: > Drudzy w kolejnosci sa programisci zakochujacy sie > w swoich jezykach. > Trzeci - posiadacze broni. Boze ! Dziekujemy Ci ze jednak Sektor jest tylko zakochanym programista :)) AK
Re: Wyj?tki w konstruktorze
Author: Adam Karpierz
Date: Mon, 28 Aug 2006 13:00
Date: Mon, 28 Aug 2006 13:00
30 lines
2370 bytes
2370 bytes
"Andrzej 'Rudy' Dąbrowski" <a.r.dabrowskiSPAM@gmail.com> wrote:
>> Ja tez nei wiem. Chyba chodzi o to ze niektorzy do jezyka takiego
>> czy owego zywia "uczucia wyzsze" czyli milosc. Na drobna uwage ze
>> "panienka jest troszke garbata i ma lekko krzywy nos" reaguja z
>> wsciekloscia.
>
> Czy w społeczności Javy też są tacy ludzie?
Niestety sa :)
> Zastanawia mnie geneza takiego
> podejścia.
To jest odwieczna walka perfekcjonizmu z realizmem ;).
1. Perfekcjonista: Znalezlem Swietego Graala ! : Naucze sie go, jednego
najlepszego, bede mial spokoj.
Reszte bede tepil i ignorowal.
2. realista: Wszytsko to syf :(, Nie ma w IT nic doskonalego
Trzeba umiec po trochu wszytsiego i tylko troche nadto co konieczne, a
gdy
zaczyna cos brzydko pachniec odrzucic dana konstrukcej/rzecz starajac
sie
_w kazdym_ jezyku czy technilogii robic prosto(ale nie prostacko)
czytelnie
klarownie => _zrozumiale_.
AK [byly perfekcjonista]
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Mon, 28 Aug 2006 19:44
Date: Mon, 28 Aug 2006 19:44
110 lines
5781 bytes
5781 bytes
Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > Witam > > Aleksander Galicki wrote: > > > Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > > > >> http://blogs.sun.com/gbracha/entry/developing_modules_for_development > >> > >> post z 7 Kwietnia tego roku. > >> > >> "I'd favour the introduction of a "friend" keyword that can apply to > >> packages, classes and members. C++ was not all bad." > > > > To komentarz postronnego internauty. Nic przeciez z tego nie wynika. > > Nie dokońca postronnego, bo blog jest na sun.com. To sie wpisz tam i napisz, ze oczekujesz wprowadzenia do Javy pare konstrukcji z Brinf***? Jak sadzisz: zmieni to cos? > >> > Jesli juz > >> > Java bedzie ulepszana pod wzgledem wprowadzania bardziej fine-grained > >> > konstrukcji do kontroli dostepu do pakietow/klas/... to niech juz za > >> > inspiracje posluzy im cos bardziej sensownego niz C++: chocby Ada albo > >> > Eiffel. > >> > >> Może i tak, być. > >> > >> A co z historią dokładania enumów, które nota bene były już w dziadku - ANSI > >> C? > > > > No chyba nie powiesz ze ANSI C wprowadzil do uzycia enumy? > > A gdzie były pierwsze. Znam je z C, który znam od 1989. Jeśli coś miało enumy > wcześniej to mi powiedz, chętnie się czegoś dowiem. A napewno nie była to > oryginalna konstrukcja C++. No, np w Pascalu w 1970 roku. Typy algebraiczne w jezykach funkcyjnych tez istnialy od dawna. > >> > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. > >> > >> Oczywiście, że nie, bo w C++ są szablony. > > > > No wiec Java nie korzystala tu z doswiadczen C++. > > Hehe, w szczególności notacja jest rżnięta. A może pomysł nie jest C++ owy, aby > tworzyć klasy parametryzowane typami. To sie nazywa parametric types i na pewno nie jest to pomysl c++. Istnialo to w Eiffel, Ada, jezykach funkcyjnych i pewnie gdzies jeszcze. > Idea jest wzięta z C++. Zachowujesz sie jak typowy c++'owy zealot - "wszystko co dobre pochodzi od c++". Ci to nawet sadza, ze GC zostal w C++ wymyslony. > A realizacja > jest wykonana na imarę Javy, czyli odeszli od typizacji statycznej na rzecz > dynamicznej i dlatego ich funkcjonalność jest inna. Pomerdala Ci sie typizacja z implementacja generic class jedna zwyczajna klasa. > > Nie jestem w ogóle przekonany o tym, że ani procent pomysłu nie został wzięty z > C++. A znam różnice, bo kilka programów/przykładów napisałem tak, aby klasy > były generyczne, więc mniej więcej znam różnice pomiędzy szablonami i > genericsami. No a gdybys znal jakies inne jezyki poza C++ i podstawami Javy, tobys mial inne zdanie. > > [Moim ulubionym jest porownanie C++ do osmiornicy, ktora stworzono przybijac > > psu cztery dodatkowe nogi. To nic dziwnego, ze zranione zwierze probuje > > poruszac sie za pomoca czterech oryginalnych nog. Trzeba niezwyklego > > samozaparcia by nauczyc sie korzystac z dodatkowych konczyn.] > > Czyżbyś dopuszczał kastę magików, która potrafi poruszać tymi 4 doszytymi > kończynami. Proszę zalicz mnie do nich, bo potrafię pomimo teoretycznej > trudności poruszać nimi i to nawet dość sprawnie. Programowac to sobie mozna nawet na jednotasmowej maszynie Turinga, albo w Brainf***. Ja temu nie przecze, ja sie tylko smieje, ze ktos moze sie zakochac w tak zaprojektowanej osmiornicy. > > No ale co to ma do tematu? Ja wcale nie twierdze ze Java jest idealna. > > Więc właśnie. Każdy język ma wady. Mnie denerwuje dziadowski i mało > optymalizowalny design. Dziadzowski design - mowisz wiec o C++? :-) Trudno o lepszy przyklad dziadowskiego designu. No, moze WS-* ostatnio staje sie niezla konkurencja. > Tak na marginesie, podobno mają wejść do Javy szybkie kontenery, które nie będą > sprawdzać np. czy ktoś nie wyskoczył poza zakres - czy to przypadkiem nie jest > pomysł twórców C++, aby nie obciązać kontenerów niepotrzebną funkcjonalnością? We Wrozce to przeczytales? :-) To juz na poziomie bytecode'u jest niewykonalne. Proba wywolania metody na null zawsze skonczy sie NullPointerException, a proba wyjscia poza zakres tablicy - ArrayOutOfBoundException. Innych mechanizmow do budowania kontenerow nie ma. A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Mon, 28 Aug 2006 19:51
Date: Mon, 28 Aug 2006 19:51
7 lines
1479 bytes
1479 bytes
"Aleksander Galicki" <tretete.WYTNIJ@gazeta.pl> writes: [...] > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. Yup. To było już w Moduli-3.
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Mon, 28 Aug 2006 19:55
Date: Mon, 28 Aug 2006 19:55
8 lines
1507 bytes
1507 bytes
"Michal Przybylek" <mrp@neostrada.pl> writes: [...] > Co ciekawe, z czasem jezeli taka subkultura zaczyna sie dostatecznie > rozrastac, tworzy sie kontr-kultura przeciwstawiajaca sie tejze. 'Objects have failed'
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Tue, 29 Aug 2006 11:59
Date: Tue, 29 Aug 2006 11:59
54 lines
3740 bytes
3740 bytes
Dnia Sun, 27 Aug 2006 18:38:17 +0000 (UTC), Aleksander Galicki skrobie: > Nonsens. Zadnego friend w Javie nie ma i mam nadzieje nie bedzie. Jesli juz > Java bedzie ulepszana pod wzgledem wprowadzania bardziej fine-grained > konstrukcji do kontroli dostepu do pakietow/klas/... to niech juz za > inspiracje posluzy im cos bardziej sensownego niz C++: chocby Ada albo Eiffel. To znaczy? Na razie są tylko kłótnie na JSR, a goście nie mogą się zdecydować. Zaproponowano jakieś konkretne rozwiązanie? > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. A w czym? Może w Adzie? W Eifflu? > I nie - Java generics nie sa wzorowowane na tym potworze. W Javovych > genericsach sie nie da programowac. Javowych genericsów, zacznijmy od tego, w ogóle nie da się używać, poza najprostszymi konstrukcjami typu zawieranie pól określonego typu. > No i to co niektorym umyka: nie ma dualizmu Java/C++ - spolecznosc C++ jest > zabawna sama w sobie - zupelnie bez Javy czy jakiegos innego jezyka. Czytając publikacje nt. Javy mam dokładnie takie samo wrażenie nt. społeczności Javy. > Zauwaz, > ze jak ktos sie nabija z C++, to zupelnie nie musi wspominac Javy. To ciekawe, bo rzadko kiedy zauważyłem, żeby ktoś nabijał się z C++ nie wspominając Javy. Ciekawsze jest to o tyle, że nikt jakoś nie "dobija" C++ wspominając C#-a. A to jest jak na razie jedyny język, który swoimi właściwościami jest w stanie rzeczywiście rywalizować z C++. > O Javie > bowiem wspominaja prawie wylacznie ci od C++. Maja widocznie jakies kompleksy > co do jezyka, ktory w mainstreamie zdetronizowal C++. Ja mam akurat dokładnie odwrotne wrażenie. Co do tego "zdetronizowania w mainstreamie" to nie polegałbym tylko na statystykach ze stron www. > PS. Ja tam zaluje ze w PL Ruby i Lisp nie sa popularne. Spolecznosci tych > jezykow sa chyba nawet bardziej obiecujace niz ta od C++. Pod względem nabijania się z nich? Proszę bardzo - skończ biadolenie o C++, a zacznij biadolenie o Rubym i Lispie. -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Tue, 29 Aug 2006 12:10
Date: Tue, 29 Aug 2006 12:10
21 lines
2055 bytes
2055 bytes
Dnia Mon, 28 Aug 2006 14:48:42 +0200, Adam Karpierz skrobie: > "A.L." <alewando@fala2005.com> wrote in message: > > Drudzy w kolejnosci sa programisci zakochujacy sie > > w swoich jezykach. > > Trzeci - posiadacze broni. > Boze ! Dziekujemy Ci ze jednak Sektor jest tylko zakochanym > programista :)) Adam, ciebie to chyba muszę kiedyś stuknąć. Najlepiej kuflem od piwa. -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Michal Przybylek
Date: Tue, 29 Aug 2006 12:56
Date: Tue, 29 Aug 2006 12:56
15 lines
1869 bytes
1869 bytes
"Sektor van Skijlen" <ethouris@guess.if.gmail.com.is.valid.or.invalid> wrote: > > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. > > A w czym? Może w Adzie? W Eifflu? Na pewno nie w Adzie i na pewno nie w Eiffelu. Prawdopodobnie "generyki" zblizone do obecnych pojawily sie gdzies w obrebie CLU i ML'a. Ale pelne zrozumienie tego mechanizmu przyszlo o wiele pozniej (koniec lat 80-tych / poczatek 90-tych). mp
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Tue, 29 Aug 2006 13:04
Date: Tue, 29 Aug 2006 13:04
22 lines
2308 bytes
2308 bytes
Dnia Tue, 29 Aug 2006 14:56:53 +0200, Michal Przybylek skrobie: > "Sektor van Skijlen" <ethouris@guess.if.gmail.com.is.valid.or.invalid> > wrote: > > > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. > > > > A w czym? Może w Adzie? W Eifflu? > Na pewno nie w Adzie i na pewno nie w Eiffelu. > Prawdopodobnie "generyki" zblizone do obecnych pojawily sie gdzies w obrebie > CLU i ML'a. Ale pelne zrozumienie tego mechanizmu przyszlo o wiele pozniej > (koniec lat 80-tych / poczatek 90-tych). Nie "TAKIE" generyki. Z nich pochodzi co najwyżej koncepcja tworzenia generycznych konstrukcji. -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze [OT]
Author: Adam Karpierz
Date: Tue, 29 Aug 2006 13:30
Date: Tue, 29 Aug 2006 13:30
23 lines
1978 bytes
1978 bytes
"Sektor van Skijlen" <ethouris@guess.if.gmail.com.is.valid.or.invalid> wrote: > >> > Drudzy w kolejnosci sa programisci zakochujacy sie >> > w swoich jezykach. > >> > Trzeci - posiadacze broni. > >> Boze ! Dziekujemy Ci ze jednak Sektor jest tylko zakochanym >> programista :)) > > Adam, ciebie to chyba muszę kiedyś stuknąć. No to probuj Wasc. Warze 105kg i mierze 1.93m, a Ty ? ;) > Najlepiej kuflem od piwa. Widziels takie stateczki w butelce ? Fajne prawda ? Sektor w kuflu piwa.. Hm.. tez moze byc fajne ! (chociaz ci bedzie ciut duszno). AK
Re: Wyj?tki w konstruktorze [OT]
Author: Adam Karpierz
Date: Tue, 29 Aug 2006 13:50
Date: Tue, 29 Aug 2006 13:50
7 lines
1569 bytes
1569 bytes
"Adam Karpierz" <karpierz@NOOOOSPAAAAMpython.pl> wrote: > Warze 105kg i mierze 1.93m, a Ty ? ;) No jasne ze mialo byc: Waze :) AK
Re: Wyj?tki w konstruktorze
Author: Michal Przybylek
Date: Tue, 29 Aug 2006 18:17
Date: Tue, 29 Aug 2006 18:17
21 lines
1984 bytes
1984 bytes
"Sektor van Skijlen" <ethouris@guess.if.gmail.com.is.valid.or.invalid> wrote: > > Prawdopodobnie "generyki" zblizone do obecnych pojawily sie gdzies w obrebie > > CLU i ML'a. Ale pelne zrozumienie tego mechanizmu przyszlo o wiele pozniej > > (koniec lat 80-tych / poczatek 90-tych). > > Nie "TAKIE" generyki. Z nich pochodzi co najwyżej koncepcja tworzenia > generycznych konstrukcji. A jakie, w takim razie ? Takie jakie sa w Javie, zostaly wprowadzone w Javie. Takie jakie sa w C++ zostaly, podobno, wprowadzone w makrogeneratorach z lat '60. O to chodzi ? mp
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Tue, 29 Aug 2006 20:17
Date: Tue, 29 Aug 2006 20:17
66 lines
3830 bytes
3830 bytes
Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid> napisał(a): > Dnia Sun, 27 Aug 2006 18:38:17 +0000 (UTC), Aleksander Galicki skrobie: > > Nonsens. Zadnego friend w Javie nie ma i mam nadzieje nie bedzie. Jesli juz > > Java bedzie ulepszana pod wzgledem wprowadzania bardziej fine-grained > > konstrukcji do kontroli dostepu do pakietow/klas/... to niech juz za > > inspiracje posluzy im cos bardziej sensownego niz C++: chocby Ada albo Eiffel > . > > To znaczy? Na razie są tylko kłótnie na JSR, a goście nie mogą się zdecydować. Panskie postrzeganie rzeczywistosci jest - jak zawsze - niezwykle przenikliwe. > > Co do genericsow: nie, nie - genericsy nie zostaly wymyslone w C++. > > A w czym? Może w Adzie? W Eifflu? Nieeee. W C++. > > I nie - Java generics nie sa wzorowowane na tym potworze. W Javovych > > genericsach sie nie da programowac. > > Javowych genericsów, zacznijmy od tego, w ogóle nie da się używać Slusznie, slusznie - nikt ich nie uzywa. > > > Zauwaz, > > ze jak ktos sie nabija z C++, to zupelnie nie musi wspominac Javy. > > To ciekawe, bo rzadko kiedy zauważyłem, żeby ktoś nabijał się z C++ nie > wspominając Javy. Widzi pan, osoby nie widzace swiat inaczej jak przejrza poczatek tego watku to stwierdza, ze pierwsza osoba, ktora wspomniala o Javie, byl niejaki M. "Sektor" Malecki - 25 sierpnia. A pan tego nie widzi! W jezyku fachowym to sie nazywa Morbus Bleuleri. Urlop panu nie sluzy, oklady na glowe pan odmawia. Jedyna nadzieja jest plec piekna. > > O Javie > > bowiem wspominaja prawie wylacznie ci od C++. Maja widocznie jakies kompleksy > > co do jezyka, ktory w mainstreamie zdetronizowal C++. > > Ja mam akurat dokładnie odwrotne wrażenie. Oczywiscie, panie Sektorze. Jest wlasnie tak jak pan mysli. Na marginesie: zna pan jakas dziewczyne w swojej okolicy...? > > PS. Ja tam zaluje ze w PL Ruby i Lisp nie sa popularne. Spolecznosci tych > > jezykow sa chyba nawet bardziej obiecujace niz ta od C++. > > Pod względem nabijania się z nich? Proszę bardzo - skończ biadolenie o C++, a > zacznij biadolenie o Rubym i Lispie. E tam. Widzi pan, tu nie chodzi o jezyk - tu chodzi o ludzi. Jak bede pisal o Lispie, to przeciez pan nie odezwie sie seria dwudziestu doskonalych postow. Wiec ja na razie pozostane przy C++. A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Wed, 30 Aug 2006 09:31
Date: Wed, 30 Aug 2006 09:31
98 lines
5671 bytes
5671 bytes
Witam Aleksander Galicki wrote: >> > No chyba nie powiesz ze ANSI C wprowadzil do uzycia enumy? >> >> A gdzie były pierwsze. Znam je z C, który znam od 1989. Jeśli coś miało >> enumy wcześniej to mi powiedz, chętnie się czegoś dowiem. A napewno nie była >> to oryginalna konstrukcja C++. > > No, np w Pascalu w 1970 roku. Typy algebraiczne w jezykach funkcyjnych tez > istnialy od dawna. Tak, tylko że to w C się nazywają enum. Zreszta wszyscy wiedzą, że java powstaja jako "bardziej user friendly C/C++", a nie eiffel, czy haske, czy pascal. Nota bene C powstał na przełomie 1969-73, więc jakoś równolegle do Pascala. >> Hehe, w szczególności notacja jest rżnięta. A może pomysł nie jest C++ owy, >> aby tworzyć klasy parametryzowane typami. > > To sie nazywa parametric types i na pewno nie jest to pomysl c++. Istnialo to > w Eiffel, Ada, jezykach funkcyjnych i pewnie gdzies jeszcze. Eifel powstał 1985, ciekawe czy od początku miał typy parametryzowane. I ciekawe czy jest możliwe metaprogramowanie za ich pomocą. > Zachowujesz sie jak typowy c++'owy zealot - "wszystko co dobre pochodzi od > c++". Ci to nawet sadza, ze GC zostal w C++ wymyslony. Nie. Nie wszystko, ale Java tak jest. Ich własna inwencja to jest początkowy porządek w drzewie klas, bo dziś w J2EE, jest burdel, klasy są popisane doś kiepsko, w szczególności, są one bardzo ciężkie i jest trochę kodu redundantnego. Jest wiele rzeczy, które w C++ są ściągnięte z języków funkcyjnych. Co mi się podoba. W C++ obiektowość jest zapożyczona ze Smalltalka. Tylko, że to nikt się nie wstydzi, a światek Javistów jest taki pyszny, że niechce się przyznać, że wziął całkiem sporo rzeczy z C++ włączając składnię, którą C++ wziął z C. >> A realizacja >> jest wykonana na imarę Javy, czyli odeszli od typizacji statycznej na rzecz >> dynamicznej i dlatego ich funkcjonalność jest inna. > > Pomerdala Ci sie typizacja z implementacja generic class jedna zwyczajna > klasa. Tego zdania nie rozumiem. Wiesz jakbyś nie wiedział to napisałem kilka programików pisząc w nich klasy generyczne od zera, więc coś o tym wiem. Był już na grupie z Javy taki jeden, który pisał, że nie znam Javy i nie mam się co wypowiadać, poczym jak mu przykładowy kod pokazałem, to trochę zmienił zdanie - nie mówię, że jestem expertem, ale proszę mi nie imputować, że nie znam Javy, bo mam na swoim koncie kilka małych projekcików. > No a gdybys znal jakies inne jezyki poza C++ i podstawami Javy, tobys mial > inne zdanie. Znam podstawy kilku języków i kilka znam średnio. Więc to zanie jest fałszywe. > Programowac to sobie mozna nawet na jednotasmowej maszynie Turinga, albo w > Brainf***. Ja temu nie przecze, ja sie tylko smieje, ze ktos moze sie > zakochac w tak zaprojektowanej osmiornicy. Nie wiem czy jestem zakochany, ale są rzeczy które lepiej się pisze w C++ niż w Javie. Lepiej dla mnie to znaczy że program jest szybszy, co wcale nie oznacza że pisanie jest szybsze czy, że kod jest tańszy. Ale w cale nie jest powiedziane co tansze to lepsze. > Dziadzowski design - mowisz wiec o C++? :-) Zastanów się jaki design jest w Javie. co to jest niby dobry design? Popatrz się na klasy *Holder i *Helper. Czy nie lepiej było to napisac tak: Holder < T > Helper < T > A może chodzi o zgodność w dół? Czyli za kilka lat Jva 9.0 będzie ośmiornicą, która bazuje na Javie 1.4 i ma doszytą funkcjonalność na miarę możliwości javy 9.0? Jest ich masa. Nie w Javie jest BooleanHelper i BooleanHelper i potem to samo dla Byte itd. Jest jeszcze masa innych takich kwiatków. Tylko, że abyy je zobaczyć, trzeba spojrzeć krytycznie na język programowania. Zresztą kiedyś przez rok pisem dla jednej firmy tylko w Javie więc coś wiem, może nie za dużo, ale coś wiem. > Trudno o lepszy przyklad > dziadowskiego designu. No, moze WS-* ostatnio staje sie niezla konkurencja. Hehe. Zastanów się co mówisz zanim coś powiesz, bo chyba PHP nie znasz. Pozdrawiam. -- |\/\/| Seweryn Habdank-Wojewódzki `\/\/
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Thu, 31 Aug 2006 00:04
Date: Thu, 31 Aug 2006 00:04
146 lines
7558 bytes
7558 bytes
Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > Witam > > Aleksander Galicki wrote: > > >> > No chyba nie powiesz ze ANSI C wprowadzil do uzycia enumy? > >> > >> A gdzie były pierwsze. Znam je z C, który znam od 1989. Jeśli coś miało > >> enumy wcześniej to mi powiedz, chętnie się czegoś dowiem. A napewno nie była > >> to oryginalna konstrukcja C++. > > > > No, np w Pascalu w 1970 roku. Typy algebraiczne w jezykach funkcyjnych tez > > istnialy od dawna. > > Tak, tylko że to w C się nazywają enum. Zreszta wszyscy wiedzą, że java > powstaja jako "bardziej user friendly C/C++" Nie. >. Nota bene C powstał na przełomie 1969-73, więc jakoś równolegle do > Pascala. Andrzej Lewandowski juz napisal, ze to C bylo reakcja na Pascal, nie odwrotnie. > >> Hehe, w szczególności notacja jest rżnięta. A może pomysł nie jest C++ owy, > >> aby tworzyć klasy parametryzowane typami. > > > > To sie nazywa parametric types i na pewno nie jest to pomysl c++. Istnialo to > > w Eiffel, Ada, jezykach funkcyjnych i pewnie gdzies jeszcze. > > Eifel powstał 1985, ciekawe czy od początku miał typy parametryzowane. Mial parametryczne typy od poczatku. > I > ciekawe czy jest możliwe metaprogramowanie za ich pomocą. Nie. Makrogeneracja jest bowiem pojeciem ortogonalnym to typow parametrycznych. > > Zachowujesz sie jak typowy c++'owy zealot - "wszystko co dobre pochodzi od > > c++". Ci to nawet sadza, ze GC zostal w C++ wymyslony. > > Nie. Nie wszystko, ale Java tak jest. Ponownie - nieuzasadniona megalomania. Java wywodzi sie ze Smalltalka, a jeszcze bardziej z Objective-C. Rowniez te wszystkie C-like kawalki skladni wywodza sie z Objective-C, nie z C++. > Ich własna inwencja to jest początkowy > porządek w drzewie klas, bo dziś w J2EE, jest burdel, klasy są popisane doś > kiepsko, w szczególności, są one bardzo ciężkie i jest trochę kodu > redundantnego. Ziew. Pisz o tym, na czym sie znasz. To, ze piszesz o czyms, o czym nie masz wystarczajacego pojecia jest zbyt oczywiste. Mozesz mi uwierzyc. Zeby pisac o tym co jest nie tak z J2EE, trzeba w tym J2EE popracowac. Zawodowo i przez pare lat. Dlaczego? Dlatego, ze starasz sie do tezy "cos musi byc z J2EE nie tak" dopasowac swoje z J2EE doswiadczenie, a poniewaz owe doswiadczenie ograniczaja sie do przejrzenia blizej niokreslonego "drzewka klas" to i argumenty wychodza takie jak "są one bardzo ciężkie i jest trochę kodu redundantnego". Pomoge Ci - JSR 277. Tam zobaczysz jedna z rzecz, ktora jest niezwykle wazna dla Javy i dla J(2)EE, a jest bardzo zle w tej chwili rozwiazana. > Jest wiele rzeczy, które w C++ są ściągnięte z języków > funkcyjnych. Co mi się podoba. W C++ obiektowość jest zapożyczona ze > Smalltalka. Jednego z tych jezykow (C++, Smalltalk) musiales na zywe oczy nie widziec. > Tylko, że to nikt się nie wstydzi, a światek Javistów jest taki > pyszny, że niechce się przyznać, że wziął całkiem sporo rzeczy z C++ włączając > składnię, którą C++ wziął z C. To nie zadna pysznosc, to megalomania i ignorancja tych ktorzy twierdza, ze Java cos tam od C++ wziela. Java ma korzenie w Objective-C i Smalltalku. Konkretnie te C-like klamerki i typy prymitywne pochodza z Objective-C, nie z C++. > > >> A realizacja > >> jest wykonana na imarę Javy, czyli odeszli od typizacji statycznej na rzecz > >> dynamicznej i dlatego ich funkcjonalność jest inna. > > > > Pomerdala Ci sie typizacja z implementacja generic class jedna zwyczajna > > klasa. > > Tego zdania nie rozumiem. Wiesz jakbyś nie wiedział to napisałem kilka > programików pisząc w nich klasy generyczne od zera, więc coś o tym wiem. > Był już na grupie z Javy taki jeden, który pisał, że nie znam Javy i nie mam > się co wypowiadać, poczym jak mu przykładowy kod pokazałem, to trochę zmienił > zdanie - nie mówię, że jestem expertem, ale proszę mi nie imputować, że nie > znam Javy, bo mam na swoim koncie kilka małych projekcików. A ja w poprzednim tygodniu widzialem goscia (na job interview) z 15 lat experience, ktory na pytanie "czy wie pan cos o MVC" skrzywil sie i powiedzial "tak, ale swojego czasu zaimplementowalem lepszy". Ja nie musze ogladac zadnego kodu, zeby widziec, kiedy piszesz od rzeczy. Nieco upraszczajac sprawe: na jezyk jak i na technologie sklada sie trzy rzeczy - skladnia, semantyka i pragmatyka. I to pragmatyka sie liczy najbardziej. Niestety aby krytykowac pragmatyke, najczesciej nie wystarczy pobieznie spojrzec na skladnie. To nie jest tak, ze nie ma co w Javie krytykowac - wrecz przeciwnie - jest tego w cholere, ale zeby cos z sensem krytykowac najczescie trzeba samemu tego bolesnie doswiadczyc. > > > Dziadzowski design - mowisz wiec o C++? :-) > > Zastanów się jaki design jest w Javie. co to jest niby dobry design? > > Popatrz się na klasy *Holder i *Helper. > > Czy nie lepiej było to napisac tak: > Holder < T > > Helper < T > ?? Ale o jakie klasy chodzi? > A może chodzi o zgodność w dół? Czyli za kilka lat Jva 9.0 będzie ośmiornicą, > która bazuje na Javie 1.4 i ma doszytą funkcjonalność na miarę możliwości javy > 9.0? > > Jest ich masa. Nie w Javie jest BooleanHelper i BooleanHelper i potem to samo > dla Byte itd. Jaki BooleanHelper? O czym Ty piszesz? > Jest jeszcze masa innych takich kwiatków. Wyimaginowanych, znaczy sie, kwiatkow? Ja nie moge patrzyc jak sie meczysz: i chcesz cos skrytykowac i nie wiesz co... Pomoge Ci znalezc jedna okropna klase w Javie - java.util.Calendar. Ta klasa - a takze kilka innych koszmarkow - wyladowala w Javie za sprawa najwiekszego specjalisty od koszmarkow - IBM. > > Trudno o lepszy przyklad > > dziadowskiego designu. No, moze WS-* ostatnio staje sie niezla konkurencja. > > Hehe. Zastanów się co mówisz zanim coś powiesz, bo chyba PHP nie znasz. Znam. PHP nie pasuje, bo PHP nie wykazuje zadnych objawow designu. A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
[OT} Re: Wyj?tki w konstruktorze
Author: Grzesiek G.
Date: Thu, 31 Aug 2006 11:03
Date: Thu, 31 Aug 2006 11:03
13 lines
2005 bytes
2005 bytes
Aleksander Galicki napisał(a): [...] > A ja w poprzednim tygodniu widzialem goscia (na job interview) z 15 lat > experience, ktory na pytanie "czy wie pan cos o MVC" skrzywil sie i powiedzial > "tak, ale swojego czasu zaimplementowalem lepszy". [...] Może do był twórca MVP, który jest uważany przez niektórych z lepszy? Pozdrawiam -- Grzegorz Gruza Odpowiadając usuń "spamerom_nie." z adresu!!!
Re: Wyj?tki w konstruktorze
Author: Piotr Kobzda
Date: Thu, 31 Aug 2006 11:24
Date: Thu, 31 Aug 2006 11:24
50 lines
3006 bytes
3006 bytes
Aleksander Galicki wrote: > Java ma korzenie w Objective-C i Smalltalku. Niewątpliwie. > Konkretnie te C-like klamerki i typy prymitywne pochodza z Objective-C, nie z C++. Z Objective-C Gosling wykorzystał też interfejsy. Choć co do klamerek, to takie same są w C, więc nic odkrywczego Objective-C w tej kwestii akurat nie wniósł. Poza tym swych bliskich relacji z C/C++ Java też nigdy nie ukrywała. "(c) firstperson, inc. Oak Language Specification This document is a preliminary specification of the Oak language. Both the specification and the language are subject to change. When a feature that exists in both Oak and ANSI C isn't explained fully in this specification, the feature should be assumed to work as it does in ANSI C." I z przypisu od sekcji Exceptions: "Oak exception handling closely follows the proposal in the second edition of The C++ Programming Language, by Bjarne Stroustrup." Oba powyższe cytaty pochodzą z: http://weblogs.java.net/jag/old/green/OakSpec0.2.ps A to już bezpośrednio cytat z JLS: "JAVA is a general-purpose, concurrent, class-based, object-oriented language. It is designed to be simple enough that many programmers can achieve fluency in the language. Java is related to C and C++ but is organized rather differently, with a number of aspects of C and C++ omitted and a few ideas from other languages included. (...) Chapter 3 describes the lexical structure of the Java programming language, which is based on C and C++." piotr
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Thu, 31 Aug 2006 14:37
Date: Thu, 31 Aug 2006 14:37
30 lines
2496 bytes
2496 bytes
Dnia Tue, 29 Aug 2006 20:17:50 +0200, Michal Przybylek skrobie: > "Sektor van Skijlen" <ethouris@guess.if.gmail.com.is.valid.or.invalid> > wrote: > > > Prawdopodobnie "generyki" zblizone do obecnych pojawily sie gdzies w > obrebie > > > CLU i ML'a. Ale pelne zrozumienie tego mechanizmu przyszlo o wiele > pozniej > > > (koniec lat 80-tych / poczatek 90-tych). > > > > Nie "TAKIE" generyki. Z nich pochodzi co najwyżej koncepcja tworzenia > > generycznych konstrukcji. > A jakie, w takim razie ? > Takie jakie sa w Javie, zostaly wprowadzone w Javie. Tak. Na bazie tego, co było w C++, z odpowiednimi modyfikacjami (bez słowa template, z dodaniem koncepcji). > Takie jakie sa w C++ zostaly, podobno, wprowadzone w makrogeneratorach z lat > '60. O to chodzi ? Podobno to znaczy skąd to wiesz? -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Thu, 31 Aug 2006 14:39
Date: Thu, 31 Aug 2006 14:39
14 lines
1851 bytes
1851 bytes
Dnia Tue, 29 Aug 2006 20:17:28 +0000 (UTC), Aleksander Galicki skrobie: [...] Ups, najmocniej przepraszam. Zapomniałem, że siedzisz w kilfajlu. Drugi raz tego błędu nie popełnię. -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Thu, 31 Aug 2006 15:40
Date: Thu, 31 Aug 2006 15:40
54 lines
3724 bytes
3724 bytes
Dnia Thu, 31 Aug 2006 13:24:10 +0200, Piotr Kobzda skrobie: > Aleksander Galicki wrote: > > Java ma korzenie w Objective-C i Smalltalku. > Niewątpliwie. Buhahahaha :) Po pierwsze, twierdzenie, że coś ma korzenie w "Objective-C i Smalltalku" jest śmieszne już samo w sobie, biorąc pod uwagę, że Objective-C to jest język stuprocentowo bazowany na Smalltalku. Po drugie, szczególnie koncepcja statycznej typizacji, rzutowanie i ograniczanie wywoływania metod przez referencję do obiektu tylko do klasy, w której zadeklarowano metodę - nie, wcale to nie pochodzi z C++... :) Również proponuję się zapoznać z tym, jak się wywołuje metody w Smalltalku i Objective-C i czym jest w owych językach referencja. Jeśli już coś ze Smalltalka zostało zapożyczone to jedynie trzy elementy: odśmiecacz, pełne przedefiniowywanie metod oraz pojedyncze dziedziczenie. Tyle że pojedyncze dziedziczenie w Smalltalku jest usprawiedliwione jego konstrukcją obiektowości: jeśli klasa danego obiektu nie rozpoznaje danej metody, to kieruje ją do klasy bazowej. Czegoś takiego nie ma ani w Javie, ani w C++, które są pod tym względem podobne. > > Konkretnie te C-like klamerki i typy prymitywne pochodza z Objective-C, nie z C++. > Z Objective-C Gosling wykorzystał też interfejsy. Jeśli już to "protokoły". > Choć co do klamerek, to takie same są w C, więc nic odkrywczego > Objective-C w tej kwestii akurat nie wniósł. Jeśli ktoś by chciał usprawiedliwiać wymienienie Objective-C przez podobieństwo składni, to radziłbym przed potwierdzaniem takich idiotyzmów najpierw zapoznać się, jak się w Objective-C deklaruje klasy i metody, jak się to robi w C++, a następnie porówna, które z nich jest bliższe Javie. Żeby twierdzić, jakoby Java była bazowana na Objective-C, bo "też ma klamerki", to trzeba chyba dużo taniego wina najpierw wypić. > Poza tym swych bliskich relacji z C/C++ Java też nigdy nie ukrywała. Zgadza się, od jej autorów począwszy. -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Piotr Kobzda
Date: Thu, 31 Aug 2006 16:28
Date: Thu, 31 Aug 2006 16:28
10 lines
1508 bytes
1508 bytes
Sektor van Skijlen wrote: >> Z Objective-C Gosling wykorzystał też interfejsy. > > Jeśli już to "protokoły". Tak, a dokładniej "protokoły formalne". Niefortunnie to napisałem po prostu. piotr
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Thu, 31 Aug 2006 17:27
Date: Thu, 31 Aug 2006 17:27
21 lines
2137 bytes
2137 bytes
"Aleksander Galicki" <tretete.WYTNIJ@gazeta.pl> writes: [...] > Ponownie - nieuzasadniona megalomania. Java wywodzi sie ze > Smalltalka, a jeszcze bardziej z Objective-C. Raczej średnio na jeża. Chociaż środowisko najbardziej znanych programistów Javy wywodzi się rzeczywiście ze środowiska programistów Smalltalka. > Rowniez te wszystkie C-like kawalki skladni wywodza sie > z Objective-C, nie z C++. W Objective-C są nawiasy kwadratowe. -- http://www.piotr.dembiński.prv.pl 'Giving people a dynamically-typed language does not mean that they write dynamically-typed programs.' John Aycock, 'Aggressive Type Inference'
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Thu, 31 Aug 2006 17:29
Date: Thu, 31 Aug 2006 17:29
9 lines
1676 bytes
1676 bytes
Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid> writes: [...] > Po pierwsze, twierdzenie, że coś ma korzenie w "Objective-C > i Smalltalku" jest śmieszne już samo w sobie, biorąc pod uwagę, > że Objective-C to jest język stuprocentowo bazowany na Smalltalku. Objective-C to C ze smalltalkowym podejściem do obiektów.
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Thu, 31 Aug 2006 17:29
Date: Thu, 31 Aug 2006 17:29
19 lines
2262 bytes
2262 bytes
Dnia Thu, 31 Aug 2006 19:29:13 +0200, Piotr Dembiński skrobie: > Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid> writes: > [...] > > Po pierwsze, twierdzenie, że coś ma korzenie w "Objective-C > > i Smalltalku" jest śmieszne już samo w sobie, biorąc pod uwagę, > > że Objective-C to jest język stuprocentowo bazowany na Smalltalku. > Objective-C to C ze smalltalkowym podejściem do obiektów. Źle się wyraziłem. Chodziło mi o "język, który posiada nakładkę obiektową stuprocentowo bazowaną na Smalltalku". -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Thu, 31 Aug 2006 17:30
Date: Thu, 31 Aug 2006 17:30
19 lines
2212 bytes
2212 bytes
Dnia Thu, 31 Aug 2006 19:30:30 +0200, Piotr Dembiński skrobie: > Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid> writes: > [...] > > Tyle że pojedyncze dziedziczenie w Smalltalku jest usprawiedliwione > > jego konstrukcją obiektowości: jeśli klasa danego obiektu nie > > rozpoznaje danej metody, to kieruje ją do klasy bazowej. > W Pythonie klasy bazowe tworzą krotkę (entkę), która jest przez > interpreter przeszukiwana od lewej do prawej. No bo w Pythonie akurat też jest tak. -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Thu, 31 Aug 2006 17:30
Date: Thu, 31 Aug 2006 17:30
10 lines
1724 bytes
1724 bytes
Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid> writes: [...] > Tyle że pojedyncze dziedziczenie w Smalltalku jest usprawiedliwione > jego konstrukcją obiektowości: jeśli klasa danego obiektu nie > rozpoznaje danej metody, to kieruje ją do klasy bazowej. W Pythonie klasy bazowe tworzą krotkę (entkę), która jest przez interpreter przeszukiwana od lewej do prawej.
Re: Wyj?tki w konstruktorze
Author: Sektor van Skijlen
Date: Thu, 31 Aug 2006 17:39
Date: Thu, 31 Aug 2006 17:39
31 lines
2535 bytes
2535 bytes
Dnia Thu, 31 Aug 2006 19:27:43 +0200, Piotr Dembiński skrobie: > "Aleksander Galicki" <tretete.WYTNIJ@gazeta.pl> writes: > [...] > > Ponownie - nieuzasadniona megalomania. Java wywodzi sie ze > > Smalltalka, a jeszcze bardziej z Objective-C. > Raczej średnio na jeża. Chociaż środowisko najbardziej znanych > programistów Javy wywodzi się rzeczywiście ze środowiska programistów > Smalltalka. O! I to stwierdzenie jest już znacznie bardziej bliskie prawdy. > > Rowniez te wszystkie C-like kawalki skladni wywodza sie > > z Objective-C, nie z C++. > W Objective-C są nawiasy kwadratowe. Zgadza się - a dodatkowo klasy definiuje się w nim w dwóch osobnych miejscach, jako @interface i @implementation, metody przez + i -, i tak dalej... Jak to dobrze, że mam tego gościa w kilfajlu i nie muszę czytać takiego steku bzdur. -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "I am allergic to Java because programming in Java reminds me casting spells"
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Thu, 31 Aug 2006 18:53
Date: Thu, 31 Aug 2006 18:53
45 lines
2561 bytes
2561 bytes
Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid> writes:
> Dnia Thu, 31 Aug 2006 19:30:30 +0200, Piotr Dembiński skrobie:
>> Sektor van Skijlen
>> <ethouris@guess.if.gmail.com.is.valid.or.invalid> writes:
>
>> [...]
>
>> > Tyle że pojedyncze dziedziczenie w Smalltalku jest
>> > usprawiedliwione jego konstrukcją obiektowości: jeśli klasa
>> > danego obiektu nie rozpoznaje danej metody, to kieruje ją do
>> > klasy bazowej.
>
>> W Pythonie klasy bazowe tworzą krotkę (entkę), która jest przez
>> interpreter przeszukiwana od lewej do prawej.
>
> No bo w Pythonie akurat też jest tak.
IMO bardzo proste i dzięki temu dobre rozwiązanie problemu wielu metod
o takich samych sygnaturach w więcej niż jednej klasie nadrzędnej.
Jedyny problem jest z tym, że Python nie rozpoznaje sygnatur metod,
a jedynie identyfikatory (nazwy), przez co poniższy kawałek kodu nie
zadziała tak, jak mógłby się tego spodziewać programista C++:
<code>
class Super_1:
def foo(self, x):
return 42 + x
class Super_2:
def foo(self):
return 'foo'
class A(Super_1, Super_2):
pass
a = A()
a.foo()
</code>
--
http://www.piotr.dembiński.prv.pl
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Thu, 31 Aug 2006 20:01
Date: Thu, 31 Aug 2006 20:01
59 lines
3548 bytes
3548 bytes
Piotr Kobzda <pikob@gazeta.pl> napisał(a): > Aleksander Galicki wrote: > > > Java ma korzenie w Objective-C i Smalltalku. > > Niewątpliwie. > > > Konkretnie te C-like klamerki i typy prymitywne pochodza z Objective-C, nie z > C++. > > Z Objective-C Gosling wykorzystał też interfejsy. > > Choć co do klamerek, to takie same są w C, więc nic odkrywczego > Objective-C w tej kwestii akurat nie wniósł. > > > Poza tym swych bliskich relacji z C/C++ Java też nigdy nie ukrywała. > > > "(c) firstperson, inc. > > Oak Language Specification > > This document is a preliminary specification of the Oak language. Both > the specification and the language are subject to change. When a feature > that exists in both Oak and ANSI C isn't explained fully in this > specification, the feature should be assumed to work as it does in ANSI C." > > I z przypisu od sekcji Exceptions: > > "Oak exception handling closely follows the proposal in the second > edition of The C++ Programming Language, by Bjarne Stroustrup." > > Oba powyższe cytaty pochodzą z: > http://weblogs.java.net/jag/old/green/OakSpec0.2.ps To tylko pokazuje jak sie roznia pierwsze wersje Oak od tego co pozniej zostalo nazwane Java. Ludzie od Obj-C dolaczyli do teamu pracujacym nad Oak dopiero po jakims czasie. > > A to już bezpośrednio cytat z JLS: > > "JAVA is a general-purpose, concurrent, class-based, object-oriented > language. It is designed to be simple enough that many programmers can > achieve fluency in the language. Java is related to C and C++ but is > organized rather differently, with a number of aspects of C and C++ > omitted and a few ideas from other languages included. A to imho raczej element marketingowej strategii Sun'a - Sun w sposob oczywisty liczyl na to ze spory kawalek olbrzymiej armii programistow C/C++ przejdzie na Jave - bez tego Java by nie stala sie tym czym jest dzis. A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Marcin 'Qrczak' Kowalczyk
Date: Thu, 31 Aug 2006 21:32
Date: Thu, 31 Aug 2006 21:32
17 lines
2322 bytes
2322 bytes
pdemb@gazeta.pl (Piotr Dembiński) writes:
>>> W Pythonie klasy bazowe tworzą krotkę (entkę), która jest przez
>>> interpreter przeszukiwana od lewej do prawej.
>>
>> No bo w Pythonie akurat też jest tak.
>
> IMO bardzo proste i dzięki temu dobre rozwiązanie problemu wielu metod
> o takich samych sygnaturach w więcej niż jednej klasie nadrzędnej.
To nie jest aż takie proste jak przeszukiwanie od lewej do prawej.
http://www.python.org/download/releases/2.3/mro/
--
__("< Marcin Kowalczyk
\__/ qrczak@knm.org.pl
^^ http://qrnik.knm.org.pl/~qrczak/
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Fri, 01 Sep 2006 17:46
Date: Fri, 01 Sep 2006 17:46
23 lines
2134 bytes
2134 bytes
Marcin 'Qrczak' Kowalczyk <qrczak@knm.org.pl> writes: > pdemb@gazeta.pl (Piotr Dembiński) writes: > >>>> W Pythonie klasy bazowe tworzą krotkę (entkę), która jest przez >>>> interpreter przeszukiwana od lewej do prawej. >>> >>> No bo w Pythonie akurat też jest tak. >> >> IMO bardzo proste i dzięki temu dobre rozwiązanie problemu wielu >> metod o takich samych sygnaturach w więcej niż jednej klasie >> nadrzędnej. > > To nie jest aż takie proste jak przeszukiwanie od lewej do prawej. > http://www.python.org/download/releases/2.3/mro/ A nie przeraża cię ten 'serious order disagreement', w którym nie można utworzyć Z(A, B)? Co do starego algorytmu, to był b. intuicyjny. -- http://www.piotr.dembiński.prv.pl
Re: Wyj?tki w konstruktorze
Author: Marcin 'Qrczak' Kowalczyk
Date: Fri, 01 Sep 2006 19:49
Date: Fri, 01 Sep 2006 19:49
14 lines
2179 bytes
2179 bytes
pdemb@gazeta.pl (Piotr Dembiński) writes:
>> To nie jest aż takie proste jak przeszukiwanie od lewej do prawej.
>> http://www.python.org/download/releases/2.3/mro/
>
> A nie przeraża cię ten 'serious order disagreement', w którym nie
> można utworzyć Z(A, B)?
Nie. Obecne reguły są właśnie takie, jak powinny być.
--
__("< Marcin Kowalczyk
\__/ qrczak@knm.org.pl
^^ http://qrnik.knm.org.pl/~qrczak/
Re: Wyj?tki w konstruktorze
Author: Piotr Dembiński
Date: Sat, 02 Sep 2006 21:43
Date: Sat, 02 Sep 2006 21:43
18 lines
2073 bytes
2073 bytes
Marcin 'Qrczak' Kowalczyk <qrczak@knm.org.pl> writes: > pdemb@gazeta.pl (Piotr Dembiński) writes: > >>> To nie jest aż takie proste jak przeszukiwanie od lewej do prawej. >>> http://www.python.org/download/releases/2.3/mro/ >> >> A nie przeraża cię ten 'serious order disagreement', w którym nie >> można utworzyć Z(A, B)? > > Nie. Obecne reguły są właśnie takie, jak powinny być. Gwoli ścisłości: Python ma teraz dwa algorytmy -- jeden prosty, dla klas starego stylu, i drugi trudny, dylanowy, dla klas nowego stylu. Ja osobiście unikam klas nowego stylu. -- http://www.piotr.dembiński.prv.pl
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Sun, 03 Sep 2006 09:59
Date: Sun, 03 Sep 2006 09:59
202 lines
8446 bytes
8446 bytes
Witam
Aleksander Galicki wrote:
>> Nota bene C powstał na przełomie 1969-73, więc jakoś równolegle do
>> Pascala.
>
> Andrzej Lewandowski juz napisal, ze to C bylo reakcja na Pascal, nie
> odwrotnie.
Czy ja wskazałem, że C był pierswszy? Nie, napisałem, że powstał w podobnym
czasie.
>> I
>> ciekawe czy jest możliwe metaprogramowanie za ich pomocą.
>
> Nie. Makrogeneracja jest bowiem pojeciem ortogonalnym to typow
> parametrycznych.
Znaczy suię mówisz o języku C i składni:
#define macro(...) ...
W C++ szablony mają o wiele większą funkcjonalność, w szczególności są
kontrolowane typy, popatrz się na kod poniżej, który realizuje złożenie
dwóch
funkcji dwu argumentowych, jest on realizowany abstrakcyjnie, czyli zwracany
jest funktor, który możesz wywoływać jak funkcję (to jest transparentne dla
kogoś kto wykorzystuje tą skałdnię):
// f ( g ( x, y ), g ( x, y ) )
/* Adaptator class compose_f_gxy_gxy
*/
template <class OP1, class OP2>
class compose_f_gxy_gxy_t
: public std::binary_function<typename OP2::first_argument_type,
typename OP2::second_argument_type,
typename OP1::result_type>
{
private:
OP1 op1; // calculate: op1(op2(x,y),op2(x,y))
OP2 op2;
public:
// constructor
compose_f_gxy_gxy_t (const OP1& o1, const OP2& o2)
: op1(o1), op2(o2) {
}
// function call
typename OP1::result_type
operator()(const typename OP2::first_argument_type& x,
const typename OP2::second_argument_type& y) const {
return op1(op2(x,y),op2(x,y));
}
};
/* useful function for creating adaptator compose_f_gxy_gxy
*/
template <class OP1, class OP2>
inline compose_f_gxy_gxy_t<OP1,OP2>
compose_f_gxy_gxy (const OP1& o1, const OP2& o2) {
return compose_f_gxy_gxy_t<OP1,OP2>(o1,o2);
}
wynikiem compose_f_gxy_gxy jest funktor, który zachowuje się jak funkcja.
A jak to napiszesz jako define? Zauważ, że nie ma podanych typów dla
argumentów
funkcji g, one są uzyskiwane na drodze szablonowego rozpoznania.
#define compose_f_gxy_gxy(f,g) ....
> Mozesz mi uwierzyc. Zeby pisac o
> tym co jest nie tak z J2EE, trzeba w tym J2EE popracowac. Zawodowo i przez
> pare lat. Dlaczego? Dlatego, ze starasz sie do tezy "cos musi byc z J2EE
nie
> tak" dopasowac swoje z J2EE doswiadczenie, a poniewaz owe doswiadczenie
> ograniczaja sie do przejrzenia blizej niokreslonego "drzewka klas" to i
> argumenty wychodza takie jak "są one bardzo ciężkie i jest trochę kodu
> redundantnego".
Jest to tylko częściowo prawda. Właśnie jak się zabardzo wejdzie w
stereotypy
pisarskie w jakiejś bibliotece/języku/module to wtedy ma się tylko takie
myślenie, chociaż byłoby ono do bani. Bardzo dobrze jest na jakiś projekt
spojrzeć z wielu stron. A nie tylko z jednej, bo to powoduje że człowiek
brnie
w starych błędach.
>> Jest wiele rzeczy, które w C++ są ściągnięte z języków
>> funkcyjnych. Co mi się podoba. W C++ obiektowość jest zapożyczona ze
>> Smalltalka.
>
> Jednego z tych jezykow (C++, Smalltalk) musiales na zywe oczy nie widziec.
Mylisz się, ale już przyzwyczaiłem się, do tego, że ludzie z ekipy Javy
nietrafnie mnie oceniają.
A to przykład kodu z języka, którego nie widziałem na oczy. Ot taka
pojedyncza
metoda zwracająca finalState, który jest wyliczany poprzez sekwencyjne
dodawanie wartości do temporalState, po tym kiedy stwierdzone jest istnienie
elementu item. A wszystko dzieje się w pętli do: []. Poprzedzonej kreacją
obiektu State, aby było co zwracać.
fitValue: inputState
| finalState temporalState |
finalState := State new.
inputState
do:
[:stream | temporalStream := stream copy.
( temporalStream nextAvailable:
item size
) = item
ifTrue: [ finalState add: temporalState ]
].
^ finalState
> To nie zadna pysznosc, to megalomania i ignorancja tych ktorzy twierdza,
ze
> Java cos tam od C++ wziela. Java ma korzenie w Objective-C i Smalltalku.
> Konkretnie te C-like klamerki i typy prymitywne pochodza z Objective-C,
nie z
> C++.
Tak? To super. Wreszcie się ktoś przyznał, że Java pochodzi z któregoś z
języków C. Przepraszam, myślałem, że z C++.
> A ja w poprzednim tygodniu widzialem goscia (na job interview) z 15 lat
> experience, ktory na pytanie "czy wie pan cos o MVC" skrzywil sie i
> powiedzial
> "tak, ale swojego czasu zaimplementowalem lepszy". Ja nie musze ogladac
> zadnego kodu, zeby widziec, kiedy piszesz od rzeczy.
O. Super, cieszę się, że masz tak wielkie wyczucie. Wiesz inni też tak
sądzili
i mylili się. A mylili się, bo nie mogą zrozumieć, czemu piszę w C++ i
Javie,
bo oni jak już weszli w Javę, to ją tak pokochali, że już nie potrafią się
od
niej oderwać.
> To nie jest tak, ze nie ma co w Javie
> krytykowac - wrecz przeciwnie - jest tego w cholere, ale zeby cos z sensem
> krytykowac najczescie trzeba samemu tego bolesnie doswiadczyc.
Więc właśnie z powodu moich doświadczeń krytykuję, bo kiedyś też, myślałem,
że
wszstko da się najlepiej zrobić w Javie, ale okazało się, że nie i to był
początek mojego krytycyzmu. Teraz na ile moge staram się rozszerzać
horyzonty.
>> Zastanów się jaki design jest w Javie. co to jest niby dobry design?
>>
>> Popatrz się na klasy *Holder i *Helper.
>>
>> Czy nie lepiej było to napisac tak:
>> Holder < T >
>> Helper < T >
>
> ?? Ale o jakie klasy chodzi?
Napisałem, wyraźnie *Helper i *Holder.
org.omg.CORBA.AnyHolder
org.omg.CORBA.AnySeqHolder
org.omg.CORBA.BooleanHolder
org.omg.CORBA.BooleanSeqHolder
org.omg.CORBA.ByteHolder
org.omg.CORBA.CharHolder
org.omg.CORBA.CharSeqHolder
org.omg.DynamicAny.AnySeqHelper
org.omg.DynamicAny.AnyHelper // uwaga dokumentacja jest zepsuta
org.omg.CORBA.CharSeqHelper
org.omg.CORBA.BooleanSeqHelper
> Pomoge Ci znalezc jedna okropna
> klase w Javie - java.util.Calendar. Ta klasa - a takze kilka innych
> koszmarkow - wyladowala w Javie za sprawa najwiekszego specjalisty od
> koszmarkow - IBM.
Jasne, SUN za nic nie jest odpowiedzialny.
Np. błędy też są w JSR-73. Tylko, że ludzie z którymi to omawiałem, nie są
zarozumiali, nie twierdzą że ich pomysły sa jedyne słuszne. Okazuje się, że
oni potrafią dyskutować i widzieć błędy, ale Ty nawet tego nie wiesz, że
można
spojrzeć krytycznie na Javę (i kto tujest zaślepionym i zakochanym
megalomanem).
Wrezultacie dyskusjj ze mną jakoś ekipa JSR-73 nie obraziła się - wręcz
odwrotnie - spodobały się im moje krytyczne suygestie.
Chciałbym, abyś nie pisał na temat mojej wiedzy bądź nie wiedzy, ale podawał
konkrety związane nie z moją osobą, ale z językami programowania.
Pozdrawiam.
--
|\/\/| Seweryn Habdank-Wojewódzki
`\/\/
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Sun, 03 Sep 2006 22:54
Date: Sun, 03 Sep 2006 22:54
71 lines
4227 bytes
4227 bytes
Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > > ?? Ale o jakie klasy chodzi? > > Napisałem, wyraźnie *Helper i *Holder. > > org.omg.CORBA.AnyHolder To sa klasy *wygenerowane* przez IDL-to-Java compiler i maja sie raczej do specyfikacji OMG (java to idl mapping) niz do javy jako takiej (pakiet org.omg.* a nie java.*). Myslisz ze jest wiekszy sens krytykowac design Javy na podstawie specyfikacji OMG? Moim skromnym zdaniem to zupelnie nie ma sensu. > > Np. błędy też są w JSR-73. Tylko, że ludzie z którymi to omawiałem, nie są > zarozumiali, nie twierdzą że ich pomysły sa jedyne słuszne. Okazuje się, że > oni potrafią dyskutować i widzieć błędy, ale Ty nawet tego nie wiesz, że > można > spojrzeć krytycznie na Javę (i kto tujest zaślepionym i zakochanym > megalomanem). > Wrezultacie dyskusjj ze mną jakoś ekipa JSR-73 nie obraziła się - wręcz > odwrotnie - spodobały się im moje krytyczne suygestie. .. > O. Super, cieszę się, że masz tak wielkie wyczucie. Wiesz inni też tak > sądzili > i mylili się. A mylili się, bo nie mogą zrozumieć, czemu piszę w C++ i > Javie, > bo oni jak już weszli w Javę, to ją tak pokochali, że już nie potrafią się > od > niej oderwać. > .. > Więc właśnie z powodu moich doświadczeń krytykuję, bo kiedyś też, myślałem, > że > wszstko da się najlepiej zrobić w Javie, ale okazało się, że nie i to był > początek mojego krytycyzmu. Teraz na ile moge staram się rozszerzać > horyzonty. > Zauwaz, ze jestes w tym watku jedyna osoba, ktora kiedykolwiek myslala, ze "wszstko da się najlepiej zrobić w Javie". > Chciałbym, abyś nie pisał na temat mojej wiedzy bądź nie wiedzy, ale podawał > konkrety związane nie z moją osobą, ale z językami programowania. > Mylisz sie jesli myslisz, ze obrywa Ci sie za krytyke Jave. Obrywa Ci sie za paplanie bez sensu. Jakies 90% tego co tu piszesz to banialuki (o wplywie C++ na Jave, o friend, o "redundantnych" klasach w J2EE, o kontenerach co to nie beda sprawdzac zakresu, o Holderach i Helperach). Wiem, ze przyjemniej jest myslec o sobie jako ofiarze nagonki za sluszna krytyke, ale Ty zwyczajnie gadasz zupelnie bez sensu. To jest jak krytykowanie KRK za to ze ksieza zabijaja masowo niemowleta i gwalca dziewice. Moze i jest za co krytykowac KRK, ale na pewno nie za to. Jest wielka roznica pomiedzy paplaniem bez sensu i sensowna krytyka. Paplanie bez sensu, to kiedy bierzesz losowe klasy, ktorych nie uzywales i ktore sa zwiazane z technologia CORBA i zaczynasz na tej podstawie krytykowac technologie Javy. To byloby na tyle. EOT. A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Mon, 04 Sep 2006 11:29
Date: Mon, 04 Sep 2006 11:29
95 lines
4930 bytes
4930 bytes
Witam
Aleksander Galicki wrote:
> Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a):
>
>> > ?? Ale o jakie klasy chodzi?
>>
>> Napisałem, wyraźnie *Helper i *Holder.
>>
>> org.omg.CORBA.AnyHolder
>
> To sa klasy *wygenerowane* przez IDL-to-Java compiler i maja sie raczej do
> specyfikacji OMG (java to idl mapping) niz do javy jako takiej (pakiet
> org.omg.* a nie java.*). Myslisz ze jest wiekszy sens krytykowac design
> Javy na podstawie specyfikacji OMG? Moim skromnym zdaniem to zupelnie nie
> ma sensu.
Tak, tak uważam, bo wszystkie tego typu konstrukcje tak są robione. Zresztą,
nie widzę przyczyny dla czego Java 1.5 zwana czasem 5.0 mając generyki, nie
została przeprojektowana, a stare klasy uznane jako deprecated. I powiedzmy
utrzymywane do wersji 7.0, bo patrzącc po wersji 6.0 nie wiele się zmienia.
> Zauwaz, ze jestes w tym watku jedyna osoba, ktora kiedykolwiek myslala, ze
> "wszstko da się najlepiej zrobić w Javie".
EEE. Jakoś nie wiedzę się po takiej stronie. Jak narazie wszyscy, kótrzy nie
znają Modern C++ (a znają C z makrogeneratorem) nie powiedzieli ani słowa
pozytywnego o C i reszcie, a chwalą Javę jakby była jedynym słusznym
językiem.
> Mylisz sie jesli myslisz, ze obrywa Ci sie za krytyke Jave. Obrywa Ci sie
> za paplanie bez sensu. Jakies 90% tego co tu piszesz to banialuki (o
> wplywie C++ na Jave, o friend, o "redundantnych" klasach w J2EE, o
> kontenerach co to nie beda sprawdzac zakresu, o Holderach i Helperach).
Widzisz Twoja metodyka dyskusji polega na tym, że to o czym nie masz
pojęcia, lub musiałbyś się zemną zgodzić skrzętnie kasujesz z moich postów
lub komentujesz "..". Tak więc nagle okazuje się, że faktycznie reszta to
może jest 90%, a czy to są bzdury to zapewne częściowo masz rację - bo nie
twierdzę, że jestem nie omylny, ale nie toleruję tego typu metodyki
dyskusji.
> Wiem, ze przyjemniej jest myslec o sobie jako ofiarze nagonki za sluszna
> krytyke, ale Ty zwyczajnie gadasz zupelnie bez sensu.
Może bez sensu dla kogoś kto nie potrafi prześledzić mojego toku
rozumowania.
> To jest jak
> krytykowanie KRK za to ze ksieza zabijaja masowo niemowleta i gwalca
> dziewice. Moze i jest za co krytykowac KRK, ale na pewno nie za to.
Rozumiem, że twirdzisz, że nie mam prawa krytykować Javy, za to co uważam za
dotkliwe, bo ty uważasz za dotkliwe inne rzeczy jednak ja nie ma prawa mieć
swojego zdania. To mi przypomina takie powiedzonko: "Co wolno wojewodzie,
to nie tobie kasztelanie".
> Jest wielka roznica pomiedzy paplaniem bez sensu i sensowna krytyka.
Więc a'propo konstruktywnej krytyki, jak myślisz jaka różnica jest pomiędzy
takimi dwoma kontraktami:
public class Foo {
private double x;
public double getX();
public void setX(double x);
}
public class Foo {
private double x;
// i hipotetyczne friend
friend class Bar;
}
> Paplanie bez sensu, to kiedy bierzesz losowe klasy, ktorych nie uzywales i
> ktore sa zwiazane z technologia CORBA i zaczynasz na tej podstawie
> krytykowac technologie Javy.
Biorę właśnie je bo one są przykładem projektu bez sensu i dlaczego mam
używać coś co jest bezsensu. Pomijając fakt, że tak właśnie pisze się w
Javie takie klasy, bo odgórnie idzie kiepski przykład.
Pozdrawiam.
--
|\/\/| Seweryn Habdank-Wojewódzki
`\/\/'
Re: Wyj?tki w konstruktorze
Author: Aleksander Galicki
Date: Mon, 04 Sep 2006 20:55
Date: Mon, 04 Sep 2006 20:55
18 lines
2153 bytes
2153 bytes
Seweryn Habdank-Wojewódzki <habdank@gmail.com> napisał(a): > > Paplanie bez sensu, to kiedy bierzesz losowe klasy, ktorych nie uzywales i > > ktore sa zwiazane z technologia CORBA i zaczynasz na tej podstawie > > krytykowac technologie Javy. > > BiorÄ� wĹ�aĹ�nie je bo one sÄ� przykĹ�adem projektu bez sensu i dlaczego mam > uĹźywaÄ� coĹ� co jest bezsensu. Znaczy ktos Cie zmusza do recznego grzebania w CORBA? A to przykre. I btw: wiesz co to EOT? A. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wyj?tki w konstruktorze
Author: Seweryn Habdank-Wojewódzki
Date: Mon, 04 Sep 2006 21:46
Date: Mon, 04 Sep 2006 21:46
14 lines
1695 bytes
1695 bytes
Witam Aleksander Galicki wrote: > I btw: wiesz co to EOT? A czy Ty wiesz? Pozdrawiam. -- |\/\/| Seweryn Habdank-Wojewódzki `\/\/'
Re: Wyj?tki w konstruktorze
Author: Adam Karpierz
Date: Fri, 08 Sep 2006 09:45
Date: Fri, 08 Sep 2006 09:45
7 lines
1658 bytes
1658 bytes
""Piotr Dembiński"" <pdemb@gazeta.pl> wrote: > Ja osobiście unikam klas nowego stylu. Duuuuzy blad. AK
Page 2 of 3 • 141 total messages
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads