Dúvida Exercício F06 – Retornando vetores a partir do web service

4 agosto, 2009 (15:27) | dúvida | Por: admin

Você pode retornar do servidor web ao cliente web qualquer tipo de objeto.
No exemplo a seguir, um vetor de objetos do tipo Pessoa é retornado e exibido no cliente.
RetornandoMaisDeUmValor

Observe que os serviços, em ASP.NET, por padrão retornam em JSON um objeto encapsulado em uma propriedade chamada “d”.

Dúvidas Trabalho F06 – Complemento

22 julho, 2009 (14:20) | avisos | Por: admin

Pessoal,

Por favor, usem o correio do Eureka para dúvidas referentes ao trabalho F06.
Aproveitando: não poderei ir hoje (22/07) na PUCPR.
Amanhã (23/7) no fim da tarde estarei na PUC. Caso você queira conversar comigo, por favor, envie um email de confirmação.

Dúvidas Trabalho F06

13 julho, 2009 (15:46) | avisos | Por: admin

Apenas para confirmar algumas dúvidas do trabalho F06, conforme já comentado em sala.

1) A especificação é a mesma do trabalho F03. Obviamente, desta vez, serei mais rígido com o software apresentado tanto no Desktop quanto na Web.
2) O que varia é que agora, você deve persistir as informações fornecidas como, por exemplo, o posicionamento de objetos.
3) Por favor, envie suas dúvidas via Correio do Eureka com o título Dúvida Trabalho F06. Mas, no dia 22, próxima quarta, também estarei na PUCPR das 18:00 até as 20:00h na Sala dos Professores da Exatas.
4) Mudança (simplificação de escopo): não colocarei como requisito a utilização de web services para representar o acesso a seu sistema. É um extra.
Mesmo assim, considero esta organização altamente recomendável.
5) Mudança (data de entrega): 29/07 até 23:59h. Já criei o espaço no Eureka para esta entrega.
6) Não haverá apresentação oral. A defesa será no formato de questionamentos individuais referentes ao código e a autoria nos dias 30/7 e 1/8.

Notas e Presenças

7 julho, 2009 (19:09) | Sem categoria | Por: admin

Pessoal, segue abaixo as notas e presenças,

Por favor, confiram com atenção, e reportem qualquer problema ocorrido!

Conversamos na 1a semana de aula, mas caso precise de algo, entre em contato via Correio do Eureka. Na PUCPR estarei fisicamente no dia 22/7.

Abraços a todos!
Bruno

PRESENÇAS:
http://spreadsheets.google.com/ccc?key=pD5xiFKE9oj3ff-n8×4QCbg

NOTAS:
http://spreadsheets.google.com/ccc?key=rgsVJ2tHzDhPKd_otL0waxw

Divisão para prova

2 julho, 2009 (13:16) | Sem categoria | Por: admin

Pessoal,

Atendendo a pedidos: a prova usará a divisão das turmas já aplicada em laboratório.

Ou seja, serão ** 2 turmas ** seguinte estritamente a divisão semanal.

Exemplo de Chamada a serviço REST/JSON

27 junho, 2009 (10:20) | dúvida | Por: admin

O exemplo abaixo é em JavaScript puro.
Dica: para chamar o serviço usando o jQuery, você pode usar as funções:
getJSON ou getScript.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Untitled Page</title>

    <script type="text/javascript">
        function exibirAleatorios(result) {
            //alert(result);
            //console.log(result);
            //alert(result.numbers[0]);
            for(i=0;i<result.numbers.length;i++) {
                alert(result.numbers[i]);
            }
        }
    </script>

    <script type="text/javascript"
    src="http://json-random.appjet.net/?num=5&min=10&max=20&callback=exibirAleatorios"></script>
</head>
<body>

</body>
</html>

Exemplo de chamada a serviço REST (XML)

25 junho, 2009 (16:48) | dúvida | Por: admin

Segue, em anexo, para ajudar na resolução do Exercício O07!
exemplochamadaservicorest


