<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Paulo Aboim Pinto</title><link>http://weblogs.pontonetpt.com/esqueleto/</link><description>Tudo sobre .NET e Linux</description><dc:language>pt-PT</dc:language><generator>RSS Generated by Dottext 0.94</generator><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Usar simplesmente o essencial</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/28250.aspx</link><pubDate>Mon, 22 Sep 2008 13:19:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/28250.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/28250.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/28250.aspx#feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/28250.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=28250</trackback:ping><description>

    
    
    
Usar simplesmente o essencial&lt;br /&gt;&lt;br /&gt;Hoje ao ler uns blogs descobri algo simplesmente extraordinário. Cada vez mais o C# .NET me surpreende com pequenas coisas.&lt;br /&gt;O que descobri foi que podemos substituir uma quantidade de linhas do nosso código por apenas uma. Isto acontece quando usamos com frequência os comandos &lt;i&gt;For&lt;/i&gt; e &lt;i&gt;Foreach&lt;/i&gt;. Assim, temos os seguintes exemplos:&lt;br /&gt;&lt;br style="background-color: rgb(255, 255, 255);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;// Assumimos que temos uma lista de strings cujos valores obtemos a partir do método GetLotsOfStrings&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;List&lt;string&gt; allStrings = GetLotsOfStrings();&lt;/string&gt;&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;// Method 1: for loop&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;for (int i = 0; i &amp;lt; allStrings.Count; i++)&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;        DoStuff (allStrings[i]);&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;// Method 2: foreach loop&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;foreach (string s in allStrings)&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);"&gt;        DoStuff (s);&lt;/span&gt;&lt;br style="background-color: rgb(255, 255, 255);" /&gt;&lt;br /&gt;Qualquer uma destas formas obriga a escrever várias linhas de código e consequentemente uma pobre manutenção do código. Será que podemos substituir isto por uma só linha? Afinal podemos da seguinte forma:&lt;br /&gt;&lt;br style="color: rgb(153, 153, 153);" /&gt;&lt;span style="color: rgb(153, 153, 153); background-color: rgb(255, 255, 255);"&gt;allStrings.ForEach(DoStuff); &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Incrível??? Experimentem.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;Paulo Aboim Pinto&lt;br /&gt;Odivelas - Portugal&lt;br /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">

    
    
    
Usar simplesmente o essencial<br /><br />Hoje ao ler uns blogs descobri algo simplesmente extraordinário. Cada vez mais o C# .NET me surpreende com pequenas coisas.<br />O que descobri foi que podemos substituir uma quantidade de linhas do nosso código por apenas uma. Isto acontece quando usamos com frequência os comandos <i>For</i> e <i>Foreach</i>. Assim, temos os seguintes exemplos:<br /><br style="background-color: rgb(255, 255, 255);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">// Assumimos que temos uma lista de strings cujos valores obtemos a partir do método GetLotsOfStrings</span><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">List<string> allStrings = GetLotsOfStrings();</string></span><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">// Method 1: for loop</span><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">for (int i = 0; i &lt; allStrings.Count; i++)</span><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">        DoStuff (allStrings[i]);</span><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">// Method 2: foreach loop</span><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">foreach (string s in allStrings)</span><br style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);" /><span style="background-color: rgb(255, 255, 255); color: rgb(153, 153, 153);">        DoStuff (s);</span><br style="background-color: rgb(255, 255, 255);" /><br />Qualquer uma destas formas obriga a escrever várias linhas de código e consequentemente uma pobre manutenção do código. Será que podemos substituir isto por uma só linha? Afinal podemos da seguinte forma:<br /><br style="color: rgb(153, 153, 153);" /><span style="color: rgb(153, 153, 153); background-color: rgb(255, 255, 255);">allStrings.ForEach(DoStuff); </span><br /><br />Incrível??? Experimentem.<br /><br /><br />Abraços<br />Paulo Aboim Pinto<br />Odivelas - Portugal<br /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Parecia que nem tudo no Mono funciona...</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/28150.aspx</link><pubDate>Mon, 25 Aug 2008 15:39:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/28150.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/28150.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/28150.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/28150.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=28150</trackback:ping><description>Parecia que nem tudo no Mono funciona igual ao .NET&lt;br id="n_-." /&gt;&lt;br id="n_-.0" /&gt;É verdade, passei o fim de semana todo embrenhado a tentar entender porque é que no Mono uma funcionalidade dava erro e no .NET não. Essa funcionalidade era a base do Expression Evaluation que tenho estado a trabalhar que se baseia na geração de um método dinâmico e na sua execução. &lt;br id="jj:a" /&gt;&lt;br id="jj:a0" /&gt;Eu sabia que no Mono funcionava, mesmo sem que tenha experimentado alguma vez, mas, o azar aparece sempre que não o desejamos e eis que obtinha o erro:&lt;br id="mz-t" /&gt;&lt;br id="mz-t0" /&gt;Unhandled Exception: System.ArgumentException: Expression cannot be evaluated, please use a valid C# expression: 0+1 (  at System.Reflection.Emit.&lt;div id="mz-t1" dir="ltr"&gt;&lt;wbr id="mz-t2"&gt;AssemblyBuilder.&lt;wbr id="mz-t3"&gt;DefineDynamicModule (System.String name, System.String fileName, Boolean emitSymbolInfo, Boolean transient) [0x00000] )&lt;br id="mz-t4" /&gt;   at RefletionExample.Program.&lt;wbr id="mz-t5"&gt;EvaluateExpression (System.String statement) [0x00000]&lt;br id="mz-t6" /&gt;  at RefletionExample.Program.Main (System.String[] args) [0x00000]&lt;br id="mz-t7" /&gt;&lt;br id="mz-t8" /&gt;sempre que executava o método &lt;i id="o32v"&gt;CompileAssemblyFromSource&lt;/i&gt; que cria um método &lt;i id="o32v0"&gt;on-the-fly&lt;/i&gt;.&lt;br id="o32v1" /&gt;&lt;br id="o32v2" /&gt;Depois de muito bater com a cabeça, pesquisar muito em foruns e colocar posts no Bugzilla do Mono, alguém conseguiu identificar o meu problema. Num dos parametros de criação da assembly tinha, cp.OutputAssembly = "Module"; e segundo a especificação do CLR este comando devia receber também a extensão, ou .dll ou .exe. &lt;br id="ssp_" /&gt;No windows se não indicamos a extenção, a assembly é criada em memória (expecialmente porque tinha a linha: cp.GenerateInMemory = true;), mas, em Mono, como ela é criada em disco necessitava da extensão e bastou colocar a estensão e tudo ficou a funcionar como se de um windows se tratasse.&lt;br id="nhns" /&gt;&lt;br id="nhns0" /&gt;&lt;br id="nhns1" /&gt;ufffaaa, parecia ser um problema, mas, a solução não podia ser mais simples.&lt;br id="nhns2" /&gt;&lt;br id="nhns3" /&gt;&lt;br id="nhns4" /&gt;Abraços&lt;br id="nhns5" /&gt;Paulo Aboim Pinto&lt;br id="nhns6" /&gt;Odivelas - Portugal&lt;br id="um26" /&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/div&gt;&lt;br id="tig:" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Parecia que nem tudo no Mono funciona igual ao .NET<br id="n_-." /><br id="n_-.0" />É verdade, passei o fim de semana todo embrenhado a tentar entender porque é que no Mono uma funcionalidade dava erro e no .NET não. Essa funcionalidade era a base do Expression Evaluation que tenho estado a trabalhar que se baseia na geração de um método dinâmico e na sua execução. <br id="jj:a" /><br id="jj:a0" />Eu sabia que no Mono funcionava, mesmo sem que tenha experimentado alguma vez, mas, o azar aparece sempre que não o desejamos e eis que obtinha o erro:<br id="mz-t" /><br id="mz-t0" />Unhandled Exception: System.ArgumentException: Expression cannot be evaluated, please use a valid C# expression: 0+1 (  at System.Reflection.Emit.<div id="mz-t1" dir="ltr"><wbr id="mz-t2">AssemblyBuilder.<wbr id="mz-t3">DefineDynamicModule (System.String name, System.String fileName, Boolean emitSymbolInfo, Boolean transient) [0x00000] )<br id="mz-t4" />   at RefletionExample.Program.<wbr id="mz-t5">EvaluateExpression (System.String statement) [0x00000]<br id="mz-t6" />  at RefletionExample.Program.Main (System.String[] args) [0x00000]<br id="mz-t7" /><br id="mz-t8" />sempre que executava o método <i id="o32v">CompileAssemblyFromSource</i> que cria um método <i id="o32v0">on-the-fly</i>.<br id="o32v1" /><br id="o32v2" />Depois de muito bater com a cabeça, pesquisar muito em foruns e colocar posts no Bugzilla do Mono, alguém conseguiu identificar o meu problema. Num dos parametros de criação da assembly tinha, cp.OutputAssembly = "Module"; e segundo a especificação do CLR este comando devia receber também a extensão, ou .dll ou .exe. <br id="ssp_" />No windows se não indicamos a extenção, a assembly é criada em memória (expecialmente porque tinha a linha: cp.GenerateInMemory = true;), mas, em Mono, como ela é criada em disco necessitava da extensão e bastou colocar a estensão e tudo ficou a funcionar como se de um windows se tratasse.<br id="nhns" /><br id="nhns0" /><br id="nhns1" />ufffaaa, parecia ser um problema, mas, a solução não podia ser mais simples.<br id="nhns2" /><br id="nhns3" /><br id="nhns4" />Abraços<br id="nhns5" />Paulo Aboim Pinto<br id="nhns6" />Odivelas - Portugal<br id="um26" /></wbr></wbr></wbr></div><br id="tig:" /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Visual Studio 2008 Service Pack 1 and...</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/28079.aspx</link><pubDate>Tue, 12 Aug 2008 14:37:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/28079.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/28079.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/28079.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/28079.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=28079</trackback:ping><description>&lt;h1 id="xd0q"&gt;Visual Studio 2008 Service Pack 1 and .NET Framework 3.5 Service Pack 1&lt;/h1&gt;&lt;br id="xd0q0" /&gt;Para quem anda distraído na net .. aqui está o &lt;a title="link" target="_blank" href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx" id="k5dr"&gt;link&lt;/a&gt;.&lt;br id="qcdl" /&gt;&lt;br id="qcdl0" /&gt;&lt;br id="qcdl1" /&gt;Paulo Aboim Pinto&lt;br id="xd0q1" /&gt;&lt;br id="xd0q2" /&gt;             &lt;br id="qcdl2" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><h1 id="xd0q">Visual Studio 2008 Service Pack 1 and .NET Framework 3.5 Service Pack 1</h1><br id="xd0q0" />Para quem anda distraído na net .. aqui está o <a title="link" target="_blank" href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx" id="k5dr">link</a>.<br id="qcdl" /><br id="qcdl0" /><br id="qcdl1" />Paulo Aboim Pinto<br id="xd0q1" /><br id="xd0q2" />             <br id="qcdl2" /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>NECESSITO DE AJUDA</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/27998.aspx</link><pubDate>Tue, 29 Jul 2008 11:07:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/27998.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/27998.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/27998.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/27998.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=27998</trackback:ping><description>NECESSITO DE AJUDA&lt;br id="vht6" /&gt;&lt;br id="vht60" /&gt;Boas pessoal,&lt;br id="vht61" /&gt;&lt;br id="vht62" /&gt;Estou a necessitar de ajuda em obter duas dlls de acesso a uma base de dados Sybase que são: &lt;br id="t8od" /&gt;&lt;br id="t8od0" /&gt;&lt;span id="t8od1" class="txtplain1"&gt;&lt;font id="t8od2" face="Courier"&gt;sybdrvado11.dll&lt;br id="t8od3" /&gt;sybdrvssl.dll&lt;br id="t8od4" /&gt;&lt;br id="t8od5" /&gt;Será que alguém pode mandar-me por email? Agradecia que enviassem para aboimpinto@gmail.com&lt;br id="t8od6" /&gt;&lt;br id="t8od7" /&gt;&lt;br id="t8od8" /&gt;obrigado&lt;br id="t8od9" /&gt;Paulo Aboim Pinto&lt;br id="vht63" /&gt;&lt;/font&gt;&lt;/span&gt;            </description><body xmlns="http://www.w3.org/1999/xhtml">NECESSITO DE AJUDA<br id="vht6" /><br id="vht60" />Boas pessoal,<br id="vht61" /><br id="vht62" />Estou a necessitar de ajuda em obter duas dlls de acesso a uma base de dados Sybase que são: <br id="t8od" /><br id="t8od0" /><span id="t8od1" class="txtplain1"><font id="t8od2" face="Courier">sybdrvado11.dll<br id="t8od3" />sybdrvssl.dll<br id="t8od4" /><br id="t8od5" />Será que alguém pode mandar-me por email? Agradecia que enviassem para aboimpinto@gmail.com<br id="t8od6" /><br id="t8od7" /><br id="t8od8" />obrigado<br id="t8od9" />Paulo Aboim Pinto<br id="vht63" /></font></span>            </body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Afinal o Mono realmente é uma alternativa!</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/27611.aspx</link><pubDate>Tue, 03 Jun 2008 15:21:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/27611.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/27611.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/27611.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/27611.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=27611</trackback:ping><description>Afinal o Mono realmente é uma alternativa!&lt;br id="fqps0" /&gt;&lt;br id="fqps1" /&gt;Quem segue o meu blog sabe que sou uma pessoa que defende a liberdade de escolha. Eu para desenvolvimento escolho o .NET, mas, para sistema operativo escolho Linux (Ubuntu). &lt;br id="xxp10" /&gt;Aos mais desatentos, esta é uma ligação que parece ter poucos pontos onde se tocam, mas, não poderia ser mais longe da verdade. Com a framework Mono, já podemos ter aplicações a correr em Windows e Linux com a mesma performance e ainda acrescendo a fiabilidade que um sistema baseado na tecnologia UX permite.&lt;br id="xdli0" /&gt;&lt;br id="xdli1" /&gt;Até agora só tenho usando em termos pessoais, experiências e alguns posts aqui neste blog, mas, finalmente tive a oportunidade de desenvolver algo que tenha que correr tanto num Linux com num Windows e a decisão foi .NET no Windows e Mono no Linux.&lt;br id="k5hs0" /&gt;A base de desenvolvimento é Windows + Visual Studio e a aplicação tanto tem que correr num sistema como noutro.&lt;br id="k5hs1" /&gt;&lt;br id="k5hs2" /&gt;É basicamente um conjuntos de aplicações consola que vão ser executadas por um serviço (daemon no Linux) que monitorizam directórios e quando são lá colocados ficheiros, esta aplicação deve os processar o mais rapidamente possível.&lt;br id="h46r0" /&gt;Para monitorizar os directórios uso o objecto FileSystemWatcher, que funciona bem em ambos os sistemas. Manipular ficheiros leva-me a certos cuidados de programação como, sempre que querer concatenar o nome de um ficheiro a uma directoria, usar sempre System.IO.Path.Combine que cria a directoria correcta independentemente do sistema onde estamos.&lt;br id="szy40" /&gt;&lt;br id="szy41" /&gt;Como os ficheiros que vão ser processados podem ter diversos formatos, este mecanismo usa plugins que conhece o formato de cada ficheiro, traduzindo-os para estruturas conhecidas pelas aplicação principal. Assim o que importa são os dados que podemos extrair dos ficheiros e não o formato dos mesmos.&lt;br id="yhix0" /&gt;&lt;br id="yhix1" /&gt;Estou deveras contente por as palavras que tenho repetido nos últimos anos começarem a fazer eco em algumas empresas e em algumas cabeças. Aqui está um exemplo de como o Mono pode ser realmente uma alternativa.&lt;br id="gxrl0" /&gt;&lt;br id="gxrl1" /&gt;&lt;br id="gxrl2" /&gt;Abraços&lt;br id="gxrl3" /&gt;Paulo Aboim Pinto&lt;br id="gxrl4" /&gt;Odivelas - Portugal&lt;br id="fxmn0" /&gt;&lt;br id="fqps2" /&gt;            </description><body xmlns="http://www.w3.org/1999/xhtml">Afinal o Mono realmente é uma alternativa!<br id="fqps0" /><br id="fqps1" />Quem segue o meu blog sabe que sou uma pessoa que defende a liberdade de escolha. Eu para desenvolvimento escolho o .NET, mas, para sistema operativo escolho Linux (Ubuntu). <br id="xxp10" />Aos mais desatentos, esta é uma ligação que parece ter poucos pontos onde se tocam, mas, não poderia ser mais longe da verdade. Com a framework Mono, já podemos ter aplicações a correr em Windows e Linux com a mesma performance e ainda acrescendo a fiabilidade que um sistema baseado na tecnologia UX permite.<br id="xdli0" /><br id="xdli1" />Até agora só tenho usando em termos pessoais, experiências e alguns posts aqui neste blog, mas, finalmente tive a oportunidade de desenvolver algo que tenha que correr tanto num Linux com num Windows e a decisão foi .NET no Windows e Mono no Linux.<br id="k5hs0" />A base de desenvolvimento é Windows + Visual Studio e a aplicação tanto tem que correr num sistema como noutro.<br id="k5hs1" /><br id="k5hs2" />É basicamente um conjuntos de aplicações consola que vão ser executadas por um serviço (daemon no Linux) que monitorizam directórios e quando são lá colocados ficheiros, esta aplicação deve os processar o mais rapidamente possível.<br id="h46r0" />Para monitorizar os directórios uso o objecto FileSystemWatcher, que funciona bem em ambos os sistemas. Manipular ficheiros leva-me a certos cuidados de programação como, sempre que querer concatenar o nome de um ficheiro a uma directoria, usar sempre System.IO.Path.Combine que cria a directoria correcta independentemente do sistema onde estamos.<br id="szy40" /><br id="szy41" />Como os ficheiros que vão ser processados podem ter diversos formatos, este mecanismo usa plugins que conhece o formato de cada ficheiro, traduzindo-os para estruturas conhecidas pelas aplicação principal. Assim o que importa são os dados que podemos extrair dos ficheiros e não o formato dos mesmos.<br id="yhix0" /><br id="yhix1" />Estou deveras contente por as palavras que tenho repetido nos últimos anos começarem a fazer eco em algumas empresas e em algumas cabeças. Aqui está um exemplo de como o Mono pode ser realmente uma alternativa.<br id="gxrl0" /><br id="gxrl1" /><br id="gxrl2" />Abraços<br id="gxrl3" />Paulo Aboim Pinto<br id="gxrl4" />Odivelas - Portugal<br id="fxmn0" /><br id="fqps2" />            </body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Vídeos sobre testes unitários</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/27543.aspx</link><pubDate>Wed, 28 May 2008 10:43:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/27543.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/27543.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/27543.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/27543.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=27543</trackback:ping><description>Vídeos sobre testes unitários&lt;br id="w6960" /&gt;&lt;br id="w6961" /&gt;Para quem ainda tem algumas duvidas de como usar os testes unitários e o que pode ser ou não testado, aqui fica alguns vídeo de o que podemos fazer e como.&lt;br id="w6962" /&gt;&lt;br id="w6963" /&gt;&lt;a title="Veja os vídeos aqui." href="http://dimecasts.net/Home" id="fqkc"&gt;Veja os vídeos aqui.&lt;/a&gt; &lt;br id="w6964" /&gt;&lt;br id="w6965" /&gt;&lt;br id="w6966" /&gt;Abraços&lt;br id="w6967" /&gt;Paulo Aboim Pinto&lt;br id="w6968" /&gt;Odivelas - Portugal&lt;br id="w6969" /&gt;            &lt;br id="r0zq0" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Vídeos sobre testes unitários<br id="w6960" /><br id="w6961" />Para quem ainda tem algumas duvidas de como usar os testes unitários e o que pode ser ou não testado, aqui fica alguns vídeo de o que podemos fazer e como.<br id="w6962" /><br id="w6963" /><a title="Veja os vídeos aqui." href="http://dimecasts.net/Home" id="fqkc">Veja os vídeos aqui.</a> <br id="w6964" /><br id="w6965" /><br id="w6966" />Abraços<br id="w6967" />Paulo Aboim Pinto<br id="w6968" />Odivelas - Portugal<br id="w6969" />            <br id="r0zq0" /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Mac, PC .. meet linux</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/27525.aspx</link><pubDate>Mon, 26 May 2008 10:56:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/27525.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/27525.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/27525.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/27525.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=27525</trackback:ping><description>Mac, PC .. meet linux&lt;br id="ehoa0" /&gt;&lt;br id="ehoa1" /&gt;Depois de uma "mais ou menos" conhecida campanha da Apple, a Novell, gigante que resolveu levar o Linux a todo o lado, lançou uma sequela.&lt;br id="kuth0" /&gt;&lt;br id="kuth1" /&gt;&lt;a title="Podem ver aqui" href="http://www.novell.com/linux2/meetlinux/" id="auj_"&gt;Podem ver aqui&lt;/a&gt;.&lt;br id="kuth2" /&gt;&lt;br id="k77f0" /&gt;&lt;br id="kuth3" /&gt;Abraços&lt;br id="kuth4" /&gt;Paulo Aboim Pinto&lt;br id="k77f1" /&gt;Odivelas - Portugal&lt;br id="ehoa2" /&gt;            &lt;br id="lt8n0" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Mac, PC .. meet linux<br id="ehoa0" /><br id="ehoa1" />Depois de uma "mais ou menos" conhecida campanha da Apple, a Novell, gigante que resolveu levar o Linux a todo o lado, lançou uma sequela.<br id="kuth0" /><br id="kuth1" /><a title="Podem ver aqui" href="http://www.novell.com/linux2/meetlinux/" id="auj_">Podem ver aqui</a>.<br id="kuth2" /><br id="k77f0" /><br id="kuth3" />Abraços<br id="kuth4" />Paulo Aboim Pinto<br id="k77f1" />Odivelas - Portugal<br id="ehoa2" />            <br id="lt8n0" /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Erros no WebSite (não acontece só a nós)</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/27140.aspx</link><pubDate>Mon, 07 Apr 2008 09:46:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/27140.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/27140.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/27140.aspx#feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/27140.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=27140</trackback:ping><description>Erros no WebSite (não acontece só a nós)&lt;br id="xf-x" /&gt;&lt;br id="jivi" /&gt;Depois do lançamento do WebSite da &lt;a title="Altior" href="http://www.altior.pt" id="cibn"&gt;Altior&lt;/a&gt; a semana passada, onde ocorreram alguns erros que não tinha sido previstos, eis que hoje resolvi entrar no site do cartão &lt;a title="Fast Galp" href="http://www.fastgalp.com/Fast/Portugues/HomePageS.htm" id="e.h0"&gt;Fast Galp&lt;/a&gt; para pedir uma segunda via do meu cartão que expirou à algum tempo.&lt;br id="zy0_" /&gt;&lt;br id="cw0g" /&gt;Reparo que até nas grandes empresas, com grandes projectos também está sujeitos a erros e não há nada que possamos fazer a não ser tentar corrigir o mais rapidamente possivel. Tentem efecutar o login com qualquer valor. Não necessita ser valido e obtém logo uma mensagem de erro:&lt;br id="j0d2" /&gt;&lt;br id="do.0" /&gt;&lt;span id="b_-s"&gt;&lt;h1 id="a0g6"&gt;Server Error in '/' Application.&lt;hr id="rllu" color="silver" size="1" width="100%" /&gt;&lt;/h1&gt;              &lt;h2 id="k9f5"&gt; &lt;i id="bfax"&gt;The resource cannot be found.&lt;/i&gt; &lt;/h2&gt;&lt;/span&gt;              &lt;font id="q6p3" face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif "&gt;              &lt;b id="zb:s"&gt; Description: &lt;/b&gt;HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly. &lt;br id="n6tm" /&gt;&lt;br id="w73r" /&gt;              &lt;b id="rxae"&gt; Requested URL: &lt;/b&gt;/Fast/Portugues/homeFlashFixo.aspx&lt;br id="b38k" /&gt;&lt;br id="q2ou" /&gt;&lt;/font&gt;            &lt;br id="me22" /&gt;&lt;br id="hqsj" /&gt;Espero que resolvam rapidamente. Ainda irá aparecer alguém que acho que o problema é sempre do Window$.&lt;br id="zg0m" /&gt;&lt;br id="k_2o" /&gt;&lt;br id="bu0g" /&gt;Abraços&lt;br id="vnd4" /&gt;Paulo Aboim Pinto&lt;br id="m5-_" /&gt;Odivelas - Portugal&lt;br id="cef-" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Erros no WebSite (não acontece só a nós)<br id="xf-x" /><br id="jivi" />Depois do lançamento do WebSite da <a title="Altior" href="http://www.altior.pt" id="cibn">Altior</a> a semana passada, onde ocorreram alguns erros que não tinha sido previstos, eis que hoje resolvi entrar no site do cartão <a title="Fast Galp" href="http://www.fastgalp.com/Fast/Portugues/HomePageS.htm" id="e.h0">Fast Galp</a> para pedir uma segunda via do meu cartão que expirou à algum tempo.<br id="zy0_" /><br id="cw0g" />Reparo que até nas grandes empresas, com grandes projectos também está sujeitos a erros e não há nada que possamos fazer a não ser tentar corrigir o mais rapidamente possivel. Tentem efecutar o login com qualquer valor. Não necessita ser valido e obtém logo uma mensagem de erro:<br id="j0d2" /><br id="do.0" /><span id="b_-s"><h1 id="a0g6">Server Error in '/' Application.<hr id="rllu" color="silver" size="1" width="100%" /></h1>              <h2 id="k9f5"> <i id="bfax">The resource cannot be found.</i> </h2></span>              <font id="q6p3" face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif ">              <b id="zb:s"> Description: </b>HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly. <br id="n6tm" /><br id="w73r" />              <b id="rxae"> Requested URL: </b>/Fast/Portugues/homeFlashFixo.aspx<br id="b38k" /><br id="q2ou" /></font>            <br id="me22" /><br id="hqsj" />Espero que resolvam rapidamente. Ainda irá aparecer alguém que acho que o problema é sempre do Window$.<br id="zg0m" /><br id="k_2o" /><br id="bu0g" />Abraços<br id="vnd4" />Paulo Aboim Pinto<br id="m5-_" />Odivelas - Portugal<br id="cef-" /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Novo WebSite da Altior</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/27083.aspx</link><pubDate>Thu, 03 Apr 2008 11:08:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/27083.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/27083.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/27083.aspx#feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/27083.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=27083</trackback:ping><description>Novo WebSite da Altior&lt;br id="p2.0" /&gt;&lt;br id="crhe" /&gt;Gostaria de apresentar a nova cara da Altior em &lt;a title="http://www.altior.pt" href="http://www.altior.pt" id="ocfl"&gt;http://www.altior.pt&lt;/a&gt;. Depois de muitos contratempos, muitos problemas e a passagem por muitas plataformas a nova imagem da Altior está online.&lt;br id="npmr" /&gt;&lt;br id="m8uw" /&gt;Gostaria de destacar o trabalho incansável do Pedro Furtado que, apesar de todos os contratempos sempre levou o projecto para a frente sem nunca perder a cabeça.&lt;br id="trnk" /&gt;&lt;br id="ljoq" /&gt;Convido desde já todos todos a visitar em &lt;a title="http://www.altior.pt" href="http://www.altior.pt" id="uqta"&gt;http://www.altior.pt&lt;/a&gt;.&lt;br id="rvm2" /&gt;&lt;br id="uub3" /&gt;&lt;br id="rm49" /&gt;Abraços&lt;br id="fk7g" /&gt;Paulo Aboim Pinto&lt;br id="bwc8" /&gt;            &lt;br id="isnf" /&gt;&lt;br id="xbgd" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Novo WebSite da Altior<br id="p2.0" /><br id="crhe" />Gostaria de apresentar a nova cara da Altior em <a title="http://www.altior.pt" href="http://www.altior.pt" id="ocfl">http://www.altior.pt</a>. Depois de muitos contratempos, muitos problemas e a passagem por muitas plataformas a nova imagem da Altior está online.<br id="npmr" /><br id="m8uw" />Gostaria de destacar o trabalho incansável do Pedro Furtado que, apesar de todos os contratempos sempre levou o projecto para a frente sem nunca perder a cabeça.<br id="trnk" /><br id="ljoq" />Convido desde já todos todos a visitar em <a title="http://www.altior.pt" href="http://www.altior.pt" id="uqta">http://www.altior.pt</a>.<br id="rvm2" /><br id="uub3" /><br id="rm49" />Abraços<br id="fk7g" />Paulo Aboim Pinto<br id="bwc8" />            <br id="isnf" /><br id="xbgd" /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Apresentação da Framework Mono na Altior</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/27020.aspx</link><pubDate>Fri, 28 Mar 2008 11:57:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/27020.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/27020.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/27020.aspx#feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/27020.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=27020</trackback:ping><description>Apresentação da Framework Mono na Altior&lt;br id="f-l4" /&gt;&lt;br id="lch-" /&gt;Ontem, no Technical Metting da Altior (um evento técnico onde se apresentar uma determinada tecnologia) sobre a Framework .NET, tive a oportunidade de apresentar o Mono a as suas últimas evoluções. A apresentação era para ter uma duração de 20 minutos, mas, devido à vontade da plateia de saber mais e mais, a apresentação durou 50 minutos.&lt;br id="druc" /&gt;No final, muitos dos consultores vieram ter comigo e dizer que finalmente alguém lhes deu a razão que esperavam para olhar com mais atenção para o Mono.&lt;br id="oet." /&gt;&lt;br id="r-.p" /&gt;Um dos consultores veio com um problema real sobre um equipamento móvel que tem que usar no cliente e desenvolver para ele. Actualmente usar uma linguagem (penso ser C/C++), mas, se conseguir colocar a mini Framework do Mono a correr nesse equipamento, poderá usar C#. Ele só com esta ideia  ficou muito contente e foi para casa pensar nesta solução. Infelizmente, porque não poderá mexer no código da Compact Framework do .NET, nunca poderá usar esta no equipamento. Desejo para ele o maior sucesso na utilização do Mono.&lt;br id="vbsp" /&gt;&lt;br id="uoki" /&gt;&lt;a title="Deixo aqui a apresentação que usei no formato PDF" href="http://www.olimpocms.com/ApresentacaoMono-Altior28-03-2008.pdf" id="u4qq"&gt;Deixo aqui a apresentação que usei no formato PDF&lt;/a&gt;.            Não está perfeita, mas, foi a primeira. Espero que possa vir a melhorar e fazer muitas mais&lt;br id="wdu9" /&gt;&lt;br id="ni38" /&gt;Abraços&lt;br id="ehxo" /&gt;Paulo Aboim Pinto&lt;br id="ngcd" /&gt;Odivelas - Portugal&lt;br id="vzr6" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Apresentação da Framework Mono na Altior<br id="f-l4" /><br id="lch-" />Ontem, no Technical Metting da Altior (um evento técnico onde se apresentar uma determinada tecnologia) sobre a Framework .NET, tive a oportunidade de apresentar o Mono a as suas últimas evoluções. A apresentação era para ter uma duração de 20 minutos, mas, devido à vontade da plateia de saber mais e mais, a apresentação durou 50 minutos.<br id="druc" />No final, muitos dos consultores vieram ter comigo e dizer que finalmente alguém lhes deu a razão que esperavam para olhar com mais atenção para o Mono.<br id="oet." /><br id="r-.p" />Um dos consultores veio com um problema real sobre um equipamento móvel que tem que usar no cliente e desenvolver para ele. Actualmente usar uma linguagem (penso ser C/C++), mas, se conseguir colocar a mini Framework do Mono a correr nesse equipamento, poderá usar C#. Ele só com esta ideia  ficou muito contente e foi para casa pensar nesta solução. Infelizmente, porque não poderá mexer no código da Compact Framework do .NET, nunca poderá usar esta no equipamento. Desejo para ele o maior sucesso na utilização do Mono.<br id="vbsp" /><br id="uoki" /><a title="Deixo aqui a apresentação que usei no formato PDF" href="http://www.olimpocms.com/ApresentacaoMono-Altior28-03-2008.pdf" id="u4qq">Deixo aqui a apresentação que usei no formato PDF</a>.            Não está perfeita, mas, foi a primeira. Espero que possa vir a melhorar e fazer muitas mais<br id="wdu9" /><br id="ni38" />Abraços<br id="ehxo" />Paulo Aboim Pinto<br id="ngcd" />Odivelas - Portugal<br id="vzr6" /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>ASP.NET MVC Source Code Release</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/26963.aspx</link><pubDate>Sat, 22 Mar 2008 15:19:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/26963.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/26963.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/26963.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/26963.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=26963</trackback:ping><description>&lt;span id="ctl00_ctl00_Content_TabContentPanel_Content_TitleLabel" class="CodePlexPageHeader"&gt;ASP.NET MVC Source Code Release&lt;br /&gt;&lt;br /&gt;Isto realmente é uma excelente notícia. O MVC ( Model View Controler) não é propriamente uma tecnologia, mas, a implementação de uma metodologia. Como implementação que é, há várias formas de a usar e ter o código disponível faz com que haja gente pelo mundo inteiro que a possa alterar e mesmo adicionar novas funcionalidades.&lt;br /&gt;A Microsoft simplesmente controla e centraliza a chegada desses pedidos, novas funcionalidades e Patches.&lt;br /&gt;&lt;br /&gt;Podem ver o que o &lt;a title="ScottGu's Blog" href="http://weblogs.asp.net/scottgu/" id="cu1x"&gt;ScottGu's Blog&lt;/a&gt; a &lt;a title="notícia" href="http://weblogs.asp.net/scottgu/archive/2008/03/21/asp-net-mvc-source-code-now-available.aspx" id="p6si"&gt;notícia&lt;/a&gt; e a localização do projecto no &lt;a title="CodePlex" href="http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=11833" id="u7-y"&gt;CodePlex&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Gostei imenso desta idea. &lt;br /&gt;Abraços&lt;br /&gt;Paulo Aboim Pinto&lt;br /&gt;&lt;/span&gt;            </description><body xmlns="http://www.w3.org/1999/xhtml"><span id="ctl00_ctl00_Content_TabContentPanel_Content_TitleLabel" class="CodePlexPageHeader">ASP.NET MVC Source Code Release<br /><br />Isto realmente é uma excelente notícia. O MVC ( Model View Controler) não é propriamente uma tecnologia, mas, a implementação de uma metodologia. Como implementação que é, há várias formas de a usar e ter o código disponível faz com que haja gente pelo mundo inteiro que a possa alterar e mesmo adicionar novas funcionalidades.<br />A Microsoft simplesmente controla e centraliza a chegada desses pedidos, novas funcionalidades e Patches.<br /><br />Podem ver o que o <a title="ScottGu's Blog" href="http://weblogs.asp.net/scottgu/" id="cu1x">ScottGu's Blog</a> a <a title="notícia" href="http://weblogs.asp.net/scottgu/archive/2008/03/21/asp-net-mvc-source-code-now-available.aspx" id="p6si">notícia</a> e a localização do projecto no <a title="CodePlex" href="http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=11833" id="u7-y">CodePlex</a>.<br /><br />Gostei imenso desta idea. <br />Abraços<br />Paulo Aboim Pinto<br /></span>            </body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Como resolver problema de DIVs dentro de DIVs</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/26917.aspx</link><pubDate>Wed, 19 Mar 2008 04:01:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/26917.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/26917.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/26917.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/26917.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=26917</trackback:ping><description>Como resolver problema de DIVs dentro de DIVs&lt;br /&gt;&lt;br /&gt;A ler alguns blog que faço todos os dias encontrei este excelente &lt;a title="artigo" href="http://nunos.zi-yu.com/?p=76" id="ktrb"&gt;artigo&lt;/a&gt; que vai ajudar-me muito no Olimpo CMS. Muitos programadores de WebSite já devem ter passado por isto. Ainda num experimentei, mas, agora estou mais confiante.&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;Paulo Aboim Pinto&lt;br /&gt;Odivelas - Portugal.&lt;br /&gt;            &lt;br /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Como resolver problema de DIVs dentro de DIVs<br /><br />A ler alguns blog que faço todos os dias encontrei este excelente <a title="artigo" href="http://nunos.zi-yu.com/?p=76" id="ktrb">artigo</a> que vai ajudar-me muito no Olimpo CMS. Muitos programadores de WebSite já devem ter passado por isto. Ainda num experimentei, mas, agora estou mais confiante.<br /><br />Abraços<br />Paulo Aboim Pinto<br />Odivelas - Portugal.<br />            <br /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>MonoDevelop 1.0 foi lançado</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/26908.aspx</link><pubDate>Tue, 18 Mar 2008 14:05:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/26908.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/26908.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/26908.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/26908.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=26908</trackback:ping><description>MonoDevelop 1.0 foi lançado&lt;br /&gt;&lt;br /&gt;Para algumas pessoas distraidas este projecto atingiu finalmente a versão 1.0. O MonoDevelop é um IDE para programação .NET em Linux, totalmente desenvolvimetno sob a a versão estável do &lt;a title="Mono" href="http://ww.go-mono.com" id="i88t"&gt;Mono&lt;/a&gt;. &lt;br /&gt;Ainda não tem a mesma qualidade do Visual Studio, porém é uma alternativa mais que viável para os que não usam Windows e desejam continua a desenvolver com para a framework .NET.&lt;br /&gt;&lt;br /&gt;Gostaria de realçar o seguinte neste IDE:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;GTK# Designer&lt;/li&gt;&lt;li&gt;Suporte para projectos ASP.NET e Deplyment&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Integração com projecto Visual Studio&lt;/li&gt;&lt;li&gt;Integração com servidores SVN&lt;/li&gt;&lt;li&gt;Integração com ferramenta de Testes Unitários - nUnit.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Algumas Features que ficaram de fora desta versão são:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Debugger&lt;/li&gt;&lt;li&gt;Web Designer&lt;/li&gt;&lt;li&gt;Integração com Team Foundation Server&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Podem ler um pouco sobre esta release &lt;a title="aqui" href="http://www.monodevelop.com/MonoDevelop_1.0_Released" id="d1fe"&gt;aqui&lt;/a&gt;.&lt;br /&gt;Dentro em breve irei fazer uns ScreenCasts para mostrar um pouco deste IDE.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;Paulo Aboim Pinto&lt;br /&gt;&lt;br /&gt;            &lt;br /&gt;&lt;br /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">MonoDevelop 1.0 foi lançado<br /><br />Para algumas pessoas distraidas este projecto atingiu finalmente a versão 1.0. O MonoDevelop é um IDE para programação .NET em Linux, totalmente desenvolvimetno sob a a versão estável do <a title="Mono" href="http://ww.go-mono.com" id="i88t">Mono</a>. <br />Ainda não tem a mesma qualidade do Visual Studio, porém é uma alternativa mais que viável para os que não usam Windows e desejam continua a desenvolver com para a framework .NET.<br /><br />Gostaria de realçar o seguinte neste IDE:<br /><br /><ul><li>GTK# Designer</li><li>Suporte para projectos ASP.NET e Deplyment<br /></li><li>Integração com projecto Visual Studio</li><li>Integração com servidores SVN</li><li>Integração com ferramenta de Testes Unitários - nUnit.<br /></li></ul><br />Algumas Features que ficaram de fora desta versão são:<br /><br /><ul><li>Debugger</li><li>Web Designer</li><li>Integração com Team Foundation Server</li></ul><br />Podem ler um pouco sobre esta release <a title="aqui" href="http://www.monodevelop.com/MonoDevelop_1.0_Released" id="d1fe">aqui</a>.<br />Dentro em breve irei fazer uns ScreenCasts para mostrar um pouco deste IDE.<br /><br /><br />Abraços<br />Paulo Aboim Pinto<br /><br />            <br /><br /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Mono on the IPhone</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/26839.aspx</link><pubDate>Tue, 11 Mar 2008 11:12:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/26839.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/26839.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/26839.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/26839.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=26839</trackback:ping><description>Mono on the IPhone&lt;br /&gt;&lt;br /&gt;Para alguns distraidos, a primeira versão da Framework .NET que corre num IPhone é o Mono. Podem ver os screenshots no Blog do &lt;a title="Miguel de Icaza" target="_blank" href="http://tirania.org/blog/index.html" id="a-:m"&gt;Miguel de Icaza&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Source: &lt;a title="Mono on the IPhone" target="_blank" href="http://tirania.org/blog/archive/2008/Mar-10.html" id="vp32"&gt;Mono on the IPhone&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;Paulo Aboim Pinto&lt;br /&gt;Odivelas - Portugal&lt;br /&gt;            &lt;br /&gt;&lt;br /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">Mono on the IPhone<br /><br />Para alguns distraidos, a primeira versão da Framework .NET que corre num IPhone é o Mono. Podem ver os screenshots no Blog do <a title="Miguel de Icaza" target="_blank" href="http://tirania.org/blog/index.html" id="a-:m">Miguel de Icaza</a>.<br /><br />Source: <a title="Mono on the IPhone" target="_blank" href="http://tirania.org/blog/archive/2008/Mar-10.html" id="vp32">Mono on the IPhone</a> <br /><br /><br />Abraços<br />Paulo Aboim Pinto<br />Odivelas - Portugal<br />            <br /><br /></body></item><item><dc:creator>Paulo Aboim Pinto</dc:creator><title>Scott Guthrie: Inside Silverlight 2 Beta 1</title><link>http://weblogs.pontonetpt.com/esqueleto/posts/26825.aspx</link><pubDate>Mon, 10 Mar 2008 12:51:00 GMT</pubDate><guid>http://weblogs.pontonetpt.com/esqueleto/posts/26825.aspx</guid><wfw:comment>http://weblogs.pontonetpt.com/esqueleto/comments/26825.aspx</wfw:comment><comments>http://weblogs.pontonetpt.com/esqueleto/posts/26825.aspx#feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://weblogs.pontonetpt.com/esqueleto/comments/commentRss/26825.aspx</wfw:commentRss><trackback:ping>http://weblogs.pontonetpt.com/esqueleto/trackback.aspx?ID=26825</trackback:ping><description>E sempre bom ouvir as pessoas que sabem e que são refêrencia. Este senhor é sempre dúvida uma pessoa que todos tem que ter em grande consideração.&lt;br /&gt;&lt;br /&gt;Vejam este pequeno filme no Channel 9 com apresentação da proxima versão do Silverlight. É simplesmente fanstaticos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a title="Scott Guthrie: Inside Silverlight 2 Beta 1" href="http://channel9.msdn.com/Showpost.aspx?postid=388355" id="zwy0"&gt;Scott Guthrie: Inside Silverlight 2 Beta 1&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;Paulo Aboim Pinto&lt;br /&gt;&lt;br /&gt;            &lt;br /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml">E sempre bom ouvir as pessoas que sabem e que são refêrencia. Este senhor é sempre dúvida uma pessoa que todos tem que ter em grande consideração.<br /><br />Vejam este pequeno filme no Channel 9 com apresentação da proxima versão do Silverlight. É simplesmente fanstaticos.<br /><br /><br /><a title="Scott Guthrie: Inside Silverlight 2 Beta 1" href="http://channel9.msdn.com/Showpost.aspx?postid=388355" id="zwy0">Scott Guthrie: Inside Silverlight 2 Beta 1</a> <br /><br />Abraços<br />Paulo Aboim Pinto<br /><br />            <br /></body></item></channel></rss>