- 
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
 From: Edek Pienkowski <e...@g...com>
 Newsgroups: pl.comp.programming
 Subject: Re: Nie mieszczę się w tym garniturku część 2: Java i parametry in/out
 Date: Wed, 27 Jun 2012 19:51:31 +0000 (UTC)
 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
 Lines: 110
 Message-ID: <jsfo83$iu5$12@inews.gazeta.pl>
 References: <jsab6l$98b$5@inews.gazeta.pl> <4...@s...net>
 <jsaetr$98b$7@inews.gazeta.pl>
 <5...@h...googlegroups.com>
 <jsejah$98b$22@inews.gazeta.pl>
 <9...@4...com>
 <jsfhl1$iu5$10@inews.gazeta.pl> <s...@j...net>
 <jsfk1u$iu5$11@inews.gazeta.pl> <s...@j...net>
 NNTP-Posting-Host: static-81-219-27-130.devs.futuro.pl
 Mime-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
 X-Trace: inews.gazeta.pl 1340826691 19397 81.219.27.130 (27 Jun 2012 19:51:31 GMT)
 X-Complaints-To: u...@a...pl
 NNTP-Posting-Date: Wed, 27 Jun 2012 19:51:31 +0000 (UTC)
 X-User: pieniekusenet
 User-Agent: Pan/0.135 (Tomorrow I'll Wake Up and Scald Myself with Tea; GIT 30dc37b
 master)
 Xref: news-archive.icm.edu.pl pl.comp.programming:198178
 [ ukryj nagłówki ]Dnia Wed, 27 Jun 2012 18:52:09 +0000, Stachu 'Dozzie' K. napisal: 
 
 > On 2012-06-27, Edek Pienkowski <e...@g...com> wrote:
 >>>> No to już dzisiaj mam za sobą przejrzenie jej ponownie przy świeżym
 >>>> umyśle i po prostu jej logika jest skomplikowana. Ja wiem, że obsługa
 >>>> eventu "Zosiu, wprowadź do systemu chęć Pani do zakupu pietruszki" 30
 >>>> zmiennych nie wymaga, ale czasami pisze się rzeczy bardziej złożone.
 >>>
 >>> Te rzeczy bardziej złożone rozkłada się na drobniejsze, prostsze
 >>> przypadki. Przynajmniej tak słyszałem, bo IANAP (w każdym razie
 >>> oficjalnie).
 >>
 >> No tak, dlaczego ja na to nie wpadłem, dzięki.
 >
 > Spójrz na to z naszej perspektywy. Przychodzisz na grupę i mówisz, że
 > masz metody z 30+ parametrami długie na kilkaset linii. Twierdzisz, że
 > nie da się tego uprościć, ale w żaden sposób nie uzasadniasz tej tezy.
 > Reszta grupy z doświadczenia wie, że właściwie wszystkiemu się daje
 > uprościć interfejs, więc bez dowodu, przy samym żonglowaniu ogólnikami,
 > nikt ci nie uwierzy.
 
 Czyli wszyscy wiedzą, że da się pisać krótkie metody. Very well, my
 friend, ja też to wiem. Nie mogę przedstawić kodu, sorry, praca, nie
 za takie rzeczy potrafią człowieka zjeść. No więc abstrakcyjnie:
 
 ----------------------------------------------------
 -------------
 Mam zakres 0..x, naturalne liczby, x jest gdzieś pomiędzy kilkaset
 tysięcy i sky is the limit, ale powiedzmy kilkadziesiąt milionów.
 
 Dzielę ten zakres na mniejsze, tak, aby w drzewie każdy rodzic
 zawierał gałązki i gałązki się nie pokrywają. Każda gałąź
 to zakres [a,b). Gałąź bez rozgałęzień możemy nazwać liściem,
 mi to nie przeszkadza, ale ogólnie wszystkie gałęzie mają
 istotne parametry, nie tylko liście.
 
 Drzewo ma dowolny kształt.
 
 Mam na tym zakresie 0..x znaczniki o określonej pozycji, lub określonych
 pozycjach, jest ich z 10 typów. Niektóre wprost decydują, gdzie
 zakresy mogą się zaczynać i kończyć, bardzo liczebne, są w
 miejscach gdzie mogą być granice. Mógłbym zredukować zakres 0..x
 do samych znaczników eliminując przestrzeń pomiędzy, ale chwilowo
 nie widzę powodu, wystarczy je posortować i opcjonalnie
 powiązać inne znczniki do zakresów pomiędzy tymi, które wyznaczają
 możliwy podział.
 
 Część znaczników, jak się tworzy drzewo, ma kilka powiązanych pozycji i
 przez to należy do więcej niż jednej gałęzi, szczegóły pominę.
 
 Niektóre typy znaczników dodają ograniczenia, ich 4 pozycje muszą się
 zmieścić w jednej gałęzi. Jest ich b. mało, ale komplikują
 metodę, bo to twarde ograniczenie.
 
 Inne typy mogą należeć do więcej niż jednej gałęzi (w sensie
 node), ale to jest koszt. W pierwszym przybliżeniu koszt to
 a * b, gdzie a i b to koszt dzielonych znaczników dwóch typów,
 przy czym w dość nieokreślony sposób koszt jest tym większy,
 im dalej w dół drzewa. Tych znaczników jest b.duzo,
 w zakresie 0..99 byłoby ich po kilkanaście tak średnio,
 dośc nieprzewidywalnie rozrzuconych, ale ogólnie z tendencją
 do lokalności w większości przypadków.
 
 Każda gałąź ma z grubsza dodatkowy stały koszt i maksymalny rozmiar,
 więc nie mogą być za duże, ale lepiej żeby nie były za małe
 ze względu na stały koszt. Gałęzi ma być docelowo sądząc
 po rozmiarze od dwóch sztuk do kilku tysięcy, co oczywiście
 zależy od x.
 
 Oczywiście mam wszystkie dane, takie jak
 ile znaczników jest dzielonych pomiędzy node'ami, ile
 pomiędzy node'em i rekursywnie dziećmi itd., to wszystko
 jest w metodach z jakimś podziałem na klasy, nieistotnym
 w tym momencie, ale każda taka operacja ma swoją złożoność.
 Mam też w każdym punkcie stos niektórych znaczników,
 można go używać jako podpowiedź, ile co może kosztować,
 ale można go pominąć. Te znaczniki w stosie mają zakres.
 Ogólnie jest sporo chodzenia w górę i w dół pomiędzy
 gałęziami, ale to jest detal implementacji.
 
 Chcę znaleźć nie tyle minimum, co rozsądnie mało kosztujący
 podział drzewa, przy czym czas analizy też kosztuje tak jak
 i rezultat, którym jest dość duży generowany na tej podstawie kod;
 oczywiście samo generowanie kodu jest nietrywialne, ale
 już sobie jest. A, dzielenie drzewa na gałązki ma ogólnie
 dwa rodzaje, dwa rodzaje znaczników określają możliwy
 dla ich typu rodzaj podziału na dwa rodzaje generowanego
 kodu.
 
 -------------------------------------------------
 
 Jeżeli to podchodzi pod jakiś znany problem ze znanym
 na wikipedii lub gdzieś ogólnym rozwiązaniem, to chętnie
 przeczytam. Oczywiście, musi mieć poniżej 30 zmiennych na
 metodę, ja na razie mam jedną tak rozbudowaną.
 
 Troszkę się chyba rozpędziłem, ale to powinno działać.
 Mam też wrażenie, że z jednej strony to już jest dość
 nietrywialne, a z drugiej może o czymś zapomniałem,
 co mogłoby uprościć sprawę, ale w tej chwili nie wiem
 co to może być. Może w ogóle warto całość zrobić inaczej
 zupełnie, czekam na przebłysk geniuszu, i chyba mogę sobie
 czekać.
 
 Edek
 PS. Dopóki tego nie spisałem wyglądało jeszcze normalnie
 i do ogarnięcia, ale opis wygląda nieciekawie.
 PS2. To teraz może się nie będę na grupie pokazywał
 przez tydzień, będę zajęty rzecz jasna ;)
 PS3. Nie zamierzam rozwiązywać tego problemu,
 coś co jest "wystarczająco dobre" mi wystarczy.
 
