Domanda

Di recente ho scoperto che la compagnia di una mia amica co-proprietaria usa 4D, che non ho mai sentito parlare prima. Giurano da essa, ma sono non tecnico e quello che dicono su di esso suona come Blurb di marketing memorizzato. Purtroppo la 4D sito sembra anche privo di qualsiasi informazioni reali ed è pieno di parole come, "soluzione" "completa" , "piattaforma" e "integrata", invece.

Dato che cosa è piuttosto costoso e usa un linguaggio personalizzato che non ho molta voglia di imparare solo per un progetto, io sono cauto e mi chiedo se qualcuno avesse qualche esperienza con esso? Lo consiglieresti? Per cosa è buono? Che vantaggio competitivo dovrei guadagnare imparando come un programmatore, o utilizzarlo come una società?

È stato utile?

Soluzione

4D è stato intorno per un lungo periodo (~ 25 anni), quindi è molto più vecchio di esempio MySQL. Pensate a come una versione professionale di Microsoft Access: Ha un proprio linguaggio ospite Pascal di ispirazione, un proprio motore di database relazionale, un IDE molto maturo per lo sviluppo di GUI rapida e un tempo di esecuzione su misura che permette di vero "write once, run anywhere" (ovunque essendo Mac OS (X) e Windows, che è). Al giorno d'oggi, si capisce anche SQL, c'è una versione del server e anche un web server integrato. E 'abbastanza potente, in modo che il confronto di accesso, probabilmente non gli rende giustizia.

Oggi, credo che è in gran parte utilizzato per le applicazioni legacy che sono vecchio come 4D è. Non credo che avrei imparato di nuovo oggi, tanto meno avviare nuovi progetti con esso, dal momento che è possibile ottenere la stessa funzionalità e poi alcuni impilando fino componenti open source.

Altri suggerimenti

ho usato per fare alcuni molto lavoro serio 4D, uno dei sistemi che ho scritto è ancora in uso come un sistema aziendale di circa 16 anni più tardi. Ho ottenuto frustrati perché stavano prendendo gli anni a venire fuori con il nuovo versione orientata agli oggetti della lingua e stavo scrivendo migliaia di righe di codice per utilizzare un controllo tabella di terze parti.

4D offre cross-platform, sistemi client-server molto alte prestazioni che utilizzano un server proprietario. Il modello di database è molto più set-orientato rispetto SQL e tira gli insiemi completamente nel linguaggio di base. Si fa un bel lavoro di fornire il codice per i clienti, perché si compila tutte le procedure a codice nativo, che viene memorizzata nella cache a livello locale e aggiornati on-demand quando non è aggiornato.

La lingua e l'ambiente GUI hanno i loro capricci, ma il rovescio della medaglia è che ci sarà probabilmente una buona vita per essere fatto da supporto come piattaforma legacy. se è possibile ottenere qualcun altro a pagare il conto per gli strumenti, può essere un'utile aggiunta alla vostra cassetta degli attrezzi di consulenza. Bisogna considerare quanto business specifico codice sta andando essere là fuori per un prodotto unico con quel lungo una storia!

Un ingegnere per il quale ho grande rispetto è stato recentemente assunto da 4D che la dice lunga sul loro impegno per il futuro, l'assunzione di questo tipo di ragazzo.

Ho lavorato molto con i sistemi legacy di recente, facendo un porto da roba vecchia Mac a WPF e il contrasto tra la complessità per lo più inutilizzato di Visual Studio e vecchi strumenti di Mac mi ha ricordato di 4D. Sto anche porting mia OOFILE C ++ database e sistemi di informativa a REALbasic - l'OOFILE set-oriented operazioni provenivano direttamente da quello che mi è piaciuto di 4D e anche questo mi ha fatto pensare che ero troppo duro in questa risposta in origine.

La cosa da ricordare a proposito 4D è che è stato set-orientato fin dall'inizio (scritto da un matematico) e molto più facile da usare per molte cose rispetto a SQL. Il modello di distribuzione di 4D Server è una superba combinazione di un'applicazione desktop e fornitura di una rete - componenti compilati vengono memorizzati nella cache sul server e automaticamente inviati a un client quando necessario. Non c'è bisogno di spegnere o attivamente spingere o distribuire gli aggiornamenti. Il modello di interfaccia grafica di 4D è stato frustrante, ma guardando il sito di oggi, hanno risolto la maggior parte dei problemi che ho dovuto utilizzare soluzioni di terze parti per anni fa.

