Newsgroup: it.comp.os.dibattiti
Titolo: velocità win 2003 + .NET

ossia : uno dei misteri che rimarranno insoluti per molto tempo..
http://www.chat11.com/Microsoft_Windows_Server_2003
paragrafo 4, sezione d ,"benchmark testing"



Non esiste solo da ora, con win2003. Ma qual è il mistero?
-- 
Alessandro Borille
Microsoft MVP - Windows Server
http://www.almait.it

damiano biagioli wrote:

Cioč, se metto in rete dei benchmark da cui risulta che .NET
č una ciofeca, mi arrestano...oddio...STANNO ARRIVANDO!!!

 Non esiste solo da ora, con win2003. Ma qual è il mistero?
l'eseistenza stessa della clausola . e' come se dicessero " sappiamo
che .NET e' la VM piu' lenta esistente e pertanto vi imponiamo di non
dirlo in giro".
mi sembra un clamoroso autogol ; fossi in loro avrei cancellato
quell'infelice frase da qualsiasi EULA e licenziato quello che l'ha
scritta .

dirlo in giro".
È ovvio che non è per quello.
http://www.gotdotnet.com/team/compare/Benchmark_response.pdf
Serve a cautelarsi legalmente da chi mette in giro dei test fatti con
poco criterio.


 poco criterio.
in pratica , da quello che ho capito , la sun ha iniziato  e la MS gli e'
andata dietro ...
http://www.theregister.co.uk/1998/12/07/sun_modifies_jdk_licence/
 
Perl e phyton mi stanno diventando piu' 'simpatici' , adesso...
almeno di quelli puo misurare il tempo di esecuzione !!

 paragrafo 4, sezione d ,"benchmark testing"
Oracle ha questa clausola da almeno 5-6 anni eppure nessuno ha nulla da
ridire....

 ridire....
a parte quelli della Mysql ab ;)
(si , lo so che oracle ha molte funzionalita che mysql non ha ...)

 poco criterio.
Insomma, quello che fa abitualmente la MS coi suoi studi commissionati sopra
TCO e cazzimazzi. 
-- 
il Vide - ICQ #5301833
http://www.heavy-metal.it
Black oceans beneath come and swallow me
NP: Nulla

TCO e cazzimazzi. 
Quello che fanno tutti.


 almeno di quelli puo misurare il tempo di esecuzione !!
Nessuno ti vieta di fare i test che ritieni piů opportuni anche con .NET.

 Nessuno ti vieta di fare i test che ritieni più opportuni anche con .NET.
Ma non di pubblicarli, da quanto ho capito.
Questo è un vero peccato.
-- 
RiK0
Non credo negli schemi non vincenti.

 Quello che fanno tutti.
Salvo che molti altri lasciano poi la possibilità di essere smentiti.


> Nessuno ti vieta di fare i test che ritieni più opportuni anche con .NET.
 IMHO solitamente  .NET andrebbe usato per ragioni di
'comodita' (vasto framework , linguaggio OOP programmer-friendly ) piu '
che per ragioni di performance .



Bah, per lo stesso motivo si può usare tranquillamente java. Vasto
framework, quintali di librerie, dozzine di tecnologie testate e
consolidate (J2EE, J2ME, JSP, JavaBean, etc etc), specifiche chiare e
pubbliche che coprono la virtual machine, le librerie standard, e tutto il
resto. Etc etc...
Raffaele
-- 
Not only bad news: 
http://www.goodnewsiraq.com
Strategic Blog: 
http://strategic-game.blogspot.com/
Strategic Sourceforge Homepage: 
http://strategic.sourceforge.net/
Strategic Sourceforge Project: 
http://sourceforge.net/projects/strategic/

 Bah, per lo stesso motivo si può usare tranquillamente java. 
e chi ha detto il contrario ?
quello che sto dicendo e' che se si vuole scrivere programmi performanti
di solito si usa C/C++, al limite  l'assembler , se hai *molto* tempo .
nota :anche se il codice nativo generato da gcj e' veloce quanto quello
generato da g++ , gcj non e' un'impentazione di java 'ufficiale' , e
quindi non lo considero java.

 quindi non lo considero java.
Ovvio pure questo.


 quindi non lo considero java.
