Nuova classe per eseguire connessioni TCP
Con il rilascio di 4D 20 R8, è arrivata una caratteristica che ha cambiato le carte in tavola: la classe TCPConnection. Questa moderna classe sfrutta la sintassi orientata agli oggetti e supporta la gestione delle connessioni di rete asincrone, offrendo una nuova e potente alternativa ai comandi Internet di 4D. Utilizzando TCPConnection, è possibile connettersi praticamente a qualsiasi cosa, che si tratti di server, stampanti, registratori di cassa o dispositivi industriali, rendendolo uno strumento versatile per gestire requisiti di rete unici.
In questa versione è disponibile la funzionalità client TCP, che consente di connettersi a server esterni e di scambiare dati senza problemi.
Notarizzazione su macOS: modifiche alla struttura dei componenti
Il processo di notarizzazione di macOS continua ad evolversi. Sfortunatamente, la struttura interna dei componenti 4D progettata con 4D v11 – intesa a consentire la compatibilità multipiattaforma – non soddisfa più i requisiti introdotti da Apple per i Mac basati sul silicio, rendendo sempre più difficile l’autenticazione dei componenti.
Per semplificare il processo di distribuzione, abbiamo aggiornato la struttura dei componenti a partire da 4D 20 R8. Questa nuova struttura di cartelle rende l’autenticazione e la distribuzione semplici come la distribuzione di un’applicazione. Tuttavia, c’è un’avvertenza importante: la struttura aggiornata non è compatibile con le versioni precedenti di 4D (ad esempio, 4D 20 R7 e precedenti), mentre i componenti più vecchi rimarranno compatibili con le versioni più recenti di 4D.
Anche il componente Build4D è stato aggiornato per riflettere la nuova struttura. Quando si costruiscono i componenti, occorre prestare attenzione e assicurarsi di utilizzare la versione corretta di Build4D.
Promemoria importante: I componenti costruiti con 4D 20 R7 o versioni precedenti possono presentare errori durante la notarizzazione. La soluzione consigliata è l’aggiornamento a 4D 20 R8.
Crittografia. Autenticazione e convalida dell’autorità di certificazione
Nelle ultime versioni, le funzionalità di sicurezza di 4D sono state notevolmente ampliate, in particolare nell’area dei certificati. Tra queste figurano i certificati generati automaticamente per la comunicazione client-server, il supporto per i certificati ECDSA e, con 4D 20 R7, la convalida dell’autorità di certificazione per la comunicazione client-server delle applicazioni inglobate. Alcuni clienti richiedono il massimo livello di sicurezza, il che evidenzia l’importanza di queste funzioni.
Tuttavia, la sicurezza può essere complessa e ci sono state richieste di spiegazioni sul funzionamento di una connessione TLS/SSL e sul ruolo dei certificati. Per questo motivo, prima di addentrarci nelle nuove funzionalità, è utile suddividere i concetti di base della sicurezza e le loro interazioni.
Introduzione ai singleton di sessione
I singleton sono una delle caratteristiche principali di 4D 20 R5. In precedenza, gli sviluppatori potevano sfruttare due tipi di singleton:
- il singleton di processo, che è unico per ogni processo ma diverso tra i vari processi,
- e il singleton condiviso, che è unico per l’intera applicazione.
Con 4D 20 R7, stiamo rilasciando un nuovo tipo di singleton: il singleton di sessione!
QUIC Network Layer è pronto per la produzione!
Con la beta di 4D 20, vi abbiamo presentato il nostro nuovo livello di rete: Il livello di rete QUIC.
All’epoca era ancora in fase di sviluppo e quindi rimosso dalla versione ufficiale. Oggi siamo entusiasti di annunciare che il livello di rete QUIC è uscito dalla fase beta ed è ufficialmente pronto per la produzione!
Dopo rigorosi test di carico e il prezioso feedback dei primi utilizzatori, la stabilità e le prestazioni di QUIC sono state convalidate, superandopersino ServerNet in aree chiave. Ora che QUIC ha raggiunto la parità di funzionalità con ServerNet in 4D 20 R5, è il momento ideale per prendere in considerazione il passaggio.
Ma prima lasciate che vi spieghi meglio questa grande novità.
Supporto di REST e Qodly per i singleton
Con 4D 20 R5 abbiamo rilasciato i singleton. Con 4D 20 R6, ora è possibile chiamare direttamente le funzioni esposte dei singleton condivisi tramite chiamate REST. Allo stesso modo, è possibile utilizzare le funzioni esposte dei singleton condivisi negli eventi quando si progettano le pagine Qodly. Vediamo di approfondire queste nuove funzionalità.
Gestione delle richieste HTTP con gli agenti HTTP
In 4D 19 R6 abbiamo introdotto le classi HTTP per modernizzare la sintassi e migliorare le funzionalità dei nostri comandi client HTTP. Partendo da questa base, 4D 20 R6 introduce una nuova potente funzionalità: Gli agenti HTTP. Questi agenti consentono agli sviluppatori di personalizzare e ottimizzare le connessioni ai server HTTP, gestendo la persistenza e il riutilizzo delle connessioni per le richieste HTTP.
Deprecazione del livello di rete legacy
Per gestire la comunicazione tra 4D Client e 4D Server, 4D propone 3 diversi livelli di rete:
- Legacy,
- ServerNet,
- e QUIC.
Il livello di rete Legacy è stato introdotto 30 anni fa in 4D v3. È stato originariamente sviluppato per AppleTalk, migliorato per ISDN, quindi aggiunto a IPX e infine a TCP/IP.
È stato creato per un uso Client/Server molto diverso da quello che 4D fa oggi: è a thread singolo, ottimizzato per reti lente senza crittografia e disponibile per molti protocolli di rete diversi. In quanto tale, non è affatto ottimizzato per le moderne comunicazioni di rete e supporta un numero molto limitato di funzionalità.
Per questo motivo, con 4D 20 R5, abbiamo deciso di rendere obsoleto il livello di rete Legacy e prevediamo di rimuoverlo presto. Vi invitiamo a passare subito a ServerNet se lo state ancora utilizzando. Lasciate che vi spieghi quali vantaggi otterrete dal passaggio.
QUIC ora corrisponde alle capacità di ServerNet
Il livello di rete QUIC ora supporta lo stesso numero di funzionalità del livello di rete ServerNet. Con 4D 20 R5 abbiamo aggiunto il supporto per IPv6, broadcast e Single Sign-on su Windows.
Naturalmente, continueremo a migliorarlo nelle prossime versioni per renderlo il miglior livello di rete che 4D abbia mai avuto.
Ma per il momento, lasciatemi parlare un po’ di più delle ultime funzionalità che abbiamo aggiunto.
Classi condivise
Volete un modo semplificato di usare gli oggetti condivisi, seguendo la sintassi classica degli oggetti e chiamando automaticamente use/end use quando necessario?
Allacciate le cinture: arrivano le classi condivise!
Contattateci
Avete domande, suggerimenti o volete semplicemente entrare in contatto con i blogger di 4D? Lasciateci un messaggio!
* La vostra privacy è molto importante per noi. Fare clic qui per visualizzare il nostro Politica