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?


Delphi trik 1: System.Copy, string a 3. parametr

vložil Radek Červinka 4. prosince 2019 19:24

Rozhodl jsem se, že zkusím nějakou sérii malých článků o drobnostech. První bude spíše částečně nedokumentované chování.

System.Copy

function Copy(S: <string or dynamic array>; Index: Integer; Count: Integer): string;

z helpu:

"When S is a dynamic array, you can omit the Index and Count 
parameters and Copy copies the entire array."

takže

var
  s: string;
  s2: string;
begin
  s := 'Hello cool';
  s2 := Copy(s, 3); // <<<<<<<<<< jen 2 parametry
  ShowMessage(s2);

v assembleru Win32

Unit1.pas.32: s2 := Copy(s, 3);
    lea eax,[ebp-$0c]
    push eax
    mov ecx,$7fffffff  <<<< MaxInt
    mov edx,$00000003
    mov eax,[ebp-$08]
    call @UStrCopy

Jako poslední parametr je předán interně MaxInt a Copy vždy kontroluje zda délka odpovídá (můžete si ušetřit počítání zbývajících znaků - v helpu je popsáno, že se kontrola provede, aspoň se neseknete o 1).


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

Tagy:

trik

Delphi 10.3 Rio - Release 3

vložil Radek Červinka 21. listopadu 2019 22:12

Dne 21.11.2019 Embarcadero vydalo Delphi 10.3.3, tj. třetí release Rio.

Hlavní novinky jsou:

  • Delphi Android 64-bit support
  • iOS 13 and macOS Catalina (Delphi) Support

Android64

Android 64bit stále používá ARC memory model a přidává podporu Android App Bundle. Podpora celé RTL (vlákna atd) je samozřejmostí. Rozsáhlý článek od PM RAD Studio 10.3.3. Features, DocWiki: docwiki.embarcadero.com/RADStudio/Rio/en/10.3_Rio_-_Release_3, opravené chyby: New_features_and_customer_reported_issues_fixed_in_RAD_Studio_10.3.3.

Download: cc.embarcadero.com/reg/delphi


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

Tagy: ,

Aktualizace | Delphi

10 let delphi.cz

vložil Radek Červinka 28. října 2019 18:09

Zdá se mi to neuvěřitelné, ale už je to 10 let co jsem založil server delphi.cz. Moc děkuji všem lidem co jsem během těch let potkal za podporu a ze všech těch lidí speciální dík pro Richarda Kubáta z EMBT, protože bez jeho důvěry by tehdy server nevznikl.

Díky a jedeme dál.

R.


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

Tagy:

Server

Delphi SOAP a Document/literal

vložil Radek Červinka 8. října 2019 14:08

Ačkoliv REST je momentálně na vrcholu popularity, sem tam je potřeba i SOAP.

Delphi podporuje SOAP od cca Delphi 5 (tj. rok 2000). Bohužel vždy podporoval jen RPC/encoded variantu, což se někdy jeví jako problém, zvláště pokud máte komunikovat se systémem, který podporuje SOAP pouze ve variantě Document/literal. Ukázka rozdílů Literal vs. Encoded, RPC- vs. Document.

Jediná rozumná implementace SOAP co znám pro variantu Document/literal (ale podporuje i RPC) pro Delphi je IndySOAP. Jedná se o open source knihovnu, dostupnou na IndySOAP, přičemž verze z SVN je unicode kompatibilní.

Více...


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

Tagy: , ,

Komponenty

Česká vřelost ve světovém měřítku. Uplatni svoje zkušenosti v ABRA Software

vložil Radek Červinka 25. září 2019 22:49

ABRA

Každá firma má svůj příběh. Ty z IT oboru často začínají tím, jak dva kamarádi pracují na něčem, co tu ještě nebylo. Nejlépe v garáži. Dvojice přátel stála také u zrodu ABRA Software. Jeden programoval, druhý organizoval. Jen ne v suterénu, ale na půdě. Své role si ponechali dodnes, pouze s rozdílem, že za 29 let na trhu se firma rozrostla o dalších 150 lidí, kteří v Čechách, na Slovensku a ve Švýcarsku pomáhají vyvíjet software pro celý svět.

A co to má společného s Delphi? Vývoj robustního informačního systému, který organizuje procesy celé firmy a zvládá účetní operace, správu skladů, řízení výroby i aktualizaci nových zákonů. Delphi jako vývojové prostředí po letech útlumu zase ožívá a má budoucnost. Držíme krok a Delphi pravidelně aktualizujeme na nejnovější verzi.

Informační systém píšeme jako třívrstvou aplikaci. Produkt skládáme z větší části z našich vlastních vizuálních i nevizuálních komponent, což usnadňuje vývojářům práci a zvyšuje přehlednost. Kód průběžně refaktorujeme. Aplikace také podporuje běh na monitorech s vysokým rozlišením.