// Cria o objeto de WebProxy, passando como parâmetro o endereço do proxy e a porta
            System.Net.WebProxy proxyObject = new System.Net.WebProxy(TextBoxProxy.Text, Convert.ToInt32(TextBoxPorta.Text));
            // Passa o login, a senha e o domínio do WebProxy
            proxyObject.Credentials = new System.Net.NetworkCredential(TextBoxLogin.Text, TextBoxSenha.Text, TextBoxDominio.Text);
            // Configurar o proxy para a requisição web
            WebRequest.DefaultWebProxy = proxyObject;

            // Configura o proxy
            XmlReader reader = XmlReader.Create("http://news.google.com/news?ned=pt-PT_pt&q="+textBoxConsulta.Text+"&output=rss");

            /* Exemplo de RSS:
             * - <item>
                    <title>Unesco distingue Lula da Silva por contributo para a paz - Diário Digital</title>
                    <link>http://news.google.com/news/url?fd=R&id_news=395758&sa=T&url=http://diariodigital.sapo.pt/news.asp?section_id=10&usg=AFQjCNHKNP4y_yH2ocPSlclqAkMeHGozlA</link>
                    <guid isPermaLink="false">tag:news.google.com,2005:cluster=http://diariodigital.sapo.pt/news.asp?section_id=10&id_news=395758</guid>
                    <pubDate>Thu, 25 Jun 2009 14:35:33 GMT</pubDate>
                    <description><table border="0" cellpadding="2" cellspacing="7" style="vertical-align:top;"><tr><td width="80" align="center" valign="top"><font style="font-size:85%;font-family:arial,sans-serif"><a href="http://news.google.com/news/url?fd=R&sa=T&url=http://www.google.com/hostednews/afp/article/ALeqM5js42auha7bZRP1gpiB_4ZPg4TwFw&usg=AFQjCNHE8b4rzlv8GVVo694gobQssLuo5w"><img src="http://nt1.ggpht.com/news/tbn/HUr_ZEML-aBYBM/0.jpg" alt="" border="1" width="80" height="65" /><br /><font size="-2">AFP</font></a></font></td><td valign="top" class="j"><font style="font-size:85%;font-family:arial,sans-serif"><br /><div style="padding-top:0.8em;"><img alt="" height="1" width="1" /></div><div class="lh"><a href="http://news.google.com/news/url?fd=R&id_news=395758&sa=T&url=http://diariodigital.sapo.pt/news.asp?section_id=10&usg=AFQjCNHKNP4y_yH2ocPSlclqAkMeHGozlA"><b>Unesco distingue <b>Lula</b> da Silva por contributo para a paz</b></a><br /><font size="-1"><b><font color="#6f6f6f">Diário Digital</font></b></font><br /><font size="-1">O presidente brasileiro, Luiz Inácio <b>Lula</b> da Silva, vai receber a 7 de Julho, na sede da Unesco, em Paris, o Prémio Incentivo da Paz, Félix Houphouët-Boigny <b>...</b></font><br /><font size="-1"><a href="http://news.google.com/news/url?fd=R&sa=T&url=http://www.google.com/hostednews/afp/article/ALeqM5js42auha7bZRP1gpiB_4ZPg4TwFw&usg=AFQjCNHE8b4rzlv8GVVo694gobQssLuo5w"><b>Lula</b> receberá prêmio da Unesco por sua contribuição para a paz</a><font size="-1" color="#6f6f6f"><nobr>AFP</nobr></font></font><br /><font size="-1" class="p"></font><br /><font class="p" size="-1"><a class="p" href="http://news.google.com/news?ned=pt-PT_pt&hl=pt&ncl=dv3fdR8kmqucBcMpM_OiTkRF-pEPM"><nobr><b>todos os 15 artigos de notícias&nbsp;&raquo;</b></nobr></a></font></div></font></td></tr></table></description>
                </item> */

            // Percorra cada nó de um arquivo XML
            while (reader.Read())
            {
                // Se encontrar o nó do tipo item
                if((reader.Name=="item") && (reader.NodeType== XmlNodeType.Element))
                {
                    // Encontra o title
                    reader.ReadToDescendant("title");
                    // Lê o conteúdo do title
                    reader.Read();
                    // Exibe o valor do title
                    TextBoxResultado.Text +=  "* " + reader.Value + "\r\n";
                    // Encontra o link
                    reader.ReadToFollowing("link");
                    // Lê o conteúdo do link
                    reader.Read();
                    // Exibe o valor do link
                    TextBoxResultado.Text += reader.Value + "\r\n\r\n";
                }
            }

Exemplo Acesso Serviço SOAP

18 junho, 2009 (19:58) | exercícios | Por: admin


