Spring til hovedindhold
HPO Software Trin-for-trin guides til 4D-databaser og low-code app-udvikling — fra din første tabel til en færdig business app.

Nogle links på dette websted er affiliate-links: Hvis du køber gennem dem, kan vi modtage en kommission uden ekstra omkostninger for dig. Dette påvirker aldrig vores anbefalinger. Se vores affiliate-oplysning for detaljer. Affiliate-oplysning.

4. dimension læringsgrundlag

Key Takeaways

  • 4D (4th Dimension) er en relationel database og low-code applikationsplatform fra 4D SAS, der i årtier er blevet brugt til at bygge brugerdefinerede business-apps uden et stort ingeniørteam.
  • I modsætning til FileMaker Pro, som historisk set blev leveret uden en ægte compiler, tilbyder 4D et kompileringstrin, der dramatisk kan øge eksekveringshastigheden og beskytte dit design mod tilfældig inspektion.
  • Kompilering i 4D er et særskilt produktanliggende: compileren er ikke en del af den grundlæggende Standard Edition og skal anskaffes via Advanced Kit eller Developer Edition.
  • Kompilering producerer en runtime-applikation ved at indlejre 4D Engine, hvilket resulterer i et program, der kan startes med et dobbeltklik og distribueres.
  • Kerneafvejningen står mellem udviklingsbekvemmelighed (fortolket tilstand) og implementeringsydelse/beskyttelse (kompileret tilstand).

Introduktion: Hvad “4th Dimension Learning Basics” dækker

Denne side er en del af en bredere læringsserie om 4D, den fjerde generations relationelle database og miljø til hurtig applikationsudvikling. Serien gennemgår de grundlæggende emner, som en ny 4D-udvikler har brug for: systemkrav, programstrukturer, netværksforskelle, runtime-forskelle, compileren, webhosting, datadiagrammer, plug-ins, værktøjer og hjælpeprogrammer, samt hvor man finder yderligere ressourcer.

Emnet på denne side — compileren — er en af de mest konsekvensrige beslutninger, du vil tage som 4D-udvikler, fordi det befinder sig på grænsen mellem at bygge en applikation og at levere den. Det er essentielt at forstå, hvad kompilering gør, hvornår du har brug for det, og hvad det koster i både penge og workflow, før du beslutter dig for en implementeringsstrategi.

En kort historie og kontekst

4D blev oprindeligt udviklet af Laurent Ribardière og udgivet første gang i midten af 1980’erne, hvilket gør det til en af de længstlevende databaseudviklingsplatforme, der stadig er i aktiv brug. Det voksede ud af den samme æra, som producerede andre fjerdegenerationssprog og relationelle systemer, og det har løbende udviklet sig — gennem den klassiske 4D-struktur/compiler-model, til 4D Server, og mere nyligt til ORDA-arkitekturen (Object Relational Data Access) og 4D’s moderne low-code værktøjer.

Den lange historie betyder noget af en praktisk grund: meget af den dokumentation, de tutorials og den community-viden, du vil støde på — inklusive denne serie — afspejler den klassiske model, hvor du designer en strukturfil, bygger formularer og metoder, og derefter eventuelt kompilerer til implementering. Selv når 4D moderniseres, forbliver de konceptuelle byggeklodser (strukturer, metoder, formularer, værdilister, runtimes) den mentale model, du har brug for.

For baggrund om den bredere kategori af fjerdegenerationssprog og relationelle databaser, se Wikipedia-oversigten over fjerdegenerationsprogrammeringssprog og artiklen om relationelle databaser.

Compileren: 4D vs. FileMaker Pro

Den oprindelige sammenligning på denne side er værd at gentage klart, fordi den indfanger en reel arkitektonisk forskel mellem to platforme, der ofte nævnes i samme åndedrag.

Relateret: — En regneark-simpel grænseflade, der sidder oven på en rigtig relationel database, med automatiseringer, visninger og delbare grænseflader..

FileMaker Pro (FMP) havde historisk set ingen compiler. Du byggede og kørte din løsning på en fortolket måde, og FileMaker håndterede runtime-delen for dig. Dette er bekvemt — der er ikke noget separat kompileringstrin, intet separat compiler-produkt at købe — men det betyder, at designet i sagens natur er mere åbent, og eksekveringen er fortolket.

4D lader dig derimod kompilere dit program. Kompilering er et eksplicit skridt, du vælger at tage, og det er ikke gratis: det kræver 4D Compiler, som er et separat produkt fra Standard Edition af 4D.

Denne sondring er kernen i siden. Hvis du kommer fra FileMaker, kan selve ideen om et kompileringstrin være ukendt, og licensstrukturen omkring det kan overraske dig.

