Article View: pl.comp.lang.delphi
Article #345873Re: Zeos Delphi XE2
From: wloochacz
Date: Wed, 12 Jul 2017 11:13
Date: Wed, 12 Jul 2017 11:13
134 lines
6692 bytes
6692 bytes
W dniu 2017-07-11 o 23:43, Roman Tyczka pisze: > On Tue, 11 Jul 2017 17:28:54 +0200, wloochacz wrote: > >>>> Co ty masz jakiś gorszy dzień? >>> >>> Twój kod tak działa na spokojnego człowieka. >> To subiektywna opinia; ja tam do spokojnych się nie zaliczam, a na mnie >> tak nie działa ;-) > > Może lubisz taki bajzel w kodzie, ja wręcz przeciwnie. Zatem, gdy > przychodzi mi go czytać to mnie trafia. > >>> Ok, kilka _powierzchownych_ uwag. >> Wiesz, że dość mocno się czepiasz? >> Po prostu. > > W którym miejscu? Odpowiem Ci twoim sposobem - w każdym. I dodam coś więcej; chodzi o to jak o tym piszesz, a nie o czym piszesz. Jesteś niepotrzebnie napastliwy, arogancki i wychodzi na to, że pozjadałeś wszystkie rozumy. Też tak miałem, ale na dłuższą metę, przynosi to więcej szkody niż pożytku. Dla Ciebie i innych, dla wszystkich. Ale oczywiście zrobisz co zechcesz :) >>> 1. Spacje wokół przypisania zmiennych, Zmienna := Wartość; >> Ctrl+D >> >>> 2. Spacje po przecinkach, dwukropkach itd. >> Ctrl+D > > Po co podajesz mi ten skrót? Ponieważ da się to zrobić przy pomocy automatycznego formatowania kodu, dostępnego domyślnie właśnie przez CTRL+D. > Oświecę Cię, znam go. Oświecę Cię drugi raz: > wątek dotyczy kodu jaki wkleił OP, a ja odpisuje mu na pytanie dlaczego ten > kod uważamy za syfiarsko napisany. W czym jeszcze mogę Cię oświecić? Hmm... naprawdę mam trudność w przyznaniu się w czym jeszcze mógłbyś mnie oświecić. Aczkolwiek jak tylko coś takiego się znajdzie, od razu poproszę o oświecenie. A za aktualne oświecenie serdecznie dziękuję. >>> 3. Nazwy parametrów metod oznaczamy np. małą literą a z przodu, np: >>> function TMyClass.Process(aParam : TSomeType); >> Chyba Ty oznaczasz. >> Albo Wy. >> Ale My nie. > > No to bawcie się w tym bagnie, ale go nie publikujcie. Po prostu. Jesteś jakiś fanatyk czy co? Na przykład dla mnie bagnem, syfem, kiła i mogiłą może być oznaczenia małą literą prefiksu argumentu funkcji. Tylko ja, w odróżnieniu od Ciebie, uważam że to jest czysto subiektywna opinia i szkoda prądu na jej argumentowanie. >>> 7. Pola klas powinny mieć prefiks f (wszystkie! i do tego nie raz F a raz >>> f, tylko tak samo!) >> Ja mam F, nie f - jak w źródłach producenta... >> I jak widzę fDoopa, to mnie to boli, właśnie tam... ;-) > > Dlaczego zatem nie piszesz LZmiennaLokalna? Bo jestem leniwy i nie chce mi się wciskać Shifta. A drugie primo, ponieważ prefiksy z małej litery mam zarezerwowane dla zmiennych lokalnych. > Może dlatego, żeby nie > zaciemniać nazwy zmiennej? Tutaj pola klasy? Jak widzisz, pudło. A pola klasy dla mnie to w 99% przypadków są to prywatne zmienne dla właściwości. A że bardzo intensywnie korzystam z MMXa, to robi mi się to samo, tak jak skonfigurowałem. A skonfigurowałem, że mają się zaczynać z prefiksem F - z wielkiej litery. > >>> 8. Poczytaj co robi const w parametrach metod i zastanów się dlaczego >>> powinieneś go używać >> I dlaczego nie zawsze i wszędzie jest to potrzebne ;-) > > Ale lepiej tego nadużywać niż nie używać, bo nadużycie nie szkodzi, a brak > ...w skrajnych przypadkach bardzo. Zgoda. Jednakże zawsze stoję na stanowisku, że ZAWSZE trzeba wiedzieć i rozumieć co się robi i jak to działa. Nie wytłumaczyłeś dlaczego należy używać const, tylko zachowałeś się jak fachowiec-hydraulik - niby coś wiesz, ale nie powiesz, tylko opierdolisz innego fachowca, że zjebał i jest na pewno źle. Ale dlaczego źle i co to da in plus, tego hydraulik już nie powie, bo uważa, że wtedy każdy może zostać hydraulikiem. I cala magia i prestiż znika... Osobiście tego typu zachowanie uważam za wyjątkowo słabe... >>> To tylko garść porad na początek, zacznij czytać książki i zacznij CZYTAĆ >>> OBCY KOD - wtedy się nauczysz pisać swój. >> Te małe literki a i f mnie się nie podobają. > > A mi owszem. Lepiej odcinają się od reszty nazwy i nie zaburzają jej > czytania, np. > > fLCDSize > > FLCDSize > > aAddValue > > AAddValue Jak pisałem, to subiektywna opinia i szkoda prądu. Dodam coś jeszcze - u mnie w kodzie praktycznie nie ma odwołania do zmiennych prywatnych, które utrzymują stan właściwości (bo w 99% przypadków używam ich do właściwości). Zatem ich występowanie w kodzie jest w dwóch miejscach; deklaracja i ciało gettera danej właściwości. A skoro nie mieszam używania zmiennej prywatnej klasy, ze zmienną lokalną metody, to nie mam takich potrzeb. Poza tym, mam do tego inne prefiksy... Poza tym, dla mnie jest to wystarczająco widoczne i nie zaburza czytania: http://wklej.org/hash/5c9e2e1dc7c/ >> Poza tym, Spring4D Style Guide też nie trzyma się własnych wytycznych :P >> Wiem, bo pośrednio maczałem w tym swoje brudne paluchy... > > Może dlatego, że kto inny zaczynał pisać Springa a kto inny go teraz > prowadzi? I właśnie dlatego tym bardziej powinni stosować się do własnych zasad opisanych w Style Guide. Takie dokumenty tworzy się głównie dla zespołów, a nie dla jednoosobowych guru. A więc jeśli takie zasady istnieją, to powinni się do nich stosować, bo sami wprowadzają, jak to określasz, syf w kodzie. -- wloochacz
Technical Details
Message-ID:
<59660461$0$15187$65785112@news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailReferences:
<5950f43c$0$15190$65785112@news.neostrada.pl> <5950ff29$0$640$65785112@news.neostrada.pl> <5952c2f7$0$15208$65785112@news.neostrada.pl> <ok1vsm$gb2$1@portraits.wsisiz.edu.pl> <d1oytca0xw8i$.dlg@tyczka.com> <ok23gn$k5m$1@portraits.wsisiz.edu.pl> <n6gl583g0iv1$.dlg@tyczka.com> <5964eeb7$0$15204$65785112@news.neostrada.pl> <1bjy8iyp86buw.dlg@tyczka.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail Subject: Re: Zeos Delphi XE2 Newsgroups: pl.comp.lang.delphi References: <5950f43c$0$15190$65785112@news.neostrada.pl> <5950ff29$0$640$65785112@news.neostrada.pl> <5952c2f7$0$15208$65785112@news.neostrada.pl> <ok1vsm$gb2$1@portraits.wsisiz.edu.pl> <d1oytca0xw8i$.dlg@tyczka.com> <ok23gn$k5m$1@portraits.wsisiz.edu.pl> <n6gl583g0iv1$.dlg@tyczka.com> <5964eeb7$0$15204$65785112@news.neostrada.pl> <1bjy8iyp86buw.dlg@tyczka.com> From: wloochacz <wloochacz@no.spam.gmail.com> Date: Wed, 12 Jul 2017 13:13:34 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <1bjy8iyp86buw.dlg@tyczka.com> Lines: 134 Message-ID: <59660461$0$15187$65785112@news.neostrada.pl> Organization: Telekomunikacja Polska NNTP-Posting-Host: 83.23.78.237 X-Trace: 1499858018 unt-rea-a-02.news.neostrada.pl 15187 83.23.78.237:9134 X-Complaints-To: abuse@news.neostrada.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit