Umíme to s Delphi: 146. díl – editor ID3v2 tagů

Diskuze čtenářů k článku

Tomas Rosa  |  26. 04. 2005 09:38

Pane Kadlec, zapomel jsem dodat, ze jste prase na Ntou, protoze pouzivate globalni promenne na veci ciste lokalni. Pochybuji ze pokud vyrobite 2 instance tehoz formulare, tak obe POTREBUJI pouzivat spolecnou promennou

myTag: Tid3v2Tag;

Za toto bych Vas okamzite z firmy vyrazil pekne domu precist a nastudovat proc a kdy pouzivame globalni promenne.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Vaclav Kadlec  |  26. 04. 2005 10:50

Normalne bych takovou odpoved svemu ctenari nikdy nenapsal, naopak bych uznal, ze v otazce globalnich promennych mel obecne pravdu, nicmene arogance Vaseho prispevku me zrejme trochu rozohnila  
 
Obecne mate s globalnimi promennymi mozna pravdu, ale pote, co rano vstanete a predtim, nez se vydate do sve firmy vyhazovat sve Delphi programatory, by mozna bylo vhodne se zamyslet nad filozofii Delphi a pokusit se zodpovedet otazku, kolik instanci hlavniho formulare v Delphi aplikaci (typu jednoducheho editorku ID3 tagu) typicky vytvarite. Neni to nahodou jen jedna?
 
Pisi-li clanek o technologii A, zameruji se predevsim na technologii A. Ostatni casti aplikace nemusi byt nutne nejefektivnejsi a nemusi nutne splnovat vsechny teoreticke poucky. Tak to proste je, cilem aplikace je ukazat technologii A, a ne porad stale a dokola vstepovat zakladni programatorske navyky. Dulezite proste je, aby aplikace fungovala a aby ctenare naucila spravne pouzivat technologii A. Nic min, ale ani nic vic. Presne na tohle jsem sve ctenare nescetnekrat upozornoval a prosil jsem je, aby k ukazkovym aplikacim takhle pristupovali. Zkuste to tak prosim brat, vase zazitky ze cteni budou mnohem bezkonfliktnejsi

Souhlasím  |  Nesouhlasím  |  Odpovědět
Tomas Rosa  |  26. 04. 2005 17:42

Nebrete to jako aroganci, ale jako neustale opravovani a hledani chyb po programatorech kteri se proste nenaucici nepouzivat globalni promenne. A i presto ze mam pouze jednu instanci hlavniho formualre, neni duvod to delat spatne. Naopak je duvod ucit se to delat dobre. A dobre znamena pouzivat promenne tam kde se pouzivat maji. Pokud ji potrebuji pouze v jedne fci, nadefunuju ji tam. Pokud ji potrebuji v celem formulari, nadefinuji ji tam.

Mate pravdu ze toto je jednoduchy editor, ale uvedomte si zase jednu vec. Nekdo tento vas kod pouzije a pak se rozhodne ze z tohoto formulare udela ne hlavni, ale dalsi. Hlavnim formularem bude seznam MP3 v adresari a na poklikani se otevre tento. Pak jiz Vase metoda naradi z zadelava na problem, ze otevru-li 2 formulare, abych si kopcil z jednoho ID3 tagu do druheho, tak se to muze pos*t. A verte, nebo ne, pak ztravite mnoho zbytecnych hodin nad hledanim toho, proc se uklada uplne neco jineho nekam jinam.

Takze uz jen z preventivnich a edukativnich duvodu je OPRAVDU SPATNE toto pouzivat.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Tomas Rosa  |  26. 04. 2005 18:01

btw: opravdu jsem za toto poslal lidi domu. Protoze mam-li si rozmyslet, zda ho budu po zbytek dne platit (nebo firma) za hledani skolacke chyby kterou jiz opakuje po nekolikate, nebo muze jit domu a studovat to doma, pak ho poslu domu. Ja, ani firmy ve kterych jsem pracoval nebyli tak bohate, aby platili pul dne nekomu kdo nezna zaklady a opakuje stejne chyby.

Souhlasím  |  Nesouhlasím  |  Odpovědět
gully, gully  |  27. 04. 2005 13:16