// Cria o objeto de WebProxy, passando como parâmetro o endereço do proxy e a porta
            System.Net.WebProxy proxyObject =
                new System.Net.WebProxy(TextBoxProxy.Text, Convert.ToInt32(TextBoxPorta.Text));
            // Passa o login, a senha e o domínio do WebProxy
            proxyObject.Credentials =
                new System.Net.NetworkCredential(TextBoxLogin.Text, TextBoxSenha.Text, TextBoxDominio.Text);

            cepservice.ConsultaCep s =
                new EsqueletoTemporario.cepservice.ConsultaCep();
            s.Proxy = proxyObject;
            object[] o = s.RetornaValores(80320090);
            MessageBox.Show(o[1].ToString());

Exercício O04 – Acessando Web Services

18 junho, 2009 (19:05) | exercícios | Por: admin

Este é um exercício OPCIONAL. Entretanto, um dos exercícios de sua prova do dia 02/7/2009 será baseado neste exercício.

Neste exercício você vai testar o esqueleto de código fornecido, acessando, dentro de seu programa, alguns web services.
Hoje, vamos nos preocupar em CHAMAR os Web Services e TRATAR o resultado obtido.

Referências Gerais

Referências Serviços SOAP

Referências Serviços REST / XML

  • Exemplos de acesso a conteúdo XML – VER ABAIXO, OS FRAGMENTOS DE CÓDIGO PARA REFERÊNCIA;
  • Exemplo de como ler um arquivo XML (01-LerArquivoXML.aspx):
  • using System.Xml;…
    • XmlReader reader = XmlReader.Create(Server.MapPath(”.”) + “/Filmoteca.xml”);

      // Percorra cada nó de um arquivo XML
      while (reader.Read())
      {
      Resultado.Text += “* Nome do Elemento:” + reader.Name +
      ” Valor do Elemento: ” + reader.Value +
      ” Tipo do Elemento: ” + reader.NodeType + “<br>”;
      }
  • Exemplo de como extrair uma informação de um arquivo XML (02-ExibirTituloDeFilme.aspx):
    • // Configurações de leitura do XML
      XmlReaderSettings settings = new XmlReaderSettings();
      // Ignora comentários
      settings.IgnoreComments = true;
      // Ignora espaços em branco
      settings.IgnoreWhitespace = true;
      // Ignora instruções de processamento
      settings.IgnoreProcessingInstructions = true;

      // Cria o leitor de XML
      XmlReader reader = XmlReader.Create(Server.MapPath(”.”) + “/Filmoteca.xml”, settings);

      // Percorra cada nó de um arquivo XML
      while (reader.Read())
      {
      // Se for o nó nome
      if ((reader.Name == “nome”) && (reader.NodeType == XmlNodeType.Element))
      {
      Resultado.Text += reader.ReadString() + “<br>”;
      }
      }
  • Exemplo de como ler o valor de um atributos (03-ExibindoValorAtributo.aspx):
    • // Configurações de leitura do XML
      XmlReaderSettings settings = new XmlReaderSettings();
      // Ignora comentários
      settings.IgnoreComments = true;
      // Ignora espaços em branco
      settings.IgnoreWhitespace = true;
      // Ignora instruções de processamento
      settings.IgnoreProcessingInstructions = true;

      // Cria o leitor de XML
      XmlReader reader = XmlReader.Create(Server.MapPath(”.”) + “/Filmoteca.xml”, settings);


      // Percorra cada nó de um arquivo XML
      while (reader.Read())
      {
      // Se for o nó nome
      //Resultado.Text += reader.Name + “<br>”;
      if ((reader.Name == “filme”) && (reader.NodeType == XmlNodeType.Element))
      {
      // Se o reader tiver atributos
      if (reader.HasAttributes)
      {
      Resultado.Text +=  reader["id"] + ” – “;
      // Vá lendo até chegar em nome
      reader.ReadToDescendant(”nome”);
      Resultado.Text += reader.ReadString() + “<br>”;
      // Retorna ao elemento.
      // Necessário quando se trabalha com atributos
      reader.MoveToElement();
      }
      }
      }

Referências Serviços REST / JSON / JSONP