V produktu máme vlastní skriptovací jazyk a moderní REST API rozhraní. Informační systém podporuje tři databázové servery, přičemž používáme vlastní framework, který při většině práce koncového vývojáře odstíní od specifik konkrétní databáze. V rámci vývoje píšeme testy – unit, integrační, performance a jiné.

ABRA

A jak se u nás pracuje? Nestane se, že by něco vázlo. Kdo neví, ten se zeptá, a kdo může, pomůže. Bez ohledu na pozici. Bonusem je fitness stezka prospívající ajťáckým zádům a letní stolování na terase. Když si přivstanete, zacvičíte si nebo vyrazíte na společný běh. Poctivá zmrzlina u stánku ve firemním baru hned chutná o něco lépe.

Dostali jste chuť být součástí ABRA týmu? Potřebujeme zkušeného Delphi Developera, který je odvážný a spolu s hlavním architektem, dalšími programátory a testery posune jádro ERP systému ABRA Gen zase o kus dál. Chopte se příležitosti pracovat s třívrstvou architekturou a nástroji automatizace a optimalizujte jejich výkon. U nás uplatníte svoje rozsáhlé zkušenosti.

abra.eu/volne-pozice/

V nejbližších dnech pořádáme Prague Delphi Meetup. Jste srdečně zváni, více informací a registrace na: https://bit.ly/2kOCvON


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

Tagy:

Inzeraty

Delphi 10.3 Rio - Release 2

vložil Radek Červinka 23. července 2019 00:02

Během týdne vyšel druhý update pro Delphi Rio (10.3.2). Je to významný update nejen z hlediska platforem, kdy přináší macOS 64-bit a C++17 pro Windows 64-bit, ale i vzhledem k různým opravám.

Pro mne jsou důležité opravy ohledně IDE a jeho stability, ale z hlediska budoucnosti je nejdůležitější C++ LSP vylepšení (tj. to co jsem psal co se chystá pro Delphi - out of process napovídání a doplňování kódu). Dále např. Tools > Options > IDE > Compiling and Running > Enable unit directory cache, zrychlující přístup k souborům ve velkých projektech.

Přes GetIt je pro Enterprise+ dostupný FMXLinux.

docwiki, opravené chyby a nové věci

Na závěr: moje osobní třešnička - vylepšený TStrings Visualizer - dá se kopírovat text!

TStringsVisualizer


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

Tagy:

Aktualizace | Novinky | Novinky v Delphi

FMX Linux pro předplatitele Delphi zdarma

vložil Radek Červinka 1. července 2019 22:38

Embarcadero oznámilo dohodu s Eugene Kryukov, což je originální autor FMX o licencování FMX pro Linux. Nejedná se o jednorázovou akci, ale o dlouhodobou spolupráci.

FMXLinux je dostupný jako GetIt download pro verzi 10.3.1 Delphi.

Originální oznámení Announcing FmxLinux Bundling with Delphi and RAD Studio


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

Tagy: ,

FireMonkey

RAD Studio roadmap květen 2019

vložil Radek Červinka 6. června 2019 00:51

Embarcadero zveřejnilo plány dalšího vývoje Delphi včetně komentáře jednotlivých produkt managerů.

Roadmap RAD Studio Roadmap May 2019, dále komentáře produkt managerů.

Více...


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

Tagy:

Delphi

Konference RAD Studio & Ranorex Live - Bratislava 2019

vložil Radek Červinka 13. května 2019 23:37

Technická konference pro potenciální i stávající uživatele vývojových nástrojů Embarcadero RAD Studio, Delphi a C++Builder.

Bratislava

6.6.2019 od 9:00 hodin, Velký sál Doprastav, Košická 52, Bratislava - Ružinov

Svět se mění čím dál tím rychleji a pro oblast informačních technologií to platí dvojnásob. Internet věcí přestává být synonymem pro "hračky" a různé "podivnosti" a stále častěji nachází uplatnění ve vědě, průmyslu a dalších odvětvích. Stejně tak se stalo běžnou realitou využívání cloudových služeb. Uživatelé očekávají od nových aplikací propojitelnost s existujícími systémy, webový přístup a podporu mobilních zařízení. Větší důraz je také kladen na jejich vzhled, ergonomii a kvalitu. Profesionální design a důkladné testování již není konkurenční výhoda, ale nezbytnost. Jedná se o nové výzvy, ale především úplně nové příležitosti pro programátory a vývojáře. Přijďte se podívat, jak Vám mohou pomoci vývojové nástroje společností Embarcadero a Ranorex.

