fejlesztés - 2012 - 4 megfelelő bejegyzés

Mutass mindent

Jelöld be, hogy főbb mely kategóriákat akarod olvasni, vagy ha csak egyet: kattints a nevére.


Haszprus

TDD - Test Driven Development

©   Haszprus   |   bme emarsys fejlesztés sanoma

A TDD-ről (Test Driven Development) még a BME-n írtam Szoftverminőség és menedzsment tárgy kereteiben, és bár tetszett az ötlet, de nem igazán tudtam elképzelni öt éve, hogy hogy lehetne egy alkalmazást fullosan tesztelhetővé tenni, vagy úgy megírni.

2010-ben egy korábbi munkahelyemen, ahol azért elég pro arcokat válogattak össze, még mindig ott tartottunk, hogy invesztigálni kellene a TDD-t, hogy mire jutnánk vele.

2011-ben amikor a Sanoma Mediánál voltam a PPCS (Product Price Comparison System) / Olcsóbbat / Kirakat projekten, egy több hetes hibakeresésre sikerült pontot tenni azzal hogy - az amúgy korábbról teljesen teszteletlen kódhoz - felraktam egy PHPUnitot és írtam pár unit tesztet, egyből (egy napon belül) kibuktak a bugok. Ekkor kezdtem ténylegesen hinni a unit tesztelésben.

2012-ben alkalmam nyílt részt venni az Emarsysnál egy igen nagy folyamatos fejlesztő / refaktor projektben, ami teljesen megváltoztatta a Test Driven Developmentről kialakult képet a fejemben, mivel végre láttam hogy hogy is lehet ezt fulltime alkalmazni, hogy lehet valamit 100% TDD-vel megírni.

A módszernek láttam előnyeit és hátrányait, és biztos vagyok benne, hogy vannak helyzetek, amikor alkalmaznám. Alapvetően feladatfüggőnek gondolom. Ha sok pénz múlik azon, hogy a kiadott termék hibamentes legyen (pl. mert egy olyan piaci szegmensben játszol, ahol a bugok egyszerűen nem tolerálhatóak, a vevők odébb mennek), akkor mindenképp érdemes lehet használni.

Haszprus

HTML5 history management

©   Haszprus   |   fejlesztés

Today I've learnt a small but very exciting feature, html 5 history management:

window.history.pushState(data, "Title", "/new-url");

Paired with:

window.onpopstate = function(event) { 
    console.log(event.state); 
};

This way you can set the window.location to your custom new url without reloading the page (or even without any communication with the server), but creating an entry in the browser's history (so the user can go back and forward between the saved states), and saving any custom state data as the first attribute of pushState().

With onpopstate you can catch the browser's navigation events and load the previously saved state to your page (eg. fill forms, request ajax page elements etc).

HTML5 has it's very funky features.

Haszprus

PHPStorm 4 is out

©   Haszprus   |   fejlesztés hwsw php

Megjelent a PHPStorm 4.

PHP 5.4 language features support
Code coverage for PHPUnit
Drupal coding style support
ECMAScript Harmony support
PHP code sniffer integration
New PHP code inspections
Smarter JavaScript completion

What's new

Haszprus

PHP 5.4

©   Haszprus   |   english fejlesztés php

Things I like:

(Of course there are other things too.)

+1 lol from the changelog:

<?= is now always available, regardless of the short_open_tag php.ini option.
How hard they were fighting against short open tags… I think this is similar to HTML 5 where you don't have to close your tags despite the whole community was forcing strict XHTML for years because it's better.