Enunciado

  1. [Serviços  SOAP] Crie um programa que acesse aos serviços disponíveis nos seguintes endereços. Preferencialmente, faça uma página para cada serviço:
  2. [Serviço REST - retorno em XML] Crie uma interface de acesso ao serviço de notícias do Google (ver http://www.google.com/support/news/bin/answer.py?answer=59255&hl=pt). Esta interface deve possuir uma caixa de texto na qual o usuário seleciona qual é a palavra-chave a ser procurada e um botão que realiza a busca. Exemplo de chamada ao serviço do Google: http://news.google.com/news?ned=pt-PT_pt&q=Lula&output=rss . Dessa vez, você deverá exibir como resposta apenas o título do link e o próprio link.
  3. [Serviço REST - retorno em XML]  Crie uma interface de acesso ao serviço de consultas à Wikipedia (ver http://en.wikipedia.org/w/api.php). Chame o método “list=search” responsável por, dada uma palavra-chave, realizar uma busca na Wikipedia por termos semelhantes. Esta interface deve possuir uma caixa de texto na qual o usuário seleciona qual é o termo a ser buscado, e um botão que chama o serviço. Exemplo de chamada ao serviço da Wikipedia: http://pt.wikipedia.org/w/api.php?action=query&list=search&srsearch=Java&format=xml. Dessa vez, exiba apenas o título dos termos relacionados (atributo title da tag p).
  4. [Serviço REST - retorno em XML]  Crie uma interface de acesso ao serviço de informações geográficas GeoNames (ver http://www.geonames.org/export/web-services.html e http://www.geonames.org/export/web-services.html#timezone). Chame o método “timezone”, o qual dada uma coordenada geográfica, retorna qual é a zona horária associada à coordenada. Esta interface deve possuir duas caixas de texto nas quais o usuário indica qual é a latitude e a longitude e um botão que chama o serviço. Exemplo de chamada ao serviço: http://ws.geonames.org/timezone?lat=-25&lng=-49&style=full. Dessa vez, exiba o nome do país e a hora atual.
  5. [Serviço REST - retorno em XML]  Crie uma interface de acesso ao serviço de clipping de notícias do UOL (ver http://clipping.busca.uol.com.br/monte.jhtm). Este serviço permite a busca de notícias a partir de um conjunto de palavras-chave. Sua interface deve possuir, por exemplo, uma caixa de texto com as palavras que devem ser incluídas. Também deve ter um botão de chamada ao serviço. Exemplo de chamada ao serviço: http://rss.noticias.busca.uol.com.br/pucpr-vestibular. Dessa vez, você deverá exibir como resposta apenas o título do link, o próprio link e a descrição.
  6. [Serviço REST - retorno em XML]  Crie uma interface de acesso ao serviço de imagens de mapa do Yahoo! (ver http://developer.yahoo.com/maps/rest/V1/). Este serviço permite o retorno da URL de uma imagem da posição no mapa de uma cidade, endereço, país, etc. Sua interface deve possuir, por exemplo, uma caixa de texto indicando a cidade que está sendo buscada. Também deve ter um botão de chamada ao serviço. Exemplo de chamada ao serviço: http://local.yahooapis.com/MapsService/V1/mapImage?appid=YD-4g6HBf0_JX0yq2IsdnV1Ne9JTpKxQ3Miew–&city=Curitiba. Dessa vez, você deverá exibir como resposta a imagem obtida.  Se preferir usar o serviço de mapas do Google, use o serviço disponível em: http://code.google.com/apis/maps/documentation/staticmaps/
  7. [Serviços JSON/JSONP] Crie um programa Web que acesse um dos serviços disponíveis na lista a seguir:  Sorteio de número aleatório - http://json-random.appjet.net/, Extração de informações sobrei imagens – http://img2json.appspot.com/,  Horário – http://json-time.appspot.com/, Informações do cabeçalho HTTP – http://json-head.appspot.com/,  Busca no Twitter – http://apiwiki.twitter.com/ Twitter-API-Documentation, Informações sobre url – http://bit.ly/docs,  Banco de dados simplificado – http://tinydb.org/, Yahoo Answers – http://developer.yahoo.com/answers/V1/questionSearch.html , Geonames – http://www.geonames.org/export/JSON-webservices.html,  Google Planilha – http://code.google.com/apis/gdata/samples/spreadsheet_sample.html, Google Agenda – http://code.google.com/apis/gdata/samples/cal_sample.html,  Yahoo! Artist Search – http://developer.yahoo.com/search/audio/V1/artistSearch.html

Aula 26 – Web Services

4 junho, 2009 (18:44) | aulas | Por: admin

Conforme nossos sistemas vão ficando cada vez mais complexos, percebe-se que a comunicação entre o servidor web e o cliente web é um dos fatores de maior preocupação no desenvolvimento de um sistema web.

Hoje vamos conhecer uma maneira de representar nosso servidor web de maneira leve e padronizada: no formato de web service.

Segue abaixo a apresentação referente à aula e exemplos:

Discover Simple, Private Sharing at Drop.io

Exemplo Web Service .Net

Exemplo Web Service Java (projeto no Eclipse)

Exemplo de chamada a serviço em .Net através do jQuery:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="jquery-1.3.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        function ok(result) {
            alert(result.d);
        }

        $(document).ready(function() {
            $("#btSomar").click(function() {
                $.ajax({
                type: "POST",
                contentType: "application/json; charset=utf-8",
                url: "Operacoes.asmx/Somar",
                // Usar http://code.google.com/p/jquery-json/ para codificações mais complexas!
                data: "{a:" + $("#a").val() + ",b:" + $("#b").val() + "}",
                dataType: "json",
                success: ok
                });
            });
        });
    </script>
</head>
<body>
    <form action="">
        <input type="text" id="a" name="a" />
        <input type="text" id="b" name="b" />
        <input type="button" id="btSomar" value="+"/>
    </form>

</body>
</html>

Entrega do Exercício F05 – Parte 2

3 junho, 2009 (19:54) | exercícios | Por: admin

A pasta de entrega da 2a parte do exercício F05 já foi criada lá no Eureka.

Entrega do Exercício F05 – Parte 1

29 maio, 2009 (15:55) | exercícios | Por: admin

Olá, pessoal,

Conforme combinado ontem, deixemos então a entrega do F05 em 2 partes.

A pasta de entrega da 1a parte já foi criada lá no Eureka.

pasta

Ferramenta: Glimmer – gerador de código jQuery

25 maio, 2009 (14:57) | notícias | Por: admin

glimmer

Glimmer é uma ferramenta de geração de código jQuery / HTML / CSS que elimina a necessidade de um conhecimento mais profundo da biblioteca para que se consiga a criar menus, animações e efeitos mais simples.

O download do utilitário pode ser feito em:

http://visitmix.com/lab/glimmer

Dicas para o Exercício F05 – Preenchendo campos

25 maio, 2009 (14:41) | dúvida | Por: admin

Pessoal,

Vai a seguir um exemplo sobre como você pode RECUPERAR os campos que preencheu anteriormente.

Esta dica será útil no momento que o usuário desejar modificar a sua proposta de velório.

Exemplo de projeto web

Respostas do F02

21 maio, 2009 (19:40) | Sem categoria | Por: admin

Exercício F05 – Proposta de Plano Pessoal Funerário

21 maio, 2009 (18:55) | exercícios | Por: admin

No exercício F02, item 5, você desenvolveu uma interface de proposta de plano funerário.Tal interface foi utilizada para calcular o custo de um plano funerário mensal. Seu objetivo no exercício de hoje é evoluir esta interface e permitir a persistência das propostas feitas.

Desta vez, ao fim da geração da proposta, você deve armazenar a proposta feita no Banco de Dados de sua escolha. Em outro momento, o usuário poderá retornar à proposta preenchida anteriormente se desejar para modificar seus dados, ou mesmo excluir a proposta feita sua proposta.

Após a finalização da proposta, o administrador do sistema pode acessá-la e conferir o custo gerado automaticamente para cada proposta  e os dados do usuário. Por segurança, um administrador também pode excluir uma proposta feita. Neste caso, ele deve fornecer o motivo do cancelamento e, da próxima vez que o usuário acessar o sistema, este motivo deve ficar claro.

Dica 1: mais alguns exemplos de acesso ao banco que podem ajudar você a resolver este problema.

Dica 2: Lembre-se: a interface gerada no exercício F02 era Web. Você deve continuar usando uma interface web. O acesso às classes de banco de dados será semelhante à abordagem que você usa para interfaces Windows Forms. Exemplo:


<%@ Page Language="C#"  %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%
SqlConnection conn = new System.Data.SqlClient.SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Temp\temp.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");

conn.Open();

System.Data.SqlClient.SqlCommand select = new SqlCommand("select * from t1", conn);

SqlDataReader dr = select.ExecuteReader();

while(dr.Read())

{

Response.Write(dr["id"].ToString() + " - " + dr["nome"].ToString() + "<br>");

}

conn.Close();

%>

Data de entrega: 29/05/2009

Novidade: Visual Studio 2010 Beta

21 maio, 2009 (09:22) | notícias | Por: admin

vs_mainlogoAcaba de ser liberada para download em geral a versão Beta 2010 da ferramenta Visual Studio.
Esta versão não deve ser usada para ambientes de produção, sendo destinada a testes e divulgação da ferramenta.
Dentre as principais novidades, destaco:

  • Nova IDE, baseada em WPF;
  • Suporte completo ao padrão CSS 2.1 na edição de código HTML/CSS;
  • jQuery instalado por padrão;
  • IntelliSense dinâmico para JavaScript;
  • Suporte à linguagem F#.

Mais informações e exemplos das novidades:

Opções de download:

Divulgação: Google Developer Day 2009 (29/junho/2009)

20 maio, 2009 (11:37) | outros | Por: admin

logoMais detalhes em:

http://googlebrasilblog.blogspot.com/2009/05/junte-se-nos-no-google-developer-day.html

http://code.google.com/intl/pt-BR/events/developerday/2009/home.html

Evento anual para desenvolvedores com palestras simultâneas sobre as ferramentas de desenvolvimento do Google: Android, Google App Engine, Google Web Toolkit, APIs Ajax e Google Maps.

Este ano o evento será no Sheraton São Paulo WTC Hotel na segunda-feira, dia 29 de junho.

Divulgação: BrGames 2009 (data limite: 25/6/2009)

20 maio, 2009 (11:12) | outros | Por: admin

brgames

brgames

Adaptado de: http://www.brgames2009.com.br/

O BRGAMES é um Programa da Secretaria do Audiovisual do Ministério da Cultura, Secretaria de Políticas Culturais do Ministério da Cultura e Sociedade Brasileira para Promoção da Exportação de Software – SOFTEX, que tem o apoio institucional do Festival Internacional de Linguagem Eletrônica – FILE e da Associação Brasileira das Desenvolvedoras de Jogos Eletrônicos – Abragames.

O BRGAMES oferece oportunidade de inscrição para pessoas físicas e jurídicas em dois tipos de categoria:

Pessoas físicas: Deve ser o autor de 1 (um) PROJETO INÉDITO E ORIGINAL de demo jogável (cada pessoa física poderá inscrever-se somente com um projeto) e possuir, no mínimo, 18 (dezoito) anos de idade; devem também ter residência comprovada no Brasil há pelo menos 02 (dois) anos. Os contemplados deverão associar-se a uma empresa produtora, que será apresentada / considerada co-produtora do projeto de demo jogável selecionado.

Empresas Estruturadas: Devem ser empresas brasileiras de desenvolvimento de jogos eletrônicos que já tenham publicado comercialmente, no mínimo, 01 (um) jogo eletrônico. Cada empresa poderá inscrever-se somente com 1 (um) projeto.

Quantos participantes serão premiados:

  • 07 (sete) PESSOAS FÍSICAS desenvolvedoras de jogos eletrônicos em co-produção com empresas desenvolvedoras de jogos eletrônicos;
  • 03 (três) EMPRESAS ESTRUTURADAS de desenvolvimento de jogos eletrônicos.

Quais serão os prêmios:

Cada PESSOA FÍSICA premiada ganhará um contrato de co-produção no valor de R$ 70.000,00 (setenta mil reais).

Cada EMPRESA ESTRUTURADA ganhará um contrato de co-produção no valor de R$ 140.000,00 (cento e quarenta mil reais).

Aula 20 – Exercício O03 – Parametrização de comandos SQL

14 maio, 2009 (19:05) | exercícios | Por: admin

Na aula passada, verificamos como criar uma conexão com o banco de dados e como executar comandos em seu banco.
Seu objetivo no exercício de hoje é, baseando-se no modelo passado (projeto, / bd), implementar os seguintes itens
1) Criar uma tabela que represente um conjunto de contatos de uma agenda de contatos.
2) Implemente, em Windows Forms, uma interface de gerenciamento de contatos que permita as seguintes funcionalidades:
* Listagem dos contatos;
* Inserção de contatos;
* Exclusão de contatos;
* Edição de contatos.
3) Não se preocupe com validações e com a organização de suas classes. Seu principal objetivo hoje é trabalhar com parâmetros em seus comandos SQL;
4) Entregue este exercício via Correio do Eureka com o título “Exercício O03″.
5) IMPORTANTE: na entrega, EXCLUA os arquivos contidos dentro da pasta bin de seu projeto.

