Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V  < 1 2  
Reply to this topicStart new topic
> Czy znacie te uczucie gdy...
blooregard
post 13.10.2011, 09:54:02
Post #21


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
A co chciałem do tematu powiedzieć: każdy ma swoje "ulepszenia", które przyśpieszają pracę nad kodem


Tylko trzeba pamiętać o tym, że ktoś kiedyś może będzie ten kod utrzymywał i Twoje "ulepszenia" mogą wtedy bardzo ten proces utrudnić wink.gif


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
mike
post 13.10.2011, 09:57:36
Post #22





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Skoro tak temat powędrował to ja przy okazji gorąco polecam: Clean Code: A Handbook of Agile Software Craftsmanship. Książka naprawdę bardzo dobra.
Niby opisane zasady i podpowiedzi tyczą się niemal podstaw, które dobry programista już dawno powinien osiągnąć to jednak nieźle trzepie po głowie. Ja mocno polepszyłem warsztat po przeczytaniu książki.
Pozycja z naciskiem na Javę (zawiera trochę tekstu, który dość mocno tyczy się tego języka) ale w ogólności kierowana dla użytkownika każdego języka.
Go to the top of the page
+Quote Post
thek
post 13.10.2011, 10:24:28
Post #23





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Wiem, że mało adekwatny nieco, ale posłużę się linijką z kodu jaki już podałem i tyczy właśnie wyliczania niefortunnego $loops smile.gif
  1. $loops = min( $random_existance['count'], count($random_text) );
Dla siebie dodatkowo skomentowałem, że jest ono potrzebne w ramach zabezpieczenia. Może być bowiem sytuacja, że tekstów losowych jest podanych mniej niż wylosowana liczba. Niby drobiazg, ale bez niego w określonych sytuacjach kod się może wyłożyć. Komentarz tutaj informuje więc mnie, że jest to miejsce na które muszę zwrócić uwagę podczas ewentualnej optymalizacji kodu. Myślę, że ma tutaj więc uzasadnienie komentarz, gdyż jest to potencjalna pułapka w sytuacji dostarczania danych z zewnątrz. Ja dla siebie więc i późniejszego zrozumienia lubię stosować. Nie by pisać elaborat, ale gdy siadam po długim czasie znowu do kodu tegoż, wiedzieć co z czym zjeść. A takiej informacji konwencje nie obejmują. Konwencje tyczą bowiem czytelności kodu i pewnych podstawowych informacji, a nie jego głebszej warstwy logiczno-informacyjnej tak naprawdę. Z samego nazewnictwa, układu kodu i jego ustrukturyzowania tego nie uzyskam w żaden sposób.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
mike
post 13.10.2011, 10:33:20
Post #24





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(thek @ 13.10.2011, 11:24:28 ) *
Myślę, że ma tutaj więc uzasadnienie komentarz, gdyż jest to potencjalna pułapka w sytuacji dostarczania danych z zewnątrz.
Jakbyś zrobił z tego funkcję (opisaną przez jej nazwę):
  1. <?php
  2.  
  3. class SomeClass {
  4. private function calculateRandomNumbersCount($randomExistance, $randomText) {
  5. return min( $randomExistance['count'], count($randomText) );
  6. }
  7. }
  8.  
  9. ?>

... to użycie komentarza już nie jest takie oczywiste. Aczkolwiek racja, troszeczkę pomocne.

Ten post edytował mike 13.10.2011, 10:34:19
Go to the top of the page
+Quote Post
thek
post 13.10.2011, 15:04:06
Post #25





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Gdybym oparł o klasy lub robił specjalnie funkcje, choć wiem, że dany kod będzie wykonywany jednokrotnie przez całe wywołanie funkcji i nigdzie indziej w kodzie, to fakt, miało by to jakiś sens. Jak jednak wspomniałem, świadomie zrezygnowałem z warstwy abstrakcji i zamykania wszystkiego w funkcje celem minizowania wszelkich narzutów czasowych, a takim wypadku cierpi czytelność. Zyskuje na czasie wykonania, tracę na połapaniu się w kodzie i chcąc, nie chcąc, przy takim podejściu komentarze stają się niemal obowiązkiem. Gdyby nie ten fakt, który stanął jako podwalina, to zrobiłbym zapewne jak mówisz i ładnie bym się trzymał standardów OOP. A tak jedyną pomocą jaką mogłem zastosować było trzymanie konwencji nazewnictwa, choć i tu mi się zdarzyło walnąć gdzieniegdzie byczka smile.gif


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
mike
post 13.10.2011, 15:14:09
Post #26





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Czyli brniesz w negatywne skutki poprzednich błędnych decyzji smile.gif I brniesz dalej i dalej ...
W programowaniu bardzo łatwo nadziać się na efekt stłuczonej szyby.
Go to the top of the page
+Quote Post
vokiel
post 13.10.2011, 15:41:14
Post #27





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


thek czy dodanie jednej klasy i kilku metod będzie zauważalnym narzutem w wykorzystaniu zasobów, czasu działania?

Moim zdaniem będzie to bardzo daleka pozycja po przecinku. Czas poświęcony na pisanie komentarzy, albo później przy każdej zmianie - na wgryzanie się w kod, będzie dużo dłuższy i będzie generował dużo większe koszty niż dodatkowa pamięć czy czas serwera.


--------------------
Go to the top of the page
+Quote Post
thek
post 14.10.2011, 00:07:31
Post #28





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




@mike: jeśli nie naprawiałbym "dziur", to masz rację smile.gif "Problem" w tym, że skrypt jest kompletny i nie wymaga poprawek od strony logiki. Jedyne które mogą go dotknąć tyczą się właśnie optymalizacji wydajnościowych. Albo wtedy poprawiam czytelność i obniżam wydajność, albo na odwrót. W moim wypadku wybrałem to "na odwrót"
@vokiel: masz częściowo rację. Z tym, że komentarze piszę tak, że nawet kompletny debil by zrozumiał smile.gif Siadając po nawet roku do kodu i mając poprawne nazewnictwo oraz takie komentarze nie miałbym prawa się nie połapać w chwilę co zrobiłem smile.gif


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post

2 Stron V  < 1 2
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.04.2024 - 01:12