-
Data: 2012-07-05 15:49:23
Temat: Re: Co może robić konstruktor i dlaczego nie?
Od: "slawek" <h...@s...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Użytkownik "Maciej Sobczak" napisał w wiadomości grup
dyskusyjnych:15ad6c49-e409-40a2-a76f-c15cd00ab57b@go
oglegroups.com...
>Jeśli konstruktor i run() zawsze idą w parze i nie są rozdzielone innymi
>operacjami (spekulacja: można mieć listę takich obiektów? można je zapisać
>i odczytać? itd.), to można. Ale dlaczego się >na tym zatrzymywać? Jeżeli
>zaraz po run() obiekt i tak jest niszczony, to całość można zebrać w jedną
>funkcję runFoo().
Nie, nie można zebrać w jedną funkcję, bo obiektów tej klasy może być wiele
a każdy ze swoimi własnymi polami private, protected i public.
>Paweł podał argument, że być może ta funkcja jest skomplikowana i korzysta
>z usług innych klas, które odwołują się do pól Foo - ale to niewiele
>zmienia, bo skoro tym innym klasom trzeba >podać referencje do tych
>wykorzystywanych pól, to równie dobrze można im podać referencje do
>odpowiednich zmiennych lokalnych stworzonych w run().
Moim zdaniem bardzo kiepski pomysł - taki na poziomie C bez plusów.
>Podejrzewam tu po prostu nadmiar nieuzasadnionej "obiektowości".
Wszystko można zrobić w Fortranie. A być może Cobolu.
>> 2. Czy metodę run() można wywoływać w konstruktorze
>Można.
I to - patrząc na dyskusję na innym, anglojęzycznym, forum - jest nieco
wątpliwe. De facto konstruktor dla obiektów danej klasy może wywoływać się
niejako "przypadkowo" - np. gdy utworzy się zmienna tymczasowa. Ponadto -
AFAIR - dopiero po opuszczeniu konstruktora obiekt jest skonstruowany. Więc
run() wywołana wewnątrz po prostu działałaby na nieskonstruowanym
obiekcie... Ale z drugiej strony to nigdzie nie ma formalnie opisanego
"czego nie wolno w konstruktorze". IMHO w konstruktorze obiekt już w 100%
istnieje... pozostaje tylko dodać to co chcemy (i co być może MY uznajemy za
dodanie wisienki by obiekt był kompletny). Więc jeżeli uporamy się z
wisienką, to możemy konstruktor dowolnie mocno eksploatować.
>W takim razie nie ma potrzeby ich rozdzielać.
To po co rozdzielają to niemal w każdej z bibliotek GUI? Przez głupotę, czy
przez niewiedzę?
Następne wpisy z tego wątku
- 05.07.12 16:24 slawek
- 05.07.12 16:18 slawek
- 05.07.12 16:52 AK
- 05.07.12 18:59 Michoo
- 05.07.12 19:06 Michoo
- 05.07.12 21:01 slawek
- 05.07.12 22:34 Edek Pienkowski
- 05.07.12 23:30 slawek
- 05.07.12 23:45 Edek Pienkowski
- 05.07.12 09:37 Edek Pienkowski
- 06.07.12 08:17 slawek
- 06.07.12 09:09 Edek Pienkowski
- 06.07.12 10:59 AK
- 06.07.12 11:01 Paweł Kierski
- 06.07.12 11:10 Andrzej Jarzabek
Najnowsze wątki z tej grupy
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
Najnowsze wątki
- 2025-12-15 I lewacka ideologia poszła się JEBAĆ
- 2025-12-15 Zgłoszenie uprowadzenia dziecka w Koszalinie. Policja zatrzymała podejrzanych, 10-miesięczny chłopiec odnaleziony
- 2025-12-15 Warszawa => Fullstack PHP Developer <=
- 2025-12-15 Prezydent i Marszałek Sejmu
- 2025-12-15 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-12-15 Warszawa => Sales Assistant <=
- 2025-12-15 Białystok => Programista Dynamics 365 Commerce/POS <=
- 2025-12-15 Białystok => Dynamics 365 Commerce/POS Developer <=
- 2025-12-15 Białystok => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2025-12-15 Chanuka
- 2025-12-15 Czy w RP3 prezydent może odmówić mianowania jednego ministra z gabinetu? [Czechy]
- 2025-12-15 Czas to pieniądz...
- 2025-12-15 Wrocław => Programista React ze znajomością C++ <=
- 2025-12-14 Dla UTRWALENIA: jak działają "EKO" ZBRODNIARZE
- 2025-12-13 Emisyjność BEV




Chińskie auta: Od niskiej jakości do globalnego lidera. Co pokazuje raport EFL?