Newsgroup: it.comp.programmare
Titolo: Miglior linguaggio di programmazione?

Siccome sto imparando un linguaggio per web per fare siti ecommerce,
database, ecc.
Quale linguaggio mi consigliate?
Ho iniziato con PHP e MySql, per ora vado bene, sembra facile.
ma che difetti PHP ha?
Non so, dite che e' meglio ASP? o altri?
grazie,
ciao

 Non so, dite che e' meglio ASP? o altri?
No beh ASP3 č peggio che andar di notte anche perchč ora non č piů
supportato, č mono piattaforma ecc ecc. 
-- 
Lawrence
"ain't nothin' but fun."

 wrote in message
news:m9c76v61iqzd.6...@40tude.net...


 Tanto piu' ho letto che pure google e yahoo usano php, quindi.......
Google usa Python e C++ per quanto ne so
Yahoo non saprei ma so che una parte di Yahoo era stata fatta in Lisp
ciao!


 Yahoo non saprei ma so che una parte di Yahoo era stata fatta in Lisp
Perche` avevano comprato Viaweb Store, poi diventato yahoo store, che era  
in lisp; non so se e` ancora in lisp. Penso comunque che usi molto perl.
-- 
Marco Barisione
http://hotkeybind.sf.net
http://marcobari.altervista.org

in lisp; non so se e` ancora in lisp. Penso comunque che usi molto perl.
IIRC, l'hanno riscritto in c++. Solo che siccome le 'configurazioni'
erano ancora s-expr hanno obbedito allegramente alla decima legge di
greenspun :)

 richieda anche la conoscenza di php.
http://www.google.ch/intl/en_ch/jobs/
Direi di no io.
Gente seria come quelli di google sanno che php non va preso in
considerazione. <g>
-- 
Valentino Volonghi aka Dialtone
Linux User #310274, Proud Gentoo User
Blog: 
http://vvolonghi.blogspot.com
Home Page: 
http://xoomer.virgilio.it/dialtone/

 Direi di no io.
mmmh, ne sono (quasi) sicuro, o non lo richiedono piu` o in quello (e` per  
la svizzera) non lo richiedono.


 la svizzera) non lo richiedono.
Google Irlanda no:
http://www.google.ie/jobs/openings.html
Google Germania no:
http://www.google.de/jobs/openings.html
Google Giappone no:
http://www.google.co.jp/jobs/
Google UK no:
http://www.google.co.uk/jobs/openings.html
Google India no:
http://www.google.com/jobs/sw-bangalore.html
Google US no:
http://www.google.com/jobs/santamonica.html
Poi non so se esistano altri google nel mondo, ma tutti questi no :).


 
Premesso che di php so quel poco che serve (non è il mio pane 
quotidiano), ma la domanda mi sorge spontanea: su quali elementi basi il 
giudizio negativo di php?
M.

 giudizio negativo di php?
Sul linguaggio P?P.
E` un linguaggio orribile, manca di milioni di ficiurs che qualsiasi altro
linguaggio appena decente ha, e` illeggibile, sporca troppo i 'template'
(perche` p?p senza estensioni non ha template ma e` embeddato)...
Ne avrei per andare avanti parecchio ma credo sia l'ottava volta in una
settimana che spiego perche` P?P faccia schifo e quindi un po` mi sono
scocciato :P.
Davvero, se conoscessi altri linguaggi oltre a php converresti con me
senza problemi, ne sono sicuro (per lo sviluppo web intendo).


 senza problemi, ne sono sicuro (per lo sviluppo web intendo).
non sono assolutamente d'accordo, io conosco java, c++, e .net (c# e
managed c++), java per il web lo trovo inutilmente complicato e prolisso,
.net molto meglio ma per applicazioni semplici continuo a preferire php,
la semplicità con cui gestisce array associativi, mysql (e sqlite che
ultimamente qui in ditta è diventato una moda), sessioni etc... lo
rendono imbattibile per progetti e prototipi da consegnare in giornata.
tieni presente che io lo uso inoltre come sciprt da shell al posto di
script bash, morale se mi levi php mi rovini, qui in ditta abbiamo anche
build script per mono, gcc, gcj realizzati in php. 
ficiura sarebbe features? secondo te cosa manca a php?
(secondo me manca una seria possibilità di oop ma php5 risolve questi
problemi.).
inoltre un server per applicazioni web lamp lo metti su con due lire.
ciao

 inoltre un server per applicazioni web lamp lo metti su con due lire.
Ma cosa ci sto a fare a parlare qua...
Se pensi che io usi java o 
asp.net
 o mille altre cazzate corporate driven
sbagli di grosso.
Io uso python e in particolare Twisted Matrix e Nevow per sviluppare
applicazioni web. 
Quelli che tu chiami build script sono riuniti in buildbot:
http://buildbot.sf.net
che e` usato anche da quelli di mono:
http://go-mono.com:8008/
Nel caso ti serva un testing environment per web applications:
http://pbp.belios.de
Non toccherei bash per lo scripting neanche sotto tortura... Mi metto li`
e replico la cosa in python, molto piu` facile, molto piu` leggibile,
molto piu` corto e veloce.
E` evidente che non conosci python e le sue potenzialita` quindi hai dato
per scontato che io fossi uno di quelli che usa robe strane per sviluppare
sul web tipo java (che schifo).
Faccio presente che io per avere la mia applicazione funzionante faccio
questo:
twistd -y app.tac
E ho finito, niente file di configurazione strani o roba simile, tutto li`
sopra, il .tac sono 6 linee idiote da capire.
Se vuoi che ti mandi un esempio di applicazione scritta con Nevow+Twisted
con python fai un fischio che ti mando il blog che ho fatto in qualche ora
tra l'altro ieri e ieri.
A p?p manca lo strong typing, manca un object model degno di questo nome
(python non solo ha un object model stupendo ma e` pure semplicissimo da
usare), mancano le eccezioni (queste sinceramente non so se ci saranno
nella versione 5), ha un modello di sviluppo del software sbagliato... 
Per roba piccola piccola magari puo` reggere, ma poco sopra si cominciano
ad avere tempi di sviluppo biblici rispetto ad altre soluzioni (codice
embeddato nell'html e` da preistoria). La sintassi di php e` orrenda poi e
ce n'e` molte altre (non supporta la Multiple Inheritance vero?) niente
metaclassi e via via...
http://www.python.org
 
