-
Data: 2012-06-27 13:19:09
Temat: Re: Nie mieszczę się w tym garniturku część 2: Java i parametry in/out
Od: Edek Pienkowski <e...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia Wed, 27 Jun 2012 04:02:28 -0700, Andrzej Jarzabek napisal:
> On Jun 27, 10:21 am, Edek Pienkowski <e...@g...com>
> wrote:
>> Dnia Wed, 27 Jun 2012 02:11:06 -0700, Andrzej Jarzabek napisal:
> [...]
>> > Miałbyś to robić bez psucia.
>>
>> Nie da się uprościć poniżej minimum bez psucia. Gdyby się dało,
> [...]
>> > duża", to jesteś daleko od tego minimum.
>>
>> Pożycz szklaną kulę...
>
> Miszczu - piszesz, że masz metodę, która jest "za duża" i że chcesz ją
> podzielić, a nawet używasz sformułowania "cokolwiek bym nie chciał
> wydzielić" - to sugeruje, że byś jednak coś z niej chciał wydzielić i
> nawet masz jakieś pomysły, co to by mogło być. Ja się nie odnoszę do
> tego, czy akurat masz w tym momencie rację, że jest za duża i czy masz
> rację, że chcesz podzielić - opieram się tylko na tym, co sam piszesz.
> Ja mogę tylko powiedzieć, że jeśli metoda ma faktycznie trzydzieści
> zmiennych lokalnych to jest bardzo wysoce prawdopodobne, że faktycznie
> jest za duża i że można ją podzielić. I w takiej sytuacji "replace
> method with method object" jest dobrym wstępem do dalszych
> refaktoryzacji.
Tematem było C++sowe func(Some& inOutParam, Some2& outParam), których
nie ma w Javie.
Obawiałem się, że na dużą metodę niektórzy zareagują jak psy Pawłowa.
Ten kod ogólnie nie wymaga grubszej refaktoryzacji, a dodatkowo w zasadzie
jedynymi sensownymi opcjami w przypadku tej metody jest klasa z kodem lub
klasa na dane, czy w zasadzie struktura. Ani jedno ani drugie nie poprawia
czytelności.
>
>> > W ogóle w tym temacie powinieneś zapoznać się z książką Martina
>> > Fowlera "Refactoring: Improving the Design of Existing Code".
>>
>> Może z 5-10 lat temu to i owszem, pomijając ryzyko stania się
>> "opinionated". Nie muszę szlifować technikaliów.
>
> Sorki, ale jeśli uważasz, że nie da się zejść ze złożonością poniżej 30
> zmiennych lokalnych w metodzie, to myślę, że powinieneś jednak się
> zapoznać.
A ja uważam, że jesteś właśnie "opinionated". Coś przeczytałeś, coś
powtarzasz, a niewiele z tego rozumiesz, co niestety widać.
Edek
Następne wpisy z tego wątku
- 27.06.12 13:49 AK
- 27.06.12 13:57 Edek Pienkowski
- 27.06.12 14:04 AK
- 27.06.12 14:17 Edek Pienkowski
- 27.06.12 14:19 AK
- 27.06.12 14:32 Edek Pienkowski
- 27.06.12 14:32 Roman W
- 27.06.12 14:30 Roman W
- 27.06.12 13:58 Maciej Sobczak
- 27.06.12 15:59 Michoo
- 27.06.12 16:22 Michoo
- 27.06.12 16:29 Edek Pienkowski
- 27.06.12 16:31 Michoo
- 27.06.12 16:37 A.L.
- 27.06.12 18:16 Michoo
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-04 GNSS Motorola G85 vs Redmi Note 9 pro
- 2024-11-04 Katowice => SAP BTP Consultant (mid/senior) <=
- 2024-11-04 Katowice => Spedytor międzynarodowy <=
- 2024-11-04 Warszawa => Specjalista/tka ds. Zamówień publicznych <=
- 2024-11-04 Poznań => QA Engineer <=
- 2024-11-04 Poznań => QA Inżynier <=
- 2024-11-04 Polskie sądy są bardzo wyrozumiałe...
- 2024-11-04 Wrocław => SAP Project System/EPPM Consultant <=
- 2024-11-04 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2024-11-04 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-04 Kraków => Software .Net Developer <=
- 2024-11-04 Kraków => Programista Full Stack .Net <=
- 2024-11-04 Warszawa => Key Account Manager <=
- 2024-11-04 Warszawa => Spedytor Międzynarodowy <=
- 2024-11-04 Warszawa => E-COMMERCE specialist <=