Oks,
Bruno

Arquivo de Banco de Dados gerado na aula anterior

9 maio, 2009 (09:17) | Sem categoria | Por: admin

Na aula de hoje, continuaremos nosso trabalho com banco de dados na plataforma .Net.
Para continuar este trabalho, comece fazendo o download do arquivo de banco de dados gerado na aula passada.

Se você salvar este arquivo na pasta TEMP, sua string de conexão será:
Data Source=.\SQLEXPRESS;AttachDbFilename=C:\temp\BDPessoas.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True

Aula 18 – BD em SQL Server

7 maio, 2009 (18:53) | Sem categoria | Por: admin

Notas da Prova 01! Favor Conferir!

5 maio, 2009 (16:06) | Sem categoria | Por: admin

Segue link:
http://spreadsheets.google.com/ccc?key=rgsVJ2tHzDhPKd_otL0waxw

Notas de exercícios / trabalhos só nesta quinta-feira. sábado.

Atividade de Recuperação

30 abril, 2009 (21:08) | Sem categoria | Por: admin

Olá, pessoal,

As notas finais serão enviadas para vocês na próxima terça-feira, dia 5.
Para ajudar quem considera que não foi bem em sua prova, considere a seguinte tarefa de recuperação. Seu envio, até quinta-feira pela manhã, soma o valor de 2 pontos na sua prova.
1) Escolha um código abaixo cuja primeira letra seja a primeira letra de seu nome:

