Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Mission impossible
Forum PHP.pl > Inne > Hydepark
Zepco
Ostatnio na zajęciach z programowania każda grupa dostała projekt do zrobienia. Nic by w tym nie było dziwnego, gdyby nie fakt, że każda linia kodu ma być opatrzona komentarzem. Nie bardzo jestem w stanie wyobrazić sobie komentarz przy instrukcjach, które są oczywiste.
W związku z tym mam pytanie: czy spotkał się ktoś z taki okomentowanym kodem?
Jak dla mnie jest to głupota.
cichy
Tak, spodkałem sie.
Było to w jakimś kursie php online tongue.gif

A co do komentowania każdej linii to uważam to za delikatne przegięcie.
Po co mam w każdej linijce pisać
$i = 10; //deklaruje zmienna i o wartosci 10
$s = 'test'; //deklaruje zmienna s o wartosci test
czysta głupota.

Pozdro
Human
No, czysta głupota smile.gif 8) Np. bierz zemnie przykład smile.gif ja nigdy nie komentuje tongue.gif tylko wtedy jak napisze jakiś kod który potem kasować trzeba to żeby wiedział co kasować smile.gif
cichy
A tak poza tym to żeby kod byłczytelny to trzeba umieć komentować.
Gdy komentujesz każdą linie to już nie może być mowy o czytelności kodu.
Więc to zależy jak masz napisać skrypt. Czy ma być on czytelny czy opisany winksmiley.jpg
Pozdro
Zepco
Dokładnie to ma być gra w statki w c++ builder. Ale nawet jakby miałby to być skrypt w php, to też nie wyobrażam sobie aż tylu niepotrzebnych linii komentarzy.
Human: komentarze są potrzebne w skryptach/programach pod warunkiem, że umie się je napisać. Zobaczysz jak Twój kod będzie miał powyżej kilkuset linii i wrócisz do niego po ok. roku.
spenalzo
Jeden z moich plików ma 1600 linii i gubie sie nie po roku, ale po tygodniu :?
cichy
Cytat
Jeden z moich plików ma 1600 linii i gubie sie nie po roku, ale po tygodniu :?

To chyba idealna pora by ten skrypt przepisac w ten sposób żeby można sie było doczytać.
smile.gif

Pozdro
spenalzo
Ale on jest świeżo napisany i już lepiej go nie można napisać :?
Human
Ja czytam bardzo czytelnie nawet aż zaczęsto robie nową linie smile.gif

[php:1:84b5b48bdb]<?php
if($atak1 == $m_obr1)
{
if($atak1 == 1)
{
$k = $k - 2;
}
else
{
$k = $k - 1;
}
echo "1) Twój atak został zablokowany<br>";
}
else
{
if($atak1 == 1)
{
$k = $k - 2;
$ran = mt_rand(2,4);
$m_e = $m_e - $ran;
$m_k = $m_k - 1;
}
else
{
$k = $k - 1;
$ran = mt_rand(1,2);
$m_e = $m_e - $ran;
$m_k = $m_k - 1;
}
echo "1) Celnie zaatakowałeś przeciwnika<br>";
}

?>[/php:1:84b5b48bdb]

Tak wygląda mój kod smile.gif Pięknie co ?biggrin.gif
spenalzo
Mój jest jeszcze bardziej czytelny tongue.gif Tylko brak komentarzy,
Human
Cytat
Mój jest jeszcze bardziej czytelny tongue.gif Tylko brak komentarzy,


U ciebie czy u mnie ?smile.gif
Zepco
[php:1:0c16b73cc4]<?php
if($atak1)
$k -= 2;
else
$k--;
?>[/php:1:0c16b73cc4]
Nie prościej?

Poza tym czym zajmuje się zmienna k?
Teraz może wiesz, ale za jakiś czas przy większym kodzie zapomnisz o jej przeznaczeniu i wtedy zaczynają się schody
Human
Cytat
[php:1:b71a514ab8]<?php
if($atak1)
$k -= 2;
else
$k--;
?>[/php:1:b71a514ab8]
Nie prościej?

Poza tym czym zajmuje się zmienna k?
Teraz może wiesz, ale za jakiś czas przy większym kodzie zapomnisz o jej przeznaczeniu i wtedy zaczynają się schody


Myślisz że Ci podałem cały kod ? LoL To kod mojej gry którą pisze w php... k to kondcyja smile.gif
Zepco
A myślisz, że jakbyś podał cały, to odrazu bez komentarzy każdy byłby w stanie się połapać o co w nim chodzi?
Human
Cytat
A myślisz, że jakbyś podał cały, to odrazu bez komentarzy każdy byłby w stanie się połapać o co w nim chodzi?


A po co każdy ma się połapać ? wystarczy jak ja 8)
DeyV
Ale pamietaj o tym, że dobrze sformatowany kod wcale jeszce nie musi być kodem czytelnym.
Zresztą przekonasz się o tym, gdy będziesz nanosił na nim po raz 10 z rzędu poprawki, i nagle okaże się, że w kodzie sprzed 3 msc używałeś innego nazewnictwa, a teraz zdecydowałeś się na inne itp.
I wtedy człowiek dochodzi do wniosku, że chyba warto by było napisać to wszystko od nowa, zamiast poprawiać, albo że warto się chyba jednak naczyć OOP, i, mimo że cały kod będzie może minimalnie wolniejszy, mieć znacznie większą pewność, że program robi dokładnie to co chcesz.

a jak dla mnie tak kod wyglada jeszce piękniej. np.
[php:1:2cd6337cf8]<?php
switch( $Przeciwnik->zaatakowany( $intSilaAtaku ) )
{
case 2 :
echo 'atak odparty';
break;

default:
echo 'atak zadany ';
}

