Newsgroup: it.lavoro.informatica
Titolo: [Un po' OT]Consigli ambiente di sviluppo alle soglie del 2007

Dovrei rifare un progetto medio grande e non ho idea di 
quale ambiente abbracciare... Sarei propenso per java, 
tuttavia il solo fatto di dover fare tutta l'interfaccia 
grafica mi fa venire male.
Quasi sicuramente lo realizzero' in delphi e l'unico dubbio 
che mi rimane era 
vb.net
 che a differenza dei due linguaggi 
precedenti non conosco... o meglio anni fa ero passato da 
vb6.0 che conoscevo molto bene a delphi(per altro mi ero 
trovato 10000 volte meglio --> vb6 e' un bidone).Inoltre 
delphi non mi permette di fare una grand astrazione del 
db... cioe' in parte si... cosa che con java si riesce 
meglio.Con 
vb.net
 non so.
Ho il terrore che succeda come in un azienda dove lavoravo 
di ritrovarmi nel 2005 con applicativi scritti in delphi6.0 
che sono impensabili da portare su ambienti nuovi(si fa 
prima a rifarle.) e mi pare che vb abbia dei tempi di 
evoluzione piu' lenti,mentre in java mi pare che le 
compatibilita' con le versioni piu' vecchie non siano 
traumatiche.
Inoltre temo che il futuro di delphi sia un po' segnato... 
cioe' la borland voleva vender tutto.
In soldoni oggi come oggi in che linguaggio lo fareste un 
progetto da 0?
E non mi rispondete ajax o php che non ci crede nessuno!!!! 
:-D In italia ce' ancora gente che programma in 
ASP(bleah),quando cominceranno a usare web 2.0 nei broswer 
gireranno videogiochi tipo Unreal2007!!!
ciao e grazie di eventuali pareri!!

 In soldoni oggi come oggi in che linguaggio lo fareste un progetto da 0?
.NET.
C#, però.
Massimo

 C#, però.
Sottoscrivo.
Altrimenti puoi buttarti su Java (che non mi dispiace affatto) e C++.
Delphi: non saprei, lo conosco praticamente "zero"...
Ciao,
Giulio

 progetto da 0?
Se deve durare nel tempo non vedo alternative a Java/c#/
vb.net
Saluti.


Che significa? Con Delphi fai tutto quello che fai con gli altri
linguaggi. Inoltre c'è anche la versione Delphi per Net,
la quale dovrebbe supportare anche ASP.Net.

 In soldoni oggi come oggi in che linguaggio lo fareste un progetto da 0?
Direi che se il fatto di avere un client PC non e' un must e l'obbligo 
di un Application Server non e' d'intralcio, mi orienterei verso J2EE. 
In tale ambiente le interfacce utente non sono un grosso problema, ci 
sono miriadi di tool che ti permettono di concentrarti sull'applicazione 
in se' e di evitare quindi di preoccuparti dell'interfaccia grafica, di 
fare una UI con le Swing non ci penserei neanche. Valuta anche il Google 
TooolKit, mi e' sembrato carino, anche se e' un po' come ricadere nella 
trappola delle Swing, pero' il prodotto e' veramente potente e gradevole.
Comunque Java.
.NET non mi sembra una strategia giusta, suona meno "politically 
correct". Non so se devi dare anche motivazioni commerciali, ma da 
questo punto di vista oggi il termine "multipiattaforma" e' molto di 
moda e si vende da solo, se poi e' anche corredato dall'attributo 
"OpenSource", anche solo per effetto dei pacchetti utilizzati, e' 
vincente. Sembra che la gente sia disposta a spendere molti piu' soldi 
per qualcosa di GPL piuttosto che qualcosa di tradizionale.
Quindi Java.
-- 
Dr.Ugo Gagliardelli,Modena,ItalyCertifiedUindoscrasherAñejoAlcoolInside
Spaccamaroni andate a cagare/Spammers not welcome/Spammers vão à merda
Spamers iros a la mierda/Spamers allez vous faire foutre/Spammers loop
schijten/Spammers macht Euch vom Acker/Spamerzy wypierdalac'

 Che significa? 
Che abbiamo trovato enormi difficolta' con i componenti standard a 
passare a oracle(cmq con D7 magari ora le cose son cambiate.).

 correct"
Io questa non l'ho mai capita (non è la prima volta che la sento eh).
Sun è una società per azioni come MS, mica una ONLUS.
-- 
Lawrence - 
http://www.oluyede.org/blog
http://www.neropercaso.it
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 di fare una UI con le Swing non ci penserei neanche
e perchè mai? mai provato a fare delle interfaccie grafiche con IntelliJ o
Matisse? troppo difficile?!?
--
  Mopo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

Perchč con delphi non puoi fare astrazione ? E' un linguaggio ad oggetti 
in cui in pratica puoi seguire le stesse modalitą di astrazione del db 
che seguiresti in java o c++ ....
Io vedrei la cosa cosi ... se vuoi fare una web application va benissimo 
java o .NET .... per fare invece una applicazione non butterei 
assolutamente via l'idea di restare su delphi in quanto č un ambiente 
molto produttivo (secondo me non meno di VB)
ciao
PP

 passare a oracle(cmq con D7 magari ora le cose son cambiate.).
Qual'è l'attuale DB che usate? Non vi connettete tramite ODBC o driver
ADO?
Delphi 6 può usare Oracle tramite ODBC senza
problemi (esperienza personale).

 ciao e grazie di eventuali pareri!!
Francamente, non mi sembri nella condizione di imporre una scelta
commercialmente coraggiosa diversa da .NET o Java. Quindi mi
concentrerei su questi due, a quel punto ponendo un occhio serio sulle
scelte progettuali e architetturali perchè anche lì non mi pare di
vedere idee chiare. Da una parte critichi (giustamente) la
progettazione di interfaccia java/swing e ipotizzi delphi/vb6,
dall'altra confronti con Asp, Php e Ajax.
Io credo che se ti orienti ad una applicazione server java sia la
soluzione più sostenibile. Attenzione però, che la valutazione va
fatta *anche* e *soprattutto* sulle competenze che si hanno a
disposizione: le rivoluzioni costano, se siete una azienda che ha
competenze consolidate su piattaforma Microsoft devi mettere anche
questo sul piatto della bilancia.

 E non mi rispondete ajax o php che non ci crede nessuno!!!!
Se il client ajax non ti spaventasse, Monorail
(
http://www.castleproject.org/index.php/MonoRail
).
Ci lavoriamo da qualche mese, e' una specie di porting di RoR su .Net,
e' un framework stabile (stanno rilasciando la 1.0, c'e' qualche ultimo
bug da aggiustare), l'abbiamo integrato facilmente con dojo e
prototype, un po' meno facilmente con rico, usiamo un view engine
chiamato brail (html + boo), i controller sono scritti in c# (ma .Net
non ti limita in questo senso ovviamente), l'accesso ai dati e' fatto
tramite ActiveRecord su NHibernate, insomma, cosa vuoi di piu' dalla
vita :)
-- 
ale
http://www.riolo.org