Zdravim,
koukam do teto diskuse uz delsi dobu a uz to proste nemuzu vydrzet.
Pane Roso, kritizovat umite jen co je pravda. Urazet lidi, kteri se snazi ty druhe neco naucit, to Vam jde taky skvele a chvalit sam sebe - no to Vam jde nejlip.
Nevim, ale podle Vaseho pristupu bych rekl, ze jste ten TOMAS ROSA, co napsal ODYSSEUS W2. Takze byt Vama, tak drzim hubu, protoze pokud si nekdo tuto aplikaci nainstaluje, pak jejiho programatora nemuze nazvat nicim jinym, nez PRASETEM. Videl jsem zdrojaky a mam sto chuti jejich cast ukazat, aby vsichni videli, jak pouzivate prave Vy ruzne typy promennych, ale z hlediska autorskych prav to samozreme udelat nemohu.

Takze jedna dobra rada nakonec. Nechte uz toho nekonstruktivniho urazeni a prudeni a radeji zalezte, odkud jste vylezl !!!!

Souhlasím  |  Nesouhlasím  |  Odpovědět
gully, gully  |  27. 04. 2005 13:16

Zdravim,
koukam do teto diskuse uz delsi dobu a uz to proste nemuzu vydrzet.
Pane Roso, kritizovat umite jen co je pravda. Urazet lidi, kteri se snazi ty druhe neco naucit, to Vam jde taky skvele a chvalit sam sebe - no to Vam jde nejlip.
Nevim, ale podle Vaseho pristupu bych rekl, ze jste ten TOMAS ROSA, co napsal ODYSSEUS W2. Takze byt Vama, tak drzim hubu, protoze pokud si nekdo tuto aplikaci nainstaluje, pak jejiho programatora nemuze nazvat nicim jinym, nez PRASETEM. Videl jsem zdrojaky a mam sto chuti jejich cast ukazat, aby vsichni videli, jak pouzivate prave Vy ruzne typy promennych, ale z hlediska autorskych prav to samozreme udelat nemohu.

Takze jedna dobra rada nakonec. Nechte uz toho nekonstruktivniho urazeni a prudeni a radeji zalezte, odkud jste vylezl !!!!

Souhlasím  |  Nesouhlasím  |  Odpovědět
nb  |  03. 05. 2005 16:06

Keby moj zamestnavatel cumel do mojich zdrojakov a este k tomu posudzoval kde ktora premenna ma,alebo nema byt,tak by som mu s najvacsou pravdepodobnostou otrepal pracovnu zmluvu o hlavu a domov by som isiel aj bez jeho prikazu s poznamkou,ze ak je taky mudry ked posudzuje ako ma program vyzerat,nech si ten program proste napise sam.Divim sa,ze vam to uz za takyto postoj niekto neurobil pan Rosa.Ak zamestnavate programatorov tak to v podstate znamena,ze ste to neni schopni sam vytvorit takze neviem o co vam ide.ALebo zamestnavate ludi na to aby ste skodoradostne po nich kontrolovali ako vykonali svoju pracu?Mimochodom ak niekto uvedie priklad toho ako sa ma napr. nejaky komponent pouzit v priklade ktory sa da rovno skompilovat neznamena to,ze pri najblizsej moznej prilezitosti to skopcim tak kompletne aj s formularmi a trebars aj globalne definovanymi premennymi a pouzijem v mojom programe!To uz totiz neni programovanie,ale len zlepenec skopirovanych prikladov.

Souhlasím  |  Nesouhlasím  |  Odpovědět
gully, gully  |  03. 05. 2005 16:52

Naprosto s Tebou souhlasim nb. Nejdulezitejsi totiz je, aby vysledny produkt fungoval tak, jak ma. To zajima jeho uzivatele (a to by taky melo zajimat zamestnavatele).
To, jak je to uvnitr (jak je to napsane) je programatorova vec - od toho je taky programator

Souhlasím  |  Nesouhlasím  |  Odpovědět
Slavko  |  03. 05. 2005 21:53

