Web API con Delphi e DMVCFramework

“Il corso perfetto per imparare a sviluppare Web API con Delphi in modo semplice e veloce!"

Corso tenuto da Daniele Teti, autore della guida ufficiale e sviluppatore principale di DMVCFramework

Durata: 2 giorni
Prezzo: € 490,00 IVA esclusa

Prossimo corso in partenza 23 e 24 febbraio

Prerequisiti:

Delphi Tokyo o superiore, OOP e HTTP.

Descrizione

La disponibilità dei dati aziendali da remoto non è più un optional. I tuoi hanno bisogno di accedere alle informazioni fondamentali, anche quando non sono in sede. In questo corso scoprirai quanto è semplice (e performante) utilizzare Delphi per scrivere servizi RESTful/JSON utilizzando DelphiMVCFramework. In questo corso verranno analizzate tutte le peculiarità di DelphiMVCFramework, il framework apprezzato in tutto il mondo per la sua velocità e semplicità. Il workshop include lo sviluppo reale di un completo server RESTful e di un client web javascript! Questo è il corso perfetto per te che vuoi imparare a sviluppare Web API con Delphi in modo semplice e veloce!

Contenuti
  • Introduzione a DelphiMVCFramework
  • Perché DMVCFramework è il framework più diffuso su Github? Cosa lo rende unico?
  • Sviluppare Web API con Delphi
  • I controller
  • Le action
  • Gli Action Filter
  • Il routing
    • URL Mapped Parameters
    • Strongly Typed Parameters
    • QueryString parameters
  • Gli attributi che rendono DMVCFramework facile da usare
    • MVCPath
      • Supporto alle regular expressions in MVCPath
    • MVCHTTPMethod
    • MVCProduces
    • MVCConsumes
    • MVCDoc
  • Iniezione dei parametri
    • MVCFromBody
    • MVCFromQueryString
    • MVCFromHeader
    • MVCFromCookie
  • Come preparare la risposta per il client
    • JSON
    • DataSet
    • Binary
    • Text
    • Stream
    • HTML
    • Custom
  • Functional Actions
  • Render Methods
  • Progettare un’application DMVCFramework
  • Progettare RESTful Web API
  • Notifiche PUSH e Server Sent Event
  • Middleware
  • Basic Authentication
  • JWT Authentication
    • Implementare la scadenza dei token con il nuovo middleware TMVCJWTBlackListMiddleware
  • Creare un meccanismo di authenticazione e authorizzazione custom
  • Server Side View
    • Quando e come utilizzare le Server Side View
    • Introduzione a TemplatePro
      • Sintassi
      • Scenari di utilizzo
      • Integrazione con DMVCFramework
    • Sviluppo di applicazioni e siti web server-side con DMVCFramework e TemplatePro
  • Integrazione con HTMX
    • Cosa è HTMX e perché è un ottimo complemento per DMVCFramework
    • Sviluppo di applicazioni web moderne senza (quasi) usare javascript
  • Analizzare le performance
  • TMVCActiveRecord: OOP e relazionale vanno finalmente d’accordo!
    • Persistenza e mapping
    • CRUD
    • Gestire i merge complessi con TMVCActiveRecord.Merge e UOW
    • Le interrogazioni con RQL
    • Le interrogazioni complesse con SQL
    • Le relazioni
    • Semplifica il codice transazionale con i TransactionContext
  • Dependency Injection con MVCInject
    • Definire un servizio iniettabile
    • Iniettare servizi nei controller
    • Iniettare servizi in altri servizi
    • Best practice
  • Sqids: cosa sono e come usarli efficacemente in DMVCFramework
    • L’attributo MVCSerializeAsSqids
  • Configurazione automatica con .env
    • Come funziona .env
    • Cosa offre DMVCFramework
    • Tutte le configurazione di default riconosciute da DMVCFramework
    • Come definire configurazioni specifiche per diversi ambienti (es. dev, test, prod)
    • Come usare .env in qualunque tipo di progetto
  • Scenari di utilizzo: dal micro al macro
    • Servizi RESTful e/o JSON-RPC
    • Usare l’attributo MVCJSONRPCAllowGET per permettere ai servizi JSON-RPC di sfruttare la cache
    • Comunicazione a 360°: dalla stessa macchina a Internet passando per la LAN
  • Scrivere un client WEB con javascript
  • Scrivere un client Mobile con Delphi
  • Convertire un servizio SOAP in un servizio RESTful
  • Convertire un servizio SOAP in un servizio JSON-RPC
  • Analizzare le performance con Profiler.Start
  • Profilare porzioni di codice con Profiler.Trace
  • Semplificare la deserializzazione di dati complessi e composti tramite il nuovo attributo MVCOwned
  • Le migliori best practice per velocizzare e ottimizzare lo sviluppo con DMVCFramework
Torna in alto