06 november 2023
Embarcadero heeft onlangs de bèta van RAD Studio 12 uitgebracht, met behoorlijk wat updates voor C++Builder. Maar als Delphi-ontwikkelaars zijn we erg blij met alle verbeteringen in Delphi! Dus laten we er eens induiken en kijken wat er allemaal naar Delphi 12 komt!
FireMonkey gebruikt van oudsher stylesom UI rendering te abstraheren. Deze styles bepalen het uiterlijk en de functionaliteit van UI-elementen op verschillende platformen, waaronder DirectX en Metal. Recent is de Skia-bibliotheekimplementatie voor Delphi ontwikkeld door Delphi-enthousiastelingen in Brazilië, die een gedetailleerde abstractie biedt voor deze platformen.
Skia zelf staat bekend om zijn mogelijkheden in 2D grafische toepassingen, met Google’s Chrome browser als een van de gebruikers. De bibliotheek, ontwikkeld door Google, legt de nadruk op prestaties. Gebruikers van de Skia4Delphi bibliotheek zijn misschien bekend met de functies. RAD Studio integreert nu Skia, wat leidt tot verbeterde renderingsnelheden en biedt meer componenten met een Skia-gebaseerde driver.
Voor degenen die oude VCL-toepassingen met MDI-forms gebruiken, is het upgraden van Delphi-toepassingen altijd een uitdaging geweest. VCL is veel verbeterd, bijvoorbeeld door de integratie van HighDPI, nieuwere besturingselementen, enzovoort. Maar het MDI model bleef in het verleden – tot nu.
De MDI (Multiple Document Interface) is een oud UI-ontwerp. Je kunt het zien als meerdere forms genest in een primair venster. Ondanks dat het gedateerd is, is het effectief en veel projecten zijn ermee gebouwd.
Embarcadero heeft dit opgepakt en heeft het VCL MDI-model vernieuwd. Het is nog steeds in de kern een platform-API, maar belangrijke problemen zijn aangepakt. Bovendien is er een nieuwe tabgebaseerde UI voor het hosten van MDI-forms.
Delphi’s Object Pascal staat string literals en static strings in code toe. Historisch gezien waren deze beperkt tot “korte strings” met een limiet van 255 tekens. Met Delphi 12 verandert dat.
Afgezien van de belangrijke uitbreidingen voor string literals, brengt Delphi 12 meer verbeteringen in de taal, waarvan sommige misschien niet zo direct opvallen. In tegenstelling tot standaard alias-types, die nieuwe, identieke types creëren, zijn zwakke aliassen (weak aliasses) directe vervangingen voor originele types. De drijvende kracht hierachter is verbeterde compatibiliteit tussen 32-bit en 64-bit toepassingen.
Voorheen kon NativeInt fungeren als een sterke alias voor zowel Integer (op 32-bits platforms) als Int64 (op 64-bits platforms). Dit leidde soms tot dubbelzinnige compileraanroepen. Nu, in Delphi 12, is NativeInt een weak alias, wat betekent dat het niet samen kan bestaan met zijn tegenhangers in overload scenario’s.
Deze aanpassing, bedoeld om duidelijkere 32-bit/64-bit compatibiliteit te bevorderen, kan code-aanpassingen vereisen, vooral voor 64-bit toepassingen. Ondanks mogelijke initiële uitdagingen is deze verandering bedoeld om de Delphi-taal te vereenvoudigen en toekomstbestendig te maken.
Zoals je kunt lezen, kijken we erg uit naar de nieuwe Rad Studio / Delphi 12 release! Deze functies waar we het over hadden zijn beschikbaar in de huidige Yukon beta, beschikbaar voor klanten met een actief update abonnement. Als je tot die groep behoort en geen uitnodiging hebt ontvangen, kun je contact opnemen met Embarcadero of een verkooppartner en vragen naar de aanmeldlink.
Als je geen actief abonnement hebt, kun je overwegen een nieuwe licentie te kopen of contact op te nemen met de verkoopafdeling. Als je eenmaal een licentie hebt, kun je vragen of je mee mag doen met de bèta.
Deze blogpost is gebaseerd op een pre-release versie van de RAD Studio software en is geschreven met specifieke toestemming van Embarcadero. Geen enkele functie is toegezegd tot de GA-release van het product.
Contact