http://www.twistedmatrix.com
http://www.divmod.org
http://www.divmod.com
 (un web mail server che e` scritto in twisted e
		       nevow con potenzialita` non indifferenti)
Vabbe`, se ti ho stuzzicato la curiosita` meglio :)


 ha scritto::
i miei due cent: se confronti php con java per, ad esempio, pensando a
JSP <-> PHP è ragionevole l'uso di php. Se confronti php con bash
concordo. Se confronti php con linguaggi di scripting decenti no.
guardando dalla sponda semplicistica del web, quella del 'accrocchiamo
una pagina dinamica in due minuti', mi chiedo:
 se devo usare un mod_qualcosa ed usare un linguaggio di scripting
immerso nell'html/xml, perché php, dato che altri (perl,tcl,
ruby,python) sono più potenti, sono più veloci e hanno la stessa o
maggiore semplicità d'uso? 
Sempre di LAMP si parla ;)

ce n'e` molte altre (non supporta la Multiple Inheritance vero?) 
la MI non è oggettivo che sia migliore dell'ereditarietà singola..
ma quello sarà un altro flame più in là :)

 ma quello sarà un altro flame più in là :)
Dipende dall'uso :).
Io mi trovo oggettivamente limitato, ma si sa`... Python essendo pieno di
programmazione generica e polimorfismo non usa l'ereditarieta` per il
polimorfismo come java, ma piuttosto la usa per riusare il codice.
Togliere la MI in situazione come quella e` vietarmi l'uso piu` bello
della stessa: con le classi mixin :).
Ma c'e` tempo per tutti i flame di questo mondo ah ah ah ah :)


della stessa: con le classi mixin :).
e qui ti volevo ;) i mix-in non sono necessariamente coincidenti con
l'ereditarietà multipla, sono in un certo modo ortogonali. Ad esempio
in ruby dicono che esista 'multiple inheritance via mix-in'. 
Includere un pacchetto di funzionalità in una propria classe equivale
a implementare i metodi necessari e poi infilarci dentro un modulo.
Un modulo può includere altri moduli, ma non può essere esteso tramite
ereditarietà. In questo modo il grafo degli antenati di una classe
diventa un semplice albero, e in più puoi usare super() in modo molto
più intuitivo :).
Più facile a farsi che a dirsi:
module M
 def due_foo
  foo
  foo
 end