Następne wpisy z tego wątku
- 29.06.12 05:15 M.M.
- 29.06.12 08:07 Edek Pienkowski
Najnowsze wątki z tej grupy
- 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
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-10-31 Warszawa => Starszy Konsultant SAP - obszar PP <=
- 2025-10-31 Zamek elektroniczny
- 2025-10-31 Warszawa => Sales Assistant <=
- 2025-10-31 Warszawa => Senior SAP Consultant - PP area <=
- 2025-10-31 Warszawa => Junior Rekruter <=
- 2025-10-31 Warszawa => Engineering Manager (doświadczenie w branży lotniczej lu
- 2025-10-30 Był neosędzia w składzie jest cofka w apelacji [dożywocie za potrójne zabójstwo]
- 2025-10-30 Warszawa => Lead SAP PP Consultant <=
- 2025-10-30 Poznań => Konsultant SAP HCM <=
- 2025-10-30 Warszawa => Junior Rekruter <=
- 2025-10-30 Warszawa => Senior SAP Consultant - PP area <=
- 2025-10-30 Zakrzewo => SAP HCM Consultant <=
- 2025-10-30 Gang przestępców napadających przestępców już rozbity! [CBŚP,media,prawny humor]
- 2025-10-30 Kraków => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu
- 2025-10-30 Kraków => Production Coordinator / Representant Product Dev <=




![Jak reklamować ośrodek wypoczynkowy lub hotel? [© kadmy - fotolia.com] Jak reklamować ośrodek wypoczynkowy lub hotel?](https://s3.egospodarka.pl/grafika2/reklama-internetowa/Jak-reklamowac-osrodek-wypoczynkowy-lub-hotel-221435-150x100crop.jpg) 
![Ranking lokat i kont oszczędnościowych. Przegląd możliwości dostępnych we wrześniu 2025 [© freepik] Ranking lokat i kont oszczędnościowych. Przegląd możliwości dostępnych we wrześniu 2025](https://s3.egospodarka.pl/grafika2/najlepsze-lokaty/Ranking-lokat-i-kont-oszczednosciowych-Przeglad-mozliwosci-dostepnych-we-wrzesniu-2025-268649-150x100crop.jpg) 
![Ranking kantorów internetowych. Gdzie najlepsze kursy walut? [© Pavel Bobrovskiy - Fotolia.com] Ranking kantorów internetowych. Gdzie najlepsze kursy walut?](https://s3.egospodarka.pl/grafika2/kantory-internetowe/Ranking-kantorow-internetowych-Gdzie-najlepsze-kursy-walut-218154-150x100crop.jpg) 
![Podatek od wynajmu mieszkania 2023 - jakie stawki i formy opodatkowania? [© Africa Studio - Fotolia.com] Podatek od wynajmu mieszkania 2023 - jakie stawki i formy opodatkowania?](https://s3.egospodarka.pl/grafika2/wynajem-mieszkania/Podatek-od-wynajmu-mieszkania-2023-jakie-stawki-i-formy-opodatkowania-249032-150x100crop.jpg) 
 Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei
Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei 
 
 
 
![Milion na koncie? Wystarczyło inwestować po około 2 tysiące miesięcznie [© wygenerowane przez AI] Milion na koncie? Wystarczyło inwestować po około 2 tysiące miesięcznie](https://s3.egospodarka.pl/grafika2/oszczedzanie-pieniedzy/Milion-na-koncie-Wystarczylo-inwestowac-po-okolo-2-tysiace-miesiecznie-269397-150x100crop.jpg) 
![Wynajem mieszkania w Warszawie pochłania 44% pensji. Zobacz, jak wypadamy na tle Europy [© pixabay] Wynajem mieszkania w Warszawie pochłania 44% pensji. Zobacz, jak wypadamy na tle Europy](https://s3.egospodarka.pl/grafika2/rynek-najmu/Wynajem-mieszkania-w-Warszawie-pochlania-44-pensji-Zobacz-jak-wypadamy-na-tle-Europy-269391-150x100crop.jpg) 
![Lot z niespodzianką - jak overbooking zmienia podróż i jakie prawa mają pasażerowie? [© wygenerowane przez AI] Lot z niespodzianką - jak overbooking zmienia podróż i jakie prawa mają pasażerowie?](https://s3.egospodarka.pl/grafika2/prawa-pasazera/Lot-z-niespodzianka-jak-overbooking-zmienia-podroz-i-jakie-prawa-maja-pasazerowie-269384-150x100crop.jpg) 
![Lider z sercem: empatia i zaufanie jako klucz do sukcesu zespołu [© wygenerowane przez AI] Lider z sercem: empatia i zaufanie jako klucz do sukcesu zespołu](https://s3.egospodarka.pl/grafika2/lider/Lider-z-sercem-empatia-i-zaufanie-jako-klucz-do-sukcesu-zespolu-269133-150x100crop.png) 
![Bańka AI za 5 bilionów dolarów: Kiedy inwestorzy powiedzą: sprawdzam? [© wygenerowane przez AI] Bańka AI za 5 bilionów dolarów: Kiedy inwestorzy powiedzą: sprawdzam?](https://s3.egospodarka.pl/grafika2/AI/Banka-AI-za-5-bilionow-dolarow-Kiedy-inwestorzy-powiedza-sprawdzam-269382-150x100crop.png) 
 


