Nozioni di base sull'apprendimento della quarta dimensione
Punti chiave
- La pagina originale “4th Dimension Learning Basics” era un elenco di collegamenti curato: il suo vero valore era indirizzare i nuovi arrivati verso la manciata di risorse che contavano: il sito ACI US, la mailing list 4D-NUG, le note tecniche e il Partner Program.
- I concetti fondamentali di 4D (struttura vs dati, tabelle/campi/relazioni, moduli, metodi, liste di valori) sono rimasti notevolmente stabili tra le versioni, quindi il materiale didattico dell’era v6.x insegna ancora idee trasferibili.
- Il più grande acceleratore per un principiante è una comunità: mailing list, gruppi di utenti e forum rispondono alle domande del tipo “perché questo non funziona” a cui la sola documentazione non può rispondere.
- Lo sviluppo professionale in 4D è un percorso di guadagno praticabile, e i programmi per partner/sviluppatori del fornitore hanno storicamente fornito supporto prioritario, database di esempio e accesso beta.
- Molti degli URL originali sono morti o reindirizzati; la strategia duratura è apprendere le categorie di risorse (documentazione ufficiale, comunità, codice di esempio, strumenti) piuttosto che memorizzare collegamenti specifici.
Perché questa pagina esisteva — e perché è ancora importante
La pagina originale che stai leggendo è un’istantanea di un momento specifico nella storia di 4D: la fine degli anni ‘90, quando ACI US (il distributore nordamericano di 4D, in seguito ribattezzato 4D Inc.) manteneva la presenza principale sul web per il prodotto su aicus.com. La pagina era essenzialmente una directory di risorse: un elenco di URL che uno sviluppatore avrebbe dovuto aggiungere ai segnalibri prima di iniziare a lavorare seriamente con 4th Dimension.
Vale la pena preservare questa inquadratura, perché riflette una verità che non è cambiata: imparare 4D significa tanto sapere dove cercare quanto memorizzare la sintassi. La piattaforma ha sempre avuto una comunità relativamente piccola e affiatata rispetto, ad esempio, ai mondi di Microsoft Access o FileMaker, e quella comunità — mailing list, gruppi di utenti, note tecniche del fornitore — è stata storicamente la strada più veloce per passare dal “blocco” alla “pubblicazione”.
Quindi, invece di eliminare l’elenco originale, questa versione ampliata mantiene ogni risorsa nominata e aggiunge il contesto, il giudizio e gli equivalenti moderni di cui uno sviluppatore ha effettivamente bisogno.
I concetti fondamentali di 4D che stai davvero imparando
Prima di inseguire i collegamenti, è utile capire cosa sia 4D, perché la terminologia modella ogni risorsa che leggerai.
4D è un sistema di gestione di database relazionali con un ambiente di sviluppo integrato. La sua caratteristica distintiva — e il motivo per cui piace ai “citizen developer” e ai team IT di piccole dimensioni — è che raggruppa diverse funzionalità che di solito sono prodotti separati:
- Un motore di database (il 4D Server / l’applicazione 4D) che archivia e serve i dati.
- Un editor di strutture per definire tabelle, campi e relazioni.
- Un editor di moduli per creare l’interfaccia utente, inclusi i moduli elenco e i moduli dettaglio.
- Un linguaggio di programmazione (originariamente chiamato 4D, ora spesso indicato come 4D Langage / ORDA nelle versioni moderne) con un’ampia libreria di comandi integrati.
- Un runtime che può essere distribuito come applicazione compilata e autonoma.
Il modello mentale da interiorizzare precocemente è la distinzione tra la struttura (lo schema: tabelle, campi, relazioni e i metodi ad essi collegati) e il file di dati (i record effettivi). Nel 4D classico, si trattava di file separati, e un errore comune dei principianti era spostare o copiare l’uno senza l’altro. Comprendere questa divisione spiega un’intera classe di problemi del tipo “il mio database non si apre”.
Related: — A spreadsheet-simple interface sitting on top of a real , with automations, views, and shareable interfaces..
Altri due concetti ricorrono costantemente nell’elenco delle risorse originali:
- Metodi — blocchi di codice collegati a oggetti, moduli, tabelle o al database stesso. Il metodo del database, in particolare, viene eseguito all’avvio ed è dove si inizializzano le variabili globali e si configura l’ambiente.
- Liste di valori — elenchi riutilizzabili di scelte legate a campi o variabili, che è il modo in cui 4D crea menu a discesa e menu a comparsa senza doverli codificare manualmente uno per uno.
Se comprendi la differenza tra struttura e dati, i metodi e le liste di valori, puoi leggere quasi ogni tutorial 4D — vecchio o nuovo — e seguirlo.
Navigazione nell’elenco delle risorse originali
I collegamenti della pagina originale rientrano in categorie riconoscibili. Ecco come considerare ciascuna di esse, incluso ciò che è invecchiato e ciò che no.
If you are shopping: — A that plugs into the wider Zoho suite and prices per user rather than per app..
Risorse ufficiali del fornitore
La pagina rimandava a ACI US su aicus.com per download, supporto, note tecniche e il Partner Program. ACI US era la società che distribuiva 4D in Nord America; il prodotto stesso ha avuto origine presso ACI (Analyses Conseils Informatique) in Francia, e il fornitore moderno è 4D SAS, il cui sito è 4d.com. Il dominio aicus.com e i suoi collegamenti profondi (download, articoli di supporto, FTP) sono ormai in gran parte storici: trattali come un archivio piuttosto che come una destinazione attiva.
Ciò che sopravvive concettualmente è la struttura del supporto del fornitore:
- Note tecniche — documenti brevi e mirati che spiegano un comportamento specifico o una soluzione alternativa. Erano preziose nell’era pre-Stack-Overflow.
- Database di esempio — strutture di esempio scaricabili che potevi aprire, ispezionare e “cannibalizzare”. Questo è ancora uno dei modi migliori per imparare gli idiomi di 4D.
- Download / aggiornamenti — release puntuali che correggevano bug specifici.
La mailing list 4D-NUG
La mailing list 4D-NUG (4D North User Group) era, per molti sviluppatori, la risorsa più preziosa della pagina. Le mailing list erano i social media dell’epoca: postavi una domanda e ricevevi risposte da sviluppatori esperti, spesso entro poche ore. La pagina rimandava anche a un archivio ricercabile (ospitato su pdm-inc.com / “monkeywerks”).
La lezione qui è duratura: un archivio consultabile di domande passate vale più dell’elenco attivo, perché la maggior parte delle tue domande sono già state poste. Gli equivalenti moderni sono i forum ufficiali 4D e i siti della community, oltre ai siti generali di Q&A per sviluppatori. Quando ti imbatti in un muro, cerca prima nell’archivio.
Articoli e strumenti di terze parti
- “Upgrading From FileMaker Pro to 4D” di Steve Hussey — una guida alla migrazione. Le guide alla migrazione sono sproporzionatamente utili perché sono scritte per persone che conoscono già un database e hanno bisogno che vengano spiegate le differenze, non le basi. Se provieni da FileMaker, Access o da un altro strumento low-code, cerca questo genere.
- 4D Assimilator — uno strumento che consente a 4D di clonare qualsiasi sorgente ODBC, importare strutture di tabelle e quindi importare i dati. Questo è un primo esempio dell’interoperabilità ODBC (Open Database Connectivity) che 4D supporta da tempo. Se hai bisogno di estrarre dati da un altro sistema, è essenziale comprendere ODBC e, successivamente, i connettori nativi e SQL.
- 4D MetaBASE — un’applicazione di esempio scaricabile (la pagina indicava che era un download di circa 5 MB, grande per l’epoca). Applicazioni di esempio come questa sono effettivamente documentazione vivente.
Programmi comunitari e professionali
- Gruppi di utenti — riunioni locali o regionali. La pagina rimandava a una directory di essi. Anche in un mondo remote-first, un gruppo locale è prezioso per l’aiuto pratico e i contatti di lavoro.
- Il programma Partner ACI US — per gli sviluppatori che svolgono lavoro con 4D professionalmente. La pagina elencava vantaggi concreti: supporto tecnico prioritario su un numero 800, tutte le note tecniche e i database di esempio “dall’alba dei tempi”, sconti e accesso alle versioni beta. Quest’ultimo elemento — l’accesso beta — è un vero vantaggio competitivo, perché consente di preparare i clienti ai cambiamenti imminenti prima che vengano rilasciati.
Come decidere su quali risorse investire
Non tutte le risorse meritano lo stesso tempo. Utilizza questo ordine di priorità approssimativo, che riflette il modo in cui lavorano effettivamente gli sviluppatori 4D esperti:
| Priorità | Tipo di risorsa | Perché è importante | Investimento di tempo |
|---|---|---|---|
| 1 | Documentazione ufficiale e note tecniche | Autorevole; definisce il comportamento corretto | Riferimento continuo |
| 2 | Archivio comunitario (mailing list / forum) | Risponde alle domande reali sul “perché” | Cerca secondo necessità |
| 3 | Database di esempio | Insegna idiomi e strutture tramite l’esempio | Studiane alcuni a fondo |
| 4 | Guide alla migrazione | Percorso più veloce se conosci un altro strumento | Leggi una volta, attentamente |
| 5 | Strumenti e utilità (ODBC, importatori) | Estendono la portata ad altri sistemi | Impara quando necessario |
| 6 | Gruppi di utenti e programmi partner | Supporto, networking, accesso beta | Situazionale |
Il principio: trascorri le tue prime ore nella documentazione ufficiale e in un buon database di esempio, poi vivi nell’archivio della community. Strumenti e programmi arrivano più tardi, una volta che sai cosa stai costruendo.
Primi passi pratici per un nuovo sviluppatore 4D
Tradurre tutto quanto sopra in un piano concreto:
- Installa l’attuale versione di 4D dal sito ufficiale del fornitore e apri un database di esempio. Non iniziare da una struttura vuota — inizia da qualcosa che funzioni.
- Apri l’editor della struttura e identifica le tabelle, i campi e le relazioni. Quindi apri un modulo e trova i metodi collegati ai suoi oggetti. Questo connette lo schema all’interfaccia utente.
- Traccia una lista di valori dalla sua definizione al campo o alla variabile a cui è associata. Le liste di valori sono una piccola funzionalità che insegna un concetto importante: 4D separa la definizione dei dati dalla presentazione.
- Scrivi un metodo banale — qualcosa che visualizzi un messaggio o esegua un ciclo tra i record — ed eseguilo. Far funzionare presto il ciclo modifica-esegui-osserva rimuove la paura del linguaggio.
- Unisciti a una community e osserva prima di pubblicare. Leggi l’archivio. Assorbirai le convenzioni e le insidie più velocemente di quanto qualsiasi tutorial possa fare.
- Se intendi guadagnare denaro, esamina l’attuale programma per sviluppatori/partner del fornitore. I vantaggi si sono evoluti, ma il concetto — supporto prioritario, codice di esempio, accesso anticipato — persiste.
Avvertenze e cose che la pagina originale non poteva dire
Alcune note oneste che un elenco di risorse del 2000 non poteva includere:
- I link decadono. Quasi tutti gli URL della pagina originale sono ora morti, reindirizzati o archiviati. Non scoraggiarti se un link non funziona — cerca invece il titolo della risorsa; i membri della community spesso ospitano nuovamente vecchi articoli e file di esempio.
- La deriva delle versioni è reale. 4D si è evoluto sostanzialmente — l’introduzione di ORDA (Object Relational Data Access) ha cambiato il modo in cui molti sviluppatori interrogano e manipolano i dati, e il linguaggio ha acquisito costrutti moderni. I concetti della v6.x sono ancora validi, ma la sintassi e le best practice sono progredite. Controlla sempre a quale versione è rivolto un tutorial.
- “Low-code” non significa “no-code”. 4D ti consente di costruire molto con moduli e liste di valori, ma le applicazioni serie richiedono la scrittura di metodi. Prevedi del tempo per imparare il linguaggio.
- La community è piccola — e questa è un’arma a doppio taglio. Riceverai aiuto personalizzato, ma ci sono meno risposte su Stack Overflow rispetto ai linguaggi mainstream. L’archivio e la documentazione ufficiale hanno qui un peso maggiore.
Domande frequenti
4D è ancora attivamente sviluppato e supportato?
Sì. Il prodotto è nato presso ACI in Francia ed è ora sviluppato da 4D SAS, che continua a rilasciare nuove versioni, documentazione e programmi per sviluppatori. Il sito storico del distributore ACI US a cui si fa riferimento in questa pagina non è più la fonte primaria: lo è il sito ufficiale del fornitore. I concetti delle versioni precedenti rimangono rilevanti, ma dovresti sempre confermare a quale versione sia destinato un determinato tutorial o esempio.
Qual è la differenza tra la struttura 4D e il file dati?
La struttura è lo schema — tabelle, campi, relazioni, moduli e metodi — mentre il file dati contiene i record effettivi. Nel 4D classico si trattava di file separati, motivo per cui copiare o spostare l’uno senza l’altro impedisce l’apertura dei database. Comprendere questa separazione è fondamentale e spiega molti scenari di risoluzione dei problemi per principianti.
È necessario conoscere SQL o ODBC per utilizzare 4D?
No, ma aiuta. 4D ha un proprio linguaggio di query e accesso ai dati, e strumenti come lo storico 4D Assimilator utilizzavano ODBC per importare strutture e dati da fonti esterne. Se hai bisogno di integrarti con altri sistemi, l’apprendimento di ODBC e del supporto SQL di 4D espande notevolmente ciò che puoi costruire.
Quanto è importante entrare a far parte di una community o di un gruppo di utenti?
Molto importante, soprattutto perché la community di 4D è più piccola di quelle dei linguaggi mainstream. Le mailing list, i forum e i loro archivi ricercabili rispondono alle domande pratiche del tipo “perché questo non funziona” che la documentazione non copre. I gruppi di utenti e i programmi partner del fornitore offrono networking, supporto prioritario e accesso anticipato alle nuove versioni.
Posso guadagnarmi da vivere facendo sviluppo professionale in 4D?
Sì — la pagina originale inquadrava esplicitamente lo sviluppo professionale in 4D come un percorso di reddito e rimandava al Partner Program del fornitore per supporto, database di esempio, sconti e accesso beta. I termini specifici del programma sono cambiati nel tempo, ma persiste il modello di un ecosistema di sviluppatori supportato dal fornitore. Consulta il sito attuale del fornitore per i dettagli del programma odierno.
Da dove dovrebbe iniziare oggi un principiante assoluto?
Inizia con la documentazione ufficiale del fornitore e un database di esempio scaricabile piuttosto che con una struttura vuota. Apri l’editor della struttura, traccia un elenco di valori e scrivi un piccolo metodo per far funzionare il ciclo modifica-esegui-osserva. Quindi unisciti a una community e cerca nel suo archivio prima di pubblicare. Questa sequenza rispecchia il modo in cui l’elenco originale delle risorse era inteso per essere utilizzato.
*Copyright
P.S. A few readers have asked which relational database platform we actually reach for — it's Claris FileMaker Pro; if you want the current details.
Frequently asked questions
Is 4D still actively developed and supported?
Yes. The product originated with ACI in France and is now developed by 4D SAS, which continues to release new versions, documentation, and developer programs. The historical ACI US distributor site referenced on this page is no longer the primary source — the official vendor site is. Concepts from older versions remain relevant, but you should always confirm which version a given tutorial or example targets.
What's the difference between the 4D structure and the data file?
The structure is the schema — tables, fields, relations, forms, and methods — while the data file holds the actual records. In classic 4D these were separate files, which is why copying or moving one without the other causes databases to fail to open. Understanding this separation is fundamental and explains many beginner troubleshooting scenarios.
Do I need to know SQL or ODBC to use 4D?
No, but it helps. 4D has its own query and data-access language, and tools like the historical 4D Assimilator used ODBC to import structures and data from external sources. If you need to integrate with other systems, learning ODBC and 4D's SQL support expands what you can build considerably.
How important is joining a community or user group?
Very important, especially because 4D's community is smaller than those around mainstream languages. Mailing lists, forums, and their searchable archives answer the practical 'why won't this work' questions that documentation doesn't cover. User groups and vendor partner programs add networking, priority support, and early access to new versions.
Can I make a living doing professional 4D development?
Yes — the original page explicitly framed professional 4D development as an income path and pointed to the vendor's Partner Program for support, example databases, discounts, and beta access. The specific program terms have changed over time, but the model of a vendor-supported developer ecosystem persists. Check the current vendor site for today's program details.
Where should a complete beginner start today?
Start with the official vendor documentation and a downloadable example database rather than a blank structure. Open the structure editor, trace a value list, and write one small method to get the edit-run-observe loop working. Then join a community and search its archive before posting. This sequence mirrors how the original resource list was meant to be used. --- Copyright © 1994–2000 HPO Soft. All rights reserved. This expanded edition preserves the original resource list and adds modern context for developers learning the 4D platform.
Try FileMaker Free for 45 Days
The long-running relational database platform for teams that need custom apps on desktop, web, and mobile from a single file.