Jump to content
php.lv forumi

Keša dzinēju wrapperis


F3llony

Recommended Posts

> Kods ir jākomentē un komentāri nav jāvāc ārā.

Argumenti?

Bez visādiem tur "to rekomendē iso", "reliģiskā pārliecība", "lai ide programmētu manā vietā", "automātiskas dokumentācijas ģenerēšanai", "es to izlasīju kāda vadošā Web 3.0, seo, sem, gem, lem, shmem eksperta blogā" utml. brīnumiem.

Edited by F3llony
Link to comment
Share on other sites

Mans viens pasniedzējs pateica apmēram tā - "Bez komentāriem, programma nestrādā".

Protams, ja pie tā visa strādā viens pats un visu mūžu TU un tikai TU strādāsi, un kods nesastādīs ziloņa apmēra koda rindas, tad jau var nekomentēt, bet pretējā gadījumā var sanākt "šmuce".

Link to comment
Share on other sites

Tas vienalga neizskaidro komentāru jēgu. Gribētu pamatojumu "šmucei", kura tad varētu sanākt rakstot kvalitatīvu, pašpaskaidrojošu kodu ar labu metožu un mainīgo nosaukšanu ar labu atdalītu dokumentāciju.

Edited by F3llony
Link to comment
Share on other sites

Komentēt nevajag visu, bet gan tikai tās vietas, kuras cilvēkam, kurš lasīs tavu kodu, var sagādāt neskaidrības, jo koda autors "ir tups".

 

Piemērs no tava koda:

 

if (substr($data, 0, 7) == 'x0cser:')

 

Komentāram tur ir jābūt un tam ir jāpaskaidro nevis ko tas koda dara ('what'), bet kāpēc tas tur ir un ar kādu mērķi ('why').

 

> Argumenti?

 

Labāk pastāsti kāpēc kods nav jākomentē.

Link to comment
Share on other sites

Nu par piemēru pieņemsim to, ka es tagad sākšu strādāt pie teva koda, un sākšu to lasīt. Loģiski, ka pirmā doma galvā nāks, lasīt komentārus - Tādu nav, heh nu jālasa ir kods, tā nu beigu beigās būs tā šmuce.

Izpaustos tas tā, ka - Ja komentē kodu, tad man ir vieglāk, ērtāk piešauties tavam kodam un bez lieka čakara. Neskatoties uz cik tīri un skaisti viss uzrakstīts.

Link to comment
Share on other sites

Komentēt nevajag visu, bet gan tikai tās vietas, kuras cilvēkam, kurš lasīs tavu kodu, var sagādāt neskaidrības, jo koda autors "ir tups".

 

Piemērs no tava koda:

 

if (substr($data, 0, 7) == 'x0cser:')

 

Komentāram tur ir jābūt un tam ir jāpaskaidro nevis ko tas koda dara ('what'), bet kāpēc tas tur ir un ar kādu mērķi ('why').

Nav arguments. Ja tu nesaproti "why" pirms payload ir galvenes, tu pats saproti, ko tas nozīmē. Neskaidrībām ir dokumentācija. Vēl joprojām nepamato komentāru nepieciešamību KODĀ.

 

 

>>Labāk pastāsti kāpēc kods nav jākomentē.

http://eu5.memecdn.c...Logic_c_995.jpg

 

 

 

Nu par piemēru pieņemsim to, ka es tagad sākšu strādāt pie teva koda, un sākšu to lasīt. Loģiski, ka pirmā doma galvā nāks, lasīt komentārus - Tādu nav, heh nu jālasa ir kods, tā nu beigu beigās būs tā šmuce.

Izpaustos tas tā, ka - Ja komentē kodu, tad man ir vieglāk, ērtāk piešauties tavam kodam un bez lieka čakara. Neskatoties uz cik tīri un skaisti viss uzrakstīts.

Tu sāksi strādāt pie mana koda un sāksi to lasīt? Kapēc gan neizlasīt manuāli, referenci un paskaidrojumus?

 

 

