PHP (63) - Rozsáhlejší projekty 4.
Jak si při programování v PHP zorganizovat a ještě více ulehčit práci?
1.11.2004 15:00 |
Petr Zajíc
| Články autora
| přečteno 34244×
Vývoj kvalitního kódu zahrnuje rovněž umění "vyznat se sám sobě".
Mám tím na mysli vědět, co si při psaní kódu mohu dovolit, kde je nutné
být sám na sebe přísný a kde je možné si práci nějakým způsobem
ulehčit. Dnes se podíváme na některé takové metody a postupy.
Buďte líní
Nevím, zda je to dokázáno vědecky, ale správný programátor by měl
být především líný. To mu umožní nedělat žádnou zbytečnou práci; a té
je při psaní kódu možné udělat více než dost. Kdykoli se tedy chystáte
psát
nějaký kód, měli byste se nejprve sami sebe ptát:
- Nepsal už jsem někdy podobnou funkci nebo skript?
- Nemám k dispozici cizí kód, který by podobnou záležitost řešil?
- Dal by se najít příklad takové věci na internetu?
- Jestliže ne, mohl bych se alespoň inspirovat podobnou úlohou?
Většinou, zejména u jednoduchých úloh zjistíte, že nemusíte pracně
"vynalézat kolo". Jestliže ale narazíte na úlohu tak speciální, že
skutečně nenajdete podklady pro její řešení a budete to muset napsat od
nuly, mohli byste uvažovat následovně:
- Jestliže ten kód budete opravdu potřebovat jen jednou, napište
jej a přestaňte na to myslet
- Jestliže tušíte, že byste ten kód mohli použít vícekrát, napište
jej pořádně a vytvořte k němu dokumentaci (viz minulý díl)
- Pokud jste napsali něco opravdu unikátního, zvažte možnost, že
byste se o kód mohli rozdělit s ostatními (ať už free, nebo za peníze)
Pozn.: Využívání cizích kódů s sebou
samozřejmě přináší problém licencování. Měli byste se ubezpečit, že to,
co děláte je zákonné.
Stanovte si postup
Je třeba si práci nějak zorganizovat. Mě se osvědčil následující
postup: Zjistil jsem, že většina práce na zdrojovém kódu se dá rozdělit
na dvě skupiny - na kód, který budu muset teprve pracně vymyslet a na
kód, který budu psát téměř "z hlavy", protože vím, jak na to. Pokud
máte "tvůrčí vlnu", nezabývejte se otrockým psaním "nudného" kódu, ale
udělejte si "vycpávku". Vysvětlím na příkladu přihlašování k databázi:
<?
if (validuser($database, $user, $password))
{
//kód pro
autorizované uživatele
}
function validuser ($database, $user, $password)
{
//todo - dodělat
přihlašování
}
?>
Neboli, v dané chvíli se vůbec nemusíte zabývat vlastním kódem
funkce validuser, můžete směle pokračovat psaním dalšího kódu v těle
skriptu (označil jsem to jako "kód pro
autorizované uživatele". Kód funkce validuser může být pro Vás tak
triviální, že jej budete schopni napsat "zpaměti o půlnoci" a můžete se
věnovat "více tvůrčí" práci ve zbytku skriptu. Je samozřejmě důležité
poznamenat si někam, že se kus kódu musí dopsat, jinak na to
pravděpodobně
zapomenete.
Pozn.: Jelikož v kódu PHP nezáleží, kde
je ve skriptu funkce umístěna, může být třeba i za místem, z něhož je
volána. Zde popsanému přístupu to zcela vyhovuje, lidé odkojení jazyky
typu Pascalu to asi moc mít rádi nebudou.
Toto samozřejmě není jediný možný ani jediný správný postup. Ale
pokud máte někdy náladu na "hardcore" programování a jindy ne, může to
pro Vás být to pravé. Další možné postupy jsou třeba "podle předem
stanoveného plánu" a "jak mě napadne". Ovšem, zejména poslední příklad
většinou nevede ke kýženému cíli ;-))
Spravujte zdrojový kód
I při sebelepší práci se Vám občas stane, že dojdete k názoru, že
určitá předchozí verze kódu je lepší než ta současná. Jenomže ji už
nemáte k dispozici. Aby se to nestávalo, existují nástroje pro správu
zdrojového kódu (třeba cvs nebo
subversion). Fungují tak,
že vytvoří "úložiště" kódu (tzv. repository) a vývojář může kód z
úložiště načíst, pracovat na něm a pak jej uložit zpět. Úložiště může
být přístupné více vývojářům, může být umístěno na síti a sleduje
veškeré změny v kódu, které byly provedeny "venku" mezi načtením a
uložením aktuální verze. Úložiště je schopno pracovat s libovolnými
textovými soubory (jako jsou třeba zdrojové kódy PHP) a rovněž s
binárními daty a není vázáno na
žádný konkrétní programovací jazyk.
V případě, že dva nebo více vývojářů změní stejný soubor, existují v
těchto nástrojích "správci konfliktů", kteří vám pomohou sladit změny
provedené více uživateli. Úložiště mohou být rovněž přístupné jako
webové služby a tak máte ke svým zdrojovým kódů přístup prakticky
odkudkoli. Většina lidí si myslí, že zavést nástroje pro
správu kódu ma význam až v momentě, kdy na projektu pracuje více
vývojářů, ale když se nad tím zamyslíte, není to tak. I když pracujete
sami, může se Vám hodit
odpověď na otázky typu:
- Kdy jsem provedl poslední změnu v tomto souboru
- Jak vypadala tato složka před 14 dny?
- Program xxx ve verzi aaa.bbb nefunguje dobře. Co se tam měnilo?
Můžete se vrátit k libovolné uložené verzi dokumentu a můžete dělat
celou řadu dalších věcí. Můžete dokonce smazat soubor z pracovní kopie
s tím, že úložiště si jej bude pamatovat.
Někdy Vám může "zachránit život" skutečnost, že máte úložiště kódu
přístupné přes prohlížeč nebo umístěné mimo vaše "obvyklé stanoviště".
Je to samozřejmě otázka zabezpečení, ale docela se může hodit možnost
mít své zdrojové kódy kdykoliv k dispozici. Kolegovi někdo nedávno
ukradl notebook... a i když to samozřejmě BYL problém, nepřišel díky
umístění kódu v repository alespoň o podstatnou část své práce.
Pozn.: Uznávám, že u PHP není tato
otázka
tak palčivá. Obvykle si můžete zdrojové kódy PHP postahovat z běžícího
webu, když není jiná možnost. To u kompilovaných jazyků samozřejmě
nejde.
V dalším díle našeho seriálu se zaměříme na některé způsoby, jimiž
můžete části svého kódu ladit. Těšte se, budeme si "hrát" s kódem z
tohoto seriálu, v němž jste objevili chybu!
Verze pro tisk
|
Příspívat do diskuze mohou pouze registrovaní uživatelé.
|
|

Vyhledávání software

Vyhledávání článků
28.11.2018 23:56 /František Kučera Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1
12.11.2018 21:28 /Redakce Linuxsoft.cz 22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář
6.11.2018 2:04 /František Kučera Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
4.10.2018 21:30 /Ondřej Čečák LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář
18.9.2018 23:30 /František Kučera Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
9.9.2018 14:15 /Redakce Linuxsoft.cz 20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business.
Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář
12.8.2018 16:58 /František Kučera Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář
16.7.2018 1:05 /František Kučera Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář
Více ...
Přidat zprávičku
 Poslední diskuze
31.7.2023 14:13 /
Linda Graham iPhone Services
30.11.2022 9:32 /
Kyle McDermott Hosting download unavailable
13.12.2018 10:57 /
Jan Mareš Re: zavináč
2.12.2018 23:56 /
František Kučera Sraz
5.10.2018 17:12 /
Jakub Kuljovsky Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?
Více ...
|