K editaci zdrojových kódů se používají různé prostředky, od prostých textových editorů až po různá integrovaná vývojová prostředí (IDE). Na většinu věcí mě postačoval lepší textový editor, nejčastěji PSPad, ale stále častěji se začínám poohlížet po Vimu, oddělení editačního módu a módu pro pohyb po textu mě přijde jako výborná myšlenka, časem se k použití textových editorů pro vývoj ještě určitě vrátím, nicméně dnes bych se rád trochu pozastavil u IDE pro vývoj v PHP a to zejména u jedné novinky - Netbeans.
Že je ropa cennou surovinou není pochyb, ale jak tuto cennost vyjádřit o něco lépe než penězi. Jednou z možností je porovnat energetické nároky a možnosti lidské práce a energie, která se skrývá v ropě, pojďme se na to trochu podrobněji podívat a zamyslet se i nad tím, zda jsou vyvozené závěry z tohoto porovnání vůbec smysluplné.
Když jsem nedávno psal nějakou třídičku v PHP tak jsem narazil na dost častou záležitost, použil jsem statickou proměnnou na definování implicitní hodnoty a další nestatickou proměnnou, která umožňuje nastavit danou vlastnost pokud od třídy dědíme. Vypadá to asi nějak takto.
Určitě je vám známo, že PHP runtime je vybaven podobně jako řada dalších jazyků garbage collectorem, který se stará o automatickou správu paměti, takže vývojáři PHP aplikace odpadá starost o to, jak a kdy PHP runtime provede uvolnění paměti pro tu kterou proměnnou. Až do nedávna existovala minimálně jedna výjimka a tou jsou právě kruhové reference. Článek je volným překladem blogpostu Paul M. Jonese, hlavního vývojáře PHP frameworku Solar.
Dnes bych se rád zmínil o Dependency Injection (často se o něm mluví jako o návrhovém vzoru) a jeho vztahu k Zend Frameworku a návrhu aplikací obecně. Vycházel jsem ze článku Pádraica Bradyho, který se týká zejména návrhu Zend_Di, který je ale v současné době archivován a v nejbližší budoucnosti se do Zend Framoworku jistě nedostane. I tak je minimálně zajímavé se o Dependency Injection alespoň zmínit, v dnešní době se často skoňují slova jako Test Driven Development (TDD) a Behaviour Driven Development (BDD) a právě tam se Dependency Injection také uplatní.