|
|
|
![]() |
|
Strumenti |
![]() |
#1 | |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7038
|
Discussione ASP Vs Mono
Discussione ASP Vs Mono
Sarebbe possibile riportare una comparativa tra questi due ambienti? In particolare mi interesserebbe conoscere se gli utilizzatori di Asp (pure .Net) lo trovano sufficientemente valido e/o promettente per sviluppare le proprie applicazioni e quali problemi hanno finora riscontrato nel loro utilizzo. Quote:
Ciao Ale ![]() Nota: L'intervento completo si trova qui
__________________
Distro:Ubuntu LTS, Debian,SL,OpenBSD I love Linux, Bsd and the free software! Fantasia: fotografica ![]() [Icewm]: Thread Ufficiale - light window manager ![]() ![]() |
|
![]() |
![]() |
![]() |
#2 | |
Member
Iscritto dal: Oct 2006
Messaggi: 108
|
Quote:
![]() Non credo però di aver capito il nesso tra ASP.NET e la comparazione tra .Net e Mono... ASP.NET è una piattaforma per lo sviluppo Web che fa parte della Framework Class Library (FCL). Potrebbe essere più preciso in merito alla sua domanda? |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7038
|
Semplicemente avrei dovuto specificare nel titolo NET Vs Mono in modo da poter includere nel confronto tutti gli ambienti ma non mi pare che posso modificare il titolo del topic una volta creato.
![]() Guardavo qualche articolo sull'interoperabilità tra le due piattaforme. Ho pensato ad ASP, anche se a differenza del C# non è stato presentato per essere standardizzato, semplicemente perché più veloce nello sviluppo. Gli applicativi web le trovo più interessanti dei programmi standalone da qui la richiesta. ![]() Alcune domande: gestire i file xml, per adattare un progetto pensato per una vers. precedente di net ad una successiva, pur disponendo di tool che semplificano il loro utilizzo, concretamente richiede molto tempo? Trattandosi di file testuali esistono tool di sviluppo capaci di debuggarli in qualche modo? Tra l'altro per file .xml intendevi con riferimento a progetti standalone? In uno degli articoli letti su mono si dice che l'implementazione del modulo per apache è funzionante su linux ma non su windows, mentre l'altro web server minimale disponibile funziona in entrambi gli ambienti ma per le limitate funzionalità implementate è da usarsi solo per il testing. A questo punto, in ambito web-application, esistono alternative open e free oppure no? Apache+Asp funziona ma Apache+Asp.net? Mi pare di no su windows. ![]() Dati i problemi di incompatibilità tra differenti versioni di .NET se ad es. si volesse creare dei moduli per un progetto, contenenti funzionalità generiche comuni a svolgere certi compiti, è possibile fare interagire un progetto nuovo con uno precedente? In che modo? Ad es. sarebbe necessario disporre nel server di entrambi gli ambienti? Come si richiamano tra di loro? Se si richiamano? Nel passaggio tra le versioni di NET nei vostri progetti siete stati costretti a fare molte modifiche? Oppure è avvenuto più un'aggiunta di funzionalità più che una vera e propria ridifinizione rispetto al precedente? Il fatto di non dover tenere conto della compatibilità passata, dato che è possibile eseguire il codice nella propria versione specifica di Net, da un lato semplifica molto la progettazione di questi ambienti ma dall'altro vorrei capire quanto questo incida, a livello di proprio progetto. Ciao Ale ![]()
__________________
Distro:Ubuntu LTS, Debian,SL,OpenBSD I love Linux, Bsd and the free software! Fantasia: fotografica ![]() [Icewm]: Thread Ufficiale - light window manager ![]() ![]() |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Oct 2006
Messaggi: 108
|
Allora, andando per ordine.
1) Gestione compatibilità versioni Per rispondere, posto direttemente un file di configurazione: <?xml version="1.0"?> <configuration> <startup> <supportedRuntime version="v2.0.50727"/> <!-- 2.0 RTM --> <supportedRuntime version="v2.0.50215"/> <!-- 2.0 Beta2 --> <supportedRuntime version="v2.0.50110"/> <!-- 2.0 PD7 --> <supportedRuntime version="v2.0.40903"/> <!-- 2.0 PD6 --> <supportedRuntime version="v2.0.40607"/> <!-- 2.0 Beta1 --> <supportedRuntime version="v2.0.40426"/> <!-- 2.0 PD5 --> <supportedRuntime version="v2.0.40301"/> <!-- 2.0 PD4 --> <supportedRuntime version="v2.0.40209"/> <!-- 2.0 PD3 --> <supportedRuntime version="v2.0.31113"/> <!-- 2.0 PD2 --> <supportedRuntime version="v2.0.31010"/> <!-- 2.0 PD1 --> <supportedRuntime version="v1.2.30703"/> <!-- 2.0 PDC --> <supportedRuntime version="v1.1.4322"/> <!-- 1.1 RTM --> <supportedRuntime version="v1.0.3705"/> <!-- 1.0 RTM --> </startup> </configuration> Per inciso, questo è il file di configurazione del .Net Reflector di cui parlavamo nell'altro thread. Come può vedere, tutto quello che è necessario per indicare la compatibilità con altre versioni è una riga del tipo "supportedRuntime". In quanto scritto in formato XML, questa configurazione può essere tranquillamente modificata con qualsiasi editor di testo. D'altra parte, però, VisualStudio permette di avere a disposizione anche IntelliSense e validazione in tempo reale. Non solo: il Fx dispone anche di un intero set di classi (System.Configuration) dedicato esclusivamente a gestire i file di configurazione. Quindi nessun problema né a design time né a runtime. 2) ASP.NET on Apache In una sola parola, certo. Esiste un mod di Apache, mod_aspnet per l'appunto, che consente di eseguire ASP.NET sotto Apache. Al tempo (parlo di 1 o 2 anni) lo provai con successo sotto Windows. Non ho invece mai provato Mono on Apache, ma equalmente non vi dovrebbero essere problemi, anche considerando che attualmente Mono implementa al 99% ASP.NET. 3) Dipendenze tra progetti Nessun problema anche in questo caso, che peraltro è piuttosto frequente. È sufficiente copiare l'assembly compilata (ossia una DLL, per farla breve), nella cartella Bin del progetto. Con VisualStudio, vengono anche automaticamente controllate tutte le dipendenze, aggiornandole se necessario. Il discorso si espande anche in scenari più complessi, visto che è pure possibile condividere un'assembly tra più applicazioni (web e non) utilizzando opportune configurazioni. Per il discorso compatibilità, vale il solito discorso: se il Fx in uso supporta tutte le classi usate dall'assembly non ci sono problemi. 4) Conversione di progetti Tempo fa mi occupai di convertire una ventina di WebApplication in versione 1.0 (quindi diverso tempo fa ![]() Questo è dipeso in gran parte dal fatto che una nuova versione del Fx non rimuove le vecchie classi qualora ne introduca di nuove. Viene cioè mantenuta la compatibilità. Un esempio è ASP.NET 2.0 (Fx 2.0) che ha aggiunto molti nuovi controlli e classi, senza però eliminare le vecchie. Risultato, il "vecchio" codice gira sul Fx nuovo. Spero di aver chiarito i suoi dubbi, Riccardo Chiodaroli |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7038
|
Gentilissimo!
![]() Quindi non è necessario mettere nessuna dll a livello di sistema (quindi sotto la cartella windows-system o simila)? ![]() Ma solo all'interno del progetto? Presumo che lo sviluppo in Net risulti più veloce sia per la documentazione sia per un ambiente di sviluppo con maggiori feautures rispetto all'equivalente Mono ma si potrebbe sapere quando mister Chiodaroli penserà di fare un progetto (di una discreta consistenza) in Mono in modo da riportarci quanto sia usabile. nel senso di stabile, sufficientemente veloce nell'esecuzione, per progetti di una certa entità? ![]() Stessa cosa riguardo alla conversione di progetti, da una vers. precente, ad una successiva, però stavolta usando mono ? ![]() Ciao Ale ![]() Nota: Se continui a darmi del Lei temo che dovrò iniziare pure io. ![]() ![]()
__________________
Distro:Ubuntu LTS, Debian,SL,OpenBSD I love Linux, Bsd and the free software! Fantasia: fotografica ![]() [Icewm]: Thread Ufficiale - light window manager ![]() ![]() |
![]() |
![]() |
![]() |
#6 | |
Member
Iscritto dal: Oct 2006
Messaggi: 108
|
Quote:
Per il discorso tempo di sviluppo, Mono pecca soltanto di un IDE piuttosto ridotto, ma per la documentazione è valida quella fornita da MS. Questo perché il set di classi che una implementazione del Fx deve esporre è parte degli standard ECMA-335 e ISO/IEC 23271. Per questo ad oggi molti sviluppatori progettano per MS.NET (per intenderci) su Windows e solo dopo prendono in considerazione il porting su Mono/*nix. Anche se parlare di porting è inesatto, visto che comunque gli applicativi compilato sono portabili per definizione. Se devo dare un giudizio su Mono, penso sia ora di cominciare ad usarlo. I tempi in cui era solo un tentativo di fornire un'alternativa sono passati ed oggi è ben più completo ed affidabile. Vero è che mancano progetti " di una certa entità" che ne dimostrino il vero valore... Saluti, Riccardo Chiodaroli |
|
![]() |
![]() |
![]() |
#7 |
Member
Iscritto dal: Oct 2006
Messaggi: 108
|
Ho trovato anche questo articolo, che credo sia di un certo interesse per questa discussione:
http://community.sharpdevelop.net/bl...opAndMono.aspx |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:05.