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 si všimněte mého pojednání ř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ů.
Uvažujete o vývoji pro mobilní zařízení? V tom případě navštivte sekci FireMonkey.

Pokud Vám nestačí náš přehled komponent, navštivte adresář nejpopulárnějších open source Delphi komponent

Free Delphi Starter Edition download

Potřebujete Delphi školení nebo konzultace na různá témata?


DLL a WideString

vložil Radek Červinka 26. listopadu 2016 23:37

Myslím, že normální programátor používající DLL v Delphi obecně chápe, že předávat string jako parametr do DLL není možné bez použití berličky typu SimpleShareMem, která propojí memory manager v hlavní aplikaci s memory managerem v DLL. Což ovšem znemožňuje použití DLL z jiných jazyků a proto se musíme snížit na úroveň předávání přes PChar nebo PWideChar.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , ,

Delphi | Praxe

FastMM, UseReleaseStack a další

vložil Radek Červinka 29. května 2016 03:39

Před nedávnem Primoz Gabrijelcic přidal do nejnovější verze FastMM další option, který by měl vylepšit chování FastMM při mnoha vláknech. Od té doby se ozvalo několik lidí, že to s úspěchem používají na velmi zatížených serverech (např. Eric Grange na beginend.net se 180 vlákny). Původní oznámení je na googleplus - velmi zajímavé.

Pozadí: při uvolňování, resp. alokaci používá FastMM zámek, kterým chrání své struktury. Čím více je vláken, tím větší je šance, že na sebe narazí a budou soupeřit (resp. čekat na uvolnění). Primoz přišel s myšlenkou, že nejméně při uvolňování pokud se nepodaří uvolnění k vůli zámku, tak se takový blok odloží a zkusí se uvolnit při dalším volání, nebo ho uvolní nové čistící vláknou na pozadí.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy:

Praxe

SapMM - Efektivní Memory Manager pro multithreaded aplikace

vložil Radek Červinka 5. září 2015 01:27

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.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , ,

Optimalizace | Praxe

Útržky - Trasování alokace a dealokace paměti

vložil Radek Červinka 6. října 2014 00:18

Znáte ten pocit, kdy Vás napadne podle Vás skvělá myšlenka, tu začnete implementovat a přijdete na to, že to v praxi nebude úplně přesně fungovat jak si člověk vymyslel, ale je Vám líto to vyhodit, protože jsou v tom určité myšlenky, které se někomu mohou hodit? Tak to je případ dnešního kódu.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: ,

Praxe

Zvětšení dostupné paměti 32bit programů v Delphi

vložil Radek Červinka 19. září 2014 23:09

Jednoho krásného dne Váš program zjistí, že trpí nedostatkem paměti. Přirozeným krokem je přechod na 64bit aplikace, ale existuje i jiná možnost. U EXE (resp. PE souboru) se dá specifikovat flag IMAGE_FILE_LARGE_ADDRESS_AWARE. Tento flag byl původně určen pro speciální mód 32bit Windows, kdy místo normálních cca 2GB paměti pro 32bit proces nabízel celých úžasných 3GB volné paměti. Praktická využitelnost tedy nic moc, protože tento mód Windows se moc nepoužíval.

Situace se obrátila s příchodem 64bit Windows (jen aby nedošlo k nedorozumnění - dávejte pozor kdy mluvím o 32bit procesu, kdy o 32bit Windows a kdy o 64bit Windows).

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , , , ,

Praxe

Náhodné výkřiky 41

vložil Radek Červinka 8. ledna 2014 23:22

Do nového roku s další hrstí odkazů, poznámek a vůbec věcí co mne zaujalo.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , , , , , , ,

Náhodné výkřiky 31

vložil Radek Červinka 20. října 2012 00:54

Další dávka věcí co mne zaujalo z oblasti Delphi nebo IT.

Frank Borland

Fast Report uvedl Fast Report FMX - multiplatformní report generator pro Apple Mac OS X a Microsoft Windows na bázi FireMonkey, kompatibilní s Embarcadero RAD Studio XE2/XE3.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , , ,

Akce | FireMonkey | Novinky

Ladění za pomoci SafeMM

vložil Radek Červinka 4. července 2012 16:01

Pravidelní čtenáři snad chápou, že se tématu ladění věnuji dost podrobně.

