Italian community of Lazarus and Free Pascal

Presentazioni => Presentazioni nuovi utenti => Topic aperto da: SB - Giugno 26, 2014, 08:41:13 am

Titolo: Ciao
Inserito da: SB - Giugno 26, 2014, 08:41:13 am
Ciao a tutti.

Mi presento.
Programmatore da una vita, ormai uso principalmente Delphi (D6, D2010).
Traumatizzato dall'acquisto di D2010, deluso dalla impossibilità pratica di aggiornare vecchio codice (mi tocca usare ancora D6 per i miei programmi principali...) sto cercando di svecchiare il mio ambiente di sviluppo con una alternativa alla portata del mio portafogli e della mia tipologia di "mercato" e che non mi faccia ricadere negli stessi problemi che ho con Delphi.
Dopo aver guardato un po' in giro e soppesato le varie possibilità, penso di rimanere con il caro vecchio Pascal e l'accoppiata Lazarus/FreePascal sembra fare al caso mio.
Vi elenco alcune motivazioni che mi hanno spinto verso questa scelta, così se dico fesserie me lo farete notare prima che mi metta a migrare il codice...
1- ho un ambiente di sviluppo aggiornato senza pagare centinaia/migliaia di euro all'anno di aggiornamenti
2- riciclo gran parte delle mie conoscenze e del mio codice (una parte dovrei riscriverla comunque anche se aggiornassi Delphi)
3- c'è sufficiente documentazione, che spero sia tutta abbastanza semplice e chiara
4- ci sono tante librerie ed esempi (sto ipotizzando, ma da quel che ho visto non dovrei essere lontano dalla realtà)
5- FP è compilato quindi il codice è abbastanza protetto (o almeno non è in chiaro...)
6- FP è compilato quindi le prestazioni sono di poco inferiori al massimo ottenibile (concedetemi la banalità...)
7- posso produrre eseguibili per Windows e Linux
8- posso fare qualche app-etta per Android (ci ho provato ma non sono ancora riuscito a produrre una apk seguendo le istruzioni... ma ho la testa dura e prima o poi ci riuscirò) ed eventualmente per iOS (forse, chissà, semmai, poi si vedrà...)
9- posso accedere a SQLServer tramite ODBC
10- ci sono delle librerie per la realizzazione di report (spero che siano funzionanti e che producano anche pdf...) anche se son tentato di fare a mano
Mi sembra che sia tutto.

L'unica cosa che mi preoccupa è il numero apparentemente esiguo di sviluppatori professionisti che hanno scelto di usare Laz/FP.
Mi fa temere un possibile sviluppo dell'ambiente che non resti al passo con i tempi (che gran problema per uno che usa ancora D6..., ma io guardo avanti...).
Se poteste confortarmi in tal senso...

Ciao


Titolo: Re:Ciao
Inserito da: nomorelogic - Giugno 26, 2014, 10:24:45 am
ciao SB e soprattutto benvenuto

la tua scelta da delphi a lazarus/freepascal è una scelta che abbiamo fatto in tanti e vedrai che sarà indovinata ;)

per il resto:
per i punti 1,2,3 e 4 è più o meno così. L'unica differenza con delhpi è sul fatto che lazarus/fpc sono open source con tutti i pregi ed i difetti relativamente a documentazione, codice, librerie e supporto. Personalmente una cosa che apprezzo tantissimo è la comunità "pascaliana" (parlo del sito ufficiale), veramente ottima.

per 5 e 6 c'è poco da dire: si tratta di binari
punto 7: non solo win e linux, ma anche mac, arm, amiga, solaris eccetera eccetera. Ok che molte piattaforme possono non interessare ma... ci sono e sempre con il formato binario...
8: work in progress ma qualcosa di concreto già c'è
9: ODBC c'è ma c'è anche TMsSqlConnection che usa la connessione diretta...
10: si che ci sono