Hvis du handler: — En lavkode-appbygger, der tilsluttes den bredere Zoho-suite og priser pr. bruger i stedet for pr. app..

Hvad kompilering faktisk giver dig

Den oprindelige tekst opregner to fordele ved at kompilere en 4D-strukturfil, og begge fortjener en uddybning, da de afspejler reelle tekniske afvejninger.

1. Ydeevne. Nogle funktioner vil køre op til 1.000 gange hurtigere, når de er kompileret. Årsagen er fundamental for, hvordan fortolkere og compilere adskiller sig: i fortolket tilstand læser og evaluerer 4D-motoren dine metoder under kørslen og oversætter hver instruktion løbende. I kompileret tilstand oversættes dine metoder på forhånd til en form, som maskinen kan eksekvere direkte, hvilket eliminerer overhead ved fortolkning af hver instruktion. Sløjfer, beregninger og stramme databehandlingsrutiner — de steder, hvor fortolknings-overhead akkumuleres — er præcis der, hvor gevinsterne er størst. Ikke enhver operation accelereres med den samme faktor; tallet “op til 1.000 gange” afspejler best-case scenarier for beregningstung kode, ikke en ensartet multiplikator for hele din applikation.

2. Designbeskyttelse. Kompilering sikrer, at dit designarbejde ikke er synligt. I fortolket tilstand er strukturen og metoderne lettere at inspicere. Når du kompilerer, er den resulterende kode ikke læsbar for mennesker på samme måde, hvilket beskytter din intellektuelle ejendom — din forretningslogik, dine omhyggeligt optimerede metoder, din datamodel — mod at blive kopieret eller tilfældigt reverse-engineered af enhver, der har den implementerede applikation.

Der er en tredje, ofte overset fordel: implementering som en selvstændig runtime. Når du kompilerer en 4D-strukturfil, kan du indlejre et andet produkt kaldet 4D Engine (købt som supplement til 4D Compiler). Når kompileringen er færdig, resulterer dette i en kompileret runtime-applikation, der kan startes med et dobbeltklik. Med andre ord er kompilering den mekanisme, hvorved en 4D-løsning bliver et distribuerbart produkt, som slutbrugere kan starte uden et fuldt 4D-udviklingsmiljø.

Licenser og udgaver: Sådan beslutter du dig

Den oprindelige side opstiller købsstrukturen klart, og den er værd at præsentere som en beslutningsramme, fordi valget afhænger af, hvor du er i din proces.

SituationHvad du har brug forNoter
Lærer 4D, bygger prototyperStandard Edition af 4DIngen compiler inkluderet; fortolket udvikling
Ejer allerede Standard Edition, skal nu kompilereAdvanced KitIndeholder 4D Compiler og flere andre programmer
Starter fra bunden og ved, at du vil kompilereDeveloper EditionIndeholder alt i både Standard Edition og Advanced Kit
Distribution af en selvstændig app til slutbrugere4D Compiler plus 4D EngineEngine købes som tillæg til Compileren

De originale tal: Advanced Kit kan købes for $549, hvis du allerede har Standard Edition, og Developer Edition kan købes for $799 som et første køb, inklusive alt i både Standard Edition og Advanced Kit.

Relateret: — En kodefri databasebygger rettet mod portaler, mapper og interne værktøjer - med faste priser i stedet for gebyrer pr. bruger..

Sådan beslutter du dig:

  • Hvis du udelukkende er i lærings- og prototypetilstand, er Standard Edition tilstrækkelig. Du kan udvikle, teste og forfine din struktur og dine metoder uden nogensinde at kompilere.
  • Hvis du allerede har investeret i Standard Edition og nu har nået det punkt, hvor du har brug for ydeevne eller designbeskyttelse, er Advanced Kit den trinvise opgraderingsvej.
  • Hvis du starter fra bunden og allerede ved, at du vil levere en kompileret applikation, er det den mere økonomiske vej at købe Developer Edition på forhånd, da den kombinerer begge dele.
  • Hvis dit mål er at udlevere en dobbeltklikbar applikation til slutbrugere, skal du også budgettere for 4D Engine — det er et separat køb oven i Compileren.

Bemærk, at disse priser afspejler den æra, hvor dette materiale blev skrevet (copyright-linjen lyder 1994–2000). Nuværende 4D-priser og udgavenavne har udviklet sig, så bekræft altid mod 4D SAS’s officielle aktuelle tilbud før køb. Strukturen af beslutningen — basisudgave, compiler-tillæg, engine til distribution — forbliver den nyttige mentale model.

Fortolket vs. Kompileret: En praktisk sammenligning