Papildus jautājums: cik no jums, augsti godātie, mācoties PHP lasīja PHP dzinēja izejas kodu :D Godīgi? :D

Edited by F3llony
Link to comment
Share on other sites

Nu lai arī kādā veidā ir komentāri, bet tiem kodā ir jābūt- man personīgi ir ļoti grūti orientēties cita rakstītos (pat vairākos manos sen rakstītos) slikti dokumentētos koda gabalos.

phpdoc jau noder gan ērtai vienībtestēšanai ar Netbeans, gan katra mainīgā jēgas noteikšanai.

Tagad pat mainīgajiem rakstu priekšā vienu burtiņu, lai uzreiz saprastu mainīgā tipu- $nCount, $sMessage, $oFfmpeg, $bIsAllowed, $aFiles un kaut vai vairs nav jāpiedomā- tas ir objekts vai masīvs

Link to comment
Share on other sites

Nē nu protams, tāda sajūta, ka TEV un tikai TEV ir taisnība par visu, un neviens cits neko nesaprot. Kapēc neizlasīt ? Izlasīšu arī tos, bet komentāri vienmēr ir palīdzējuši, palīdzēs un tā būs un paliks.

Es vispār neesmu ne tuvu ekspertam kā PHP programmētājs, bet to, ka kods ir jākomentē pat es zinu.

Link to comment
Share on other sites

Es arī gribētu ļoti oponēt tam, ka lai saprastu, ko kods dara ir jālasa kaut kādas atsevišķas dokumentācijas - tas ir pilnīgs sviests, jo labākā dokumentācija ir labs strukturēts un komentēts kods. Konkrēts piemērs - Kohana ietvars, kur, ja rodas kāda skaidrība hops-hops izmantojot IDE varam izlēkāt pa neskaidrajām metodēm, izlasīt sakarīgus komentārus un saprast, kas ko dara, un nav jāver atsevišķi dokumentācijas lapa un dubultā jāmeklē.

 

F3llony, nav jēgas ar tevi strīdēties, tas ir skaidrs, jo tev ir tikai viena taisnība - savējā.

Link to comment
Share on other sites

> Tagad pat mainīgajiem rakstu priekšā vienu burtiņu, lai uzreiz saprastu mainīgā tipu- $nCount, $sMessage, $oFfmpeg, $bIsAllowed, $aFiles un kaut vai vairs nav jāpiedomā- tas ir objekts vai masīvs

 

Nāk prātā... http://programmers.stackexchange.com/questions/102689/what-is-the-benefit-of-not-using-hungarian-notation

Link to comment
Share on other sites

Es atvainojos, man ir tikai mana taisnība- manējā? Vai arī jums cienītie ir tikai sava taisnība- jūsējā?

 

Transkriptam, un lai konkretizētu, kas šajā topikā ir nepareizi-

1. Devos uz IRC. Atradu random devu čanu, pilns ar ārzemniekiem.

2. Jautājums- vai labi veidotam, verbālam kodam nepieciešami bloku komentāri un tipu hintošana jdoc/pphpdoc formā un inline koda komentāri vai arī labāk izvēlēties ārēju izstrādātāja dokumentāciju?

3. Atbilde- atkarībā no konteksta. phpdoc/jdoc/xmldoc ir evil. Komentāri ir vēlami tikai sarežģītām struktūrām, kā grupēts regex, utml. Koda bloatošana ar bloku komentāriem ir evil.

4. Paldies par diskusiju.

 

Kad Latvieši vienreiz iemācīsies, ka ES NERAKSTU CAPSLOCK UN NEBAUROJU BET AIZSTĀVU SAVU VIEDOKLI gaidot kādu labi argumentētu pamatojumu jo man nepatīk kapitulēt pie katra apgalvojuma bez pamatojuma kapēc mans viedoklis būtu nepareizs. Te nav nekāda strīda.

 