ehilah ha scritto:

Ci mancherebbe (direi che è un dato di fatto)! Non ho detto che sia piu'
semplice realizzare interfacce con matisse che con gli ambienti visuali MS
o per deplhi. 
Dico solo che c'è questo pre-giudizio che afferma che swing sia troppo
lento e/o troppo complicato per essere usato. In parte questi giudizi
trovano sicuramente radice nelle prime versioni di swing, ma soprattutto
denotano che non si sa programmare bene con swing e non si utilizzano gli
strumenti adatti.


Beh a mia esperienza le interfacce con le swing le evito .... preferisco
strumenti rad come VB o delphi ... oppure se devo creare interfacce 
portabili wxwidget ... ma è un parere personale ...mentre trovo j2ee un 
mondo produttivo e vantaggioso ... swing lo trovo scomodo ... ma forse è 
un mio rifiuto psicologico :)

 dall'altra confronti con Asp, Php e Ajax.
su questo stavo scherzando.
giustissima l'osservazione sulla competenza che si ha acquisito nel 
corso del tempo che nel mio caso porterebbe il progetto su 
delphi.Siccome il progetto e' a lungo termine mi allettava l'idea di 
spostare il tutto da un'altra parte visto che borland non mi ispira 
molta fiducia per il futuro.

 strumenti adatti.
Che le swing siano assurdamente complicate non è un pregiudizio, è un
giudizio. Il problema non è usare gli strumenti adatti per disegnare
l'interfaccia ma i quintali di codice che poi bisogna districare e
manutenere.

 
Guarda, io ho solo una vaga idea del perche', ma secondo me e' per lo 
stesso motivo per cui chi sviluppa virus lo fa solo su piattaforma MS.
Anche se non e' di sicuro colpa di MS, non biasimo chi si rivolge altrove.
Per cui mi limito a citare un'opinione che e' abbastanza diffusa.
Poi dal punto di vista tecnico preferisco sicuramente il Java, in 
passato ho sviluppato in SmallTalk che considero l'OO per eccellenza, ed 
in Java, a parte l'architettura OO, ci ho trovato certe piacevoli analogie.
Poi c'e' il discorso che anche se Sun non e' una ONLUS ed e' anche un 
produttore HW, ha sviluppato il Java che puo' funzionare dappertutto, e 
questo mi sembra bello. D'altra parte anche IBM tende a sviluppare 
prodotti multipiattaforma in Java, ed entrambe le societa' hanno 
contribuito enormemente ai progetti OpenSource, sia in termini di soldi 
che in termini di attivita'. Lo faranno sicuramente anche per cercare di 
contrastare la predominanza di mercato di MS ma, anche qui guardando 
solo all'effetto finale, il risultato e' piu' gradevole: non sono ONLUS 
ma appaiono come lo fossero.
Ne' da parte di Dun ne' da parte di IBM ho mai rilevato quelle invettive 
contro l'OpenSource, che invece sono state lanciate da MS.


 ... Dun ne' da parte di IBM ...
Leggasi Sun, e' che la D e' troppo vicina alla S e ci ho le dita da 
muratore.
E non saltate fuori con la battuta che ci sono anche altre cose molto 
vicine ma che non vanno confuse (buchi ad esempio), che e' vecchia!
:-)


 Sun è una società per azioni come MS, mica una ONLUS.
Si però con .NET sei legato ufficialmente a sistemi Windows, con Java puoi 
andare anche su altri sistemi... 

 In soldoni oggi come oggi in che linguaggio lo fareste un progetto da 0?
Ma tu non stai partendo da 0, giusto? In che ambiente di programmazione è 
scritta l'applicazione che devi "trasportare"? 

 Matisse? troppo difficile?!?
Non c'e' niente di difficile se lo sai fare, pero' con le Swing produci 
codice client caratterizzato da:
- pesantezza
- imprevedibilita' del comportamento (p.e. due schede grafiche diverse 
possono riprodurre in modo anche molto diverso lo stesso colore)
- complessita' del codice e quindi anche di manutenzione
Poi la premessa era: "se la piattaforma client non e' un must" ovvero se 
posso faccio tutto dentro al Browser.


 in Java, a parte l'architettura OO, ci ho trovato certe piacevoli analogie.
Tipo?


 andare anche su altri sistemi... 
Teoricamente esiste Mono, comunque su questo non posso che concordare.
La mia domanda però era sulla questione della percezione.


 
Per esempio l'assenza dell'ereditarieta' multipla tipo C++


 possibile che un progetto medio/grande venga affidato ad una sola persona?
E' chiaro che se accetto lo faro' con altre persone... tuttavia siccome 
ho esperienza nel campo in cui andra' operare mi e' stato chiesto a me 
di realizzarlo nei modi,tempo e tecnologie che riterro' opportune.
Inoltre sara' realizzato per step e via via saranno inseriti moduli 
aggiuntivi."Finira'"(i software non sono mai finiti) tra qualche anno.
  Ma tu non stai partendo da 0, giusto? In che ambiente di programmazione č
  scritta l'applicazione che devi "trasportare"?