At forstå afvejningerne hjælper dig med at vælge den rigtige tilstand for hver fase af et projekt.

Vores valg: — Den langvarige relationsdatabaseplatform til teams, der har brug for tilpassede apps på desktop, web og mobil fra en enkelt fil..

  • Udviklingshastighed: Fortolket tilstand vinder. Du kan ændre en metode og køre den igen med det samme, uden at en kompileringscyklus afbryder dit flow.
  • Kørselshastighed: Kompileret tilstand vinder, dramatisk for beregningstung kode.
  • Fejlretning: Fortolket tilstand er generelt nemmere at træde igennem og inspicere, fordi den kørende kode svarer tæt til det, du skrev.
  • Designfortrolighed: Kompileret tilstand vinder; fortolkede strukturer er mere eksponerede.
  • Distribution: Kun kompileret tilstand (med 4D Engine) producerer en selvstændig, dobbeltklikbar runtime-applikation.
  • Omkostninger: Fortolket udvikling kræver kun basisudgaven; kompileret implementering kræver Compileren og, til distribution, Engine.

En almindelig og fornuftig arbejdsgang er at udvikle fortolket og implementere kompileret. Du itererer hurtigt under udviklingen og kompilerer derefter, når løsningen er stabil og klar til levering. Dette afspejler, hvordan udviklere arbejder i mange kompilerede sprog: brug den hurtige feedback-løkke under opbygningen, og betal kompileringsomkostningen ved udgivelsen.

Kompilering i den bredere 4D-værktøjskæde

Compileren eksisterer ikke isoleret. Den findes side om side med de andre emner i denne læringsserie, og at forstå, hvordan de hænger sammen, hjælper dig med at planlægge et rigtigt projekt:

  • Programstrukturer definerer dine tabeller, felter, relationer, formularer og metoder — det råmateriale, som compileren behandler.
  • Netværksforskelle og runtime-forskelle bestemmer, hvordan din applikation opfører sig, når den implementeres på tværs af 4D Server og klientmaskiner versus en enkeltbruger-opsætning.
  • Webhosting-funktioner giver dig mulighed for at eksponere 4D-data og logik over nettet, hvilket ændrer din implementerings- og ydeevneprofil.
  • Datadiagrammer og plug-ins udvider, hvad din applikation kan, og plug-ins kan især påvirke kompileringen, da kompileret kode og plug-ins skal være kompatible.
  • Værktøjer og hjælpeprogrammer hjælper dig med at administrere, vedligeholde og fejlfinde det kompilerede resultat.

Kort sagt er compileren broen mellem design-time-verdenen af strukturer og metoder og run-time-verdenen af en implementeret applikation. Alt andet i serien føder ind i den.

Praktisk vejledning til nye 4D-udviklere

Hvis du lærer 4D i dag, er her en pragmatisk vej:

  1. Start fortolket. Byg din struktur, formularer og metoder i basisudgaven. Fokuser på at få datamodellen og forretningslogikken korrekt, før du bekymrer dig om ydeevne.
  2. Lær struktur-/metodemodellen grundigt. Compileren belønner rene, velorganiserede metoder; den redder ikke et sjusket design.
  3. Identificer ydeevnekritisk kode. Når du til sidst kompilerer, kommer de største gevinster fra loops, beregninger og databehandlingsrutiner — vid, hvor de er i din applikation.
  4. Planlæg dit implementeringsmål tidligt. Hvis du vil distribuere en selvstændig app, skal du indregne Compileren og 4D Engine fra starten, både i budgettet og i din byggeproces.
  5. Bekræft aktuelle udgaver og priser. Udgavenavne og tal i klassisk dokumentation kan afvige fra det, 4D SAS tilbyder nu; verificer før du køber.

For autoritative, aktuelle oplysninger skal du konsultere den officielle 4D-udviklerdokumentation og 4D SAS-webstedet direkte, og læne dig op ad det aktive 4D-udviklerfællesskab for platformsspecifikke spørgsmål.

Ofte stillede spørgsmål

Har FileMaker Pro en compiler?

Historisk set nej — FileMaker Pro inkluderede ikke en compiler, og løsninger kørte på en fortolket måde, hvor FileMaker håndterede runtime. Dette er en vigtig arkitektonisk forskel fra 4D, som tilbyder et eksplicit kompileringstrin. Hvis du migrerer fra FileMaker, skal du forvente, at kompileringskonceptet er nyt for dig.

Er 4D-kompileren inkluderet i Standard Edition af 4D?

Nej. 4D-kompileren er ikke inkluderet i Standard Edition af 4D. For at kompilere skal du anskaffe den separat – enten ved at købe Advanced Kit, hvis du allerede ejer Standard Edition, eller ved at købe Developer Edition, som indeholder både Standard Edition og Advanced Kit.