Dimenticavo. Con l'introduzione del JIT, la situazione è comunque
migliorata molto. Con il compilatore Just In Time il codice java può in
alcuni casi essere più veloce di un codice c/c++.


attorno.
Non esattamente. .NET ha una gerarchia molto completa che comprende in modo
nativo e senza interfacciamenti strani con altri linguaggi le seguenti
tecnologie:
- accesso ai dati (
ado.net
, oledb, odbc, ecc.);
- windows form (applicazioni tradizionali client)
- web form (applicazioni web)
- web services (applicazioni multi tier)
- socket
- security
- ecc.
Inoltre .NET Compact Framework č il framework per i pda, telefoni, eccetera.
Aggiungo (in risposta ad un tuo altro messaggio) che anche .NET č molto ben
documentato e il C# e la Common Language Infrastructure sono standard ISO.
-- 
-antonio-
www.geminisoft.com
(email valida sul mio sito)

 standard ISO.
Questo lo so pure io, ma la standardizzazione ISO non è che mi dica
granchè...


 
e' importante se si vuole creare un'implementazione alternativa libera .
mono e' un compilatore c# 'de iure' visto che esiste uno standard ISO per
il C#, kaffe non e' java, e' solo qualcosa che gli assomiglia .
d'altro canto  kaffe non e' cosi utile per linux quanto
lo e' mono,visto che la sun rilascia lo JDK  anche per linux , mentre
la MS rilascia .NEt solo per windows (rotor e' rilasciato per freebsd e se
non erro non contiene il namespace windows.forms , mentre mono ha il
binding in c# per le GTK ).

 binding in c# per le GTK ).
Appunto. keffe non è completo proprio perchè una jvm completa e
ufficiale per linux c'è gia, e pochi sentono il bisogno di
un'alternativa. Quei pochi sono riuniti sostanzialmente nei progetti kaffe
e GCJ. Se esistesse la necessità di una jvm per linux, ci sarebbero stati
molti più sforzi per lo sviluppo di un'alternativa libera per linux.


 dire..."certificarlo". 
la cosa non e' cosi semplice , si  fa molto prima a firmare un accordo di
licenza con la sun  (come penso abbiano fatto HP e IBM ) che a
implementare una jvm da zero.
opinione degli sviluppatori del gcj :
http://gcc.gnu.org/java/faq.html#2_1



AFAIK IBM ed HP hanno sviluppato VM "diverse" da quella sun, per i
rispettivi hardware proprietari. Ad ogni modo, non ho assolutamente detto
che sia "semplice", ma solo che, ora come ora, non è necessario, e se una
cosa non è necessaria, difficilmente la "comunità opensource" si
muoverà per "risolvere il problema". Per mono il problema era che .NET
esisteva solo per windows. Per java il problema è solo che per linux non
esiste una jvm opensource, e questo è una priorità bassa. Il mondo
opensource è pieno di progetti difficili e complicati. Vedi di drivers
delle periferiche, o wine, o lo stesso kernel di linux. Ma quando una cosa
risulta NECESSARIA, ovvero quanto il bisogno di tale "cosa" è sentito da
molta gente, in un modo o nell'altro quella cosa la si riesce a fare.


granchè...
In genere le standardizzazioni sono le benvenute, comunque la mia
precisazione voleva dire che anche per .NET (come per Java, come hai detto
tu) le specifiche sono chiare e pubbliche.


assistenza a chi la richiede.
Gratuite ma copyright Sun. Nel caso di .NET (Common Language Infrastructure
e C#) sono gratuite e standard ISO. Non credo che ci sia bisogno di
chiedere il permesso a qualcuno per sviluppare un'alternativa a .NET per
Windows o per Linux (vedi appunto progetto Momo).


 codice in c# e usarlo da 
vb.net
.
MIZZICA che rivoluzione.
libffi esiste da un po` piu` anni.
Guarda:
http://jpype.sf.net/
http://pyfortran.sourceforge.net/
http://cens.ioc.ee/projects/f2py2e/
http://www.zope.org/Members/Brian/PythonNet/
 (non e` ironpython)
http://starship.python.net/crew/theller/ctypes/
http://pyobjc.sourceforge.net/
http://sourceforge.net/projects/pywin32/
http://www.scipy.org/documentation/weave/index.html
Queste sono le piu` famose (o quelle abbastanza famose da farsi
conoscere da me).
Questo e` python e puo` usare le librerie di parecchi linguaggi senza
problemi. .Net e` una rivoluzione marchettara, questo si.
-- 
Valentino Volonghi aka Dialtone
Now Running MacOSX 10.3.7
Blog: 
http://vvolonghi.blogspot.com
http://weever.berlios.de

 Windows o per Linux (vedi appunto progetto Momo).
Non solo gratuite, ma liberamente fruibili. Per quel che ricordo, la Sun
si riserva solo la libertà di modificare le specifiche, ma non pone
restrizioni sulle implementazioni delle stesse.
Tra parentesi, con la versione 1.5 java è diventato "quasi" opensource. Il
codice è liberamente modificabile purchè il risultato mantenga la
compatibilità con il sorgente originale. IMHO una licenza del genere è una
garanzia, non una restrizione: rende molto più difficile la creazione di
implementazioni incompatibili (Chi ha detto MS JVM?)
Raffaele
-- 
Raffaele Castagno
Not only bad news: 
http://www.goodnewsiraq.com
Iraq Linux User Group : 
http://www.iraqilinux.org
Strategic Blog: 
http://strategic-game.blogspot.com/
Strategic Sourceforge Homepage: 
http://strategic.sourceforge.net/
Strategic Sourceforge Project: 
http://sourceforge.net/projects/strategic/
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

Questo è un vero peccato.
E' vero, quella clausola, oltre ad essere un deterrente per chi
vorrebbe fare dei benchmark fa anche pensare che chi ottiene il
consenso alla pubblicazione stia facendo i comodi di Microsoft ...
Mi chiedo se le riviste che parlano di auto abbiano bisogno del
consenso delle varie case ...



Per quel che vedo, e per esperienza personale, chi oggi usa .NET prima
usava comunque roba Microsoft, sviluppando sotto Windows e per
Windows.
Poi è vero, che per una buona fetta di sviluppatori la "velocità" di
esecuzione è questione del tutto secondaria.

codice in c# e usarlo da 
vb.net
.
Si, a patto di rispettare la Common Language Specification (CLS) ...

restrizioni sulle implementazioni delle stesse.
Invece per .net c'è uno standard, meglio di così!


problemi. .Net e` una rivoluzione marchettara, questo si.
Mi sono in effetti espresso un po' male, intentendevo dire quello che ho
meglio detto sopra.
(anche il clipper poteva essere richiamare funzioni scritte in c tanti
annni fa)


 esecuzione è questione del tutto secondaria.
Per esempio il 99% di chi sviluppa web applications e webservices...


 Invece per .net c'è uno standard, meglio di così!
Che chiunque può implementare a cdc, e mettere in commercio la sua "MS JVM
Edition" di .NET, con conseguente proliferazione di incompatibilità, o
sbaglio? (vedi anche borland c++ compiler vs vc++ compiler vs gcc)
Ad ogni modo, per quel che ho capito io, alla fine tutti i singuaggi .NET
vengono convertiti in un "common language", ergo l'unico vantaggio è che
gli sviluppatori possono scrivere per .NET nel linguaggio che
preferiscono, o sbaglio?


preferiscono, o sbaglio?
Esatto, è il vantaggio che dicevo prima. In questo modo chi usava il C++
potrà continuare ad usarlo (managed c++) oppure passare a C#, molto simile
come sintassi. Chi usa Java e vuole usare .NET potrà usare Visual j# o
passare a C# viste le molte similitudini. Chi usava visual basic potrà
usare 
vb.net
 senza spendere tempo ad imparare un linguaggio abbastanza
diverso come c#.
La cosa *nuova* (almeno per le mie conoscenze di linguaggi) è che da un
linguaggio puoi derivare ed estendere una classe scritta in un altro
linguaggio.


 annni fa)
JNI permette di interfacciare Java con qualsiasi linguaggio, dal C
all'asm, passando per DLL in VB e delphi
Raffaele
-- 
Raffaele Castagno
Not only bad news: 
http://www.goodnewsiraq.com
Iraq Linux User Group : 
http://www.iraqilinux.org
Strategic Blog: 
http://strategic-game.blogspot.com/
Strategic Sourceforge Homepage: 
http://strategic.sourceforge.net/
Strategic Sourceforge Project: 
http://sourceforge.net/projects/strategic/
questo articolo e` stato inviato via web dal servizio gratuito 


all'asm, passando per DLL in VB e delphi
Sě, lo conosco di nome, anche se non avendolo mai usato non so se č in
grado di fare quello che dicevo nell'altro post, ovvero fare una classe in
c++ che deriva direttamente da una classe java. Non credo ma se tu sai che
puň dimmi pure.
Mi sembra che JNI nasca per interfacciare Java con librerie scritte in
altre linguaggi e fare quindi in modo che certe cose vengano fatte piů
velocemente dal sistema.
Comunque č un po' complesso rispetto ad essere parte integrante del sistema
com'č in .NET, converrai con me, spero.


 linguaggio.
Come ho scritto in un altro post, Java può interfacciarsi con linguaggi
nativi usando JNI, ovvero può richiamare funzioni scritte in C, per
esempio. Inoltre, è possibile richiamare funzioni in java da altri
linguaggi.
Tra parentesi, è possibile scrivere compilatori in grado di generare
bytecode per la jvm partendo da qualunque linguaggio.


 com'è in .NET, converrai con me, spero.
Certo, ma è una questione di "strumenti". Nel senso che
l'interfacciabilità tra i vari linguaggi è dovuto al framework, non ai
linguaggi stessi. Questione di priorità: MS ha puntato
sull'interoperabilità tra linguaggi diversi, SUN ha puntato su un unico
linguaggio eseguibile su piattaforme diverse. Tra parentesi, se non fosse
per il team di Mono c# e CLI esisterebbero solo per windows, mentre con
java la stessa SUN fornisce tutti gli strumenti necessari per sviluppare
sulle 3 principali piattaforme, ovvero linux windows e solaris.
Io, non sento alcun bisogno di .NET, nè di C#, nè di un "JAVA ISO", ma
ovviamente è un giudizio soggettivo...


 
direi che non lo è, la cosa nuova è che MS fornisce tanti linguaggi 
integrati, mentre prima l'interazione tra diversi linguaggi era data dai 
vari gruppi (penso ad esempio a jython/jcl/java/pizza).
Non che a me dispiaccia l'idea del CLR (non mi convince la scelta del 
minimo comun denominatore piuttosto che di una piattaforma più ampia)

linguaggi.
Sì ma puoi derivare una classe scritta in java usando un altro linguaggio?


 
Ma guarda se un programmatore VB prova a mettersi a lavorare in 
vb.net
 
non riesce a scrivere nemmeno un riga.
-- 
Massimiliano G.
www.birreonline.net
God blesses the men who intenvented beer

vari gruppi (penso ad esempio a jython/jcl/java/pizza).
Di questi conosco solo java :-) Ma quindi tra questi *linguaggi* era
possibile derivare una classe scritta in un altro linguaggio?


 Sì ma puoi derivare una classe scritta in java usando un altro linguaggio?
Come ho detto, deve esistere il pezzo di "framework" necessaio. Esiste per
esempio per python: come ho gia scritto, una classe jython può derivare
una classe java. 
Certo questo tipo di interpoperatività non è tra gli scopi primari della
tecnologia java. O meglio, l'interfacciamento "incrociato" tra diversi
linguaggi non è in alcun modo una priorità per SUN. Attualmente,
l'interfacciamento con altri linguaggi, a livello ufficiale, si esaurisce
con JNI, che in ogni caso apre la porta verso qualunque linguaggio possa
essere utilizzato tramite C.
Come ho detto, è vero che per java non esiste un ".NET" globale, ma è
anche vero che, almeno per quel che vedo io, non se ne sente granchè il
bisogno, ed i casi in cui questo bisogno è più sentito nascono soluzioni
"localizzate", vedi appunto jython & co.


ovviamente è un giudizio soggettivo...
Beh, la discussione ha però dimostrato (mi sembra) che certe cose che
pensavi non erano esatte, come la mancanza di tecnologia consolidata per lo
sviluppo di applicazioni enterprise.
Se usi java sono sicuro che resterai meravigliato della semplicità di
scrivere un web service in c#.


 scrivere un web service in c#.
Non ho ancora avuto necessità di sviluppare in prima persona un websevice,
mi sono limitato a richiamarli. Sto studiando a riguardo come sviluppare i
webservices in java, quando avrò capito per bene la lezione magari darò
un'occhiata anche a c# (sempre questione di priorità: per ora il pane me
lo guadagno con java!)



però è da notare che java si sta muovendo in questo senso. Alcune JSR 
recenti come quella per groovy o per l'interoperabilità con linguaggi 
leggeri per la presentazione (leggasi: php) hanno ricevuto un'ottima 
accoglienza. Probabilmente merito della competizione con .net, imo.

 
jython e pizza (dal quale deriva l'implementazione attuale deoi generic) 
Ma anche per Scala, Nice, Benashell, JRuby.. JCL non so perchè è un 
interprete tcl, quindi magari se ne sono fregati :)

non riesce a scrivere nemmeno un riga.
Ancora meno in C# e ancora meno in Java. Certo, dovrà imparare molte cose
ma almeno il linguaggio è conosciuto. E comunque non è obbligatorio, chi
vuole può farlo.


 accoglienza. Probabilmente merito della competizione con .net, imo.
Certo, e probabilmente è proprio dovuto all'arrivo di .NET. Ad ogni modo,
la partenza, e lo sviluppo fino ad oggi, sono stati volti a creare una
base "pure java", multipiattaforma, con supporto per le principali
architetture ed OS.
Certo è una cosa buona e giusta quello che si sta facendo e si farà per
l'interoperabilità, ma non "era" una priorità per un linguaggio che faceva
di "write once, run everywhere" il suo motto principale.
Ad ogni modo, hai qualche info in più su quelle cose di cui parli?


 Ad ogni modo, hai qualche info in più su quelle cose di cui parli?
thread su TSS a proposito della JSR di groovy (accettata)
http://www.theserverside.com/news/thread.tss?thread_id=24798
Scripting for the java platform, spinta da Zend (accettata)
http://www.jcp.org/en/jsr/detail?id=223

lo guadagno con java!)
Per esperienza personale: con .NET un web service si scrive in 10 minuti
(ovviamente uno semplice) e usarlo è del tutto equivalente a chiamare un
metodo di una classe qualsiasi.
Quando invece ho fatto qualche cosa con gli enterprise java beans e
jboss... beh i minuti sono diventati ore. Ma questo è un altro discorso.


 jboss... beh i minuti sono diventati ore. Ma questo è un altro discorso.
Prima o poi proverò...per ora sono ancora alla sezione introduttiva del
Java Webservices Tutorial...


Mancano comunque 
vb.net
, etc etc etc.
Questo solo se tu vuoi avere un ambiente di sviluppo su Linux. Se invece
vuoi/puoi sviluppare su Windows puoi usare il linguaggio che preferisci e
poi far girare il tuo programma su qualsiasi piattaforma.


 consenso delle varie case ...
No, hanno bisogno delle pubblicità :-)

 scrivere codice in c# e usarlo da 
vb.net
.
Con un minimo di ginnastica si possono usare pure da linguaggi COM.

 .NET?
Uguale.

 (si , lo so che oracle ha molte funzionalita che mysql non ha ...)
MySQL è una delle più abili  prese per il culo mai fatte nel mondo dell'IT.
Ovvero come prendere uan libreria di gestione ISAM metterci sopra uno 
straccio di interprete SQL e spacciarlo per RDBMS.....

 straccio di interprete SQL e spacciarlo per RDBMS.....
 se non ti piace non usarlo , per molti usi basta e avanza .

 consenso delle varie case ...
a guardare i test che fecero sulle classe A vien da pensare di si :))
ciao
-- 
boydon
FATTORE DI POTENZA - Contadino della Basilicata.

  se non ti piace non usarlo , per molti usi basta e avanza .
Come i csv d'altronde.
-- 
Valentino Volonghi aka Dialtone
Now Running MacOSX 10.3.7
Blog: 
http://vvolonghi.blogspot.com
http://weever.berlios.de

 se non ti piace non usarlo , per molti usi basta e avanza .
Infatti non lo uso.
Saluti.

 uno straccio di interprete SQL e spacciarlo per RDBMS.....
Allora non sono solo! :)
Henryx