Article View: pl.comp.objects
Article #12295Re: O, to ta grupa jeszcze istnieje?...
From: jarekr
Date: Fri, 21 Oct 2005 16:27
Date: Fri, 21 Oct 2005 16:27
158 lines
6393 bytes
6393 bytes
Sektor van Skijlen napisał(a): >>>Natomiast Java jest istotnie par? ?adnych kroków wstecz za C++, bo: >>> >>>- nie pozwala operowa? funkcjami jako obiektami j?zyka > > >>A co to sa "funkcje"?... > > > Obiekty językowe, które mogą być wywoływane z argumentami. Metody są tylko ich > specjalizacją. > > Nieważne, czy nazwiemy to funkcją, czy metodą. C++ potrafi je przechowywać (i > to na wiele różnych sposobów), C# również. Java nie. ten temat obrabiasz średnio raz na dwa miesiące na jakiejś grupie i absolutnie jesteś odporny na kontratak. to że w javie, żeby wykonywać operacje na funkcjach potrzeba czasem więcej linijek kodu niż w C++ jest słabym argumentem. (w dowolnym assemblerze wskaźnik do funkcji ustawić można w jednej linijce i nawet sie typem nie trzeba przejmować !). >>>- nie pozwala operowa? zmiennymi typów ?cis?ych (jedynie ich warto?ciami) > > >>Ze co?... > > > Przekaż mi pan zmienną do metody. Tak, żeby metoda mogła ją zapisać. > Panu A.L. chodziło, jak mniemam o sens twojego zdania - teraz lekko doprecyzowałeś. (nadal dziwnie, ale już chyba wiem o co Ci chodzi (ale nie wierzę ...bo to kuriozalny argument) ) Lepiej pokaż konkretnie (kod). >>>- nie dostarcza zaawansowanych metod generycznych (te Javowe generyki to jest >>> jeden wielki pic na wod?; zwyk?y lukier sk?adniowy) > > >>Niby dlaczego?.. > > > Sprawdź sobie pan boost::mpl (co ja mówię! Głupie STL!), to się dowiesz. znajdzie zapewne tak piękne fragmenty jak: > #include <boost/mpl/aux_/config/msvc.hpp> > #include <boost/mpl/aux_/config/workaround.hpp> > > #if !defined(BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES) \ > && !defined(BOOST_MPL_PREPROCESSING_MODE) \ > && ( BOOST_WORKAROUND(__BORLANDC__, < 0x600) \ > || BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \ > ) > > # define BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES > > #endif > > #endif albo > template< BOOST_MPL_AUX_NTTP_DECL(long, N) > struct advance_backward; > > # define BOOST_PP_ITERATION_PARAMS_1 \ > (3,(0, BOOST_MPL_LIMIT_UNROLLING, <boost/mpl/aux_/advance_backward.hpp>)) > # include BOOST_PP_ITERATE() >>>- nie pozwala stosowa? mechanizmu RAII > > >>Ze co?.. > > > Widzę, że się nie przygotowałeś pan do dyskusji. > Google twoim przyjacielem. Możliwe, ze sie przygotował bo google bzdury pisze - na temat RAII jest ok. ale na temat tego jak to się trzeba męczyć w javie (używając finally ... ) - to juz piękne bzdury. Tak w Javie nie ma RAII - są inne konstrukcje (mniej wygodne - z użyciem dodatkowej klasy - wrappera, ale ponieważ potrzeba korzystania jest dosyć rzadka - jest to mało uciążliwe) ( w końcu wszelkie biblioteki do obsługi różnych zasobów są dawno popisane ) > >>>- nie pozwala tworzy? w?asnych typów danych ze szczegó?owo opisan? obs?ug? >>> (które np. nie maj? zezwolenia na modyfikacje, na kopiowanie, na pobieranie >>> adresu, na tworzenie w inny ni? odgórnie ustalony sposób, lub te? te > > >>Ach... Ma Pan na mysli Eiffel?.. > > > Nie, mówiłem o C++, a nie o językach niszowych. > > >>Bo C++ tez tego nie dostarcza. > > > Akurat to, o czym napisałem, dostarcza. >>By the way, co to jest "pobieranie adresu"?... > > > Żargonowe określenie pobrania unikalnego identyfikatora obiektu w danym > systemie. > > >>> zezwolenia udzielane s? wybiórczo; w tym wszystkim oczywi?cie te? brak >>> przeci??ania operatorów) Wybiórczo?, zezwolenia w C++? O ile ktoś sie do d... nie dobierze rzutując na jakiś void*. A w javie jakoś te aplety, servlety, ejb i inne inszety działają i "wyoranie się z java security" nie jest takim trywialnym zagadnieniem. >>Doskonale ze nie ma operator overlaoding. > > > Taaa... równie doskonale że nie ma również enum i typedef. Fatalnie: http://java.sun.com/j2se/1.5.0/docs/guide/language/enums.html Powiedz, że standardowy enum w C++ jest lepszy :-) > Kiedyś ludzie mówili, że doskonale, że Java nie ma niczego takiego, jak wzorce > w C++. Po czym dodano generyki. Jasne... pewnie dlatego "Generic java" - projekt, który po prostu niedawno wszedł do standardowej dystrybucji (po pewnych modyfikacjach) był utworzony gdzieś około roku 1998. Z drugiej strony, mimo że osobiście bardzo lubię generyki, to. zastanawiam się czy w dużych projektach ograniczenie sie do używania tylko generycznych kolekcji nie byłoby dobrym rozwiązaniem. >>>- nie daje mo?liwo?ci odró?niania obiektów stanu od warto?ci (C# te? >>> niestety, bo jest robiony na to samo kopytko) > > >>Co to jest "obiekt stanu"?... > > > A co, nie wiedziałeś pan, że obiekty mają stan? też nie wiem o co Ci chodzi - pomysłów różnych mam ze 6 - ale żaden mi do końca nie pasuje. -- http://www.99-bottles-of-beer.net/language-java-866.html
Technical Details
Message-ID:
<djb4u5$2k9$1@news.dialog.net.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mailReferences:
<nfhjk1hl02upbbv345glfvo4kc2fun0nfm@4ax.com> <dieqmb$7df$1@kujawiak.man.lodz.pl> <tn0mk1l1mm0mgp0hdho4i6eso1l8h8kd1b@4ax.com> <dihb0j$pq6$1@kujawiak.man.lodz.pl> <rqutk1d9rjme4n7he8n4no5oqndc9kqgtj@4ax.com> <dj0v87$cv5$1@nemesis.news.tpi.pl> <03d8l1pfp4nnodpg9a6cseej1rk5obc6pp@4ax.com> <dj38jh$ot4$1@nemesis.news.tpi.pl> <65bal15agggp87dn5i76d97ahr0gbtpi5u@4ax.com> <dj3frf$q3u$1@atlantis.news.tpi.pl> <dj3tvl$e7f$1@kujawiak.man.lodz.pl> <jgdfl1dvsjnrqh8lh25f9koj7b2tb47619@4ax.com> <djb0o0$mhp$1@kujawiak.man.lodz.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail From: jarekr <jhratajski@popraw.literowki.pzcota.otne.pl> Newsgroups: pl.comp.objects Subject: Re: O, to ta grupa jeszcze istnieje?... Date: Fri, 21 Oct 2005 18:27:59 +0200 Organization: Dialog Net Lines: 158 Message-ID: <djb4u5$2k9$1@news.dialog.net.pl> References: <nfhjk1hl02upbbv345glfvo4kc2fun0nfm@4ax.com> <dieqmb$7df$1@kujawiak.man.lodz.pl> <tn0mk1l1mm0mgp0hdho4i6eso1l8h8kd1b@4ax.com> <dihb0j$pq6$1@kujawiak.man.lodz.pl> <rqutk1d9rjme4n7he8n4no5oqndc9kqgtj@4ax.com> <dj0v87$cv5$1@nemesis.news.tpi.pl> <03d8l1pfp4nnodpg9a6cseej1rk5obc6pp@4ax.com> <dj38jh$ot4$1@nemesis.news.tpi.pl> <65bal15agggp87dn5i76d97ahr0gbtpi5u@4ax.com> <dj3frf$q3u$1@atlantis.news.tpi.pl> <dj3tvl$e7f$1@kujawiak.man.lodz.pl> <jgdfl1dvsjnrqh8lh25f9koj7b2tb47619@4ax.com> <djb0o0$mhp$1@kujawiak.man.lodz.pl> NNTP-Posting-Host: xdsl-7312.wroclaw.dialog.net.pl Mime-Version: 1.0 X-Trace: news.dialog.net.pl 1129912069 2697 84.40.137.144 (21 Oct 2005 16:27:49 GMT) X-Complaints-To: abuse@dialog.net.pl NNTP-Posting-Date: Fri, 21 Oct 2005 16:27:49 +0000 (UTC) User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: pl, en-us, en In-Reply-To: <djb0o0$mhp$1@kujawiak.man.lodz.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit