Presentazione e prima richiesta :-)

Salve a tutti.
Mi chiamo Leonardo M. ed i computer sono sempre stati la mia
passione.
La programmazione è sempre stata una delle mie “fisse” :slight_smile:

Da qualche anno utilizzo quasi esclusivamente Linux e programmo per
diletto utilizzando Gambas, un Basic visuale molto interessante (per chi
non lo conoscesse, è molto simile al Visual Basic di Windows: ha una
sintassi chiara ed un’IDE completa con la quale si possono disegnare
anche GUI molto curate).

Ma la sete di conoscenza, si sa, è dura da saziare ed ultimamente mi sto
guardando in giro alla ricerca di qualcosa di alternativo.
Inizialmente la scelta è caduta su Python (che, a detta dei suoi
utilizzatori, è un linguaggio eccezionale, chiaro, potente ecc…).
Mi sono comprato anche un bel manuale ma… non mi soddisfa abbastanza:
sarà per la sintassi un po’ particolare, sarà per l’ottimizzazione su
determinate strutture di dati (liste, dizionari, tuple), sarà per il
classico “colpo di fulmine” che non è scoccato… ma non mi entusiasma.

Ho perciò provato Ruby online e mi ha notevolmente affascinato!
Sintassi chiara, semplice, oggetti sopra tutto, una bella comunità di
sviluppo: insomma, mi è piaciuto.

Adesso chiedo a voi che lo utilizzate:
1)
per un utente di PC che la programmazione la intende a 360 gradi (senza
quindi focalizzarsi su un determinato campo), vale a dire dall’algoritmo
di cifratura alla gestione dei DB alla scrittura di applicativi grafici
fino ai gestionali per amici, come lo vedete?
2)
non amo le applicazioni da console: sono focalizzato sulla scrittura di
applicazioni con GUI (Gambas, sotto questo punto di vista, è
eccezionale, come ho detto: mette a disposizione tutto quello che
serve). Ruby, come Python, si deve appoggiare a librerie esterne. Voi,
cosa mi consigliereste di utilizzare, tenendo conto che se le mie
applicazioni potessero girare anche su Windows sarebbe un buon
traguardo? Ho letto di wxRuby, che si appoggia a wxWidgets, è ed
utilizzabile anche con una IDE grafica denominata farpyguie, giusto?
E’ una soluzione valida? Esiste di meglio?
3)
a livello di documentazione e libri, Ruby com’è messo? In italiano ho
visto che si trova veramente poco…

Grazie se vorrete rispondere a queste domande da niubbo! :slight_smile:


Ciao.
Leo.

Web: www.leonardomiliani.com
E-mail: [email protected]
Scegli software opensource - Choose opensource software

Il 05/04/07, Leonardo M.[email protected] ha scritto:

Salve a tutti.

Salve,

dico la mia solo sull’ultimo punto, visto anch’io mi sono avvicinato
da poco al linguaggio.
Forse sono un po’ più vicino di te a Ruby, in quanto vengo da anni di
Perl e magari i linguaggi dinamici mi sono un po’ più familiari.

non amo le applicazioni da console: sono focalizzato sulla scrittura di
applicazioni con GUI (Gambas, sotto questo punto di vista, è
eccezionale, come ho detto: mette a disposizione tutto quello che
serve). Ruby, come Python, si deve appoggiare a librerie esterne. Voi,
cosa mi consigliereste di utilizzare, tenendo conto che se le mie
applicazioni potessero girare anche su Windows sarebbe un buon
traguardo? Ho letto di wxRuby, che si appoggia a wxWidgets, è ed
utilizzabile anche con una IDE grafica denominata farpyguie, giusto?
E’ una soluzione valida? Esiste di meglio?

L’unico appunto che posso suggerire, è quello di slegarsi dal concetto
di gui. Per me il futuro sarà sempre più rivolto alle web
applications[1] che portano numerosi vantaggi, tra i quali la completa
(o quasi) portabilità, nessuna necessità di installazione di
componenti sui client (e questo nel caso di grandi aziende, è un punto
a favore) e infine la manutenzione può essere mirata ad un singolo
computer, che nel nostro caso è il server.
Poi ovviamente dipende dal tipo di applicazione che devi fare (e
questo può rispondere anche alla tua prima domanda): si dovrebbe usare
lo strumento giusto per ogni compito.
Utilizzare Rails (perché è di Rails che parlo) per una piccola
calcolatrice o per un clone di tetris è impensabile (almeno, credo).

[1] http://en.wikipedia.org/wiki/Web_application

Saluti,

On 4/6/07, Leonardo M. [email protected] wrote:

Quindi, parliamo di applicazioni stand-alone che rispondono a

Ruby può rispondere a questi requisiti?

Certo che sì!!! Ruby è divertente ed è certamente adatto a un uso
hobbistico. E ci sono tanti diversi “toolkit” che ti permettono di
generare
un’applicazione desktop. Però io non li conosco… non faccio più
applicazioni desktop da tanto tempo!

M

Ciao,
intanto ti ringrazio per la risposta :slight_smile:

Preciso un punto che, forse, non si è ben compreso dal mio post:
(purtroppo, ma la vita a volte non va come dovrebbe) non sono un
programmatore professionista ma un semplice appassionato di computer che
fa della programmazione una sua passione (c’è chi va a pesca, c’è chi
usa il computer non solo come console :-)) per cui i programmi che
faccio (in generale) sono o per uso personale oppure per amici ed altro.
Quindi, parliamo di applicazioni stand-alone che rispondono a
determinati scopi e girano esclusivamente in locale.

Tralasciando tutta la questione dei pro e dei contro delle applicazioni
web-based, io volevo utilizzare quindi Ruby come linguaggio più evoluto
del Basic ma non volevo però rinunciare alla comodità di una IDE che mi
permetta di realizzare anche ottime interfacce grafiche.

Insomma, cercavo un buon linguaggio, facile da apprendere, relativamente
potente ed espandibile semplicemente ma che fosse anche al contempo
utilizzabile con una GUI.

Ruby può rispondere a questi requisiti?


Ciao.
Leo.

Web: www.leonardomiliani.com
E-mail: [email protected]
Scegli software opensource - Choose opensource software

Un’altra domanda…
Ma esiste un’IDE con i suggerimenti sensibili al contesto?
Esempio:
Se utilizzo l’oggetto File, al momento in cui aggiungo il “.” gradirei
avere i metodi usabili per l’oggetto in questione (un po’ come avviene
in Gambas o in VB, per capirsi).
Ho provato Kate ma non mi pare che lo faccia… o mi sbaglio?


Ciao.
Leo.

Web: www.leonardomiliani.com
E-mail: [email protected]
Scegli software opensource - Choose opensource software

Sarebbe fico assai averlo, ma pare che ci sono un po’ di difficoltà per
via della dinamicità di Ruby: classi e moduli sono aperti quindi è
incasinato sapere momento per momento quali sono i metodi disponibili
per ogni oggetto. Pensa ai vari find_by_xxx dinamici di RoR…

Ciò detto so che c’è gente che ci lavora. Sarebbe una bella cosa. “ri”
(e anche la variante “qri”) è poco utile e spesso mi trovo a fare
obj.methods.grep(/sottostringacheprobabilmentec’ènelmetodochecerco/) ma
non è mica una bella cosa…

:slight_smile:

Leonardo M. wrote:

Un’altra domanda…
Ma esiste un’IDE con i suggerimenti sensibili al contesto?
Esempio:
Se utilizzo l’oggetto File, al momento in cui aggiungo il “.” gradirei
avere i metodi usabili per l’oggetto in questione (un po’ come avviene
in Gambas o in VB, per capirsi).
Ho provato Kate ma non mi pare che lo faccia… o mi sbaglio?


“Militaire : variété d’homme amoindri par le procédé de «l’uniforme» qui est
une préparation à l’uniformité totale du cercueil.” - Boris Vian

Matteo V. ha scritto:

Ruby può rispondere a questi requisiti?

Certo che sì!!! Ruby è divertente ed è certamente adatto a un uso
hobbistico. E ci sono tanti diversi “toolkit” che ti permettono di
generare
un’applicazione desktop. Però io non li conosco… non faccio più
applicazioni desktop da tanto tempo!

Tentato dalla novità, ho ordinato il libro Programming Ruby 2a edizione
ed ho iniziato lo studio di Ruby :slight_smile:
Speriamo di aver fatto la scelta giusta :slight_smile:

Ah, visto che ci sono, ho provato 2 ambienti per lo sviluppo di
applicativi GUI, uno è FXRuby, basato su FOX, e l’altra è l’accoppiata
Glade/ruby-gnome2. Sulla prima l’uso è abbastanza intuitivo ma i widget
di Fox non è che mi entusiasmino più di tanto.
I widget Gtk2 sono più “carini” ma non ho capito bene come usarli con
Ruby…
E’ un punto che è meglio affrontare in un secondo momento, quando avrò
preso pratica con questo linguaggio, oppure posso provare a seguire lo
studio del linguaggio parallelamente allo studio di una GUI builder?


Ciao.
Leo.

Web: www.leonardomiliani.com
E-mail: [email protected]
Scegli software opensource - Choose opensource software

Leonardo M. ha scritto:

Ma voi che cosa usate, allora, per scrivere codice Ruby?

Intanto mi rispondo da solo e posto queste news perché magari potranno
far comodo a qualcun altro…
Eclipse 3.3M6 (una versione beta ma molto stabile) incorpora il supporto
ai DLTK, vale a dire ai linguaggi di script dinamici com’è ruby.
Aggiungendo il plug-in di supporto a ruby, adesso durante la scrittura
di codice ho l’autocompletamento automatico :slight_smile:
Avviso solo che la versione 3.2, l’ultima definita “stable” supporta
solo il TCL per cui serve necessariamente la 3.3M6.

Vi do un po’ di link utili:
Eclipse 3.3M6:
http://download.eclipse.org/eclipse/downloads/drops/S-3.3M6-200703231616/index.php

Sito Eclipse DLTK:

Tutorial per installare il plug-in di ruby:


Ciao.
Leo.

Web: www.leonardomiliani.com
E-mail: [email protected]
Scegli software opensource - Choose opensource software

Leonardo M. wrote:

solo il TCL per cui serve necessariamente la 3.3M6.

Io ho installato questo su eclipse: http://rubyeclipse.sourceforge.net/

Grazie del link.
Lo
proverò.Ma è compatibile con quello che ho installato io (nel senso: posso
tenerli entrambi o uno esclude l’altro?)


Ciao.
Leo.

Web: www.leonardomiliani.com
E-mail: [email protected]
Scegli software opensource - Choose opensource software

david ha scritto:

Sarebbe fico assai averlo, ma pare che ci sono un po’ di difficoltà per
via della dinamicità di Ruby: classi e moduli sono aperti quindi è
incasinato sapere momento per momento quali sono i metodi disponibili
per ogni oggetto. Pensa ai vari find_by_xxx dinamici di RoR…

Ciò detto so che c’è gente che ci lavora. Sarebbe una bella cosa. “ri”
(e anche la variante “qri”) è poco utile e spesso mi trovo a fare
obj.methods.grep(/sottostringacheprobabilmentec’ènelmetodochecerco/) ma
non è mica una bella cosa…

Che bella notizia… :-/

Ma voi che cosa usate, allora, per scrivere codice Ruby?


Ciao.
Leo.

Web: www.leonardomiliani.com
E-mail: [email protected]
Scegli software opensource - Choose opensource software