Dnes jeden nástroj na závislosti, Fluent Interface a Box 2D!
Nástroj na zobrazení závislostí
Narazil jsem na pěkný nástroj pro zobrazení závislostí jednotek. Domovská stránka je www.easy-ip.net/delphi-unit-dependency-scanner.html. Tento nástroj je zdarma, podporuje i nejnovější Delphi a to včetně Unit Scope.
(ve stromě jdou vidět i další věci, jako počet jednotek - mimochodem evidentně použit Virtual TreeView)
Přiznám se, že mne překvapilo jak pěkný nástroj to je.
Mimochodem na stejné stránce jsou ke stažení komponenty pod MPL ve stylu Chrome Tabs.
Fluent interface
Poslední dobou získává na popularitě styl programování, který je nazýván Fluent interface.
Jedná se o postupné volání metod objektu vráceného předchozím voláním.
Příklad jsem aktuálně zahlédl v ukázce Simple Rest Client For Delphi
RestReq := TRestRequest.Create().Domain('localhost').
Path('todo').WithCredentials('test', 'test');
Další ukázkou je THtmlWriter.
Temp := THTMLWriter.CreateDocument;
TempHTML := Temp
.OpenHead
.AddAttribute('dweezle')
.AddText('farble')
.CloseTag
.OpenBody.AddAttribute('ding')
.OpenSpan
.AddAttribute('this', 'that')
.AddStyle('font: italic')
.OpenDiv
.AddAttribute('floo')
.AddText('Blah')
.CloseTag
.CloseTag
.AddText('Hoorah')
.AddBoldText(' Shadooby')
.OpenBold
.AddText('Goombah')
.CloseTag
.CloseTag
.AsHTML;
V podobném stylu je i string helper v nových Delphi.
Co vy na to?
Box 2D
Největší radost mi ale udělal port Box 2D pro Delphi. A portem myslím kompletní přepis a ne jen wrapper kolem nějakého DLL.
Pokud to nevíte, tak Box 2D je knihovna pro práci s fyzikou. Na uvedeném odkazu se dá stáhnout i přeložené demo s mnoha příklady, např. domino.
a o 3 sekundy později jedna kostka spadla, sjela po rampě a převážila páku:
Ve většině dem se dají objekty tahat myší a jen s tím demíčkem si člověk vyhraje. Mimochodem Smart Mobile Studio má Box 2D mezi demy (výsledek je v JS v prohlížeči).