non esiste che io tocchi codice vecchio(oltretutto fatto con i piedi) 
per ovvi prob di diritti.cmq era D6 in delphi.
Colgo l'occasione per ringraziare tutti quanti anche si sta andando a 
delineare cio' che gia' sapevo :-( :-( o java o .net che non sono solo 
una moda.

 Quindi Java.
Complimenti, uno splendido sunto delle considerazioni piů inutili e 
controproducenti da fare nell'analisi delle piattaforme da utilizzare per un 
progetto :-(
Massimo

 non sono ONLUS ma appaiono come lo fossero.
Il che č precisamente quello che vogliono.
E tutti a considerare loro i "buoni" e Microsoft i "cattivi", ignorando 
beatamente tutto ciň che hanno fatto prima di mettersi a usare l'open source 
come arma di mercato.
Massimo

 Per esempio l'assenza dell'ereditarieta' multipla tipo C++
E questo sarebbe piacevole?
Più in generale: ho già sentito questa opinione; ma come diamine si fa a 
considerare l'assenza di una funzionalità piacevole, solo perché così "non 
la puoi usare e quindi non puoi farci i casini"?
Mah...
Massimo

 andare anche su altri sistemi...
Tra l'altro, questo non è neanche vero.
Massimo


L'opinione l'hai gia' sentita perche' e' conforme alla teoria.
In tutto cio' che facciamo c'e' sempre un aspetto che puo' essere 
considerato piu' o meno fondamentale secondo la sensibilita' personale: 
l'estetica.
Poiche' l'ereditarieta' multipla con e' conforme alla teoria 
automaticamente diventa "brutta".
Dal punto di vista dei casini, uno degli obiettivi dell'object oriented 
e' quello di permettere a chiunque di utilizzare una classe a "scatola 
chiusa", l'ereditarieta' multipla in tal senso scricchiola, ovvero gli 
oggetti devono essere a prova di chi li usa non aprova di chi li scrive.


 la puoi usare e quindi non puoi farci i casini"?
Io non la vedo in quel senso. Python, il mio linguaggio preferito, ha
l'ereditarietà multipla dal day one ma effettivamente non è poi cosi
usata. Comunque sono d'accordo con te, l'ereditarietà multipla (o un
meccanismo come i mixin per simularla) ci vorrebbe. Non si tolgono
feature perchè i programmatori son stupidi e incapaci, semmai si insegna
loro ad usarle.


 oggetti devono essere a prova di chi li usa non aprova di chi li scrive.
Questa proprio non l'ho capita


 Mah...
<mode fun on>
Senza pisello non rischi la gonorrea <g>.
</mode fun off>
-- 
Valentino Volonghi aka Dialtone
Now Running MacOSX 10.4
Blog: 
http://vvolonghi.blogspot.com
New Pet: 
http://www.stiq.it

 oggetti devono essere a prova di chi li usa non aprova di chi li scrive.
Questa mi giunge davvero nuova. E perché, di preciso? Hai degli esempi?
Massimo

 source come arma di mercato.
E' quello che ho detto. Arma o no, pero' e' cosi'. Per cui, quel mercato 
che si e' visto fare quelle concessioni, perche' colossi come Sun o IBM 
per sposare l'open source e' questo che hanno fatto, indipendentemente 
dalle ragioni l'apprezza.
Se un negoziante ti regala quello che ti serve, indipendentemente dal 
perche' lo fa', anche se fosse che vuol metterla nel culo ad un suo 
concorrente, tu cosa fai?
Vuoi chiamarla "turbativa di mercato"?


 piu' che a far partire una JVM, e li' il Java e' proprio off-limits.
Stai parlando per luoghi comuni eh...


 
In termini si esclude qualsiasi finalita' progettuale, si parla di 
"politically correct" e di "motivazioni commerciali". Una delle 
motivazioni che puo' far abortire un progetto e' spesso una motivazione 
commerciale, e altrettanto spesso una motivazione politica appunto.
C'e' in corso un thread dove si tende a far apparire il COBOL come 
qualcosa di "giurassico" (cito), ovvero che appartiene ad un passato 
talmente remoto da appartenere unicamente alla memoria. Un altro punto 
di vista potrebbe essere che nonostante la vecchiaia sopravvive, per cui 
se ne dovrebbe dedurre che deve avere una marcia in piu', soprattutto in 
un mercato, come quello dell'informatica, dove il cambiamento e' 
velocissimo.
Come vedi non si parla di aspetti tecnici ne' tantomeno progettuali, 
questi sono aspetti puramente politici.
In genere e' bene sospettare di chi parla per partito preso, perche' 
probabilmente lo fa per l'impossibilita' di argomentare diversamente, 
altrimenti l'avrebbe fatto subito. E' come avere una bussola che segna 
il sud, basta andare dalla parte opposta.


 Vuoi chiamarla "turbativa di mercato"?
No.
Ma definirli paladini della giustizia e dell'open source mi pare un 
pochettino fuori luogo.
Massimo

 In genere e' bene sospettare di chi parla per partito preso
Ah, quello sempre.
Massimo

 o java o .net che non sono solo una moda.
Python, Ruby, C++, diciamo che le alternative ci sono, dipende da cosa
vuoi fare (il primo ecommerce di Yahoo fu' realizzato in lisp ..).
-- 
ale
http://www.riolo.org


Lungi da me definirli paladini, ho ben sottolineato che hanno cavalcato 
una tigre, io volevo solo sottolinere gli effetti, l'analisi della causa 
puo' essere utile ma in altri ambiti.


 riusciresti a far girare l'XP su un intel di tre anni fa.
In che senso scusa, ho l'XP che uso per la contabilità che gira su un PIII 
550
anno di grazia 2000 con 256 mega di ram. I programmi della Sogei ci 
funzionano tanto bene.
Saluti,

 
Hai mai sentito parlare del "diamond problem"?
Me ne sono preventivamente accertato, se cerchi diamond+problem su 
google ottieni piu' di 20 milioni di match.
Mi sembrava impossibile che fosse noto solo a me. Ma non escludo che ci 
sia parecchia gente che ne sia completamente all'oscuro.



Saro' io che son sfigato, ho rottamato il PIII 900 di mio figlio, direi 
che fosse del 2003 ma potrei sbagliare, perche' una volta installato 
l'XP sembrava che si muovesse nella melassa.


 Hai mai sentito parlare del "diamond problem"?
Si lo conosco, ma solo un pessimo sistema di risoluzione dei metodi può
avere ancora quel problema. In Python è stato risolto qualche tempo fa.
ps. di che teoria parlavi?


 sembrava che si muovesse nella melassa.
Sarà che non aveva abbastanza memoria, probabilmente.
Massimo

 tecnica si riduce a "facciamo quello che dice il mercato".
Evidentemente oggi non ci prendo.
Un progetto puo' fallire per ragioni tecniche solo dopo che e' stato 
avviato, dopo cioe' che i tecnici ci hanno gia' cominciato a lavorare. 
Intendevo che un progetto possa essere bocciato prima ancora di partire, 
semplicemente perche' costa troppo, la motivazione commerciale, o 
perche' non piace come si propone, la motivazione politica.
IBM in Italia sta spendendo un mucchio di soldi solo per rendere 
presentabile il suo "ERP italiano", ma presentabile dal punto di vista 
politico, in modo da poter dire che rispetta gli stili attuali, che e' 
di moda, che e' multipiattaforma e che e' un open-source ante littera, 
appunto. Perche' altrimenti la gente dice: "Legacy? No grazie."
Inutile dire che problemi tecnici non ne ha'.


 che fosse del 2003 ma potrei sbagliare, 
Si, ti potresti sbagliare.
A meno che tu nel 2003 tu l'abbia comprato di terza mano.

 Il che è precisamente quello che vogliono.
Totalmente d'accordo.  Certe affermazioni fanno capire quanto sono
state abili queste società a "ripulire" la loro immagine di
supermonopolisti
dopo le batoste commerciali prese da M$

 l'XP sembrava che si muovesse nella melassa.
Avevo un amd k7-800Mhz con 512ram e winxp + antivirus e 
tutto il resto andava divinamente fino 8 mesi fa perche' poi 
l'ho venduto.
Ho visto pero' che su dei PIV marchiati (per es. compaq) 
winxp girarava a schifo.

 dipende da cosa vuoi fare 
ops mero dimenticato di specificare la tipologia del 
progetto!! sarebbe uno schifoso gestionale... d'altronde 
delphi,vb son nati per quello.

 La mia domanda perň era sulla questione della percezione.
Infatti ho detto "ufficialmente", ovvero in via ufficiale. In via ufficiosa 
puoi ricorrere a Mono, perň se il progetto č grosso e importante, non so 
quanto possa essere affidabile Mono. In certi ambienti č meglio non 
rischiare. 

 ha scritto nel messaggio 
news:ego8go$1i4o$1...@newsreader1.mclink.it...

Ti riferisci a Mono? Io ho detto "ufficialmente". Poi si possono percorrere 
altre strade, ma se il progetto è di una certa entità, io andrei su strade 
sicure. 

 moda.
E non sei contento, scusa? Ammesso che ci fosse una soluzione alternativa, 
io avrei *paura* a lavorarci oggi...e chi lo sa che fine farà l'ambiente di 
programmazione nuovo su cui oggi sto lavorando, fra 2 o 3 anni?? Tipo quello 
che è successo con ASP 3.0 

 
Della teoria della relativita' ristretta, che altro altrimenti?
:-)


 Giusto per curiosita', come?
http://www.python.org/download/releases/2.3/mro/


 
Infatti la mia non voleva essere una critica, ho espresso solo una 
preferenza.
 >> Giusto per curiosita', come?
 >
http://www.python.org/download/releases/2.3/mro/
Se ti riferisci al C3, mi e' sembrato un metodo probabilistico piu' che 
deterministico, o sbaglio? Non ci sono molto addentro a queste faccende, 
la mia preferenza si basa appunto sulla volonta' di starne fuori: se 
dico super.metodoPadre(); voglio essere sicuro di quello che dico senza 
ambiguita'. :-)


 una moda.
Pe fortuna che lo sapevi.
Chissa cosa uscira', facci sapere fra 3 anni che avete combinato.
Nicola
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 if it's the only one you have" - E. A. Chartier
Ajax è un approccio e non un linguaggio di programmazione (se proprio
vogliamo è praticamente javascript)
Si snobba sempre però lato fruizione è eccellente. Immediato e
application-style.
Io l'ho cominciato ad usare e ne ho apprezzato i notevoli vantaggi.
Tutta la programmazione che sta lato server è un altro discorso. Ajax
riguarda la rappresentazione dei dati ed il tipo di interrogazione. Non
a caso sta per uscire 
atlas.net
Non capisco un'altra cosa. Sei talmente bravo che hai l'imbarazzo della
scelta sulla tecnologia da usare? Beato te. Solitamente uno si
specializza in qualcosa e lavora bene in quella cosa.
Se oggi programmi in java e domani in .net come impari tutti i segreti
che stanno dietro ogni tecnologia?
Mi sento sempre troppo incompetente quando leggo gli altri.
Io sono programmatore microsoft ma se dovessi consigliarti direi java
perchè è più maturo.
.net ha ancora molte cose da dover sistemare, anche dopo il framework
2.0. Tecnologia giovane.
Saluti

 ambiguita'. :-)
Ho sentito il creatore di Python e mi ha detto che nei giorni bisestili
dopo l'anno 1000 il metodo "super.metodoPadre()" appellandosi alla
divina immacolata richiama le linee dispari di helloworld.py, negli
altri giorni invece si comporta lanciando un dado...


 a caso sta per uscire 
atlas.net
Non capisco come le due cose siano correlate. Se MS .NET dopo un anno ha
finalmente tirato fuori una libreria per Ajax buon per gli utilizzatori
di quel framework :-)
Secondo me hai sbagliato a fare il reply comunque


 
ROTFL!
Forse non era il "creatore di Python" ti e' venuto in sogno?


 Forse non era il "creatore di Python" ti e' venuto in sogno?
No beh, l'ho anche conosciuto a Ginevra. Un tipo particolare -)


 progetto da 0?
Java. Per quanto possa sembrarti incredibile e impensabile ad oggi è
il linguaggio di più facile manutenzione e con più tools RAD
disponibili
(mi viene in mente Eclipse). Questo detto da un ex programmatore C/ProC
(ora sistemista)
incallito, ma il vero informatico deve astrarsi dal paradigma del
linguaggio.
Mi è capitato recentemente di dover ricompilare e testare
personalmente un ambientino
scritto in C/C++ con in ambiente Visual Studio 2003. Lo sforzo compiuto
è di
gran lunga superabile dal tempo perduto (si fa per dire, meglio dire
guadagnato) a 
imparare Java.
Ciao.