?>[/php:1:2cd6337cf8]

[php:1:2cd6337cf8]<?php
class Przeciwnik
{
/**
* @var ilosc punktów obrony
*/
var $intWytrzymalosc= 10;

/**
* @var ilosc punktów zdrowia
*/
var $intZdrowie= 100;

/**
* @var ilosc punktów doswiadczenia
*/
var $intDoswiadczenie= 0;

/**
* @param int $intSilaAtaku sila ataku w punktach
* @return int 1 => zadano obrazenia; 2 => odparto atak
*/
function zaatakowany( $intSilaAtaku )
{
if( $intSilaAtaku > $this->intWytrzymalosc)
{
$this->intZdrowie -= $intSilaAtaku *2;
return 1; //
}else
{
$this->intDoswiadczenie++;
return 2;
}
}
?>[/php:1:2cd6337cf8]


Kod pewnie jest nieco absurdalny, bo ja nigdy nie pisałem żadnej gry w php, ale wydaje mi się, że w takim przypadku, nawet całkiem spora ilość kodu by mu nie zaszkodziła.

Nie mogę też zgodzić się z stwierdzeniem, zę czegoś nie można napisać lepiej. Jeszcze chyba nie widzialem kodu (np może z wyjątkiem $i ++ winksmiley.jpg którego nie dało by się zoptymalizować, przyśpieszyć, lub zabezpieczyć.
A w przypadku pisania OOP tych możliwości jest naprawdę dużo.
scanner
Cytat
Jeszcze chyba nie widzialem kodu (np może z wyjątkiem $i ++
++$i tongue.gif
kszychu
Scanner, ale to nie to samo....
scanner
Powiedzieli mi o tym w szkole jakies 14 lat temu smile.gif
Nie optymalizowałem kodu DeyVa tylko podałem inny
Cytat
którego nie dało by się zoptymalizować, przyśpieszyć, lub zabezpieczyć.
spenalzo
Jedyny kod, którego nie zoptymalizujesz:
[php:1:5a64be904c]<?php
phpinfo();
?>[/php:1:5a64be904c]
tongue.gif
kszychu
Cytat
Jedyny kod, którego nie zoptymalizujesz:
[php:1:7b0a75d630]<?php
phpinfo();
?>[/php:1:7b0a75d630]
tongue.gif

Zależy co rozumiesz pod pojęciem optymalizacji..... 8)
[php:1:7b0a75d630]<?php phpinfo(); ?>[/php:1:7b0a75d630]
spenalzo
Cytat
Zależy co rozumiesz pod pojęciem optymalizacji..... 8)
[php:1:1526670201]<?php phpinfo(); ?>[/php:1:1526670201]

Marnujesz miejsce w bazie tongue.gif
[php:1:1526670201]<?phpinfo()?>[/php:1:1526670201]
8)
DeyV
Cytat
Cytat
Jeszcze chyba nie widzialem kodu (np może z wyjątkiem $i ++

++$i

A to co powiedział ten pan, ma więcej sensu, niż Wam się wydaje.
A dlaczego?
Ponieważ według wyliczeń, jeśli chodzi nam tylko o zwiększenie jakiejś liczby o jeden - zapis ++$i jest minimalnie szybszy.

Tak więc - jak się okazuje - nawet $i++ da się zoptymalizować...


A - a w przypadku stabilności kodu - oszczędziać nie warto - dlatego, spenalzo - trzymamy się standardów... tongue.gif
kurtz
Witam
Cytat
Ostatnio na zajęciach z programowania każda grupa dostała projekt do zrobienia. Nic by w tym nie było dziwnego, gdyby nie fakt, że każda linia kodu ma być opatrzona komentarzem. Nie bardzo jestem w stanie wyobrazić sobie komentarz przy instrukcjach, które są oczywiste.
W związku z tym mam pytanie: czy spotkał się ktoś z taki okomentowanym kodem?
Jak dla mnie jest to głupota.
Dla mnie to nie jest glupota - uczy sie pisac komentarze wogole. Dobry pomysl - wykorzystam w przyszłości.

ps
Najweselsze to jest gdy trzeba program napisac na kartce w kratke, kazda litera z innej i do tego ladnie okomentowac ;))

Pozdrawiam
Wojciech Jukowski
MarcinJarek
Pozwole sie wciaga w temat:D

Ja sadze ze kazdy powinien pisac komentarze zeby wiedzial co dana funkcja robi cszczegulnie poczatkujacy. Mam tez prozbe do WSZYSTKICH co pisza skrypty/poprawiaja skrypty innych uzytkownikow. Piszcie w komenatrzach co zmeiniliscie (no chyba ze ktos klamry nie zamknal:) ) i piszcie co zle zrobil bo to sie przydaje poczatkujacym.
spenalzo
Jasne... Może jeszcze mamy drukować i wysyłać pocztą?
Zepco
Cytat
Pozwole sie wciaga w temat:D

Ja sadze ze kazdy powinien pisac komentarze zeby wiedzial co dana funkcja robi cszczegulnie poczatkujacy. Mam tez prozbe do WSZYSTKICH co pisza skrypty/poprawiaja skrypty innych uzytkownikow. Piszcie w komenatrzach co zmeiniliscie (no chyba ze ktos klamry nie zamknal:) ) i piszcie co zle zrobil bo to sie przydaje poczatkujacym.


Takie rzeczy to chyba się nie daje w komentarzach, tylko w osobnym dokumencie... Ale też nie piszemy dokładnie co zmieniliśmy, np. "linia 34: optymalizacja poprzez zmianę z i++ na +--", tylko ogólnie co w funkcji było nie tak i co poprawiliśmy.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.