lazarus/fpc è uno strumento particolare, una volta che viene implementata una cosa si cerca di implementarla per tutte le piattaforme e non è poco.
Per il resto i professionisti usano quello che la politica aziendale "consiglia", se vogliamo discutere discutiamo su quello che si può e quello che non si può ;)
Titolo: Re:Ciao
Inserito da: SB - Giugno 27, 2014, 05:41:09 am
lazarus/fpc è uno strumento particolare, una volta che viene implementata una cosa si cerca di implementarla per tutte le piattaforme e non è poco.

Con tutti i limiti del caso, direi che, almeno nelle intenzioni, è davvero una cosa notevole.

Grazie

Ciao
Titolo: Re:Ciao
Inserito da: xinyiman - Giugno 27, 2014, 02:08:13 pm
Direi che la scelta che hai fatto è ottima. Per i report direi che con lazreport cadi in piedi e ti da la possibilità di esportare in pdf. Lazarus è maturo, ben supportato e possiede molto materiale per apprendere. Quando iniziai io qualche hanno fa non esisteva molto (in italiano nulla)!

Per il libro io l'ho comprato e non me ne pento...diciamo che non è essenziale.
Titolo: Re:Ciao
Inserito da: Stilgar - Giugno 30, 2014, 11:46:22 pm
xinyiman
Citazione
[...]qualche hanno fa non esisteva molto (in italiano nulla)!
Se scrivi così, mi viene da pensare che anche adesso non ci sia molto :p

SB.
L'esperienza con Delphi, sicuramente, la potrai riversare con soddisfazione su Lazarus/LCL.
Se non hai vincoli aziendali che ti impongono un ambiente piuttosto che l'altro ... sentiti libero di provare e vedere se la scelta di può convincere.
Chi è passato al lato oscuro dell'open source sicuramente non potrà che parlarti bene.
Solo l'esperienza diretta portà farti capire se è il tuo ambiente di sviuppo o no.
Il microcosmo che gira attorno a Lazarus è abbastanza attivo. Non avendo sponsor come Google o simili i tempi sono quelli che sono, ma in genere gli autori sono abbastanza pronti a correggere i bachi.
Per quanto riguarda la connettività ai database ... se c'è una cosa che non manca è quella.
Anzi, per quello è quasi più abbondante che su Delphi. In ogni caso, io consiglio l'uso di ZeosLib. Astrae molto bene il db, quindi passando da un database all'altro, devi solo cambiare il "driver" logico e il gioco è fatto.
Per assurdo, metti in file il nome del motore da usare, e virtualmente passi da un db all'altro senza dover toccare una riga di codice. La connessione è effettuata usando le DLL dei vari client, quindi non hai bisogno di configurazioni legate ad ODBC (meno configurazione in fase di distribuzione del codice).

Per le librerie ... sono open source anche loro, quindi puoi debugare direttamente la libreria stessa, in caso di bisogno ;)
Il debugger è la miglior documentazione mai scritta ;)

Nota sul debugger.
Arrivando da quello "borland" troverai delle differenze, a volte fastidiose ;)
Nulla che non si possa aggirare con un minimo di codice scritto "meglio" e più debugger friendly :D

Per il resto ... bho. Siamo qui ;)

Stilgar
Titolo: Re:Ciao
Inserito da: xinyiman - Luglio 01, 2014, 09:58:38 am
xinyiman
Citazione
[...]qualche hanno fa non esisteva molto (in italiano nulla)!
Se scrivi così, mi viene da pensare che anche adesso non ci sia molto :p

Hahahahaha hai ragione
Titolo: Re:Ciao
Inserito da: SB - Luglio 01, 2014, 11:24:44 am
Grazie delle ulteriori informazioni.
Come ho già detto, e purtroppo alcuni tentativi falliti non mi fanno ben sperare, il timore più grosso è che la comunità di sviluppatori sia troppo ridotta.
So bene che "a caval donato non si guarda in bocca", ma spero di non dover passare il tempo a tentare di correggere gli errori degli altri piuttosto che sviluppare i miei programmi.
Voi che siete nel giro da più tempo di me, avreste un'idea di quanto è diffuso Lazarus? Una stima del numero di programmatori che effettivamente lo usano?