sut, gcl, tke, hrv, uyo, ihg, voy, jvq, wei, klb, xss, lbl, yid, mpv, bxn, ofg, cmx, puq, dci, qjb, ers, ryl, fgd, sov, gvn, tdg, hlx, usq, iai, via, jps, xwk, lfd, ymu, mtn, acf, njx, bqp, oyi, cga, pns, dvk, qdd, eku, rsn, faf, shx, hpp, uwh, iea, vmr, jtk, wbc, kju, xqm, lxf, ygw, mnp, auh, nda, bkr, ork, cac, phu, eom, rwf, few, slp, gth, tby, hir, uqj, ixc, vft, jnm, wue, kcw, xko, lrh, yyy, nhr, boj, ovc, cet, plm, dse, qbw, eio, rpg, fxy, sfq, gmj, tub, hct, ujl, ire, vyv, kgo, xog, lvy, ydq, mlj, asb, nat, bil, ope, cwv, pfn, dmg, qtx, ecq, rji, frb, tys, hgl, uod, ivv, vdn, jlg, wsx, kaq, xii, lpb, yws, mfl, amd, ntv, bcn, ojf, cqx, qyp, egi, rna, fvs, sdk, gkd, tsu, han, uhf, ipx, vwp, jei, wma, kts, xbk, ljd, aqu, nxm, bgf, onw, cup, pdh, dka, qrr, eak, rhc, fou, swm, gef, tlw, htp, ubh, iia, wqr, kxk, xfc, lnu, yum, mce, akw, nro, byh, ohy, cor, pvj, dec, qlt, esm, rbe, giw, tpo, hxh, ufy, imr, vuj, jcc, wjt, krl, xye, lgv, yoo, mvg, ady, nlq, bsj, oab, dit, qpl, ewe, rfv.

