<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-9503040</id><updated>2011-04-22T00:28:34.016+01:00</updated><title type='text'>mundo .net</title><subtitle type='html'>A tecnologia da Microsoft veio para ficar. Este blog regista o evoluir do meu conhecimento sobre .NET. No entanto este blog não pretende focar apenas a tecnologia em si mas também todas as aplicações desta.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9503040.post-111018906485305314</id><published>2005-03-07T09:42:00.000Z</published><updated>2005-03-07T09:51:04.866Z</updated><title type='text'>Assemblies</title><summary type='text'>Bem, vamos fazer uma pequena pausa do desenvolvimento da aplicação Intersecções e tentar perceber um pouco mais sobre assemblies. Relembro o que disse na primeira mensagem deste blog e que ainda hoje é verdade: não percebo nada disto. O objectivo deste blog é precisamente tentar combater a minha ignorância. Por isso é natural que diga alguns disparates pelo meio. Os disparates fazem parte do </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/111018906485305314/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=111018906485305314' title='5 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/111018906485305314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/111018906485305314'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/03/assemblies.html' title='Assemblies'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110992900111729998</id><published>2005-03-04T09:32:00.000Z</published><updated>2005-03-04T09:37:50.206Z</updated><title type='text'>Intersecções, Novo Jogo</title><summary type='text'>Aqui estou de novo e pronto para continuar o desenvolvimento da interface do nosso pequeno jogo. Antes de mais, vamos recordar o que se está a fazer. Neste momento, o objectivo é criar a janela para um novo jogo utilizado o designer do Visual Studio. Com isto fugimos um pouco à filosofia de desenvolvimento orientado por testes mas ganhamos na facilidade de criação de interfaces. A filosofia que </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110992900111729998/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110992900111729998' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110992900111729998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110992900111729998'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/03/interseces-novo-jogo.html' title='Intersecções, Novo Jogo'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110984217727168862</id><published>2005-03-03T09:29:00.000Z</published><updated>2005-03-03T09:33:52.363Z</updated><title type='text'>Blog Por Temas</title><summary type='text'>O blog por temas.Nesta mensagem irão constar ligações para todas as mensagens deste blog, organizadas por tema. O objectivo é oferecer outra forma de navegar pelo blog.OpiniãoNão, não percebo nada disto.NET em PortuguêsOrganização do BlogC#Hello WorldO Método MainMais MainSobrecarga de MétodosEspaços de NomesUsingModificadores de AcessoInstânciasCampos de TiposTiposConstrutoresPropriedadesMais </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110984217727168862/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110984217727168862' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110984217727168862'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110984217727168862'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/03/blog-por-temas.html' title='Blog Por Temas'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110983955658025874</id><published>2005-03-03T08:45:00.000Z</published><updated>2005-03-03T08:51:24.983Z</updated><title type='text'>Intersecções</title><summary type='text'>Já vai algum tempo desde a última mensagem. Neste mês tive muito que fazer e tive de deixar os meus projectos pessoais de lado, incluindo o Mundo .NET. Mas voltei e espero neste mês que agora começa e nos seguintes ter muito mais tempo. Mas voltemos ao que estávamos a fazer. Abri de novo o projecto do jogo Intersecções e estive a recordar o que é que já tinha feito. É que já nem me lembrava. É </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110983955658025874/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110983955658025874' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110983955658025874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110983955658025874'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/03/interseces.html' title='Intersecções'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110788974655098336</id><published>2005-02-08T18:40:00.000Z</published><updated>2005-02-19T15:49:38.836Z</updated><title type='text'>Delegates e Eventos</title><summary type='text'>Temos estado a implementar o interface do jogo Intersecções mas, na última mensagem, deparamo-nos com algo novo, os eventos. Esta mensagem serve para estudar os eventos e os delegates, mecanismo subjacente aos eventos.A utilização de apontadores para funções é algo muito útil noutras linguagens/plataformas. Pode ser utilizado, por exemplo, para o mecanismo de callback. Este mecanismo consiste em </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110788974655098336/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110788974655098336' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110788974655098336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110788974655098336'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/delegates-e-eventos.html' title='Delegates e Eventos'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110787641176272445</id><published>2005-02-08T15:16:00.000Z</published><updated>2005-02-08T17:08:56.153Z</updated><title type='text'>Intersecções</title><summary type='text'>Como já deve ter dado para reparar, mudei mais uma vez o visual do blog. Digamos que é uma eterna busca pelo visual ideal. Além da mudança de visual acrescentei à esquerda um conjunto de endereços que considero interessantes. O primeiro conjunto está relacionado com páginas sobre a tecnologia ou partes desta. O segundo conjunto está relacionado com a metodologia extreme programming. Estou a </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110787641176272445/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110787641176272445' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110787641176272445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110787641176272445'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces_08.html' title='Intersecções'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110786339038069696</id><published>2005-02-08T11:04:00.000Z</published><updated>2005-02-08T11:49:50.380Z</updated><title type='text'>Intersecções, Interface</title><summary type='text'>Temos agora a lógica da aplicação mais ou menos funcional. Vamos prosseguir para o desenho da interface com o utilizador. Neste campo o desenho dos testes poderá ser mais difícil. Admito, tenho pouca experiência e provavelmente andarei um pouco à deriva. Mas vamos experimentar e ver no que dá. Tenho a sensação que vamos aprender mais com os testes do que com a aplicação em si. E para primeiro </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110786339038069696/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110786339038069696' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110786339038069696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110786339038069696'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces-interface.html' title='Intersecções, Interface'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110780442579885590</id><published>2005-02-07T18:37:00.000Z</published><updated>2005-02-07T22:00:06.350Z</updated><title type='text'>Intersecções, Continuação</title><summary type='text'>Falta agora definir a situação de vitória. Fazer um teste que coloque quatro peças em linha é um pouco mais complicado do que aqueles que fizemos até agora. Vamos tentar.[Test] public void Victory() {    Board board = new Board(1, 1, Cell.White);    board.Play(2);    board.Play(2);    board.Play(3);    board.Play(3);    board.Play(4);    board.Play(4);}Com esta sequência de jogadas </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110780442579885590/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110780442579885590' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110780442579885590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110780442579885590'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces-continuao.html' title='Intersecções, Continuação'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110772972692362603</id><published>2005-02-06T22:32:00.000Z</published><updated>2005-02-07T09:28:29.000Z</updated><title type='text'>Intersecções (5)</title><summary type='text'>Vamos continuar o desenvolvimento do jogo Intersecções. O método Play ainda não está completo. Ainda é possível efectuar jogadas não permitidas pelas regras. Nomeadamente, é possível jogar numa célula do adversário sem ter ainda a linha ou coluna totalmente ocupada. Vamos fazer um teste para demonstrar o problema.[Test] public void InvalidPlay() {    try {        Board board = new Board(2, 3, </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110772972692362603/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110772972692362603' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110772972692362603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110772972692362603'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces-5.html' title='Intersecções (5)'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110771405162763593</id><published>2005-02-06T17:53:00.000Z</published><updated>2005-02-06T18:54:23.800Z</updated><title type='text'>Intersecções (4)</title><summary type='text'>O nosso método Play tem um problema. É possível passar valores que não são possíveis no contexto do jogo. Por exemplo, é possível passar um valor negativo ou maior que quatro (o tabuleiro tem indices de zero a quatro). É também possível indicar o mesmo valor duas vezes, o que levaria a jogar numa casa já com uma peça. Vamos fazer alguns testes para demonstrar o problema.[Test] public void </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110771405162763593/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110771405162763593' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110771405162763593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110771405162763593'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces-4.html' title='Intersecções (4)'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110768609332244729</id><published>2005-02-06T09:47:00.000Z</published><updated>2005-02-06T11:20:13.913Z</updated><title type='text'>Intersecções (3)</title><summary type='text'>Vamos continuar o desenvolvimento do jogo Intersecções. Na mensagem anterior ficámos com uma classe que representa o tabuleiro. Esta classe permite indicar as coordenadas das peças originais e permite consultar o estado do tabuleiro. Falta agora acrescentar a funcionalidade necessária para poder inserir novas jogadas. Mas antes disso, vamos ver um pormenor. Nós estamos a considerar que é as peças</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110768609332244729/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110768609332244729' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110768609332244729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110768609332244729'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces-3.html' title='Intersecções (3)'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110759942562188905</id><published>2005-02-05T09:12:00.000Z</published><updated>2005-02-05T10:30:25.620Z</updated><title type='text'>Intersecções (2)</title><summary type='text'>Na mensagem anterior terminámos a analisar algumas questões de estilo do código apresentado. Eu disse que ainda tinham ficado pormenores por referir. Vamos ver quais são. No código apresentado eu indiquei explicitamente qual era a acessibilidade dos campos originalBlack e originalWhite. No entanto, se não tivesse indicado a acessibilidade, estes ficariam exactamente iguais, pois o nível de </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110759942562188905/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110759942562188905' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110759942562188905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110759942562188905'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces-2.html' title='Intersecções (2)'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110759122036514793</id><published>2005-02-05T07:52:00.000Z</published><updated>2005-02-05T08:58:18.063Z</updated><title type='text'>Intersecções</title><summary type='text'>Para experimentar o já aprendido sobre a linguagem C# e a metodologia de programação guiada por testes com o NUnit, podemos agora desenvolver uma pequena aplicação. Escolhi o jogo Intersecções. O objectivo é ir desenvolvendo sempre os testes primeiro e verificar as vantagens (e desvantagens) que isto tráz. Será também uma aventura de descoberta pois a minha pouca experiência nem sempre me levará </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110759122036514793/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110759122036514793' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110759122036514793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110759122036514793'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/02/interseces.html' title='Intersecções'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110694632001376564</id><published>2005-01-28T20:54:00.000Z</published><updated>2005-01-30T09:47:09.663Z</updated><title type='text'>NUnit</title><summary type='text'>Já vão alguns dias desde a última mensagem. Mas eu não me esqueci do blog. Simplesmente tirei uns dias de férias e não trabalhei em nada. Agora de volta ao trabalho vamos pegar num assunto diferente. Secalhar era interessante realizar um pequeno programa em C#. Este programa serviria para aprender algumas coisas novas e aplicar as outras que já foram aprendidas.E poderiamos ter também alguma </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110694632001376564/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110694632001376564' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110694632001376564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110694632001376564'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/nunit.html' title='NUnit'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110630688052119170</id><published>2005-01-21T10:44:00.000Z</published><updated>2005-01-21T11:28:00.520Z</updated><title type='text'>Convert</title><summary type='text'>Vamos ver agora o tipo Convert. Eu tenho estado a referir diversos tipos mas não tenho estado a indicar a sua localização no Rotor. Todos eles se encontram na mesma directoria nos ficheiros com o nome do tipo. Bem, este tipo é simples, embora não pareça com as suas mais de 2000 linhas no ficheiro. Se virmos bem, os métodos são práticamente todos iguais e consistem em converter de um qualquer tipo</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110630688052119170/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110630688052119170' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110630688052119170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110630688052119170'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/convert.html' title='Convert'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110621453449151469</id><published>2005-01-20T08:57:00.000Z</published><updated>2005-01-20T09:50:12.126Z</updated><title type='text'>Int32</title><summary type='text'>Na última mensagem ficou-se por saber como era a definição da interface IConvertible. Não se chegou a ver como era a implementação dessa interface no Int32. A interface está implementada assim:bool IConvertible.ToBoolean(IFormatProvider provider) {    return Convert.ToBoolean(m_value);}char IConvertible.ToChar(IFormatProvider provider) {    return Convert.ToChar(m_value);}E por aí fora para </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110621453449151469/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110621453449151469' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110621453449151469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110621453449151469'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/int32_20.html' title='Int32'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110617802365156097</id><published>2005-01-19T22:41:00.000Z</published><updated>2005-01-19T23:41:33.366Z</updated><title type='text'>ToString</title><summary type='text'>O tipo Int32 implementa três interfaces. Já vimos a primeira, IComparable, que tem o método CompareTo. Vamos ver agora a segunda interface, IFormattable. A interface está definida da seguinte forma:public interface IFormattable {    String ToString(String format,        IFormatProvider formatProvider);}Também só tem um método como a interface anterior. Então vamos ver como é que o Int32 </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110617802365156097/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110617802365156097' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110617802365156097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110617802365156097'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/tostring.html' title='ToString'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110615928048556712</id><published>2005-01-19T17:53:00.000Z</published><updated>2005-01-19T18:28:00.486Z</updated><title type='text'>Int32</title><summary type='text'>Na continuação do estudo do tipo Int32, temos o método GetHashCode. Este método tem como objectivo devolver um código de hash para uma instância deste tipo. O código de hash é um valor que identifica uma instância. Este código é utilizado, por exemplo, em tabelas de hash. Mais tarde iremos ver esta e outras estruturas de dados. Este código está intimamente ligado com a equivalência entre dois </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110615928048556712/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110615928048556712' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110615928048556712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110615928048556712'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/int32_19.html' title='Int32'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110612719951960149</id><published>2005-01-19T08:30:00.000Z</published><updated>2005-01-19T09:33:19.520Z</updated><title type='text'>Tipos Referência e Tipos Valor</title><summary type='text'>Ao estudar aqueles dois métodos do tipo Int32 surgiu a questão do porquê de receberem uma instância de Object e se haveria algum problema de performance com isso. Não podemos deixar de ter os métodos recebendo estes parâmetros porque ou são implementações de interfaces ou redefinições de métodos da classe base. Quanto muito poderiamos definir outros métodos com o mesmo nome mas recebendo um </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110612719951960149/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110612719951960149' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110612719951960149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110612719951960149'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/tipos-referncia-e-tipos-valor.html' title='Tipos Referência e Tipos Valor'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110600487918586943</id><published>2005-01-17T22:52:00.000Z</published><updated>2005-01-17T23:34:39.186Z</updated><title type='text'>Int32</title><summary type='text'>Agora é muito mais simples continuar o estudo do Int32 do Rotor. Recordemos o método que se estava a estudar:public int CompareTo(Object value) {    if(value == null) { return 1; }    if(value is Int32) {        int i = (int) value;        if(m_value &lt; i) { return -1; }        if(m_value &gt; i) { return 1; }        return 0;    }    throw new ArgumentException(Environment.GetResourceString(</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110600487918586943/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110600487918586943' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110600487918586943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110600487918586943'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/int32.html' title='Int32'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110579033947574619</id><published>2005-01-15T11:00:00.000Z</published><updated>2005-01-15T11:58:59.476Z</updated><title type='text'>Excepções</title><summary type='text'>Antes de continuarmos importa referir o porquê desta paragem no estudo do Rotor (que era o que estavamos a fazer, se bem se lembram). Ao estudar o tipo Int32 tive de efectuar várias paragens para referir pormenores que ainda não tinha referido. Não é que fossem pormenores complicados de entender, mas o meu objectivo é estudar tudo, desde as coisas mais básicas até às coisas mais complicadas. E </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110579033947574619/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110579033947574619' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110579033947574619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110579033947574619'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/excepes.html' title='Excepções'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110577789762173548</id><published>2005-01-15T08:07:00.000Z</published><updated>2005-01-15T09:38:40.753Z</updated><title type='text'>Operadores, Interoperabilidade e Ciclos</title><summary type='text'>Nem todas as linguagens são obrigadas a oferecer um mecanismo de sobrecarga de operadores. O Visual Basic não oferece esse mecanismo, por exemplo. Então como é que eu posso utilizar, numa linguagem que não ofereça este mecanismo, os operadores definidos numa linguagem que ofereça? Bem, tendo em conta que ao sobrecarregar operadores não estamos a fazer mais que definir métodos, podemos chamá-los </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110577789762173548/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110577789762173548' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110577789762173548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110577789762173548'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/operadores-interoperabilidade-e-ciclos.html' title='Operadores, Interoperabilidade e Ciclos'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110577284140687576</id><published>2005-01-15T06:28:00.000Z</published><updated>2005-01-15T07:46:49.603Z</updated><title type='text'>Sobrecarga de Operadores</title><summary type='text'>Então a pergunta que coloco agora é: e quais são os operadores que são sobrecarregáveis? Todos? Será que posso sobrecarregar o operador de acesso a um membro ou o operador de chamada de um método? Não, não é possível sobrecarregar esses operadores. Mas também não fazia muito sentido. São estes os operadores que podem ser sobrecarregados:Operadores Unários:+ - ! ~ ++ -- true falseOperadores </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110577284140687576/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110577284140687576' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110577284140687576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110577284140687576'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/sobrecarga-de-operadores_15.html' title='Sobrecarga de Operadores'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110572426944581346</id><published>2005-01-14T17:02:00.000Z</published><updated>2005-01-14T17:51:15.430Z</updated><title type='text'>Sobrecarga de Operadores</title><summary type='text'>A questão que ficou no ar na última mensagem foi sobre se seria possível redifinir os operadores para serem utilizados também nos tipos definidos por nós. Esta possibilidade seria bastante interessante no sentido em que tornaria a utilização dos tipos mais fácil.Em C++ já existia essa possibilidade e com um número relativamente elevado de pormenores. Já para Java, em nome da simplicidade, foi </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110572426944581346/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110572426944581346' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110572426944581346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110572426944581346'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/sobrecarga-de-operadores.html' title='Sobrecarga de Operadores'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110571995265420384</id><published>2005-01-14T15:53:00.000Z</published><updated>2005-01-14T17:01:12.626Z</updated><title type='text'>Operadores, O Fim</title><summary type='text'>Vamos terminar finalmente a nossa viagem pelo mundo dos operadores analisando as últimas categorias.Categoria CondicionalDesta categoria só faz parte um operador, o operador ternário, e tem a forma a? b: c. Na realidade, operador ternário não é o nome mais correcto. Operadores ternários são todos aqueles que têm três operandos. Este é chamado assim porque é o único operador ternário nesta </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110571995265420384/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110571995265420384' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110571995265420384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110571995265420384'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/operadores-o-fim.html' title='Operadores, O Fim'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110569392625126531</id><published>2005-01-14T08:44:00.000Z</published><updated>2005-01-14T15:37:55.680Z</updated><title type='text'>Mais Operadores</title><summary type='text'>Já falámos nas duas mensagens anteriores das categorias mais prioritárias de operadores. Mas ainda existem mais umas quantas para ver. Vamos ver quais são e que operadores oferecem.Categoria de Teste RelacionalNesta categoria encontram-se os operadores para efectuar testes de relação entre os vários objectos. Os quatro primeiros são nossos conhecidos da matemática. Os dois últimos são a novidade.</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110569392625126531/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110569392625126531' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110569392625126531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110569392625126531'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/mais-operadores.html' title='Mais Operadores'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110562036266147661</id><published>2005-01-13T13:15:00.000Z</published><updated>2005-01-13T12:46:02.663Z</updated><title type='text'>Operadores, O Regresso</title><summary type='text'>Na mensagem anterior falámos das duas categorias de operadores de maior prioridade, a categoria primária e a categoria unária. Vamos agora falar das três seguintes.Categoria MultiplicativaNesta categoria encontra-se os operadores relacionados com a multiplicação e com a divisão. São apenas três, os operadores:- operador de multiplicação, a*b- operador de divisão, a / b- operador de resto da </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110562036266147661/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110562036266147661' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110562036266147661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110562036266147661'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/operadores-o-regresso.html' title='Operadores, O Regresso'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110561211554129576</id><published>2005-01-13T09:45:00.000Z</published><updated>2005-01-15T07:43:09.620Z</updated><title type='text'>Operadores</title><summary type='text'>Todos aprendemos muito cedo o que são operadores na matemática. Se eu escrever 2+3 acho que não há ninguém que eventualmente esteja a ler o fórum que não saiba o que é o +. A maioria das linguagens de programação oferece ao programador a possibilidade de escrever expressões recorrendo ao mesmo sintaxe ou a um sintaxe muito próximo do que é utilizado tradicionalmente na matemática. A linguagem C# </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110561211554129576/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110561211554129576' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110561211554129576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110561211554129576'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/operadores.html' title='Operadores'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110555376741658215</id><published>2005-01-12T17:54:00.000Z</published><updated>2005-01-12T18:16:07.416Z</updated><title type='text'>IComparable (2)</title><summary type='text'>De uma forma abstracta, podemos considerar que o conteúdo dos nossos métodos é um conjunto de acções básicas, compostas entre si. E existem três formas de compor as acções de um método, sendo elas a composição sequencial, composição alternativa e composição iterativa.A composição sequencial temos vindo a utilizar já diversas vezes e consistem em colocar as diversas instruções seguidas, separadas</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110555376741658215/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110555376741658215' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110555376741658215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110555376741658215'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/icomparable-2.html' title='IComparable (2)'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110554364125553544</id><published>2005-01-12T14:34:00.000Z</published><updated>2005-01-12T17:51:10.073Z</updated><title type='text'>IComparable</title><summary type='text'>Vamos voltar ao Int32. Tinhamos ficado com a definição do valor mínimo e do valor máximo. Além das considerações que já foram feitas pode-se ainda dizer que estes dois valores estão marcados como const para que a sua alteração não seja possível e por questões de eficiência. Assim, a informação de mínimo e máximo está associada ao tipo Int32 e não a uma instância de um tipo. Se eu definir dois </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110554364125553544/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110554364125553544' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110554364125553544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110554364125553544'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/icomparable.html' title='IComparable'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110553520240202036</id><published>2005-01-12T13:44:00.000Z</published><updated>2005-01-12T13:06:42.403Z</updated><title type='text'>Organização do Blog</title><summary type='text'>Esta mensagem não irá conter nenhumas considerações sobre a plataforma .NET. Pretendo apenas anunciar algumas novidades e partilhar alguns pensamentos.Resolvi mudar o visual do Mundo .NET para um com cores mais vivas. Espero que gostem. Eu pessoalmente já estava cansado do visual anterior. Decidi ver as ofertas que o serviço disponibiliza e decidi-me por esta. A partir daqui talvez procure </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110553520240202036/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110553520240202036' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110553520240202036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110553520240202036'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/organizao-do-blog.html' title='Organização do Blog'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110551723386519409</id><published>2005-01-12T08:00:00.000Z</published><updated>2005-01-12T09:06:12.523Z</updated><title type='text'>Int32 no Rotor</title><summary type='text'>Na última mensagem ficamos a meio do estudo de três linhas do código do tipo Int32 no Rotor. As linhas eram as seguintes:internal int m_value;public const int MaxValue = 0x7FFFFFFF;public const int MinValue = unchecked((int) 0x80000000);Podem ser colocadas um sem número de questões sobre estas linhas. Vamos começar primeiro por ver o porquê daqueles números e do valor mínimo ser maior que o </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110551723386519409/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110551723386519409' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110551723386519409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110551723386519409'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/int32-no-rotor.html' title='Int32 no Rotor'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110548223684924527</id><published>2005-01-11T21:49:00.000Z</published><updated>2005-01-12T08:14:20.326Z</updated><title type='text'>Atributos</title><summary type='text'>Temos estado a estudar as primeiras linhas do código do tipo Int32 do rotor. O ficheiro encontra-se em na directoria sscli\clr\src\bcl\system. O código alvo de estudo é o seguinte:[Serializable,System.Runtime.InteropServices.StructLayout(LayoutKind.Sequential)]public struct Int32 : IComparable, IFormattable, IConvertible {}Faltava ver o que eram aqueles parâmetros entre parênteses rectos. Foi </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110548223684924527/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110548223684924527' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110548223684924527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110548223684924527'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/atributos.html' title='Atributos'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110545408721277946</id><published>2005-01-11T14:30:00.000Z</published><updated>2005-01-11T15:09:19.663Z</updated><title type='text'>Herança</title><summary type='text'>Há uns tempos atrás falei de três características típicas das linguagens orientadas a objectos. As três características são o encapsulamento, a herança e o polimorfismo. O encapsulamento é suportado em C# através dos modificadores de acesso. Foi porque estava a falar sobre eles que referi este assunto. Relativamente à herança e ao polimorfismo ainda não tinha dito nada. Agora, para compreender o </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110545408721277946/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110545408721277946' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110545408721277946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110545408721277946'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/herana.html' title='Herança'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110544024080104544</id><published>2005-01-11T10:01:00.000Z</published><updated>2005-01-11T10:46:03.023Z</updated><title type='text'>Rotor</title><summary type='text'>Ganhei coragem e decidi começar a investigar o rotor. No entanto, para não me atirar de cabeça, decidi começar pelas coisas mais simples. Vamos ver como está definido o tipo int. Afinal de contas já o utilizámos várias vezes em mensagens anteriores. Era interessante ver como ele foi definido. O código desse tipo está na directoria sscli\clr\src\bcl\system\int32.cs. Mas antes disso há uns </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110544024080104544/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110544024080104544' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110544024080104544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110544024080104544'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/rotor.html' title='Rotor'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110542706894755831</id><published>2005-01-11T06:49:00.000Z</published><updated>2005-01-11T07:04:28.946Z</updated><title type='text'>.NET em Português</title><summary type='text'>Escrevo esta mensagem para referir um site em português sobre a tecnologia .NET. Refiro-me ao site do Departamento de Engenharia Informática do Instituto Superior de Engenharia do Porto, Laboratório .NET e o seu link é http://w2ks.dei.isep.ipp.pt/labdotnet. É um site com bastantes links para sites relacionados com a tecnologia e ainda com a indicação de um conjunto de eventos e projectos que </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110542706894755831/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110542706894755831' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110542706894755831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110542706894755831'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/net-em-portugus.html' title='.NET em Português'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110542596885003728</id><published>2005-01-11T06:08:00.000Z</published><updated>2005-01-11T06:47:06.503Z</updated><title type='text'>Mais Propriedades</title><summary type='text'>Bem, antes de começarmos a analisar partes do rotor, convém acabar um assunto que ficou pendente de ontem - as propriedades. O mecanismo é muito interessante, não é? Com ele podemos utilizar campos públicos (mais eficiente que utilizar métodos) quando não é necessária qualquer verificação do acesso e, mais tarde, quando for necessário, modificar para uma propriedade e todo o código que tenha sido</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110542596885003728/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110542596885003728' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110542596885003728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110542596885003728'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/mais-propriedades.html' title='Mais Propriedades'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110540061891966573</id><published>2005-01-10T23:29:00.000Z</published><updated>2005-01-10T23:47:55.113Z</updated><title type='text'>SSCLI</title><summary type='text'>A Microsoft não disponibiliza apenas a versão comercial da plataforma .NET. Existe também uma versão open-source (ou talvez fosse melhor dizer, shared-source) que se pode fazer download gratuitamente e analisar com mais detalhe o funcionamento interno da plataforma. O download pode ser efectuado em http://msdn.microsoft.com/net/sscli. De notar que SSCLI significa Shared Source Common Language </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110540061891966573/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110540061891966573' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110540061891966573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110540061891966573'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/sscli.html' title='SSCLI'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110539880647582113</id><published>2005-01-10T22:40:00.000Z</published><updated>2005-01-12T12:21:55.886Z</updated><title type='text'>Propriedades</title><summary type='text'>Já passaram alguns dias sem nenhuma mensagem. Peço desculpa a eventuais leitores (espero que existam alguns). Infelizmente o tempo tem sido apertado, com a passagem de ano e o regresso do trabalho. Para além disso uns problemas impediram-me de aceder à Internet. Para recomeçar acho que vou falar um pouco das propriedades. É um mecanismo muito interessante da plataforma e que não se encontra </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110539880647582113/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110539880647582113' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110539880647582113'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110539880647582113'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2005/01/propriedades.html' title='Propriedades'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110422230359093404</id><published>2004-12-28T08:17:00.000Z</published><updated>2004-12-28T08:25:03.590Z</updated><title type='text'>Construtores</title><summary type='text'>Passados agora os dias de festa voltemos ao Mundo .NET para continuar a pesquisar mais questões sobre a linguagem C#. No post anterior disse que havia uma diferença de sintaxe entre a utilização de um tipo definido por mim e o int. No entanto, poderia definir o int da mesma forma que poderia definir um tipo definido por mim, isto é, o seguinte código seria válido:class A {  int a = new int();</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110422230359093404/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110422230359093404' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110422230359093404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110422230359093404'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/construtores.html' title='Construtores'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110366407073144359</id><published>2004-12-21T21:15:00.000Z</published><updated>2004-12-21T21:21:10.730Z</updated><title type='text'>Tipos</title><summary type='text'>Há ainda mais coisas a referir sobre os campos. No exemplo anterior foram definidos dois métodos para ler e escrever sobre o campo. Não poderia ter sido usado directamente o campo? O que se queria era ter algo comoclass A{  int j;}class B{  static void Main()  {    A a = new A();    a.j = 5;    System.Console.WriteLine(a.j);  }}Efectivamente é possível mas tem que se considerar um</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110366407073144359/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110366407073144359' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110366407073144359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110366407073144359'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/tipos.html' title='Tipos'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110364963537186128</id><published>2004-12-21T17:15:00.000Z</published><updated>2004-12-21T17:20:35.370Z</updated><title type='text'>Campos de Tipos</title><summary type='text'>Podemos definir um objecto como uma entidade que tem um determinado estado e um determinado comportamento. O comportamento temos vindo a definir através dos métodos. Através dos campos podemos definir o estado. Bem, para ser mais preciso, podemos definir o domínio do estado. Indicamos qual é o conjunto sobre o qual o estado do objecto de um tipo será representado. Agora cada objecto poderá ter </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110364963537186128/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110364963537186128' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110364963537186128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110364963537186128'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/campos-de-tipos.html' title='Campos de Tipos'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110357299180983959</id><published>2004-12-20T19:55:00.000Z</published><updated>2004-12-20T20:03:11.810Z</updated><title type='text'>Instâncias</title><summary type='text'>Olá de novo.Infelizmente não tive tempo para deixar novas mensagens aqui no blog. No entanto já estou de volta. Relativamente a um código que apresentei anteriormente ainda ficou uma coisa por esclarecer. Para os mais distraídos, o código era o seguinte:using MC = A.MyClass;namespace A { class MyClass { } }class App{  static void Main() { MC mc; }}Já se falou de tipos (é o que vou </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110357299180983959/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110357299180983959' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110357299180983959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110357299180983959'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/instncias.html' title='Instâncias'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110278762891039806</id><published>2004-12-11T17:46:00.000Z</published><updated>2004-12-11T17:57:34.123Z</updated><title type='text'>Modificadores de Acesso</title><summary type='text'>Lembram-se de um exemplo em que um dos métodos tinha à sua frente a palavra public? E que raio é isso? Isso é o que se chama de modificador de acesso e é um dos elementos centrais da programação orientada a objectos. As linguagens orientadas a objectos oferecem tipicamente três elementos - encapsulamento, herança e polimorfismo. Deixando a herança e o polimorfismo para posts posteriores, a </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110278762891039806/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110278762891039806' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110278762891039806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110278762891039806'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/modificadores-de-acesso.html' title='Modificadores de Acesso'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110275734227038437</id><published>2004-12-11T09:23:00.000Z</published><updated>2004-12-11T09:29:37.890Z</updated><title type='text'>Using</title><summary type='text'>Para terminar por agora os comentários sobre a palavra chave using ainda é necessário referir outra coisa. Digo por agora, pois esta palavra chave ainda tem outra utilização. À frente de using posso colocar apenas espaços de nomes. Isto é, pegando nos exemplos do post anterior, eu poderia escrever using A; ou using B; mas nunca using A.MyClass; pois MyClass é uma classe e não um espaço de nomes. </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110275734227038437/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110275734227038437' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110275734227038437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110275734227038437'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/using.html' title='Using'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110267505083238154</id><published>2004-12-10T10:32:00.000Z</published><updated>2004-12-10T10:47:10.180Z</updated><title type='text'>Espaços de Nomes</title><summary type='text'>Existe um documento que dá sempre muito jeito ter à mão para consulta quando se estuda uma linguagem. Esse documento é a especificação dessa linguagem. Em relação a C#, é possível efectuar o download gratuitamente no site da Ecma, http://www.ecma-international.org/publications/standards/Ecma-334.htm.Se consultarem a secção 1 do capítulo 10 (Basic Concepts) encontram os comentários sobre o método</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110267505083238154/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110267505083238154' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110267505083238154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110267505083238154'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/espaos-de-nomes.html' title='Espaços de Nomes'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110263172361497975</id><published>2004-12-09T22:29:00.000Z</published><updated>2004-12-09T22:43:58.853Z</updated><title type='text'>Sobrecarga de Métodos</title><summary type='text'>Num dos exemplos que se viu anteriormente tinhamos uma classe com dois métodos com o mesmo nome, embora com parâmetros diferentes. A esta possibilidade (de ter métodos com o mesmo nome, variando no número e tipo dos parâmetros) chama-se de sobrecarga (em inglês, overload) de métodos. Sinceramente acho que esta é uma das possibilidades mais interessantes das linguagens mais recentes. Isto entre </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110263172361497975/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110263172361497975' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110263172361497975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110263172361497975'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/sobrecarga-de-mtodos.html' title='Sobrecarga de Métodos'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110252249720497368</id><published>2004-12-08T16:12:00.000Z</published><updated>2004-12-08T16:24:53.696Z</updated><title type='text'>Mais Main</title><summary type='text'>Tal como tinha referido anteriormente, existem mais alguns pormenores a considerar relativamente ao método Main. Quais são eles, afinal?Vamos considerar uma coisa: o ponto de entrada da aplicação não é mais que um método estático de uma classe. Mas uma aplicação pode, e com toda a certeza que terá, um sem número de classes diferentes. Então levanta-se a questão: e se eu definir um método </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110252249720497368/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110252249720497368' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110252249720497368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110252249720497368'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/mais-main.html' title='Mais Main'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110248963439100129</id><published>2004-12-08T07:02:00.000Z</published><updated>2004-12-08T16:33:54.393Z</updated><title type='text'>O Método Main</title><summary type='text'>O método Main na aplicação anterior parece tão singelo mas no entanto ainda existe um conjunto de pormenores à volta dele que podem ser considerados. Em linguagens como C ou C++ era possível receber um conjunto de parâmetros da linha de comandos. A função main nessas linguagens teria a seguinte assinatura:void main(int argc, char* argv[]);Em que o primeiro parâmetro (argc, argument counter) </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110248963439100129/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110248963439100129' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110248963439100129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110248963439100129'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/o-mtodo-main.html' title='O Método Main'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110244760147902886</id><published>2004-12-07T19:21:00.000Z</published><updated>2004-12-07T19:34:16.516Z</updated><title type='text'>Hello World</title><summary type='text'>A primeira coisa a fazer para se poder desenvolver aplicações sobre a plataforma .NET é efectuar o download das ferramentas de desenvolvimento. A Microsoft disponibiliza gratuitamente estas ferramentas, portanto, se já não as tiveres, podes fazer download em http://www.microsoft.com/downloads/details.aspx?FamilyId=9B3A2CA6-3647-4070-9F41-A333C6B9181D&amp;displaylang=en.Este link aponta para a versão</summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110244760147902886/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110244760147902886' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110244760147902886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110244760147902886'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/hello-world.html' title='Hello World'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9503040.post-110244179583053022</id><published>2004-12-07T17:22:00.000Z</published><updated>2004-12-07T18:02:09.260Z</updated><title type='text'>Não, não percebo nada disto.</title><summary type='text'>O tópico resume bastante bem este post. Efectivamente, ainda não percebo nada disto. O objectivo deste blog é alterar precisamente isto. Nas próximas mensagens irei descobrir o mundo .NET e são essas descobertas que quero partilhar com todos. As minhas dúvidas serão também as dúvidas de outros e assim poderá haver uma troca de ideias com o objectivo que todos aumentem o seu conhecimento.A </summary><link rel='replies' type='application/atom+xml' href='http://mundodotnet.blogspot.com/feeds/110244179583053022/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9503040&amp;postID=110244179583053022' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110244179583053022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9503040/posts/default/110244179583053022'/><link rel='alternate' type='text/html' href='http://mundodotnet.blogspot.com/2004/12/no-no-percebo-nada-disto.html' title='Não, não percebo nada disto.'/><author><name>MundoDotNet</name><uri>http://www.blogger.com/profile/11922056503637707086</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://pwp.net.ipl.pt/alunos.isel/27207/Meego_050220082506_PIC.jpg'/></author><thr:total>0</thr:total></entry></feed>