Program konference

  • 08:00 - 09:00 Registrace účastníků
  • 09:00 - 09:05 Zahájení konference
  • 09:05 - 10:30 Vývoj vestavěných aplikací s RAD Studiem a RAD Serverem
  • 10:30 - 10:40 Občerstvení
  • 10:40 - 11:40 Využití stylů a designových jazyků Microsoft a Google ve VCL
  • 11:40 - 12:00 Občerstvení
  • 12:00 - 13:15 Úvod do automatizovaného testování s nástrojem Ranorex Studio
  • 13:15 - 13:30 Shrnutí, dotazy a závěr konference

Přednášky budou probíhat v angličtině, pro zájemce však bude k dispozici simultánní překlad do slovenštiny.

Nutná je registrace na seminář (zdarma)


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

Tagy:

Tiskové zprávy

Implementujeme iterator pro Bookmarklist

vložil Radek Červinka 26. března 2019 22:14

Už od verze 2007 Delphi podporuje procházení přes for - in, bohužel některé třídy stále tuto podporu nemají.

Požadovaný stav:

var
  bmk: TBookmark;
begin
  for bmk in  DBGrid1.SelectedRows do
  begin
//xxx
  end;
end;

Více...


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

Tagy:

Delphi | Praxe | Rozšíření Delphi

VCL High DPI Image List

vložil Radek Červinka 28. února 2019 12:57

V Delphi Rio byla přidána podpora pro VCL multi resolution imagelisty.

V podstatě se jedná o dvě spolupracující komponenty:

  • TImageCollection - udržuje vlastní multi resolution bitmapy
  • TVirtualImageList - podle DPI zprostředkovává pohled na TImageCollection

Více...


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

Tagy:

Novinky v Delphi

Delphi 10.3 Rio - Release 1

vložil Radek Červinka 19. února 2019 22:58

U příležitosti 24. výročí uvedení Delphi na trh byl vydán 1.update pro Delphi 10.3 Rio.

Release notes.

Ve zkratce co mne zaujalo:

  • lepší podpora FireDAC pro Firebird 3.0.4 a embedded Firebird
  • u SOAP klientů lepší podpora pro certifikáty (souvisí se zásadní změnou implementace SOAP za pomoci http knihovny viz 10.3)

Oprava některých chyb ohledně IDE a mnoha dalších - celý seznam


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

Tagy:

Zajimavé předávání parametrů pro OLE

vložil Radek Červinka 22. ledna 2019 00:14

Sem tam mne Delphi překvapí. Nepřijde vám ta syntaxe u PrintOut trochu zajímavá? Delphi prý to podporují od verze 2. Myslím, že na pořadí ani nezáleží.

  if (OpenDialog1.Execute) then
  begin
    WinWord := CreateOleObject('Word.Application');
    if (not (VarIsEmpty(WinWord))) then
    begin
      try
        WinWord.Visible := false;
        Docs := WinWord.Documents;
        Doc := Docs.Open(OpenDialog1.FileName);
        vFrom := 1;
        vTo := 2;
        Doc.PrintOut(Background := false, Append := false, Range := wdPrintFromTo, OutputFileName := EmptyParam, From := vFrom, To := vTo);
                  // err
      finally
        WinWord.Quit;
      end;
    end;

Jen pro připomenutí - PrintOut má mnoho parametrů - word.document.printout


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

Tagy:

Praxe

Windows 10 "Per Monitor v2" podpora a lepší podpora Hi-DPI

vložil Radek Červinka 8. ledna 2019 00:08

S verzi Delphi 10.3 Rio dochází k podpoře Windows 10 “Per Monitor v2”. Nové API řeší problém, kdy dříve nebylo možné získat informace o velikosti elementů pro různé monitory (jako třeba scrollbary), ale šlo to pouze pro primární monitor.

Co to znamená pro kompatibilitu?

Per Monitor Delphi

Více...


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

Tagy:

Novinky v Delphi

FireDAC a connection pool

vložil Radek Červinka 16. prosince 2018 10:57

Méně známou vlastností FireDAC je, že obsahuje přímo podporu pro Connection Pool.

Co je Connection pool? Connection pool je třída obsahujicí kolekci otevřených připojeni. V případě vícevláknových aplikací (tj. např. všechny ty REST servery nebo cokoliv kde obsluhuje více požadavků zároveň, případně i normální aplikace, kde používáte více dynamických connection) většinou potřebují přístup do databáze.

FireDAC je threadsafe (tj. bezpečné použítí ve vláknu) jen v případě, že vlákno má vlastní Connection (to je normální požadavek napříč jazyky nebo platformami). Přičemž největší režie je právě vytvoření připojení do DB. Proto se používá mechanismus ConnectionPool, kdy už nepoužívané Connection objekty jsou po nějakou dobu k dispozici a další požadavek na novou connection bude uspokojen některou z těchto Connection.

Nebojte se, FireDAC to má elegantně vyřešeno.

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

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).

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 10).

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.

Poslední komentáře

Comment RSS