Čítam tento seriál od začiatku, niečo nové som sa naučil, pretože Object Pascal sa predsa len od toho v TP 5.5, s ktorým som kedysi robil, líši :))) Ďakujem
A globálne premenné? Poniektorí ešte stále žijú v jedinej pravde, či už socialistickej alebo nejakej inej, s tým asi veľa nenarobíme. Naučili sa na dejinách robotníckeho hnutia ako sa správajú vykorisťovatelia (správali pred 50-100 a aj to len možno) a dnes sa na takých hrajú. Ostáva asi len trpezlivo počkať kym vymrú...
PD

Souhlasím  |  Nesouhlasím  |  Odpovědět
Tomas Rosa  |  26. 04. 2005 09:36

Opravdu si myslim, ze toto tema zaspalo dobu o nekolik let. Kdysi si vzpominam, ze uprava ID3 tagu byla terno a nastroje se na to sikly. Dneska to umi kde kdo. A psat clanek o tom jak pouzivat nejakou knihovnu stazenou z netu je fakt podprumer. To jsem psal tak v 97 kdy jsem mel web o programovani. Ale dneska si to kazdy muze vygooglit a opisovat ukazkove priklady je des. Pane Kadlec, to nemate zadne jine tema? Neco praktickeho? Nejake figle, triky, neco co stoji za pozornost? Nevim co je na tom "Umime to s Delphi" pokud pisete program ve sylu:

Label1.Caption:='blabla';
Label2.Caption:='blabla' ;
...
Label7.Caption:='blabla';

Pokud mohu podotknout, tak na toto ma delphi krasne IDE kde toto napisu primo a pokud uz chci pouzivat labely do kterych pristupuju i z kodu, pak nebudu tako PRASE, abych je pojmenovaval Lalbel1 - Label7, protoze za mesic az to budu menit, ci opravovat chyby si NEVZPOMENU co zmanena Label5.

Secteno podtrzeno - to co zde prezentujete je Vas trapny pokus o to jak ziskat par stokorun za clanek, pokud vubec. Nejde vam o lidi to to ctou, ale o sebe samotneho, proto je jedno co to je za brak a bezmyslenkvite neco davate ven.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Vaclav Kadlec  |  26. 04. 2005 10:33

Dobry den, dekuji za Vas nazor. Jakkoliv si ho vazim, musim reagovat, protoze s nim v mnoha ohledech nesouhlasim, navic si myslim, ze trocha slusnosti by neskodila
1. Tema podle Vas zaspalo dobu. Nezapomente, ze serial je urcen pro zacatecniky a jejich vetsina se s implementaci ID3 tagu dosud nesetkala, proto je pro ne (i podle ohlasu) vysoce aktualni.
2. Vase predstava, ze si kazdy muze vsechno vygooglit, je zcela mylna: zacatecnik si nevygoogli nic, navic anglickym zdrojum zhusta nerozumi.
3. Opisovat ukazkove priklady ma vyznam, pokud je cesky rozeberete a vysvetlite. Hodne ctenaru mi pise, ze z ukazkovych prikladu nebo z prikladu v helpu nic nevyctou, protoze jim proste nerozumi.
4. Pokud hledate figle, tipy a triky, proc se nezamerite radeji na serial Tipy a triky v Delphi, ktery vychazi take na Zive? Cilem meho serialu neni prinaset tipy a triky, ale pojednavat souhrnne o celych tematech.
5. Delphi ma sice IDE, ale verte mi, ze popisovat tvorbu aplikace  style m "otevrete Object Inspector, zvolte komponentu Button1, klepnete na vlastnost "Caption" a zadejte hodnotu "Otevrit" je mnohem zdlouhavejsi nez napsat "Button2.Caption := "Otevrit". To je duvod, proc nastavovani VSECH vlastnosti realizuji typicky v obsluze udalosti OnCreate hlavniho formulare. Kdokoliv chce aplikaci podle meho clanku vytvorit,jen nakopiruje kod misto pulhodinoveho klikani do Vaseho oblibeneho Object Inspectoru.
6. Z duvodu popsaneho v bodu 5 take ponechavam jako prase standardni nazvy komponent. Pokud nekdo vytvatri aplikaci podle clanku, jen nastrka komponenty na formular a zkopiruje obsluhy udalosti. Nemusi komponenty prejmenovavat. Pro klid Vasi duse zduraznuji, ze vim, ze ponechavat standardni nazvy komponent je zhuverilost; v serialu jsem vsak uz nekolikrat vysvetlil duvody, proc to tak delam.
7. Jsem rad, ze jste analyzoval me duvody, proc clanky vubec pisu. Jsou uplne mimo, o tom Vas ale asi tezko presvedcim. Na oplatku jsem se zase ja pokusil analyzovat duvody, proc Vy me clanky urcene pro zacatecniky (s ohledem na Vasi nepochybnou vysokou programatorskou vzdelanost) ctete, kdyz Vas v tolika ohledech rozciluji. Na rozdil od Vas jsem vsak k odpovedi nedosel. Pomuzete mi?

