Rozcestník: Jste tu poprvé?
Pro začátečníky jsem napsal úvod do programování v Delphi.
Můžete si přečíst informace ohledně změn v jednotlivých verzích Delphi a
případně mezi jednotlivými edicemi Delphi.
Pokud přecházíte ze starších verzí tak řetezce a unicode.
Možná Vás bude zajímat spolupráce databáze a Delphi,
nebo se budete rozhodovat mezi různými druhy Delphi projektů.
Navštivte adresář nejpopulárnějších open source Delphi komponent
Platform status - podporované platformy v jednotlivých verzích
Free Delphi Starter Edition download
Potřebujete Delphi školení nebo konzultace na různá témata?
Trošku méně známou součástí FireDAC je TFDMemTable alias memory table. TFDMemTable můžete používat jako jednoduchý dataset s čtením a zápisem do JSON, XML nebo binárních dat, nebo jako lokální dataset pro DBMS nebo navíc použít CachedUpdates, případně za pomocí LocalSQL provádět SQL příkazy nad skupinou TFDMemTables.
Když jsem potřeboval profilovat tak jsem většinou používal Sampling profiler. Nyní se ale objevil zajímavý program Spider (zdrojáky) a některé jeho parametry jsou velmi speciální. Např. to, že je to jak sampling, tak podle mne instrumentační profiler (ale bez zásahu do zdrojového kódu - pracuje přímo s EXE v paměti).
Další velmi zajímavou vlastností je podpora více vláken s tím, že se navíc zobrazuje jak jsou vlákna v akci.
Všimněte si, že profiler zobrazuje jména vláken (jedná se o demo z instalace Delphi - thrdemo), a zároveň je evidentní, že nejrychlejší byl TQuickSort což je velmi přehledně vidět z diagramu.
Datum: 2015-11-13 17:34:00 Tagy: profiler, optimalizace, vlakna
Po nějaké době opět sbírka odkazů, komponent a dalšího pro Delphi.
pro bug report - RSP-12512
TksListview dědí z nevizuálních komponent, sledujte twitter - @kscomponents
github.com/gmurt/KernowSoftwareFMX
Datum: 2015-10-29 21:12:00 Tagy: vykriky, webbroker, web, Firemonkey
John Kaster publikoval svoji prezentaci z CodeRage X ohledně změn a vylepšení v RTL Delphi.
Pokud tedy nemáte prohlédnutou originální prezentaci, tak si aspoň prohlédněte powerpoint.
CodeRageX - RTL Deep Dive - John Kaster.pptx.
Změn je fakt hodně (veskrze pozitivních), o některých jsem už psal.
Datum: 2015-10-20 19:06:00 Tagy: DX
Pro ty kteří mají předplatné, EMBT backportovalo některé opravy (jak RTL, tak IDE) z Delphi 10 do verze XE7. Podobný update je plánován i pro verze XE6 a XE8. Update model slibuje podporu 2 předchozích verzí jako součást předplatného.
Download: cc.embarcadero.com/item/30410 (670M)
Andy aktualizoval díky tomu i IDEFixPack (ke stažení na obvyklém místě).
Pro ty, kdo mají zakoupeny Delphi 10, nezapomeňte si stáhnout knihy More Coding in Delphi (Nick Hodges - přestože je někdy zbytečně moc radikální), nebo Object Pascal Handbook by Marco Cantu (tam je mezi verzemi i XE7 a XE8). Musím zopakovat, že Delphi 10 řeší hodně problémů a není to vůbec špatná verze.
Více...Datum: 2015-10-11 17:53:00 Tagy: XE7
Od Delphi XE8 obsahuje Delphi nástroj na automatickou instalaci komponent s názvem GetIt a mimochodem nově obsahuje možnost instalace JCL a JVCL.
Pokud máte starší Delphi (od XE) tak nemusíte úplně zoufat, ale máte možnost použít nový alternativní nástroj s názvem Delphinus.
Datum: 2015-10-01 22:20:00 Tagy: open source
V Delphi 10 byla rozšířena VCL o několik zajímavých komponent. Nejzajímavější je možná TSplitView (FMX má podobnou komponentu pod názvem MultiView a tu jsem už popisoval). Ale toto je pro VCL.
Datum: 2015-09-17 23:08:00 Tagy: VCL, DX
Nenápadným rozšíření Firemonkey v DX Seattle je možnost u některých ovládacích prvků na Window ve Firemonkey použít ovládací prvky přímo z Windows.
Zatím se jedná o TEdit, TMemo a TPresentedScrollBox. Hlavní jsou ty první dva, protože to mimo jiné znamená např. podporu pro handikepované, Bidi atd. prostě to co umí normální TMemo a spol.
Datum: 2015-09-16 21:11:00 Tagy: FireMonkey, DX
Většinou používám Delphi z řady XE, ale pro některé projekty stále mám D2007. A některé věci mi vyloženě chybí, např. NameThreadForDebugging, což jsem popisoval s dalšími fíčurkami v článku Několik typů pro ladění v Delphi. A až dneska jsem zjistil, že D2007 něco podobného má, jen ne tak přímočaře.
Datum: 2015-09-09 21:27:00 Tagy: vlakna, Delphi 2007
FastMM4 je geniální. V podstatě ve většině instancí je nepřekonatelný - a že se o to stále někdo pokouší. Ale v případech brutálních vícevláknových (hodně vláken), paměťově intenzivních programů je možné, že FastMM přestane dobře škálovat díky tomu, že své interní struktury chrání spinlocky.
Datum: 2015-09-05 00:27:00 Tagy: FastMM, optimalizace, Threading
Následník Delphi XE8 je Delphi 10 Seattle aka DX Seattle.
Pokud máte 30 - 45 minut čas - navštivte embt.co/DevSurvey15 kde je anketa o dalším vývoji Delphi.
Anketa bude otevřená cca 10 dní.
Ne že bych Vás chtěl nějak ovlivňovat, ale otázky ohledně možného rozšíření WebBrokeru o pascal skript, nebo podpory Linuxu, ehm.
Více...Datum: 2015-08-19 01:18:00 Tagy:
Po nějaké době opět několik odkazů co mne zaujalo.
Datum: 2015-08-11 22:03:00 Tagy: vykriky
Embarcadero oznámilo, že zakoupilo a bude nadále nabízet Raize komponenty a CodeSite. Zároveň byl oznámen nový produkt BeaconFence. Více...
Datum: 2015-07-29 20:03:00 Tagy: komponenty
V rámci prověřování jednoho nápadu jsem chtěl vyzkoušel jak se chová TThread.Queue a TThread.Synchronize (více o těchto volání z dřívějška) u ne GUI aplikací (resp. zkoušel jsem jen konzolové).
David Berneda (autor TChart) zveřejnil krátkou jednotku TeeGenericTree.pas, která implementuje strom pro obecný datový typ na bázi generik. Podle mne je to pěkný studijní materiál na použití generik, pokud se nechcete omezovat je na pouhé použití existujících List<T> atd..
Datum: 2015-06-28 14:18:00 Tagy: generics
V XE8 byla z welcome page odstraněna podpora pro favorites z minulých verzí (moje oblíbená věc z welcome page). V update 1 se dostala zpět, ale jen v omezené podobě.
Naštěstí pokud vezmete obsah adresáře WelcomePage z verze XE7 a přeplácnete jím obsah v XE8, dostane zpět Vaši ověřenou úvodní stránku (pro jistotu zálohujte). Jinak se jedná o HTML stránku, takže si ji můžete poeditovat jak je libo, třeba odstranit bannery s reklamou.
Více...Datum: 2015-06-22 21:38:00 Tagy: XE8, embarcadero, IDE
Je dostupný update 1 pro XE8. Update je dostupný ve dvou verzích, jedna pro předplatitele a druhá pro plebejce (general update).
Pokud se podíváte na obsah aktualizace tak je hned vidět, že general update je v podstatě hotfix bez oprav chyb, kdežto aktualizace pro předplatitele obsahuje i opravy ve zdrojácích.
Pokud použijete aktualizaci pro předplatitele a nemáte předplatné, jednalo se o Váš poslední hrdinský čin před reinstalací. Na druhou stranu pokud si zálohujete adresář s dcu a pas před reinstalací (jen taková myšlenka)…
Více...Datum: 2015-06-19 21:56:00 Tagy: XE8
Dneska se bude řešit System.Copy, epesní nová komponenta na editaci textu, herní engine pro FireMonkey, změna podmínek aktualizace pro XE8 a nějaké odkazy.
Datum: 2015-05-21 22:53:00 Tagy: komponenty, kompilátor, RTL, Firemonkey, XE8, hry, grafika, hardware, IoT
Jedním z relativně zajímavých nástrojů ve verzi XE8 je GetIt - automatická instalace vybraných (většinou) open source knihoven jedním kliknutím myši.
Pravidelný obšťastník ze světa Delphi je opět zde.
Datum: 2015-05-06 21:49:00 Tagy: XE8, komponenty, iOS, Windows10, XE7
V Delphi XE8 byl konečně přidán do knihovny FireMonkey TImageList. Ale na druhou stranu to není až tak obyčejný imagelist jako ve VCL.
Datum: 2015-04-28 21:21:00 Tagy: Firemonkey, XE8
Místo konání: konferenční sál Morava, pavilon A3, Výstaviště BVV
Datum: středa 29.4.2015, začátek prezentace v 9:30 hodin, registrace začne v 8:30 hodin.
Seminář se bude konat ve středu dne 29.4.2014 v konferenčním sále Morava v přízemí pavilonu A3 na brněnském Výstavišti od 9:30 hodin, registrace začne v 8:30 hodin. Přednášet bude opět Paweł Głowacki. Bude přednášet v angličtině, jeho přednáška bude simultánně tlumočena do češtiny.
Datum: 2015-04-22 21:11:00 Tagy:
No minule jsem byl k THTTPClient trošku nespravedlivý, ve skutečnosti toho umí více než se zdálo. Kromě https bez nutnosti dodání OpenSSL pro různé platformy to má zajímavé možnosti ohledně paralelního zpracování. Ukáži na malém příkladu.
Ukáži nejprve příklad na zamyšlení a pak vysvětlím co to vlastně dělá. Více...
Datum: 2015-04-19 22:59:00 Tagy: XE8, Indy, synapse, RTL, paralel
Minule jsem označil MultiDevice Preview jako jednu z nejzásadnějších novinek v XE8 a věřím, že to programátorům pomůže.
V podstatě k tomu není co více říct, je to jednoduché jako facka. Použijete volbu z menu View - MultiDevice Preview a tam si vyberete které náhledy chcete používat (základní jsou předdefinovány).
Datum: 2015-04-14 21:14:00 Tagy: XE8, FireMonkey, mobil
Podle mne těžce inspirovaný .NET, https bez OpenSSL.
implementation
uses
System.Net.httpclient,System.Net.URLClient;
{$R *.dfm}
procedure TForm7.Button1Click(Sender: TObject);
var
o: THTTPClient;
response: IHTTPResponse;
r: TNameValuePair;
begin
o := THTTPClient.Create;
try
response:=o.Get('https://www.google.com/');
for r in response.Headers do
memo1.Lines.Add(r.Name + '='+r.Value);
Memo1.Lines.Add(response.ContentAsString);
finally
o.Free;
end;
end;
No synapse to není, ale je to integrované v RTL a něco to umí. Více snad později.
Produktová stránka embarcadero.com/products/delphi. Je tam i feature matrix, bug fix list, What's New in Delphi and C++Builder XE8.
To co mne zaujalo (podle mne v pořadí významnosti)
Datum: 2015-04-08 21:27:00 Tagy: XE8
Rád bych využil vlastní server. Po zhruba 13 letech práce pro jednu firmu bych rád změnil zaměstnavatele. Není to za každou cenu, ale cítím, že potřebuji změnu a nové výzvy.
Proto hledám firmu, která by potřebovala Senior programátora / Architekta - mne. Mám zájem o delší spolupráci.
Během své práce jsem pracoval na několika projektech, ať už na úrovni seniora nebo přímo autora systému, tak z 80% v Delphi a zbytek C# (úlety v PHP nepočítám).
Datum: 2015-03-30 21:27:00 Tagy: server
Posledních pár měsíců jsem s přestávkami pracoval na modernizaci UI a UX našeho programu. Cílem bylo popotáhnout vzhled UI aplikace (doufám) do současnosti a z hlediska UX odstranit několik historických nešvarů jako např. většinu modálních dialogů.
Zkusím naznačit některé věci, které jsem použil a doufám, že to někomu pomůže, nebo aspoň pobaví. Více...
Datum: 2015-03-22 21:16:00 Tagy: delphi, komponenty, praxe, Virtual TreeView
Dneska to budou spíše takové triky.
Instalátor Delphi je napsán v Install Aware, který bohužel ještě z různých důvodů (asi politických) spolupracuje s Microsoftim MSI. Nejen, že MSI je totální neefektivní (např. při reinstalaci otevírá prý každý soubor 4x - proto taky Delphi dělají unistall a nový install), ale ještě se ukládají informace pro reinstalaci do c:\ProgramData (to jde nějak změnit parametrem).
Problémem je, že v době SSD disků a VMWare jsou disky C malé a takové XE7 tak napráská 10GB dat, které se už moc nepoužijí. Bohužel do doby než se vykopne MSI s tím moc neuděláme.