end
class C
 include M
 def foo
  print 'ciao '
 end
end
mio_c= C.new
mio_c.due_foo # => 'ciao ciao '
class D < C
 def foo
  print 'sottoclasse '
  super
 end
end
D.new.due_foo # => sottoclasse ciao ciao
Immagino che ci siano cose per cui la MI sia ancora necessaria (aldilà
del type check) solo che nn mi vengono in mente ;)
I ragazzi di java si sa, si complicano le cose, sarebbe molto meglio
se avessero adottato Jam[1] come linguaggio:
http://www.disi.unige.it/person/LagorioG/jam/

 
http://www.disi.unige.it/person/LagorioG/jam/
Va be`... i ragazzi di java e` da lungo tempo che devono azzeccarne una
:), non hanno inventato nulla eppure hanno fatto tutto sbagliato.




ruby non l'ho mai provato in quanto da queste parti non è molto
utilizzato ne per altro nemmeno installato sui server ai quali ho accesso.
python l'ho un po' usato tempo fa con pygtk in realtà come linguaggio non
mi dispiace per nulla, la possibilita di usarlo con java tramite jython lo
rendono anche interessante, ma alla lunga non riesco a leggere un codice
se non ci sono le parentesi graffe.
ho provato anche mod_python, ma il php resta + veloce.
ma come si dice in queste occasioni ad ognuno il suo o no? 

 ho provato anche mod_python, ma il php resta + veloce.
Oh ecco... veniamo alla velocita`. Visto che tempo fa mi era stato detto
che qualcuno avrebbe fatto dei test a riguardo, giuro che questo mi
interessa davvero.
http://groups-beta.google.com/group/it.comp.lang.python/browse_thread/thread/52fc28d90f62cf78/1dd32be24a3e128b#1dd32be24a3e128b
(Non uso uno shorter link perche` non mi fido di loro)
Il test2 non considerarlo troppo pero` visto che non ho l'output di apache
bench.
Pero` la generazione dinamica di una pagina con accesso a database impiega
9ms (uso postgres).
Servire una pagina statica impiega 7ms. Per cui l'accesso al DB prende
circa 2ms (meno in realta` perche` c'e` tutto l'overhead di generazione
della stessa) e questo era stato uno dei punti in cui mi era stato detto
che P?P era imbattibile.
Ricapitolando:
Web Server: Twisted.web
In ogni test 300 accessi concorrenti per 3000 accessi totali
Pagina statica con hello world: 7ms (circa)
Pagina dinamica con accesso al DB: 9ms (circa)
La tabella del db con postgres e` generata con questo schema:
http://pastebin.mattgoodall.dyndns.org/145
E la pagina generata ha solo una serie di:
<span> 
    <span>
	<p>linea1</p>
	<p>linea2</p>
	...
	...
    </span>
    <span>
       <p>linea1</p>
       ...
    </span>
</span>
Anche qua... In realta` e` un pochetto piu` complessa perche` gia`
gestisce le sessioni e il login/logout in un form in alto (prima
dell'output) ma non dovrebbe essere questo a cambiare le carte in tavola
direi.
Davvero, se mi fai sto mega favore di dirmi le prestazioni che hai tu e
con che versione di apache mi faresti contento.
Ovviamente per te e` inutile il test sulla pagina statica visto che quelle
le passa apache e lo posso fare pure io se setto apache ma e` troppa
fatica.


> [quoted text muted]

non mi occupo personalmente dei server e delle versioni, cmq lunedi
mattina appena arrivo in ditta chiedo a chi di dovere, cmq mi sembre e
ripeto mi sembra avessimo usato apache 1.qualcosa e sqlite, php un 4 e
qualcosa (il primo della serie 4 che supporta sqlite)
cmq lunedi ti faccio sapere.

 
http://www.disi.unige.it/person/LagorioG/jam/
a proposito di MI... giusto oggi mi e` capitato di rimpiangerla amaramente
in C#: non sono ancora riuscito a trovare un argomento convincente del
perche` non permettarla in java e .NET... bah!
Non stupitevi del fatto che uso C#... sono obbligato ad usarlo per un esame
che ha come assistente il Lagorio di cui sopra...
ciao Anto
-- 
"Computer science is not about computers any more than astronomy
is about telescopes." -- EW Dijkstra

che ha come assistente il Lagorio di cui sopra...
lol :)