4. ulottuvuuden oppimisen perusteet
Keskeiset havainnot
- 4D (4th Dimension) on 4D SAS:n relaatiotietokanta ja low-code-sovellusalusta, jota on käytetty vuosikymmeniä räätälöityjen yrityssovellusten rakentamiseen ilman suurta suunnittelutiimiä.
- Toisin kuin FileMaker Pro, joka toimitettiin historiallisesti ilman todellista kääntäjää, 4D tarjoaa käännösvaiheen, joka voi dramaattisesti nopeuttaa suoritusta ja suojata suunnittelusi satunnaiselta tarkastelulta.
- Kääntäminen on 4D:ssä erillinen tuotekysymys: kääntäjä ei kuulu perus-Standard Editioniin, vaan se on hankittava Advanced Kitin tai Developer Editionin kautta.
- Kääntäminen tuottaa ajonaikaisen sovelluksen upottamalla siihen 4D Enginen, jolloin saadaan kaksoisnapsautettava, jaettava ohjelma.
- Keskeinen kompromissi on kehitysmukavuuden (tulkattu tila) ja käyttöönoton suorituskyvyn/suojauksen (käännetty tila) välillä.
Johdanto: Mitä “4th Dimension Learning Basics” kattaa
Tämä sivu on osa laajempaa oppimissarjaa 4D:stä, neljännen sukupolven relaatiotietokannasta ja nopeasta sovelluskehitysympäristöstä. Sarjassa käydään läpi perusteemat, joita uusi 4D-kehittäjä tarvitsee: järjestelmävaatimukset, ohjelmarakenteet, verkkoerot, ajonaikaiset erot, kääntäjä, web-isännöinti, datan kaaviointi, plug-init, työkalut ja apuohjelmat sekä ohjeet lisäresurssien löytämiseen.
Tämän sivun aihe – kääntäjä – on yksi merkittävimmistä päätöksistä, joita teet 4D-kehittäjänä, koska se sijaitsee sovelluksen rakentamisen ja toimituksen rajapinnassa. Ennen kuin sitoudut käyttöönottostrategiaan, on välttämätöntä ymmärtää, mitä kääntäminen tekee, milloin sitä tarvitaan ja mitä se maksaa sekä rahallisesti että työnkulun kannalta.
Lyhyt historia ja konteksti
4D:n kehitti alun perin Laurent Ribardière, ja se julkaistiin ensimmäisen kerran 1980-luvun puolivälissä, mikä tekee siitä yhden pisimpään aktiivisessa käytössä olevista tietokantakehitysalustoista. Se syntyi samaan aikaan muiden neljännen sukupolven kielten ja relaatiojärjestelmien kanssa ja on kehittynyt jatkuvasti – klassisesta 4D-rakenne/kääntäjä-mallista 4D Serveriksi ja viimeisimpänä ORDA-arkkitehtuuriksi (Object Relational Data Access) sekä 4D:n nykyaikaiseksi low-code-työkalustoksi.
Tällä pitkällä historialla on merkitystä käytännön syistä: suuri osa kohtaamastasi dokumentaatiosta, opetusohjelmista ja yhteisön tiedosta – mukaan lukien tämä sarja – heijastelee klassista mallia, jossa suunnittelet rakennetiedoston, rakennat lomakkeita ja metodeja ja käännät ne sitten valinnaisesti käyttöönottoa varten. Vaikka 4D modernisoituu, käsitteelliset rakennuspalikat (rakenteet, metodit, lomakkeet, arvolistat, ajonaikaiset versiot) pysyvät tarvitsemasi henkisenä mallina.
Lisätietoja neljännen sukupolven kielten ja relaatiotietokantojen laajemmasta kategoriasta löydät Wikipedian yleiskatsauksesta neljännen sukupolven ohjelmointikielistä ja relaatiotietokanta -artikkelista.
Kääntäjä: 4D vs. FileMaker Pro
Tämän sivun alkuperäinen vertailu on syytä toistaa selkeästi, koska se kuvaa aitoa arkkitehtonista eroa kahden usein samassa yhteydessä mainitun alustan välillä.
Aiheeseen liittyvä: — Yksinkertainen laskentataulukkokäyttöliittymä, joka sijaitsee todellisen relaatiotietokannan päällä, jossa on automaatioita, näkymiä ja jaettavia käyttöliittymiä..
FileMaker Prolla (FMP) ei ole historiallisesti ollut kääntäjää. Rakensit ja suoritit ratkaisusi tulkitulla tavalla, ja FileMaker hoiti ajonaikaisen suorituksen puolestasi. Tämä on kätevää – ei ole erillistä käännösvaihetta eikä erillistä kääntäjätuotetta ostettavaksi – mutta se tarkoittaa, että suunnittelu on luonnostaan avoimempaa ja suoritus on tulkittua.
4D sen sijaan antaa sinun kääntää ohjelmasi. Kääntäminen on nimenomainen vaihe, jonka valitset, eikä se ole ilmaista: se vaatii 4D Compilerin, joka on erillinen tuote 4D:n perus-Standard Editionista.
Tämä ero on sivun ydin. Jos tulet FileMakerista, käännösvaiheen idea saattaa olla vieras, ja sen ympärillä oleva lisenssirakenne voi yllättää.
Jos olet ostoksilla: — Halpakoodisovellusten rakentaja, joka liitetään laajempaan Zoho-sviittiin ja hinnat käyttäjää kohti sovelluksen sijaan..
Mitä kääntäminen käytännössä tuo
Alkuperäisessä tekstissä luetellaan kaksi 4D-rakennetiedoston kääntämisen etua, ja molemmat ansaitsevat tarkemman tarkastelun, koska ne heijastavat todellisia teknisiä kompromisseja.
1. Suorituskyky. Jotkin funktiot toimivat jopa 1 000 kertaa nopeammin käännettynä. Syy on tulkkien ja kääntäjien välisessä perustavanlaatuisessa erossa: tulkintatilassa 4D-moottori lukee ja arvioi metodisi ajon aikana kääntäen jokaisen ohjeen etenevässä järjestyksessä. Käännetyssä tilassa metodisi käännetään etukäteen muotoon, jonka kone voi suorittaa suoraan, mikä poistaa ohjekohtaisen tulkinnan aiheuttaman viiveen. Silmukat, laskelmat ja tiukat tietojenkäsittelyrutiinit – kohdat, joissa tulkinnan aiheuttama viive kumuloituu – ovat juuri niitä, joissa hyödyt ovat suurimmat. Kaikki operaatiot eivät nopeutu samalla kertoimella; “jopa 1 000 kertaa” -luku heijastaa laskentaintensiivisen koodin parhaita skenaarioita, ei yhtenäistä kerrointa koko sovellukselle.
2. Suunnittelun suojaus. Kääntäminen suojaa suunnittelutyösi näkyviltä. Tulkintatilassa rakenne ja metodit ovat helpommin tarkasteltavissa. Kun käännät, tuloksena oleva koodi ei ole ihmisen luettavissa samalla tavalla, mikä suojaa immateriaalioikeuksiasi – liiketoimintalogiikkaasi, huolellisesti viritettyjä metodejasi ja tietomalliasi – kopioimiselta tai satunnaiselta käänteissuunnittelulta kenen tahansa toimesta, jolla on käytössään asennettu sovellus.
On olemassa kolmas, usein unohdettu etu: käyttöönotto itsenäisenä ajonaikaisena versiona. Kun käännät 4D-rakennetiedoston, voit upottaa siihen toisen tuotteen nimeltä 4D Engine (hankittava 4D Compilerin lisäksi). Kääntämisen valmistuttua tämä tuottaa kaksoisnapsautettavan, käännetyn ajonaikaisen sovelluksen. Toisin sanoen kääntäminen on mekanismi, jolla 4D-ratkaisusta tulee jaettava tuote, jonka loppukäyttäjät voivat käynnistää ilman täyttä 4D-kehitysympäristöä.
Lisenssit ja versiot: Miten päättää
Alkuperäinen sivu esittää ostorakenteen selkeästi, ja se kannattaa esittää päätöksentekokehyksenä, koska valinta riippuu siitä, missä vaiheessa kehityspolkusi olet.
| Tilanne | Mitä tarvitset | Huomautuksia |
|---|---|---|
| 4D-oppiminen, prototyyppien rakentaminen | Standard Edition of 4D | Kääntäjä ei sisälly; tulkattu kehitys |
| Omistat jo Standard Editionin, tarvitset nyt kääntämistä | Advanced Kit | Sisältää 4D-kääntäjän ja useita muita ohjelmia |
| Aloitat alusta ja tiedät, että tulet kääntämään | Developer Edition | Sisältää kaiken sekä Standard Editionissa että Advanced Kitissä |
| Erillisen sovelluksen jakelu loppukäyttäjille | 4D-kääntäjä plus 4D Engine | Engine ostetaan kääntäjän lisäksi |
Alkuperäiset luvut: Advanced Kitin voi ostaa 549 dollarilla, jos sinulla on jo Standard Edition, ja Developer Editionin voi ostaa 799 dollarilla ensimmäisenä hankintana, jolloin se sisältää kaiken sekä Standard Editionissa että Advanced Kitissä.
Miten päättää:
- Jos olet puhtaasti oppimis- ja prototyyppivaiheessa, Standard Edition riittää. Voit kehittää, testata ja tarkentaa rakennettasi ja menetelmiäsi kääntämättä koskaan.
- Jos olet jo investoinut Standard Editioniin ja olet nyt saavuttanut pisteen, jossa tarvitset suorituskykyä tai suunnittelun suojausta, Advanced Kit on asteittainen päivityspolku.
- Jos aloitat tyhjästä ja tiedät jo, että julkaiset käännetyn sovelluksen, Developer Editionin ostaminen etukäteen on taloudellisempi reitti, koska se sisältää molemmat.
- Jos tavoitteenasi on antaa kaksoisnapsautettava sovellus loppukäyttäjille, budjetoi myös 4D Engine — se on erillinen hankinta kääntäjän päälle.
Huomaa, että nämä hinnat heijastavat aikakautta, jolloin tämä materiaali on kirjoitettu (tekijänoikeusrivi on 1994–2000). Nykyiset 4D-hinnat ja versioiden nimet ovat kehittyneet, joten varmista aina 4D SAS:n viralliset nykyiset tarjoukset ennen ostamista. Päätöksen rakenne — perusversio, kääntäjälisäosa, jakelumoottori — pysyy hyödyllisenä mielikuvana.
Tulkittu vs. käännetty: Käytännön vertailu
Kompromissien ymmärtäminen auttaa sinua valitsemaan oikean tilan projektin jokaiseen vaiheeseen.
- Kehitysnopeus: Tulkittu tila voittaa. Voit muuttaa menetelmää ja suorittaa sen uudelleen välittömästi ilman, että käännössykli keskeyttää työnkulun.
- Suoritusnopeus: Käännetty tila voittaa, erityisesti laskentaintensiivisessä koodissa.
- Virheenkorjaus: Tulkittu tila on yleensä helpompi käydä läpi ja tarkistaa, koska suoritettava koodi vastaa läheisesti kirjoittamaasi.
- Suunnittelun luottamuksellisuus: Käännetty tila voittaa; tulkitut rakenteet ovat enemmän alttiina.
- Jakelu: Vain käännetty tila (4D Enginen kanssa) tuottaa itsenäisen, kaksoisnapsautettavan ajonaikaisen sovelluksen.
- Kustannukset: Tulkittu kehitys vaatii vain perusversion; käännetty käyttöönotto vaatii kääntäjän ja jakelua varten Enginen.
Yleinen ja järkevä työnkulku on kehittää tulkitulla ja ottaa käyttöön käännettynä. Iteroit nopeasti kehityksen aikana ja käännät sitten, kun ratkaisu on vakaa ja valmis julkaistavaksi. Tämä heijastaa sitä, miten kehittäjät työskentelevät monilla käännetyillä kielillä: käytä nopeaa palautesilmukkaa rakentamisen aikana ja maksa käännöskustannus julkaisuhetkellä.
Kääntäminen laajemmassa 4D-työkaluketjussa
Kääntäjä ei ole erillinen saareke. Se sijaitsee tämän oppimissarjan muiden aiheiden rinnalla, ja niiden välisten yhteyksien ymmärtäminen auttaa sinua suunnittelemaan todellista projektia:
- Ohjelmarakenteet määrittelevät taulukot, kentät, suhteet, lomakkeet ja menetelmät — raaka-aineen, jota kääntäjä käsittelee.
- Verkostoerot ja ajonaikaiset erot määrittävät, miten sovelluksesi käyttäytyy, kun se otetaan käyttöön 4D Serverin ja asiakaskoneiden välillä verrattuna yhden käyttäjän asennukseen.
- Web-hosting-ominaisuuksien avulla voit avata 4D-tietoja ja -logiikkaa verkon kautta, mikä muuttaa käyttöönotto- ja suorituskykyprofiiliasi.
- Tietojen kaaviot ja plug-init laajentavat sovelluksesi mahdollisuuksia, ja erityisesti plug-init voivat vaikuttaa kääntämiseen, koska käännetyn koodin ja plug-inien on oltava yhteensopivia.
- Työkalut ja apuohjelmat auttavat hallitsemaan, ylläpitämään ja vianmäärittämään käännettyä tulosta.
Lyhyesti sanottuna kääntäjä on silta rakenteiden ja menetelmien suunnittelumaailman ja käyttöönotetun sovelluksen ajonaikaisen maailman välillä. Kaikki muu sarjassa syöttää tietoa siihen.
Käytännön ohjeita uusille 4D-kehittäjille
Jos opit 4D:tä tänään, tässä on pragmaattinen polku:
- Aloita tulkitulla. Rakenna rakenne, lomakkeet ja menetelmät perusversiossa. Keskity saamaan tietomalli ja liiketoimintalogiikka oikein ennen suorituskyvystä huolehtimista.
- Opettele rakenne/menetelmä-malli perusteellisesti. Kääntäjä palkitsee puhtaat, hyvin organisoidut menetelmät; se ei pelasta huolimatonta suunnittelua.
- Tunnista suorituskyvyn kannalta kriittinen koodi. Kun lopulta käännät, suurimmat hyödyt tulevat silmukoista, laskelmista ja tietojenkäsittelyrutiineista — tiedä, missä ne sijaitsevat sovelluksessasi.
- Suunnittele käyttöönotton tavoite ajoissa. Jos aiot jakaa itsenäisen sovelluksen, huomioi kääntäjä ja 4D Engine alusta alkaen sekä budjetissa että rakennusprosessissasi.
- Vahvista nykyiset versiot ja hinnat. Klassisessa dokumentaatiossa olevat versioiden nimet ja luvut voivat poiketa siitä, mitä 4D SAS nykyään tarjoaa; tarkista ennen ostamista.
Virallisia ja ajankohtaisia tietoja varten tutustu suoraan viralliseen 4D-kehittäjän dokumentaatioon ja 4D SAS:n verkkosivustoon, ja tukeudu aktiiviseen 4D-kehittäjäyhteisöön alustakohtaisissa kysymyksissä.
Usein kysyttyjä kysymyksiä
Onko FileMaker Prolla kääntäjä?
Historiallisesti ei — FileMaker Pro ei sisältänyt kääntäjää, ja ratkaisut toimivat tulkitusti FileMakerin hoitaessa ajonaikaa. Tämä on keskeinen arkkitehtoninen ero 4D:hen, joka tarjoaa erillisen käännösvaiheen. Jos olet siirtymässä FileMakerista, varaudu siihen, että käännöskonsepti on sinulle uusi.
Sisältyykö 4D-kääntäjä 4D:n Standard Editioniin?
Ei. 4D-kääntäjä ei sisälly 4D:n Standard Editioniin. Kääntämistä varten sinun on hankittava se erikseen – joko ostamalla Advanced Kit, jos omistat jo Standard Editionin, tai ostamalla Developer Editionin, joka sisältää sekä Standard Editionin että Advanced Kitin.
Kuinka paljon nopeampaa käännetty 4D-koodi on?
Alkuperäisessä ohjeistuksessa todetaan, että jotkin toiminnot toimivat käännettynä jopa 1 000 kertaa nopeammin. Tämä on paras mahdollinen tulos laskentaintensiiviselle koodille, ei yhtenäinen nopeudenlisäys koko sovelluksesi laajuisesti. Silmukat, laskelmat ja tietojenkäsittelyrutiinit hyötyvät eniten, koska kääntäminen poistaa käskykohtaisen tulkkausviiveen, joka kumuloituu tiiviissä koodissa.
Mikä on 4D Engine ja tarvitsenko sitä?
4D Engine on erillinen tuote, jonka voit upottaa kääntäessäsi 4D-rakennetiedostoa. Se on ostettava 4D-kääntäjän lisäksi. Kääntämisen jälkeen Enginen upottaminen tuottaa kaksoisnapsautettavan, käännetyn runtime-sovelluksen – mikä on välttämätöntä, jos aiot jakaa itsenäisen ohjelman loppukäyttäjille.
Suojaako kääntäminen lähdekoodiani?
Kyllä – yksi kääntämisen kahdesta pääedusta on, että suunnittelutyösi on suojattu näkyviltä. Tulkatut rakenteet ja metodit ovat helpommin tarkasteltavissa, kun taas käännetty koodi ei ole ihmisen luettavissa samalla tavalla. Tämä suojaa liiketoimintalogiikkaasi ja tietomalliasi kopioimiselta tai satunnaiselta käänteissuunnittelulta.
Pitäisikö minun kehittää tulkitussa vai käännetyssä tilassa?
Yleinen ja tehokas lähestymistapa on kehittää tulkitussa tilassa ja ottaa käyttöön käännettynä. Tulittu tila tarjoaa nopean muokkaa-ja-aja-palautesilmukan sekä helpomman virheenkorjauksen, kun taas käännetty tila tarjoaa suorituskyvyn ja suunnittelun suojan, jota haluat julkaistulta tuotteelta. Käännä koodi, kun ratkaisusi on vakaa ja valmis julkaisuun.
Usein kysytyt kysymykset
Onko FileMaker Prolla kääntäjä?
Historiallisesti ei – FileMaker Prossa ei ollut kääntäjää, ja ratkaisut toimivat tulkitulla tavalla FileMakerin käsitellessä ajonaikaa. Tämä on arkkitehtoninen ero 4D:stä, joka tarjoaa selkeän kokoamisvaiheen. Jos olet siirtymässä FileMakerista, käännöskonsepti on sinulle uusi.
Onko 4D-kääntäjä mukana 4D:n Standard Editionissa?
Ei. 4D-kääntäjä ei sisälly 4D:n standardiversioon. Kokoamista varten sinun on hankittava se erikseen – joko ostamalla Advanced Kit, jos omistat jo Standard Editionin, tai ostamalla Developer Editionin, joka sisältää sekä Standard Editionin että Advanced Kitin.
Kuinka paljon nopeammin 4D-koodi käännetään?
Alkuperäisessä ohjeessa todetaan, että jotkin toiminnot toimivat jopa 1000 kertaa nopeammin käännettynä. Tämä on paras tapaus laskentaa vaativalle koodille, ei yhtenäistä nopeutta koko sovelluksessasi. Silmukat, laskelmat ja tietojenkäsittelyrutiinit hyödyttävät eniten, koska kääntäminen poistaa käskykohtaisen tulkinnan lisärasituksen, joka yhdistetään tiukkaan koodiin.
Mikä on 4D Engine, ja tarvitsenko sitä?
4D Engine on erillinen tuote, jonka voit upottaa 4D-rakennetiedostoa laatiessasi. Se on ostettava 4D-kääntäjän lisäksi. Kun käännös on valmis, Enginen upottaminen tuottaa kaksoisnapsautettavan, käännetyn, ajonaikaisen sovelluksen – mitä tarvitset, jos aiot jakaa itsenäisen ohjelman loppukäyttäjille.
Suojaako kääntäminen lähdekoodiani?
Kyllä – yksi kokoamisen kahdesta pääedusta on, että suunnittelutyösi on suojattu näkyviltä. Tulkitut rakenteet ja menetelmät ovat helpommin tarkastettavissa, kun taas käännetty koodi ei ole ihmisen luettavissa samalla tavalla. Tämä suojaa liiketoimintalogiikkaasi ja tietomalliasi kopioimiselta tai satunnaiselta käänteissuunnittelulta.
Pitäisikö minun kehittää tulkitussa vai käännetyssä tilassa?
Yleinen ja tehokas lähestymistapa on kehittää tulkittu ja ottaa käyttöön käännetty. Tulkittu tila antaa sinulle nopean muokkaamisen ja suorittamisen palautesilmukan helpomman virheenkorjauksen avulla, kun taas käännetty tila tarjoaa toimitetulle tuotteelle haluamasi suorituskyvyn ja suunnittelun suojauksen. Käännä, kun ratkaisusi on vakaa ja valmis julkaisuun.
Kokeile FileMakeria ilmaiseksi 45 päivää
Pitkäaikainen relaatiotietokanta-alusta tiimeille, jotka tarvitsevat mukautettuja sovelluksia työpöydälle, verkkoon ja mobiililaitteille yhdestä tiedostosta.