<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Commenti a: Mono, C#&#8230; e se il problema fossero le GTK+?</title>
	<atom:link href="http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/feed/" rel="self" type="application/rss+xml" />
	<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/</link>
	<description>Avventure di un essere umano nel Software libero: notizie, recensioni, opinioni, guide e humor su Ubuntu, Linux, GNOME, KDE...</description>
	<lastBuildDate>Tue, 16 Mar 2010 18:29:57 +0100</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Di: Alessandro Bruni</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316586</link>
		<dc:creator>Alessandro Bruni</dc:creator>
		<pubDate>Sat, 04 Jul 2009 01:27:36 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316586</guid>
		<description>Potenzialmente invece sì: I programmi compilati JIT possono essere ottimizzati a runtime tramite analisi statistica dell&#039;esecuzione del codice. Oltre ad avere altri tipi di ottimizzazioni che i programmi precompilati non possono avere.</description>
		<content:encoded><![CDATA[<p>Potenzialmente invece sì: I programmi compilati JIT possono essere ottimizzati a runtime tramite analisi statistica dell&#39;esecuzione del codice. Oltre ad avere altri tipi di ottimizzazioni che i programmi precompilati non possono avere.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Mesh</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316625</link>
		<dc:creator>Mesh</dc:creator>
		<pubDate>Fri, 03 Jul 2009 19:22:52 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316625</guid>
		<description>Python non è paragonabile a Java e C#, perchè non JITta, bytecoda e basta (evviva l&#039;italiano :D)</description>
		<content:encoded><![CDATA[<p>Python non è paragonabile a Java e C#, perchè non JITta, bytecoda e basta (evviva l&#39;italiano :D)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: charon</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316624</link>
		<dc:creator>charon</dc:creator>
		<pubDate>Fri, 03 Jul 2009 18:48:16 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316624</guid>
		<description>Non ho mai scritto librerie grafiche per cui sul punto 1 la spiegazione è più che accettabile anche se mi pare strano che nel produrre una libreria che prevede l&#039;ereditarietà (che è presente nei bindings) si usi un linguaggio che non la contempla. Sul punto 2 bisogna intenderci, per linguaggio interpretato intendo che ci vuole un software che traduca a runtime un file (binario o sorgente poco importa) in istruzioni macchina. I test che ho visto mostrano che Java di Sun è più veloce di C# su Mono, e che il C++ è più veloce di Java. So per certo che anche python produce bytecode, ma è probabile che lo facciano anche gli altri linguaggi. Si vedono in giro molti benchmark mi sembra che C# si piazzi tra Java e Python come velocità. Su KDE moltissimi programmi usano plugin, e ne hanno tanti, GIMP usa plugin, Firefox anche, non sono convito che sia così difficile scrivere programmi &quot;pluggabili&quot; senza usare Mono.&lt;br&gt;Con il terzo punto mi sa che siamo arrivati al dunque: fin&#039;ora non c&#039;era  un framework completo da usare per programmare in GTK e neppure un IDE che faccia tutto. Io sono tra quelli che hanno iniziato da Java, ma di difficoltà ad usare python non ne ho trovate, dato che la sintassi è quasi la stessa, tranne molte cose che non bisogna neppure scrivere, ed è quest&#039;ultima la qualità che mi ha colpito, non le cose che sono simili. :)</description>
		<content:encoded><![CDATA[<p>Non ho mai scritto librerie grafiche per cui sul punto 1 la spiegazione è più che accettabile anche se mi pare strano che nel produrre una libreria che prevede l&#39;ereditarietà (che è presente nei bindings) si usi un linguaggio che non la contempla. Sul punto 2 bisogna intenderci, per linguaggio interpretato intendo che ci vuole un software che traduca a runtime un file (binario o sorgente poco importa) in istruzioni macchina. I test che ho visto mostrano che Java di Sun è più veloce di C# su Mono, e che il C++ è più veloce di Java. So per certo che anche python produce bytecode, ma è probabile che lo facciano anche gli altri linguaggi. Si vedono in giro molti benchmark mi sembra che C# si piazzi tra Java e Python come velocità. Su KDE moltissimi programmi usano plugin, e ne hanno tanti, GIMP usa plugin, Firefox anche, non sono convito che sia così difficile scrivere programmi &#8220;pluggabili&#8221; senza usare Mono.<br />Con il terzo punto mi sa che siamo arrivati al dunque: fin&#39;ora non c&#39;era  un framework completo da usare per programmare in GTK e neppure un IDE che faccia tutto. Io sono tra quelli che hanno iniziato da Java, ma di difficoltà ad usare python non ne ho trovate, dato che la sintassi è quasi la stessa, tranne molte cose che non bisogna neppure scrivere, ed è quest&#39;ultima la qualità che mi ha colpito, non le cose che sono simili. :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Mesh</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316585</link>
		<dc:creator>Mesh</dc:creator>
		<pubDate>Fri, 03 Jul 2009 12:54:15 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316585</guid>
		<description>Sono d&#039;accordo, infatti avevo scritto &quot;hanno un overhead iniziale&quot;, che come dici tu è dovuto alla conversione. &lt;br&gt;Sarai però d&#039;accordo con me che in molti contesti questo è irrilevante, soprattutto se l&#039;applicazione deve stare accesa parecchio. E si possono comunque implementare meccanismi di caching (non so se lo faccia già) per ridurre ulteriormente questo overhead.&lt;br&gt;&lt;br&gt;Nota poi, sul secondo punto, il mio &quot;in teoria&quot;. Il C deve la sua velocità alla sua bassa astrazione e al suo basso livello, e a mio parere non è un linguaggio che va confrontato con Java e C#. Stavo solo facendo notare che la compilazione JIT permette la creazione di eseguibili migliori e più performanti rispetto alla precompilazione, dove un piccolo overhead iniziale è accettabile.&lt;br&gt;Lo dichiara anche M$ riguardo a .NET:&lt;br&gt;&lt;br&gt;-  &quot;Myth: JITed Programs Execute Slower than Precompiled Programs&quot;&lt;br&gt;&lt;br&gt; - .NET still provides a traditional pre-compiler ngen.exe, but &quot;since the run-time only optimizations cannot be provided... the code is usually not as good as that generated by a normal JIT.&quot;</description>
		<content:encoded><![CDATA[<p>Sono d&#39;accordo, infatti avevo scritto &#8220;hanno un overhead iniziale&#8221;, che come dici tu è dovuto alla conversione. <br />Sarai però d&#39;accordo con me che in molti contesti questo è irrilevante, soprattutto se l&#39;applicazione deve stare accesa parecchio. E si possono comunque implementare meccanismi di caching (non so se lo faccia già) per ridurre ulteriormente questo overhead.</p>
<p>Nota poi, sul secondo punto, il mio &#8220;in teoria&#8221;. Il C deve la sua velocità alla sua bassa astrazione e al suo basso livello, e a mio parere non è un linguaggio che va confrontato con Java e C#. Stavo solo facendo notare che la compilazione JIT permette la creazione di eseguibili migliori e più performanti rispetto alla precompilazione, dove un piccolo overhead iniziale è accettabile.<br />Lo dichiara anche M$ riguardo a .NET:</p>
<p>-  &#8220;Myth: JITed Programs Execute Slower than Precompiled Programs&#8221;</p>
<p> &#8211; .NET still provides a traditional pre-compiler ngen.exe, but &#8220;since the run-time only optimizations cannot be provided&#8230; the code is usually not as good as that generated by a normal JIT.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Barra</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316604</link>
		<dc:creator>Barra</dc:creator>
		<pubDate>Fri, 03 Jul 2009 12:39:40 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316604</guid>
		<description>Il senso era: Passiamo a QT? allora è necessario riscrivere tutti gli applicativi, in GTK3 manterranno una forte compatibilità con il passato (gli step sono sempre: integrazione nuove parti che vanno ad affiancare le vecchie che saranno poi rimosse nel corso del tempo). Con QT4 invece o riscrivevi da 0 o cmq l&#039;applicativo restava QT3</description>
		<content:encoded><![CDATA[<p>Il senso era: Passiamo a QT? allora è necessario riscrivere tutti gli applicativi, in GTK3 manterranno una forte compatibilità con il passato (gli step sono sempre: integrazione nuove parti che vanno ad affiancare le vecchie che saranno poi rimosse nel corso del tempo). Con QT4 invece o riscrivevi da 0 o cmq l&#39;applicativo restava QT3</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Andrea Cimitan</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316623</link>
		<dc:creator>Andrea Cimitan</dc:creator>
		<pubDate>Fri, 03 Jul 2009 07:07:41 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316623</guid>
		<description>ti rispondo alle 3 domande...&lt;br&gt;1) Il linguaggio va a preferenze, agli sviluppatori Gtk+ piace il C e preferiscono lavorare col C che col C++. Per scrivere un toolkit, gli oggetti non sono fondamentali... anzi se ne può fare benissimo a meno e preferire un linguaggio più snello come il C. La programmazione ad oggetti serve più nelle applicazioni, che hanno generalmente livelli di complessità maggiore e richiedono ereditarietà e classi, ma per far questo bastano i binding per altri linguaggi (Gtkmm, Gtk#, Pygtk etc etc...).&lt;br&gt;2) C#/Mono non è un linguaggio interpretato, ma genera una specie di bytecode (le prestazioni raggiungono quasi il C++ stando a moltissimi benchmark che si trovano su google), di conseguenza rappresenta già per questo un&#039;alternativa differente (semmai che serve avere ruby e python che sono similissimi...). In ogni caso la risposta è semplice e in parte si rifà al punto 1: ad ognuno piace il suo linguaggio ed è contento se trova bindings pronti.&lt;br&gt;3) C# (Mono non è un linguaggio, ma il compilatore/VM) con Mono è preferito perchè ha un framework completo e *semplicissimo* da usare, il linguaggio poi si sbroglia da solo di molti problemi (come il garbage collector), ha un IDE che fra un po&#039; fa anche il caffè, la gestione dei plugin nelle applicazioni è davvero semplice (guardate solo Banshee, Tomboy, F-Spot, Gnome-Do quanti plugin hanno... basta usare mono-addins, è davvero facile gestirli), chi viene dal Java lo ama (si studia moltissimo nelle università italiane ad esempio...) perchè ha una sintassi praticamente uguale (eccetto qualche parola chiave con nomi diversi)</description>
		<content:encoded><![CDATA[<p>ti rispondo alle 3 domande&#8230;<br />1) Il linguaggio va a preferenze, agli sviluppatori Gtk+ piace il C e preferiscono lavorare col C che col C++. Per scrivere un toolkit, gli oggetti non sono fondamentali&#8230; anzi se ne può fare benissimo a meno e preferire un linguaggio più snello come il C. La programmazione ad oggetti serve più nelle applicazioni, che hanno generalmente livelli di complessità maggiore e richiedono ereditarietà e classi, ma per far questo bastano i binding per altri linguaggi (Gtkmm, Gtk#, Pygtk etc etc&#8230;).<br />2) C#/Mono non è un linguaggio interpretato, ma genera una specie di bytecode (le prestazioni raggiungono quasi il C++ stando a moltissimi benchmark che si trovano su google), di conseguenza rappresenta già per questo un&#39;alternativa differente (semmai che serve avere ruby e python che sono similissimi&#8230;). In ogni caso la risposta è semplice e in parte si rifà al punto 1: ad ognuno piace il suo linguaggio ed è contento se trova bindings pronti.<br />3) C# (Mono non è un linguaggio, ma il compilatore/VM) con Mono è preferito perchè ha un framework completo e *semplicissimo* da usare, il linguaggio poi si sbroglia da solo di molti problemi (come il garbage collector), ha un IDE che fra un po&#39; fa anche il caffè, la gestione dei plugin nelle applicazioni è davvero semplice (guardate solo Banshee, Tomboy, F-Spot, Gnome-Do quanti plugin hanno&#8230; basta usare mono-addins, è davvero facile gestirli), chi viene dal Java lo ama (si studia moltissimo nelle università italiane ad esempio&#8230;) perchè ha una sintassi praticamente uguale (eccetto qualche parola chiave con nomi diversi)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: charon</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316622</link>
		<dc:creator>charon</dc:creator>
		<pubDate>Fri, 03 Jul 2009 05:28:07 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316622</guid>
		<description>Secondo me si rischia di confrontare mele con pere:&lt;br&gt;c/c++ sono linguaggi compilati e chiaramente richiedono una maggiore attenzione quando li si usa, però sono veloci.&lt;br&gt;Il resto è un interpretato&amp;compilato ognuno con i suoi punti di forza e di debolezza.&lt;br&gt;Secondo me scrivere codice object oriented in C non ha senso, perché tutte le funzionalità degli oggetti vengono date con librerie, e non mi sembrano per nulla armonizzate con la natura del linguaggio. GTKmm e Qt mi paiono soluzioni comparabili, e decisamente la strada da scegliere.&lt;br&gt;Però a più alto livello si scrive il codice in meno tempo, questo è dato di fatto, meno righe si scrivono, meno errori si fanno.&lt;br&gt;Le domande sono: nel 2009 ha senso far uscire una libreria grafica ad oggetti in C? C&#039;era proprio bisogno di un ennesimo linguaggio interpretato che fa più o meno quello che fanno già gli altri? E soprattutto perché Mono è preferito ad altri linguaggi (sempre che lo sia)?</description>
		<content:encoded><![CDATA[<p>Secondo me si rischia di confrontare mele con pere:<br />c/c++ sono linguaggi compilati e chiaramente richiedono una maggiore attenzione quando li si usa, però sono veloci.<br />Il resto è un interpretato&#038;compilato ognuno con i suoi punti di forza e di debolezza.<br />Secondo me scrivere codice object oriented in C non ha senso, perché tutte le funzionalità degli oggetti vengono date con librerie, e non mi sembrano per nulla armonizzate con la natura del linguaggio. GTKmm e Qt mi paiono soluzioni comparabili, e decisamente la strada da scegliere.<br />Però a più alto livello si scrive il codice in meno tempo, questo è dato di fatto, meno righe si scrivono, meno errori si fanno.<br />Le domande sono: nel 2009 ha senso far uscire una libreria grafica ad oggetti in C? C&#39;era proprio bisogno di un ennesimo linguaggio interpretato che fa più o meno quello che fanno già gli altri? E soprattutto perché Mono è preferito ad altri linguaggi (sempre che lo sia)?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: charon</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316603</link>
		<dc:creator>charon</dc:creator>
		<pubDate>Fri, 03 Jul 2009 05:11:56 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316603</guid>
		<description>Anche KWin funziona perfettamente come tutto il software esistente, mi sembra scontato.</description>
		<content:encoded><![CDATA[<p>Anche KWin funziona perfettamente come tutto il software esistente, mi sembra scontato.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: charon</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316587</link>
		<dc:creator>charon</dc:creator>
		<pubDate>Fri, 03 Jul 2009 05:01:58 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316587</guid>
		<description>Se usi un designer, come qtdesigner, entrambi i file dovrebbero essere generati automaticamente. In generale mi pare che il nuovo KDeveloper aggiorni in automatico gli header in base ai sorgenti.</description>
		<content:encoded><![CDATA[<p>Se usi un designer, come qtdesigner, entrambi i file dovrebbero essere generati automaticamente. In generale mi pare che il nuovo KDeveloper aggiorni in automatico gli header in base ai sorgenti.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: charon</title>
		<link>http://pollycoke.net/2009/07/01/mono-c-e-se-il-problema-fossero-le-gtk/#comment-316597</link>
		<dc:creator>charon</dc:creator>
		<pubDate>Fri, 03 Jul 2009 04:51:24 +0000</pubDate>
		<guid isPermaLink="false">tag:google.com,2005:reader/item/097ec287ab7ef4cd#comment-316597</guid>
		<description>La retrocompatibilità non c&#039;è, nonostante la gente lo pensi, neppure con le gtk 3.</description>
		<content:encoded><![CDATA[<p>La retrocompatibilità non c&#39;è, nonostante la gente lo pensi, neppure con le gtk 3.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