2) Faça o download do gerador de exercícios a seguir.
Gerador de Exercícios

3) Envie sua resposta no link a seguir:
http://spreadsheets.google.com/viewform?formkey=cm0xUnlUOWJYUGxia1JSNTh3UDUxVVE6MA..

Apresentação do trabalho no Sábado (25/4)

23 abril, 2009 (14:05) | outros | Por: admin

Observem que apenas os alunos que entregarem seu projeto até 15:00h de amanhã (24/4) poderão apresentar seu projeto.
Já criei uma pasta no Eureka dedicada a esta entrega.

Junto com seus arquivos não esqueça de entregar seu executável também. Importante: programas que não executam não serão corrigidos!

Leia mais »

Critérios de Correção – Exercício F03

23 abril, 2009 (13:53) | outros | Por: admin

Turma,

Para deixar transparente a correção do exercício no Sábado gerei uma planilha com os critérios que serão aplicados.
Observe que tem maior peso os temas que mais trabalhamos ou que geraram mais dúvidas.

Para simular sua possível nota, faça o download da planilha que será utilizada para correção.

Abaixo, a planilha para visualização rápida.

Escala da Prova 01

23 abril, 2009 (11:08) | outros | Por: admin

Pessoal,

Segue escala da prova de hoje.
Por favor, tentem chegar cinco minutos antes do horário indicado!
A prova será focada em Windows Forms.