Schopnost najít chybu je podle mne to, co odlišuje vynikajícího programátora od zbytku. Postupně jsem se snažil ukazovat různé nástroje a finty jak si práci v této oblasti zjednodušit (počínaje fulldebug mode u FastMM, přes seriál o debuggeru atd).

Dnes ukáži zajímavou možnost a tou je SafeMM.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , ,

FastMM4 a využití paměti

vložil Radek Červinka 22. června 2012 22:37

Kdysi jsem popisoval jakým způsobem FastMM využívá paměť a jak optimalizuje její používání. Pokud chcete vědět opravdu kolik Váš program používá paměti můžete použít Process Explorer (ale tam je to velmi zkreslené cache memory manageru, protože ten hned paměť nevrací systému, ale dá ji zase programu až si požádá) nebo využít kód, který dodal přímo autor FastMM a který využívá přímo reálných informací.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy:

FastMM4 pro OSX

vložil Radek Červinka 12. června 2012 22:52

FastMM nyní nově podporuje OSX. Kukněte do SVN, od revize 59. Podle testerů je výkon výrazně lepší, mluví o 20 - 40%. A to je jen verze bez ASM. Více o FastMM viz tag FastMM.


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: ,

Novinky

Náhodné výkřiky 15

vložil Radek Červinka 17. října 2011 22:36

Kupodivu mne stále ještě něco napadá, takže opět pár dalších poznámek. Dnes to bude zmínka o 64bit assembleru, FireMonkey, memory manageru, linkování COFF v Delphi a CnWizards. A na závěr kousek elegantního kódu.

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , , ,

Free, FreeAndNil, Assigned a spol

vložil Radek Červinka 13. května 2011 21:39

I pokud je člověk začátečníkem, v Delphi narazí na objekty a třídy v podstatě hned - např. i formulář je objekt.

Jen pro úplnost: objekt je instancí třídy, ale to modří již vědí. Vytvoření objektu je provedeno voláním konstruktoru patřičné třídy. Následně objekt existuje v paměti dokud programátor neuzná za vhodné ho uvolnit (zjednodušeně).

Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , , ,

Začátečníci

FastMM4 a detekce přepisu paměti

vložil Radek Červinka 3. ledna 2011 22:17

Snad už naposledy malá poznámka ohledně využití FastMM4 při ladění. Tentokráte jak na detekci zápisu mimo alokovanou paměť.Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , ,

Praxe

Zrychlení IDE různých verzí Delphi

vložil Radek Červinka 5. prosince 2010 23:09

Každý program se dá zrychlit. Nejinak je tomu i u IDE Delphi libovolné verze. V podstatě znám tři možnosti - v závislosti na verzi Delphi.Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , , ,

DLL jako plugin

vložil Radek Červinka 11. července 2010 00:13

Minule jsem ukázal jak se DLL dělá, na co je atd. a dnes zkusíme něco praktického. Zkusíme implementovat do naší aplikace pluginy, tj. rozšiřující moduly.

Náš program zjistí dostupné pluginy, zobrazí informace, co který plugin dělá a po výběru pluginu uživatelem v něm zavolá modální dialog.Více...


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy: , ,

Praxe

Naše nabídka

Partial English version.

MVP
Ing. Radek Červinka - Embarcadero MVP
profil na linkedin, Twitter:@delphicz

Nabízím placené poradenství a konzultace v oblasti programování a vývoje SW.
Dále nabízíme i vývoj speciálního software na zakázku.

Neváhejte nás kontaktovat (i ohledně reklamy nebo burzy práce).

Pokud chcete podpořit tento server libovolnou částkou, můžete použít PayPal. Moc děkuji.

Delphi Certified Developer

O Delphi.cz

Delphi je jediný moderní RAD nástroj podporující tvorbu nativních aplikací pro platformu Win32, Win64 , Mac OSX a na iPhone a Android (s výhledem na další platformy díky FireMonkey) na současném trhu (včetně Windows 8.1).

V současnosti je světová komunita přes dva miliónů vývojářů.

Delphi.cz je nezávislý portál pro uživatele Delphi. Portál není koncipován pro úplné začátečníky, i když i ti se zde nebudou nudit, ale spíše na programátory, kteří již něco znají a chtějí své znalosti dále rozvíjet a sledovat novinky.

Anketa

Poslední komentáře

Comment RSS