Nem vagyok benne biztos. Ezert lehet a validacio egy kulon metodusban, amit a setter meghivhat. <div><br></div><div>Nem vagyok biztos benne, hogy leellenoriztes ezert a setterrel leellenoriztetem, mert az osztaly felelossege, hogy jol műkodjon (egysegbezaras?).<span></span><br>
<br>On Sunday, May 27, 2012, Tamás Viktor  wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Van az a logika, ami leellenőrzi az öttel osztást és csinál valamit,<br>

ha fennáll a feltétel.<br>
-Biztos vagy benne, hogy ez a logika csak ott, azon az egy helyen lesz<br>
hasznos, abban az egy setterben? Nem lesz újra felhasználva sehol?<br>
-Biztos vagy benne, hogy amikor meg akarják hívni a setter-t, nem<br>
ellenőrizték már ezt le? Pl. amikor adatbázisból olvasnak vissza<br>
előzőleg lementett adatokat.<br>
-Biztos hogy oda kell az?<br>
Azt a tendenciát látom, hogy egyre inkább kikerülnek a logikák a<br>
setter-ekből. Ha mégis ott vannak, az bűzlik.<br>
V<br>
<br>
2012/5/26 Peter Verhas &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;peter@verhas.com&#39;)">peter@verhas.com</a>&gt;:<br>
&gt; Akkor minek lenne a setter? Éppen az a lényege, hogy leellenőrzi, hogy csak<br>
&gt; olyan érték kerülhessen be egy field-be, ami nem rontja el az objektum<br>
&gt; állapotát, az továbbra is megfelel az üzleti logikának.<br>
&gt;<br>
&gt; Szerintem nem érdemes ilyen sommás és lekezelő válaszokat írni, még némi<br>
&gt; gondolkodás után sem.<br>
&gt;<br>
&gt;<br>
&gt; On Saturday, May 26, 2012, Kristof Jozsa wrote:<br>
&gt;&gt;<br>
&gt;&gt; príma, az viszont helyesen egy business method, nem egy setter, ezzel<br>
&gt;&gt; pedig a rövid történet végére is értünk.<br>
&gt;&gt;<br>
&gt;&gt; K<br>
&gt;&gt;<br>
&gt;&gt; 2012/5/26 Peter Verhas &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;peter@verhas.com&#39;)">peter@verhas.com</a>&gt;:<br>
&gt;&gt; &gt; Ne ragadjatok le a null-nál. Az csak egy pelda volt. Akkor inkabb a<br>
&gt;&gt; &gt; példámban az ellenőrzés legyen arra, hogy ha a számla típusa készpénzes,<br>
&gt;&gt; &gt; akkor a fizetendő összeg legyen öttel osztható.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Saturday, May 26, 2012, Zsombor wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Gondolom arra utal, hogy az általa tisztességesnek tekintett nyelvekben<br>
&gt;&gt; &gt;&gt; van külön típus az olyan változóra, ami sosem nulla, és ami lehet<br>
&gt;&gt; &gt;&gt; nulla.<br>
&gt;&gt; &gt;&gt; Persze itt nem kellene megállni, és lehet hiányolni a 23 karakter<br>
&gt;&gt; &gt;&gt; hosszú<br>
&gt;&gt; &gt;&gt; sztringek tipusát, és a páros számok tipusát, vagy egy bizonyos<br>
&gt;&gt; &gt;&gt; regexp-re<br>
&gt;&gt; &gt;&gt; matchelő stringek tipusát :)<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Zs<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; 2012/5/26 Gábor Garami &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;gabor.garami@hron.me&#39;)">gabor.garami@hron.me</a>&gt;<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Elvben barmilyen, non-primitive tipusu valtozo lehet null, igy nem<br>
&gt;&gt; &gt;&gt;&gt; ertem<br>
&gt;&gt; &gt;&gt;&gt; mit ertesz tipusos kerdes alatt.<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Garami Gábor<br>
&gt;&gt; &gt;&gt;&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;gabor.garami@hron.me&#39;)">gabor.garami@hron.me</a><br>
&gt;&gt; &gt;&gt;&gt; Skype: hron84<br>
&gt;&gt; &gt;&gt;&gt; Tel: +36 20 235 9621<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Sent from my T-Mobile G2<br>
&gt;&gt; &gt;&gt;&gt; Ezt a levelet telefonról adták fel, ékezethibákat tartalmazhat.<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; 2012.05.25. 23:21, &quot;Kristof Jozsa&quot; &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;kristof.jozsa@gmail.com&#39;)">kristof.jozsa@gmail.com</a>&gt; ezt írta:<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; ezt nem vettem meg :) az egyetlen helyes válasz erre az h mert a<br>
&gt;&gt; &gt;&gt;&gt;&gt; JavaBean szabvány ezt mondja, felesleges szerintem további észérveket<br>
&gt;&gt; &gt;&gt;&gt;&gt; keresni mögé. amúgy egy tisztességes nyelvben az hogy valami null<br>
&gt;&gt; &gt;&gt;&gt;&gt; lehet-e az típusos kérdés és semmi köze a field beállításához.<br>
&gt;&gt; &gt;&gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; K<br>
&gt;&gt; &gt;&gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; 2012/5/24 Peter Verhas &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;peter@verhas.com&#39;)">peter@verhas.com</a>&gt;:<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; 2012/5/24 Kristof Jozsa &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;kristof.jozsa@gmail.com&#39;)">kristof.jozsa@gmail.com</a>&gt;:<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;&gt; pontosan mitől lesz tisztább vagy olvashatóbb a kód ha minden<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;&gt; fieldhez<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;&gt; van egy getter és egy setter?<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; Mert ha azt használod, hogy<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; invoice.setItems(invoiceItems);<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; akkor sokkal kevesebb munkád lesz, amikor az Invoice osztályban<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; például ellenőrizni akarod, hogy ne legyen null, vagy nulla elemű<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; az<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; invoiceItems, vagy azt, hogy minden tételre ki van-e töltve az ÁFA<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; értéke. Ha<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; invoice.items = invoiceItems;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; szerepel a kódban, akkor ezt  jelenleg Java-ban refaktorálnod kell,<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; amikor az items mezőt priváttá teszed és elkészíted a settert és a<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; gettert.<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; Ha JavaX-ben (X &gt; 7) az &#39;invoice.items = invoiceItems;&#39; kód darab<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; egy<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; setter hívássá fordul le, az viszont felveti azt a kérdést, hogy a<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; programozási nyelvben tényleg minden az-e, aminek látszik. A válasz<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; pedig nem, mert ez értékadásnak látszik, miközben metódus hívás.<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; Most<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; még, Java-ban persze nem, és én nem is szeretném, hogy az legyen.<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; Perl-ben olyan jópofa, hogy vannak ilyen automagic megoldások, de a<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; Java nem Perl.<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; 2005 októberben a Perl konferencián tartottam egy előadást, az volt<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; a<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; címe, hogy &quot;Tiltsák be a Perl-t&quot;, és csak Java-ban szabad<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; programozni.<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; Sajnos nincs már meg a videó felvétel Ott volt Larry Wahl is. És<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; mindenki végig azt hitte, hogy viccelek.<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; Javalist mailing list<br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt;&gt; &gt;&gt;&gt;&gt; &gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
&gt;&gt; &gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt; &gt;&gt;&gt;&gt; Javalist mailing list<br>
&gt;&gt; &gt;&gt;&gt;&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt;&gt; &gt;&gt;&gt;&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; _______________________________________________<br>
&gt;&gt; &gt;&gt;&gt; Javalist mailing list<br>
&gt;&gt; &gt;&gt;&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt;&gt; &gt;&gt;&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; --<br>
&gt;&gt; &gt; Verhás Péter<br>
&gt;&gt; &gt; ügyvezető<br>
&gt;&gt; &gt; Verhás &amp; Verhás Szoftver Manufaktúra Kft.<br>
&gt;&gt; &gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;peter@verhas.com&#39;)">peter@verhas.com</a><br>
&gt;&gt; &gt; t: +36(30)9306805<br>
&gt;&gt; &gt; skype: verhas<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; Javalist mailing list<br>
&gt;&gt; &gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt;&gt; &gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Javalist mailing list<br>
&gt;&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt;&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Verhás Péter<br>
&gt; ügyvezető<br>
&gt; Verhás &amp; Verhás Szoftver Manufaktúra Kft.<br>
&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;peter@verhas.com&#39;)">peter@verhas.com</a><br>
&gt; t: +36(30)9306805<br>
&gt; skype: verhas<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Javalist mailing list<br>
&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
&gt;<br>
_______________________________________________<br>
Javalist mailing list<br>
<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
<a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
</blockquote></div><br><br>-- <br>Verhás Péter<br>ügyvezető<br>Verhás &amp; Verhás Szoftver Manufaktúra Kft.<br><a href="mailto:peter@verhas.com">peter@verhas.com</a><br>t: +36(30)9306805<br>skype: verhas<br>