Dicas rápidas – ExF03 – Drag & Drop de imagem em Windows Forms

22 abril, 2009 (14:43) | dúvida | Por: admin

Pode ser interessante exibir uma imagem ao invés do cursor padrão do mouse.
Para isso, é necessário trocar o cursor através da propriedade Cursor.Current e, no evento GiveFeedback do drop target impedir a exibição dos cursores padrão ( e.UseDefaultCursors = false).
Dê uma olhada no exemplo em anexo.

Dicas rápidas – ExF03 – Drag & Drop em jQuery

22 abril, 2009 (12:57) | dúvida | Por: admin

Na aula sobre drag e drop também apresentei exemplos de drag e drop em jQuery.

Veja o exemplo que coloquei na aula 13:
http://www.brunocampagnolo.com/2009tp/2009/04/02/aula-13-dicas-para-o-exercicio-f03-drag-drop/

Link direto para o exemplo:
http://www.brunocampagnolo.com/2009tp/wp-content/uploads/2009/04/exemplosdragedrop.zip

Observe que se for necessário clonar um objeto, será necessária a criação do draggable com esta opção:


$(".myDrag").draggable({helper: 'clone' }); 

A seguir, em anexo e no jsbin,


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/themes/base/jquery-ui.css" type="text/css" />
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/jquery-ui.min.js"></script>
    <title></title>

    <style type="text/css">
        .myDrag
        {
           background: red;
           border: 2px black solid;
           width: 200px;
           font-size: xx-large;
        }
        .myDrop
        {

           background: green;
           border: 2px black solid;
           width: 400px;
           height: 100px;
           font-size: xx-large;

        }
        .jahArrastado {
           background: blue;
           border: 2px black solid;
           width: 200px;
           font-size: xx-large;
        }
    </style>
    <script type="text/javascript">
        $(document).ready(function() {
            // Transforma em um elemento arrastável
            $(".myDrag").draggable({helper: 'clone' });
            // Transforma em um elemento foco de drop
            $("#drop1").droppable({

                // Chama a função quando terminar o arrastar
                drop: function(event, ui) {

                    // Se já tiver sido arrastado anteriormente,
                    if(!$(ui.draggable).hasClass("jahArrastado"))
                    {
                      // Obtém a posição que o elemento foi arrastado
                      var x = ui.position.left;
                      var y = ui.position.top;
                      // Clona o elemento
                      var m = $(ui.draggable).clone();
                      m.css("position", "absolute");
                      m.css("left",x);
                      m.css("top",y);
                      m.attr("class", "jahArrastado");
                      m.html("Jah fui arrastado!");
                      // Altera o elemento arrastado para um elemento que não
                      // pode ser arrastado
                      m.draggable({helper: 'original'});
                      // Adiciona ao container
                      $(this).append(m);

                    }

                }
            });
            $("#lixeira").droppable({
              drop: function(event, ui) {
                // Só elementos arrastados podem ser removidos
                if($(ui.draggable).hasClass("jahArrastado"))
                {
                  $(ui.draggable).remove();
                }

              }
            });

        });
    </script>
</head>
<body>
<div class="myDrag" id="drag1">Posso ser arrastado!</div>
<div class="myDrop" id="drop1">Arraste algo aqui!</div>
<div class="myDrop" id="lixeira">Lixeira</div>
</body>
</html>

Dicas rápidas – ExF03 – ListBox

20 abril, 2009 (16:55) | dúvida | Por: admin

Em seu exercício, você precisa gerenciar uma lista de convidados. Uma ideia simples é utilizar uma caixa de listagem (listbox) para exibir esta lista de convidados e permitir sua reordenação.
Dê uma olhada na documentação que relacionei à listbox e também nos exemplos de uso de cada componente.

Para facilitar, também coloquei um exemplo em anexo relacionado à reordenação dos itens da lista.