Souhlasím  |  Nesouhlasím  |  Odpovědět
Tomas Rosa  |  26. 04. 2005 17:57

Zacnu od konce:

7) ano, ctu kazdy den zive. Ostatne neni moc serveru ktere ma cenu cist. A protoze se o delphi zajimam jiz delsi dobu a nekolik programatoru jsem jiz ucil, zajima mne spise ze zvedavosti jak a proc se venujete jiz nekolik mesicu podpore ID3 tagu a jejich velmi dlouhemu popisu.

6) pokud to podate takto, pak ano.

5) nemusite popisovat takto, ale prumerne inteligetni clovek se spokoji s jednim screenshotem podle ktereho dokaze dat veci dohromady. Pokud uvidi nekolik editu a nad nimi caption a edity maji defaultne v sobe napsan nazev, lze to elegantne vyrobit v IDE. A nazvy editu mohou mit nazvy jiz spravne.

4) nehledam tipy a triky, pouze ctu jak ucite lidi pracovat s delphi (alespon ocekavam ze od toho clanek vychazi). A ukazani a okomentovani 3 funkci me nepripadalo moc naucne.

3) pokud je to opravdu to co myslite ze pomuze a melo by vychazet pak prosim. Nicmene opet - zvolil bych trosku univerzalnejsi tema, ci spise praktictejsi.

2) pokud ma ctenar pristup na zive.cz, pak zcela jiste ma pristup i na google.com. Takze si to vygooglit zcela jiste MUZE. Takze v tom se asi nepletu. Otazka je, zda-li to UMI.

1) jiste ze se spousta lidi nesetkala s implementaci ID3 tagu, ale stejne tak dobre se nesetkala temer s nicim pokud zacinali. Narazka byla pouze na vhodnost tematu pro zacatecniky. Precijenom kdybych se mel neco ucit, tak se to budu ucit na necem co alespon mohu vyuzit kdyz uz jsem se s tim delal. Takze tipuju (opet, muj osobni nazor) ze vetsina lidi da radeji prednost programku co jim treba vypne pocitac za 2h, nebo co jim umozni schovat ikonku s menu do traye, nebo jak udelat dokovaci okno, nebo jak vyrobit vlastni komponentu, nebo jak udelat drag&drop. Proste neco co muze pozdeji pouzit ve sve aplikaci - tedy neco obvyklejsiho, nez velice specializovane ID3 tagy. Je to pro me obdobne jako kdyby jste rozebiral hlavicku formatu GIF. Ano, zcela jiste to pouziva hodne lidi, ale opravdu jen malo lidi potrevuje znat jak to pracuje. Podsatne je to, ze pro to existuji nastroje a ty mohu pouzit. Jeden clanek na to staci.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Miroslav Novosad  |  26. 04. 2005 01:04

Nějak mě už ID3 tagy unavují. Vždyť s tím dělá kdejaký freeware, tak proč ztrácet čas programováním naprogramovaného? A "ID3 nadšenci" si zdroje už určitě našli/najdou...
(Tím nechci snižovat snahu autora.)

Souhlasím  |  Nesouhlasím  |  Odpovědět
Martin Bednar  |  26. 04. 2005 07:49

Taky bych se primlouval za zmenu tematu. Dekuji.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Jose  |  26. 04. 2005 08:58

zrovna jsem na to myslel když jsem ten článek zahlídl... pochybuju že by editace ID3 tagu byla takový terno, abych o tom musel rok číst.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Vaclav Kadlec  |  26. 04. 2005 10:14

Dejte mi jeste jeden tyden, dokoncime tvorbu te ukazkove aplikace a potom, slibuji , tema zmenime.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Zasílat názory e-mailem: Zasílat názory Můj názor