Hvor meget hurtigere er kompileret 4D-kode?

Den oprindelige vejledning angiver, at nogle funktioner vil køre op til 1.000 gange hurtigere, når de kompileres. Dette er et “best-case”-tal for beregningstung kode, ikke en ensartet hastighedsforøgelse på tværs af hele din applikation. Løkker, beregninger og databehandlingsrutiner drager størst fordel af det, fordi kompilering fjerner overheaden ved fortolkning pr. instruktion, som akkumuleres i stram kode.

Hvad er 4D Engine, og har jeg brug for den?

4D Engine er et separat produkt, som du kan indlejre, når du kompilerer en 4D-strukturfil. Den skal købes ud over 4D-kompileren. Når kompileringen er færdig, resulterer indlejringen af Engine i en dobbeltklikbar, kompileret runtime-applikation – hvilket er det, du har brug for, hvis du har til hensigt at distribuere et selvstændigt program til slutbrugere.

Beskytter kompilering min kildekode?

Ja – en af de to vigtigste fordele ved at kompilere er, at dit designarbejde er beskyttet mod indblik. Fortolkede strukturer og metoder er lettere at inspicere, hvorimod kompileret kode ikke er læsbar for mennesker på samme måde. Dette beskytter din forretningslogik og datamodel mod at blive kopieret eller tilfældigt reverse-engineered.

Skal jeg udvikle i fortolket eller kompileret tilstand?

En almindelig og effektiv tilgang er at udvikle i fortolket tilstand og implementere i kompileret tilstand. Fortolket tilstand giver dig et hurtigt “edit-and-run” feedback-loop med lettere fejlfinding, mens kompileret tilstand leverer den ydeevne og designbeskyttelse, du ønsker i et færdigt produkt. Kompiler, når din løsning er stabil og klar til udgivelse.

Ofte stillede spørgsmål

Har FileMaker Pro en compiler?

Historisk set nej – FileMaker Pro inkluderede ikke en compiler, og løsninger kørte på en fortolket måde, hvor FileMaker håndterede kørselstiden. Dette er en vigtig arkitektonisk forskel fra 4D, som tilbyder et eksplicit kompileringstrin. Hvis du migrerer fra FileMaker, skal du forvente, at kompileringskonceptet er nyt for dig.

Er 4D-kompileren inkluderet i standardudgaven af ​​4D?

Nej. 4D-kompileren er ikke inkluderet i standardudgaven af ​​4D. For at kompilere skal du anskaffe det separat - enten ved at købe det avancerede kit, hvis du allerede ejer standardudgaven, eller ved at købe udviklerudgaven, som indeholder både standardudgaven og det avancerede kit.

Hvor meget hurtigere er kompileret 4D-kode?

Den originale vejledning siger, at nogle funktioner vil arbejde op til 1.000 gange hurtigere, når de kompileres. Dette er et bedste tilfælde for computertung kode, ikke en ensartet fremskyndelse på tværs af hele din applikation. Sløjfer, beregninger og databehandlingsrutiner gavner de fleste, fordi kompilering fjerner de overhead for fortolkning pr. instruktion, som sammensættes i stram kode.

Hvad er 4D Engine, og har jeg brug for den?

4D Engine er et separat produkt, som du kan integrere, når du kompilerer en 4D-strukturfil. Den skal købes ud over 4D-kompileren. Efter færdiggørelsen af ​​kompileringen giver indlejring af motoren en dobbeltklikbar, kompileret runtime-applikation - hvilket er, hvad du har brug for, hvis du har til hensigt at distribuere et selvstændigt program til slutbrugere.

Beskytter kompilering min kildekode?

Ja - en af ​​de to vigtigste fordele ved at kompilere er, at din designindsats er beskyttet mod visning. Fortolkede strukturer og metoder er lettere at inspicere, hvorimod kompileret kode ikke kan læses af mennesker på samme måde. Dette beskytter din forretningslogik og datamodel mod at blive kopieret eller tilfældigt reverse-engineeret.

Skal jeg udvikle i fortolket eller kompileret tilstand?

En fælles og effektiv tilgang er at udvikle fortolkede og implementere kompilerede. Fortolket tilstand giver dig en hurtig redigerings-og-kør feedback-loop med lettere fejlfinding, mens den kompilerede tilstand leverer den ydeevne og designbeskyttelse, du ønsker i et afsendt produkt. Kompiler, når din løsning er stabil og klar til frigivelse.


Prøv FileMaker gratis i 45 dage

Den langvarige relationsdatabaseplatform til teams, der har brug for tilpassede apps på desktop, web og mobil fra en enkelt fil.