Evitare come la peste. La mia azienda lo utilizza ed è solo un esercizio costante di frustrazione. Si esegue alcuna dove vicino così come il passo di vendite vorrebbero far credere, e la documentazione è o inesistente o non disponibile.

A mio parere, non v'è alcun motivo per iniziare ad imparare 4D a meno che non si desidera una semplice applicazione database e si riesce o non vuole imparare a creare GUI in un linguaggio più grande. Il vantaggio principale che 4D ha è che il costruito nel funzionalità tra l'interfaccia utente e il database in grado di gestire la maggior parte di ciò che è necessario. Se volete qualcosa di veloce, piccolo, e inhouse, è possibile cavarsela con 4D, ma se avete bisogno di sviluppare una potente applicazione commerciale vi imbatterete in un paio di muri. Se avete bisogno di qualcosa che 4D non fornisce automaticamente sarà molto difficile da farlo funzionare.

io considero la lingua completamente arcaica. Si lavora per quello che fa, ma il nostro prodotto è diventato limitata da parte della lingua e database stesso. Noi continuare a correre in stranezze strani e hanno codificare il nostro modo intorno a loro.

Ho esperienza in 4D 2003 e nel 2004, ma non ho aggiornato alla versione più recente a causa dei costi. E 'estremamente costoso. Ogni cliente ha bisogno di acquistare licenze per ogni computer che deve eseguire il software. Il nostro prodotto costa più di $ 1000 per un nuovo ufficio a causa delle licenze. Quando una nuova versione di 4D viene rilasciata ogni singolo cliente deve pagare per aggiornare le loro licenze.

Dopo aver guardato https://www.4duk.com/products/ataglance.html, vi consiglio di stare alla larga - sembra uno di quei prodotti che sta andando da nessuna parte.

Mi ricorda il tempo mi è stato fatto uso di una piattaforma di sviluppo chiamato Witango - incubo assoluto da usare, e tutte le applicazioni dovevano essere riscritto in .NET molto poco dopo.

Investire il vostro tempo per imparare qualcosa di più mainstream / occupabili .

Da evitare a tutti i costi. 4D usato per essere un buon database Mac venti anni fa, ma è obsoleto oggi. Estremamente costoso da implementare e mal supportato. L'ho usato per molti anni e da allora trasferito a Real Studio per lo sviluppo di database multi-piattaforma, che ha un linguaggio più moderno e una comunità di sviluppatori molto più attivo.

Sarò diffidare di investire troppo in qualcosa di simile. Sul lato positivo, se è quello che l'azienda utilizza l'apprendimento che pagherà dividendi. Ma le competenze si impara sarà difficile da usare in altri luoghi.

Credo che più della metà delle risposte oltre qui sono inesatte. So di più di 20 aziende con oltre 1000 utenti. E credo che ci sono un sacco di più.

Con 4D v12.1 (www.4d.com) si può facilmente implementare con un clic di un pulsante per l'utente singolo, client server, Mac, Win. E ci sono facili da plugin di configurazione per l'integrazione con Flex, iPhone e Android OS. La loro KB e la documentazione è molto ordinato e completo.

Hanno una grande squadra di ingegneria e il sostegno da parte 4D e la comunità online è semplicemente favoloso. Sono stato con 4D per diversi anni e non ho lamentele.

4D come qualcun altro ha sottolineato ti dà un database di back-end completamente integrata e frontend. Le connessioni client server sono stateful quindi non avete bisogno di preoccuparsi per la gestione di registrazione e gestione delle sessioni client server.

A meno di $ 1000 all'anno non è costoso ed è possibile distribuire un numero illimitato di singoli applicazioni utente. Quale altra piattaforma di sviluppo propreitory ti dà quella?

Sono sicuro che Real Software ha i suoi pro e contro anche. Ci sono molte scelte al giorno d'oggi e ci sono molti modi per la pelle di un gatto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top