Ciao


Titolo: Re:Ciao
Inserito da: nomorelogic - Luglio 01, 2014, 11:48:21 am
giusto per curiosità, che tipo di applicazione devi scrivere?
Titolo: Re:Ciao
Inserito da: SB - Luglio 01, 2014, 12:08:42 pm
Principalmente affiancamento di un gestionale. Poi in pratica il mio interesse è abbastanza vasto.
Quindi almeno database, report, web, elaborazione dati a volte un po' pesantina, apertura verso nuovi dispositivi, ecc....
Per questo vorrei uno strumento flessibile e sufficientemente potente e aggiornato.
E soprattutto svincolarmi, se possibile, dall'accoppiata Windows/Delphi che mi obbliga a sborsare periodicamente una certa cifra di aggiornamenti. Per non parlare delle librerie di terze parti...



Titolo: Re:Ciao
Inserito da: nomorelogic - Luglio 01, 2014, 01:17:28 pm
non vedo grossi problemi
per ogni cosa che dici ci sono delle soluzioni (nel box "progetti lazarus" di questo sito trovi MyErp che è qualcosa di simile al tuo target)
mentre qua http://wiki.freepascal.org/Lazarus_Application_Gallery (http://wiki.freepascal.org/Lazarus_Application_Gallery) trovi una lista di applicazioni eterogenee fatte con fpc/lazarus

per il resto la comunità fpc non sarà enorme ma è molto valida
e recentemente (aprile 2014) è stata premiata da sourceforge
http://sourceforge.net/blog/april-2014-project-of-the-month-free-pascal/ (http://sourceforge.net/blog/april-2014-project-of-the-month-free-pascal/)

detto questo devi (1) scegliere tra 2 mondi: commerciale o open source; (2) paragonarlo con un altro ambiente tipo java, .net o altro ancora; (3) buttarti ;)
Titolo: Re:Ciao
Inserito da: Legolas - Luglio 01, 2014, 01:54:01 pm
Per quanto riguarda la diffusione, posso dirti che, a spanne, il maggior numero di sviluppatori sono concentrati in Sud America e nell'Europa dell'Est, Germania compresa. In Italia siamo pochini ma buoni! :)

La comunità è molto attiva, anche nel fixare i bug (puoi dare un'occhiata al bugtracker (http://bugs.freepascal.org/my_view_page.php) per farti un'idea). Per eventuali dubbi, di solito basta chiedere sul forum ufficiale per ottenere diverse risposte da gente preparata.
Titolo: Re:Ciao
Inserito da: Stilgar - Luglio 02, 2014, 12:55:58 am
http://wiki.freepascal.org/PascalSCADA
Per i dispositivi tipo PLC ... questo progetto potrebbe interessarti.
Poi abbiamo il matto di Legolas che ha seguito (picchiando un core developer del compilatore, per sua stessa ammisione :D ) il porting per nintendo ... quindi quando lui dice buoni ... forse intende buoni picchiatori :p
Un altro matto ha messo freepascal dentro Raspberry Pi.

Web altro ambito ben supportato ;)
Contavo proprio qualche gioro fa almeno quattro framework per fare la parte server.
Io sono più interessato ai client web che ai server. Per i server faccio prima (per abitudine lavorativa) a mettere in piedi un tomcat e due pagine jsp. Ho il gattaccio che vuol partire anche a Pc spento :D
Se non ho proprio voglia di impegnarmi su server, php.

Ripeto, noi siamo passati al lato oscuro dell'open source ...  Luke :D

 Dart Fener
 ops Stilgar

Titolo: Re:Ciao
Inserito da: nomorelogic - Luglio 02, 2014, 09:10:06 am
come vedi l'equilibrio psicologico di tutti noi pascaliani è messo a dura prova hahahahahaha
Titolo: Re:Ciao
Inserito da: Legolas - Luglio 02, 2014, 09:54:27 am
 :D :D