You guys sometimes are everything that's wrong with this planet.

/thread

Link to comment
Share on other sites

uncle Bob iekš Clear Code iesaka komentārus rakstīt tikai tad, kad tos patiešām vajaga, jo komentāru uzturēšana prasa laiku un pūles, kas vairākumā gadījumu nenotiek, bet, protams, ir arī otrs grāvis, kad komentāru pilnīgi nav, un kods nav pašaprakstoš, metodes prasa vairāk par 2 parametriem, garākas par 15 rindiņām etc. sliktumi, tad gan komentāri ir nepieciešami.

Link to comment
Share on other sites

Komentāru uzdevums ir atvieglot koda lasīšanu gan citiem, gan arī pašam pēc kāda laika. Ārējas dokumentācijas uzdevums, parasti, ir vispār aprakstīt, ko dara dotais koda gabals (tieši tam, kam tu izmanto komentārus), bet ne to, ko dara kāda koda rindiņa, kas tavā kodā vietām pietrūkst. Klases lietotājam tiešām ir jālasa dokumentācija, nevis programmas koda komentāri.

Kamēr taisi tipveida vienkāršu un neliela apjoma kodu, nav problēmas iztikt bez komentāriem, bet problēma sākas, tikko sākas nestandarta situācijas, pat ja kods ir pašpaskaidrojošs. Tad arī pats pēc pus gada vari tomāt, kāda suņa pēc nerakstīji vienkāršāk, bet, izlabojot, pēkšņi brīnies, kāpēc parādās kaut kādas savādas kļūdas koda darbībā. Atkļūdojot pēkšņi saproti, ka tam dīvainajam kodam bija nozīme.

Ārējai dokumentācija ir vēl viena problēma, kad atkārtoti izmanto kādu moduli - jāskatās, kādu dokumentāciju dot līdzi, bet, ja aizmirsti vai kļūdies, tad ir ķeza.

Lielākos projektos, kuros strādā vairāk kā viens programmētājs, daudz koda kvalitātē un izstrādes ātrumā izteiks tas, cik ātri un pareizi saorientēsies kolēģa kodā. Kad sāks spiest termiņi, tad komentāri atvieglos darbu, bet ārējā dokumentācija novedīs pie "kurš vispār lasa dokumentus"?

 

3. Atbilde- atkarībā no konteksta. phpdoc/jdoc/xmldoc ir evil. Komentāri ir vēlami tikai sarežģītām struktūrām, kā grupēts regex, utml. Koda bloatošana ar bloku komentāriem ir evil.

Vispār jau koda bloatošana nav problēma visur, kur kods ir prekompilēts vai kompilēts, jo komentāri tur līdz neiet. Mūsdienu serveros tas attiecas arī uz php!

 

Tieši tavā gadījumā, iztēlojies situāciju, kad no tava produkta kāds attīsta savu versiju un tev pēkšņi ir vēlme iekļaut kādu labu fīču savā versijā. Ja šajās izmaiņās tev būs bez komentāriem jānoorientējas >1000 rindās, tad tev paņems laiku koda izpēte, kuras daļas no tā visa tev ir vajadzīgas, lai apvienotā versija strādātu korekti. Normāli komentētā kodā problēmas būs stipri mazākas

 

 

Papildus jautājums: cik no jums, augsti godātie, mācoties PHP lasīja PHP dzinēja izejas kodu :D Godīgi? :D

Nejauc siļķes ar āboliem! PHP izejas jāskatās, kad vēlies kodu modificēt vai arī kods gļuko. Tāpat tavā kodā komentus lasīs tas, kurš atradīs kļūdu vai vēlēsies kodu modificēt.

 

 

Starp citu, tavā kodā dažas neveiklības:

$data = substr($data, 6, strlen($data));

Nav jēgas no 3. parametra, jo vārds no dotās pozīcijas tiek nolasīts līdz beigām, turklāt 3. parametra nozīme ir $length, nevis $end_pos.

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...