5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 1/51
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 2/51
Fale com Editor
É muito importante para a equipesaber a sua opinião sobre arevista, caso tenha alguma critica,sugestão, ou elogio entre emcontato.
Caso tenha interesse em publicar um artigo na revista envie o títuloe um resumo do tema em formatoWord.
EDITOR RESPONSÁVEL
Cleber Dantas
REVISÃO
Sara Barbosa
Sérgio “Ganso” Gonçalves
EDITORAÇÃO E DIAGRAMAÇÃO
Erick Lopes
Sara Barbosa
Sérgio “Ganso” Gonçalves
CAPA
Erick Lopes
COLUNISTAS
Alexandre Tarifa
Emerson Facunte
Luciano Palma
Rodolfo Roim
COLABORADORES
Anderson Castro
Comunidade
Crisano Joaquim
Ítalo Chesley
Karoline Maria Xavier Leite
Ricardo Alves
Produzido por:
www.codificando.net
Edição 20 Número 20 Ano 05 2011
Sumário
Por: Cleber Dantas
03 :. Editorial
Por: Luciano Palma04 :. Coluna: Cultura XXI
Por: Rodolfo Roim
06 :. Coluna: Comunidade
Por: Emerson Facunte
08 :. Coluna: Gadgets
Por: Cristiano Joaquim
16 :. Novidades no SQL Server Codinome DENALI
Por: Ricardo Alves
22 :. xRM, Dynamics CRM como plataforma de
Por: Ítalo Chesley
30 :. Trabalhando com POCO utilizando Entity Framework
Por: Comunidade
34 :. MCTS SharePoint 2010 - Configuration (Exam 70-667)
Por: KAROLINE MARIA XAVIER LEITE
38 :. Testes de software de ambientes virtuais de aprendizagem
Por: Anderson Castro
43 :. SketchFlow - Prototipagem com o Expression Blend
Por: Alexandre Tarifa
51 :. Coluna: .Close()
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 3/51
Cleber Dantas
Editor Respons{vel Email: [email protected]: @cleberdantas
Essa edição da revista Codicando e-Magazine vem recheada de conteúdo interessante, para aqueles quenão conhecem a plataforma Dynamics CRM da Microsoft aqui esta uma boa oportunidade de car pordentro.
Essa edição conta também com um artigo bem bacana sobre o próximo SQL Server que possui o codinomeDenali, ainda falando de acesso a dados temos um artigo que mostra a utilização de POCO no EntityFramework.
J{ precisou prototipar sites? É dicil? F{cil? J{ ouviu falar do SketchFlow da Família Expresion? Ele teajudar{ e muito nessa etapa de seus projetos.
SharePoint, não esquecemos dele e dessa vez trouxemos algumas dicas muito úteis para quem quer passarno exame 70-667.
E por último, mas não menos importante essa edição conta com um artigo do meio academico muitorelevante sobre testes de software em ambientes virtuais de aprendizagem (AVA), não deixe de ler.
Essa edição tem a estréia de mais dois colunistas: Emerson Facunte com sua coluna Gadgets e Rodolfo Roime sua coluna Comunidade. Alexandre Tarifa e Luciano Palma completam o time de colunistas de nossarevista.
Espero que todos tenhão uma ótima leitura e que o conteúdo aqui presente possa ser de grande valia.
Abraços,
Editorial
Edição 20 Número 20 Ano 05 2011
EDI
TORIAL
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 4/51
www.codificandomagazine.com.br
Codifi
cando.nete-magazine
e-magazine
4 Fev / Mar - 2011 |
Coluna: Cultura XXI
Luciano Palma é Palestrante eConsultor Estratégico de Redes
Sociais, Novas Mídias eTecnologia.
Trabalhou mais de 8 anos naMicrosoft do Brasil comoConsultor e Evangelista
Técnico, com a função de manteruma Comunidade de
Influenciadores energizada eatualizada sobre as últimastecnologias. Desde 2006 foi
palestrante do Tech Ed Brasil,tendo realizado 9 palestras em 4
edições.
Você pode acompanhar suas
atividades pelo Blog (http://lpalma.com) ou peloTwitter (@lucianopalma)
O brasileiro cresce acostumado a ouvir a palavra crise. Criseeconômica, crise na educação, crise do sistema de saúde, crisenanceira...
Só que a nossa maior crise, e talvez a mãe de todas as outras,é a crise da ética e da moral.
A "Lei de Gérson" continua em vigor, e muitos ainda seorgulham ao colocar em pr{tica o "jeitinho".
A posição mais cômoda para justicar a passividade emrelação a esta crise é dizer que não se pode fazer nada, porque"uma andorinha só não faz verão". A obrigação é transferidapara "os outros", seja l{ quem eles forem. Ou não forem...
Só que os tempos mudaram. Somos andorinhas conectadaspela Internet, e portanto é só querermos e estamos em bando.Hoje temos celulares | nossa disposição, que podemfuncionar como uma visão distribuída e quase onipresente.
Vejamos o caso dos ciclistas em Porto Alegre. Cerca de 100pessoas do grupo "massa crítica" realizavam um passeiovisando estimular o uso da bicicleta como meio de transporte.Um motorista com pressa, em seu Golf preto com rodas
esportivas, decidiu que queria passar pela rua ocupada pelogrupo. Irritado, acelerou sobre os ciclistas de forma assassina,mandando muitos para o hospital.
No s{bado em que isso ocorreu, os jornais locais noticiaramum "acidente" causado pelos ciclistas, que não avisaram osórgãos respons{veis sobre o passeio - agredindo assim odireito de ir e vir do tal motorista.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 5/51
www.codificandomagazine.com.br
Codifi
cando.nete-magazine
e-magazine
5 Fev / Mar - 2011 |
Coluna: Cultura XXI
Se você também achou essa "inversão de papéis" estranha, é mais um indício quealguma "inuência estranha" teria entrado em ação...
E é justamente aí que entramos nós, andorinhas conectadas.
Alguns presentes no local lmaram a cena com seus celulares, produzindo provasirrefut{veis da atitude covarde e desumana do #motoristaassassino (como a pessoacou "conhecida" no Twier). Esses vídeos foram parar na Internet - veja um deles, quemostra o atropelamento em 0:57: hp://tinyurl.com/motoristaassassino.
Depois disso, os meios de comunicação de massa, sob risco de perder a credibilidade,tiveram que publicar uma versão mais realista da história.
Tudo começou com UM celular e uma conexão | Internet. E hoje o Brasil inteiro (e omundo) sabe a verdade sobre este acontecimento. Começou com UMA andorinha...
Podemos seguir este exemplo para reconquistar nossa cidadania, utilizando atecnologia para construir uma sociedade melhor e garantir uma convivência maissaud{vel.
Viu um "espertinho" que tampa parte da placa para evitar multas? Saque o celular, tirea foto e mande para a Polícia! Você pode evitar crimes com um gesto simples assim. Se usarmos os recursos que temos | mão para nos "auto-policiarmos", estaremoscoibindo o "jeitinho" e construindo um país um pouco mais justo e ético.
Você acredita?
Mais sobre o colunista:
Professor do curso de pós-graduação do SENAC (Web: Estratégias de Inovação
e Tecnologia), ministra disciplinas envolvendo Hipermídia, Sistemas Virtuais e
Comércio Eletrônico.
Ministrou também a disciplina "Redes Sociais, a Inovação Digital e suas Mídias" no
curso de MBA da Faculdade Impacta: Planejamento e Estratégia de Negócios com Suporte da TI.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 6/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
6 Fev / Mar - 2011 |
Coluna: Comunidade
Rodolfo Roim
Rodolfo é formado em Ciência daComputação, com pós-graduaçãoem Engenharia de Software eAdministração de Empresas.Trabalho na Microsoft como MVPLead por 3 anos e hoje éconsultor SharePoint na AvanadeBrasil.
Blog: http://rodolfo.roim.com.brTwitter: @rodolforoim
A ideia dessa coluna, bem como seu convite, partiu de umapessoa a quem tenho grande respeito e apreço: AlexandreTarifa. Em nossa conversa - que não durou muito até que euaceitasse o convite de ser colunista da Codicando.NETMagazine - ele me pediu para compartilhar um pouco domeu conhecimento sobre comunidade.
Imagine você, eu, falando de comunidades, a pedido doAlexandre Tarifa, para o Codicando.NET! Tem como rejeitaresse convite? Depois de honrosamente ter aceitado o convite,quei pensando em como poderia agregar | Codicando.NETMagazine, que sempre fui incentivador (e leitor, claro),considerando sua qualidade e seu modelo.
Pois bem, meu propósito com essa coluna é dividir com vocêso que eu conheci e convivi nas comunidades técnicas, duranteo tempo que trabalhei na Microsoft, { frente do ProgramaMVP, pois como vocês bem sabem, o Programa MVP é umreconhecimento aos maiores expoentes das comunidadesMicrosoft.
Enquanto eu estiver | frente dessa coluna vou dividir minhavisão sobre as comunidades, a import}ncia que ela tem para aMicrosoft e, sobretudo, a import}ncia e o diferencial na vida
das pessoas que delas fazem parte. Nesse ponto vou tomar aliberdade de citar alguns exemplos e, quem sabe, citar "casosde sucesso" produzidos na comunidade.
Outro assunto um tanto polêmico, mas igualmenteimportante é a dicotomia: contribuição volunt{ria versusreconhecimento (e remuneração). Esse é um assunto que faleimuito em minhas palestras sobre o Programa MVP, sobrecomunidades e inclusive, em v{rias reuniões que tive dentro
da Microsoft.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 7/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
7 Fev / Mar - 2011 |
Coluna: Comunidade
Por m, mas não menos importante - ali{s, de grande import}ncia - vou discorrer sobre
o Programa Microsoft MVP, onde tive a felicidade de trabalhar por 3 anos, aprender e
entender porquê uma empresa como a Microsoft - e algumas outras, que as vezes não
chegam ao conhecimento das pessoas - investem grandes somas em um programa de
inuenciadores, entusiastas e not{veis, formando a mais colenda comunidade de
prossionais de tecnologia Microsoft.
Enm, como podem ver, meu objetivo - e espero que atenda a expectativa dos éis
leitores da Codicando.NET Magazine - é dividir toda a vivência que tive com as
comunidades, na maior empresa de software do mundo. Aproveito para pedir o
feedback de vocês - que poder{ ser feito através do meu blog - sobre o conteúdo dessa
coluna e me ajudem a melhora-la sempre, anal de contas, é isso que move as
comunidades: COLABORAÇÃO.
Rodolfo
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 8/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
8 Fev / Mar - 2011 |
Coluna: Gadgets
Emerson Facunte
Arquiteto de Software daSaraiva.COM;Professor Ciência da ComputaçãoUNIP;Professor Pós-GraduaçãoEngenharia de Software UNIP;Entusiasta de aplicações e-business;10 livros e mais de 120 artigospublicados;Ministrei palestras, cursos eworkshops para cerca de 25.000pessoas;Membro fundador do DUG-BR;Lider do grupo Codificando.Net.
Atualmente estudo novas mídias,
marketing de relacionamento ecomportamento social.
Estou numa fase de novaspossibilidades musicais e curtindomuito os desafios do XBOX 360.
Mantém o bloghttp://www.facunte.com.br
eReaders
O h{bito da leitura eleva o nível de sabedoria e despertanosso lado criativo. O grande ponto da leitura é o prazer dedescobrir, de experimentar, enriquecer os neurônios. Tem que
ter prazer e não simplesmente o ato mec}nico da leitura.
Leio de tudo, desde fórmulas de shampoos, passando porliteratura nacional e até mesmo roteiros inacabados de lmese séries internacionais. Ler me d{ conforto, estimula meucérebro, distrai meus pensamentos.
Tenho enorme necessidade da leitura e por sorte trabalhonuma empresa que respira conhecimento e transpira
sabedoria: Saraiva.COM. A sorte é estendida por conta deminha função: agregar valor e oferecer serviços aos maisdiversos gadgets do mercado.
Nos últimos anos trabalhamos com pesquisa edesenvolvimento de soluções para eReaders e quei muitosatisfeito com o níveis destes gadgets.
Neste artigo irei avaliar os principais dispositivos do mercado(Kindle, Positivo Alfa, iPad e Samsung Galaxy). O iPad e oGalaxy são tablets que agregam diversas funcionalidades,porém apenas suas características de eReaders serãoavalidadas.
AMAZON KINDLE
O Kindle possui 3 diferentes versões: DX, WiFi e 3G. A versãoavaliada neste artigo é a 3G (hp://amzn.to/fNYLAu) comsuporte gratuito ao serviço 3G em diversos estados
brasileiros.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 9/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
9 Fev / Mar - 2011 |
Coluna: Gadgets
H{ botões para avançar/retroceder p{ginas, ir ao meuprincipal, ir a tela inicial,ajustes de fontes e símbolos,além de um teclado no padrãoQWERTY.
Você pode marcar trechos dotexto para uma busca futura.Outra possibilidade é fazeranotações deste trecho (bompara estudos).
Com tecnologia eInk seudisplay torna agrad{vel aleitura de textos durante horas. O ponto negativo ca por conta da falta deretroiluminação. Para quem est{ acostumado com leitura no escuro, ter{ a mesmapercepção de um livro comum, onde h{ necessidade de iluminação articial paraleitura.
Em São Paulo o serviço 3G funcionou muito bem. Baixei a última edição do jornal ‚OGlobo‛e também alguns samples de cção. Para samples não h{ custo de 3G; para osdemais a taxa j{ est{ inclusa.
A equipe técnica do jornal ‚O Globo‛ que produz a versão para Kindle merece aplausospela forte evolução na diagramação. No inicio de 2010 eu havia testado a leitura do
jornal e observei diversos problemas na diagramação. Parecia uma simples conversãode arquivo onde guras ultrapassavam margem, textos não uíam no layout, entreoutros pontos. A versão atual corrige todos os problemas citados e d{ impressão de serproduzida exclusivamente para o dispositivo.
O Kindle não aceita formato Adobe DRM, inviabilizando a leitura da maioria dostítulos comercializados por aqui.
A versão avaliada custa US$ 409,00 com impostos e frete, equivalente a R$ 679,00(cotação do dólar comercial em 08/03/2011), mas o governo brasileiro est{ estudando
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 10/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
10 Fev / Mar - 2011 |
Coluna: Gadgets
propostas para classicar este tipo de gadget como livro, de maneira a reduzir ou atémesmo zerar os impostos.
POSITIVO ALFA
A Positivo trouxe para o nosso mercado umdispositivo bem resolvido, batizando-o de
Positivo Alfa.
O Alfa me surpreendeu com a qualidade dedisplay semelhante a primeira geração do Kindle.Com seus 16 tons de cinza apresenta imagenscom boa resolução e fontes agrad{veis paraleitura. Além de função touchscreen, oferecendo maior
interatividade ao usu{rio, bem como redução detamanho do dispositivo.
Prós Contras Display excelente para leitura Durabilidade da bateria Peso Comandos simples Enorme diversidade livros Conexões WiFi e 3G Jornais em Português
Sem retroiluminação Não aceita documentos no padrão Adobe
DRM Pouca variedade de títulos em português Não h{ suporte técnico no Brasil
Avaliação técnica Display 3,9 Ergonomia 4,5 Peso 4,5 Duração bateria 5,0 Funções 4,0 Compatibilidade documentos 3,0 Media 4,1
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 11/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
11 Fev / Mar - 2011 |
Coluna: Gadgets
Na ausência de um teclado físico, qualquer interatividade é realizada por meio de seuteclado virtual. Assim como as trocas de p{ginas que funcionam com simplesmovimento semelhante a de um livro real, ou simplesmente duplo clique para avançarou retroceder.
Outro ponto positivo do Alfa é o recurso de dicion{rio para qualquer tipo dedocumento. Basta clicar no menu, selecionar a palavra e aguardar a riquíssima gama deinformações provenientes do dicion{rio Aurélio.
Achei um pouco lenta a busca, porém não é um recurso que você utilizar{ a todomomento.
Seu processador é lento e trava frequentemente com textos longos. É preciso terpaciência para leitura de determinados documentos, como títulos jurídicos ou commuitas imagens.
Em contrapartida aceita documentos no padrão Adobe DRM com milhares de títulosem português, além de inúmeros livros de domínio público. Com isso você temindependência comercial para adquirir livros na loja de sua preferencia.
O Alfa possui tecnologia WiFi para acesso a Internet e disponibiliza uma p{ginaespecial com sites parceiros na comercialização de livros digitais.
O produto é comercializado por R$ 659,00 e pode ser encontrado nos principais
comércios varejistas. Prós Contras Display excelente para leitura Durabilidade da bateria Peso Comandos simples Compatibilidade com documentos padrão
Adobe DRM Dicion{rio em Português Conexão WiFi Suporte no Brasil
Sem retroiluminação Processador lento Travamentos com documentos técnicos
(grande número de p{ginas e imagens).
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 12/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
12 Fev / Mar - 2011 |
Coluna: Gadgets
IPAD
O iPAd possui versões com ou sem 3G (todos com WiFi) e memórias que partem de16GB até 64GB.
No papel de tablet não tenho dúvidas sobre sua soberania, mas como eReader h{ pontosnegativos que preocupam leitores ‚compulsivos‛ como eu.
Seu excelente display com tamanho generoso e brilho intenso, torna-se cansativo após 2horas de leitura. Além disso seu peso (quase 700 grs) est{ muito acima de seusconcorrentes (240grs). Tente segurar um dispositivo com quase 700grs por mais de 2horas.A compatibilidade com documentos no formato Adobe DRM, além de outros formatos(ePub, Doc, txt, Amazon, etc) deve ser levado em consideração. É um dos poucos
gadgets com contrato com a Amazon. Assim você tem completa independência deformatos. Com preços a partir de R$ 1.399,00, é uma boa opção para o mercado nacional.
Avaliação técnica Display 3,2 Ergonomia 3,8 Peso 4,2 Duração bateria 4,0 Funções 3,4 Compatibilidade documentos 3,8 Media 3,7
Prós Contras Display com retroiluminação Compatibilidade com documentos padrão
Adobe DRM, Amazon, DOC, Txt, etc, Diversos aplicativos para leitura de
documentos Conexão WiFi e 3G
Suporte no Brasil
Display cansativo para leituras longaduração (2 ou mais horas)
Peso Durabilidade da bateria Preço
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 13/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
13 Fev / Mar - 2011 |
Coluna: Gadgets
SAMSUNG GALAXY
O Samsung Galaxy chegou pra incendiar o mercado de tablets, mas ainda tem umlongo caminho pra ganhar maturidade.
Assim como o iPad, possui excelente display com tamanho generoso e brilho intenso,carregando os mesmos problemas apontados em seu concorrente.
Embora possua processador superior ao iPad, não demonstrou isso na pr{tica. Emdocumentos mais pesados, apresentou comportamento semelhante ao Positivo Alfa.Com travamentos e longo tempo na troca de p{ginas.
Com o valor de R$ 1.739,00, pode dar trabalho ao iPad e ponto.
Avaliação técnica Display 3,8 Ergonomia 3,5 Peso 3,0 Duração bateria 3,3 Funções 4,2 Compatibilidade documentos 5,0 Media 3,8
Prós Contras Display com retroiluminação Compatibilidade com documentos padrão
Adobe DRM Diversos aplicativos para leitura de
documentos Suporte no Brasil
Display cansativo para leituras longaduração (2 ou mais horas)
Peso Durabilidade da bateria Preço
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 14/51
www.codificandomagazine.com.br
Codificando.nete-magazine
e-magazine
14 Fev / Mar - 2011 |
Coluna: Gadgets
Amigos, se a Amazon liberasse o formato Adobe DRM, não teria dúvidas em minhaopção de eReader. Em contrapartida os tablets não me agradam nesta função. E por mo Alfa tem travamentos demais e processador lento para algumas funções.
Avaliem suas necessidades e façam boa escolha.
“Meus lhos terão computadores, sim, mas antes terão livros. Sem livros, sem leitura, os nossos lhos serão incapazes de escrever - inclusive a sua própria história.“
Bill Gates
Avaliação técnica Display 3,0 Ergonomia 3,8 Peso 4,2 Duração bateria 3,5 Funções 4,0 Compatibilidade documentos 3,9 Media 3,7
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 15/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 15
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 16/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 16
Novidades no SQL Server
Codinome DENALI
Em Novembro de 2010 a Microsoft lançouo CTP1 (Community Technical Preview)da próxima versão do SQL Server com oCodinome ‚Denali‛.
Como sempre, junto de mais uma versãosempre temos melhorias, assim como noexemplo da Versão do SQL Server 2000para 2005, da versão 2005 para 2008 e destapara a última versão, SQL Server 2008 R2.
Na versão 2005 do SQL Server 2005,muitas novidades apareceram comomelhorias nas Ferramentas SQL ServerAnalisys Services (SSAS), SQL ServerReporting Services (SSRS) e o lançamentodo SQL Server Integration Services, quesubstitui o velho DTS (DataTransformation Services) e de l{ para c{,muitas outras melhorias ocorreram, o que
não poderia ser diferente neste CTP1disponibilizado pela Microsoft.
O SQL Server Codinome ‚Denali‛ CTP1também tr{s melhorias, sendo as quais ireiapresentar agora.
A versão do SQL Server Codinome
‚Denali‛ est{ disponível para
Downloads no seguinte Link: hp://
www.microsoft.com/downloads/en/
details.aspx?FamilyID=6a04f16f-f6be-
4f92-9c92-f7e5677d91f9&displaylang=en
(acessado em 08/03/2011).
Abaixo, veremos o que foi aprimorado
nesta versão CTP.
Novidades na instalação do SQL
Server
SQL Server Multi-Subnet Clustering:
Novidade nesta versão, agora ser{
possível congurar um Cluster de
Failover do SQL Server usando nós
agrupados em sub-redes diferentes.
Por: Crisano Joaquim
Figura 1 - Tela Principal do SQL Server Code-Named “Denali”
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 17/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 17
Como pré-requisitos de instalação do
Setup do SQL Server: Power Shell 2.0,
.NET Framework 3.5 SP1 são requeridos
até o momento para esta versão do SQLServer, sendo necess{rio seu Download
e instalação . Todos os outros pré-
requisitos exigidos serão instalados pelo
Setup do SQL Server depois que for
selecionado os recursos e congurações
na etapa inicial de Instalação. O pacote
do .NET Framework 4.0 não é um pré-
requisito para a instalação do SQLServer ‚Denali‛, porém, est{ incluído no
Windows 7 SP1 e Windows Server 2008
R2 SP1.
Database Engine
Esta versão do SQL Server Database
Engine introduz novos recursos e
aprimoramentos que aumentam o podere produtividade dos arquitetos,
desenvolvedores e DBAs para
projetarem, desenvolverem e manterem
seus Bancos de Dados. Abaixo, as {reas
em que o Database Engine foi
aprimorado:
Melhorias de disponibilidade:Inclusão do HADR, como solução
para melhorar a disponibilidade
das bases de dados em ambiente
corporativo. O HADR é uma
solução de alta disponibilidade
para recuperação de desastres, a
m de maximizar a disponibilidade
de um ou mais bancos de dados.Ao ser implantado, o HADR
poder{ congurar um ou mais
A ilustração abaixo representa um local
com 2 Nós e outro com 2 sub-cluster do
SQL Server
O Multi-Subnet Failover Cluster é um
aperfeiçoamento de uma tecnologia j{
existente no SQL Server 2008 e WindowsServer 2008 para dispersão geogr{ca de
clusters Failover, permitindo ‚esticar‛
um cluster em múltiplos data centers
para fornecer um nível maior de
disponibilidade e proteção de dados.
No SQL Server ‚Denali‛, esta
conguração permite usar um cluster
Failover em v{rias sub-redes, sendo
disponível tanto para geo-clusters
quanto para clusters locais, eliminando a
exigência de uma VLAN e permitindo
que o cluster que online enquanto é
capaz de se ligar a qualquer endereço.
Contudo, este ser{ estudo a ser
apresentado em um próximo artigo.
Novidades no SQL Server Codinome DENALI
Figura 2 - Representação Clustering
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 18/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 18
Breakpoints em Transact-SQL,
suportando funcionalidades como
Condição de Interrupção em uma
Expressão, cujas avaliaçãodetermina se o ponto de
interrupção for invocada;
Contagem de ocorrências
Breakpoints, especicando o
número de vezes que um
breakpoint é encontrado antes de
ser chamado; Filtro de interrupção, que limita o
ponto de interrupção em
computadores especícos,
processos ou Threads;
Personalização de Pontos de
Interrupção, que pode ser
executado quando o ponto deinterrupção for chamado;
Janelas de Quick Watch que
suportam expressões Transact-
SQL;
Quando se move o cursor sobre um
Transact-SQL, um Pop-up Quick
Info exibe o nome da Expressão eseu valor;
Transact-SQL IntelliSense que
introduz os novos recursos:
Validação de Breakpoint, que evita
estabelecer um ponto de
interrupção em um local inv{lido.
Trechos de código Transact-SQL
como modelos que podemos usar
grupos de disponibilidade, onde
cada grupo pode estabelecer um
contexto em um conjunto de base
de dados selecionados, envolvendoréplicas de disponibilidade, sendo
que cada réplica possui uma cópia
local de cada uma das bases de
dados. Nessas réplicas, chamadas
de ‚réplicas prim{rias‛, cam
mantidas uma cópia de cada banco
de dados. Esta réplica faz os bancos
de dados prim{rios,disponibilizarem acessos de leitura
e gravação para os usu{rios. Para
cada banco de dados prim{rio,
outra réplica secund{ria é criada,
mantendo uma cópia de Failover
do banco de Dados sendo chamada
de banco de dados secund{rio. No
momento, este CTP do SQL ServerCodinome ‚Denali‛ suporte apenas
uma réplica assíncrona de bases
secund{rias.
Melhorias no gerenciamento: O
SQL Server Management Studio
apresenta as seguintes
característica nesta versão CTP1:
O Editor EngineQuery traz
funcionalidades aprimoradas para
a Transact-SQL e a depuração
IntelliSense, sendo:
Depuração de Scripts Transact-SQL
em execução nas inst}ncias do SQL
Server 2005 SP2 ou posterior;
Novidades no SQL Server Codinome DENALI
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 19/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 19
Implementação de paginação em
consultas Ad-hoc, onde ser{
possível especicar um intervalo
de linhas a serem retornadas poruma instrução SELECT com base
na linha em um ROW OFFSET e
ROW COUNT VALUES que
fornecermos. Isto ser{ útil quando
quisermos controlar o número de
linhas enviadas para um aplicativo
cliente em uma determinada
consulta.
Uso de SEQUENCES, assim como
em Bancos de Dados como
ORACLE de DB2, no SQL Server
‚Denali‛ ser{ possível utilizarmos
SEQUENCES para gerarmos
valores numéricos de acordo com
as especicações que a SEQUENCEfoi criada, operando de forma
semelhante a uma coluna
IDENTITY, porém, com os
números de sequências sem
restrições ao uso de uma tabela. O
Método para criação de
SEQUENCES no SQL Server
‚Denali‛ ser{ baseado na InstruçãoCREATE SEQUENCE.
Melhorias na segurança, que
incluem novas propriedades de
permissões, além de novas Funções
de Servidor denidas pelo Usu{rio,
tendo também novas formas de
gerenciamento das regras do
Servidor e Bases de dados.
como ponto de partida na
construção de Transact-SQL em
lotes ou em Scripts;
Transact-SQL Surround, também
com modelos que podemos utilizar
olhando pontos que denem
quando uma instrução Transact-
SQL se encerra em um Begin, If,
While dentro do Bloco;
Melhorias na utilização do Full-
text, utilização de querys AD-Hocpara paginação, além de suporte a
sequences e outras melhorias
também disponíveis no Transact-
SQL, sendo descritas abaixo:
Full-Text Search, que a partir do
SQL Server ‚Denali‛, ser{ possível
congurar um índice full-text queofereça suporte para pesquisas
sobre propriedades, como
exemplos de consultas sobre Autor
e Título, emitidos por IFilters. Este
formul{rio de pesquisa é conhecido
como PROPERTY SEARCHING
(propriedade de busca), onde caso
seja possível pesquisar apropriedade em um determinado
tipo de documento, com seu ltro
correspondente (IFilters) durante a
indexação do full-text.
A Instrução EXECUTE poder{
especicar os metadados que serão
retornados usando o argumento
WITH RESULTS SETS
Novidades no SQL Server Codinome DENALI
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 20/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 20
dando mais exibilidade na criação
de Data Flows.
Além disso, agora é possível editarmos
um componente mesmo quando seu
Path de input estiver desconectado,
tendo o processo de reconexão e
mapeamento das colunas simplicadas.
Novo componente de correção de dados,
que permite ao Integration Services
corrigir com mais facilidade a qualidade
dos dados.
As demais ferramentas (Analysis
Services, Data Quality Services,
Reporting Services, Serviços de
replicação e Service Broker) não
sofreram atualizações, sendo oferecidas
com as mesmas funcionalidadesdisponíveis na versão do SQL Server
2008 R2.
Estão disponíveis funções User-
dened para gerenciar, adicionar e
remover membros das regras do
servidor, utilizando os comandosCREATE SERVER ROLE, ALTER
SERVER ROLE e DROP SERVER
ROLE;
Melhorias no Integration
Services
A última versão do Microsoft Integration
Services apresentar{ novos recursos queaumentaram a produtividade dos
Desenvolvedores e Administradores na
solução de Processos ETL e de
transformação de dados, oferecendo um
novo modelo de implantação e
Administração na Integração dos dados,
sendo que este modelo de implantação
prevê a possibilidade de denirpar}metros tanto para os pacotes quanto
para os projetos que passam a ser uma
implantação no Integration Services.
Além disso, novas caixas de di{logo no
SQL Server Management Studio e novos
conjuntos de Views e Stored Procedures
nos ajudarão a gerenciar, executar emonitorar pacotes em tempo real.
Melhorias na Usabilidade:
O BIDS (Business Intelligence
Development Studio) foi
atualizado para ajudar tanto novos
quanto usu{rios experientes a
desenvolver pacotes com maisfacilidade. A Toolbox foi renada,
Novidades no SQL Server Codinome DENALI
Figura 3 - Nova tela de Toolbox do IntegrationServices
Cristano Joaquim Graduado em Ciência daComputação pelaUniversidade deGuarulhos (UnG) e Pós-
graduado em BI pela
Faculdade Veris IBTA.
Trabalha há 11 anoscom TecnologiaMicroso.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 21/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 21
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 22/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
22 Fev / Mar - 2011 |
xRM, Dynamics CRM como
plataforma de desenvolvimento
Se você est{ iniciando a arquitetura de umnovo sistema de gerenciamento deinformação, podendo ser diferentessegmentos (logística, construtora,ensino...). Porque não utilizar o DynamicsCRM como plataforma?
Uma magnica ferramenta que contémtudo o que a base um sistema de
gerenciamento de informação teria que ter.
Dynamics CRM 2011
Para iniciar a nossa exploração, para osque não conhecem a estrutura doDynamics CRM, o produto é totalmenteWeb, construído em .NET Framework 4.0 eutiliza Sql Server como base de dados. E
pode ser utilizado como uma plataformafenomenal para desenvolvimento de umaaplicação.
Como vem sido comentado, temos umanova sigla no mundo din}mico, o xRM!Um conceito que existe { um bom tempoe vem evoluindo com as últimas versõesdo produto, e se concretiza nesta últimaversão, CRM 2011.
Para compartilha minha ideia,primeiramente vou citar algumas
‘features’ que o CRM possui, que seriaótimo para ter em um aplicação e quecom certeza levaria um bom tempo paraser desenvolvido:
Criação de fomul{rio
O CRM possui uma arquitetura onde épossível a criação de novas entidades,atributos, relacionamentos e formul{rio
de forma r{pida e simples sem precisarsequer acessar o banco de dados.Imagine a possibilidade de criar umanova entidade (alunos, por exemplo),com 10 atributos de tipos distintos, criarum relacionamento com a contaexistentes, e formular uma visualizaçãoem menos de 15 min.
Por: Ricardo Alves
Figura 1 - Tela inicial do Dynamics CRM
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 23/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
23 Fev / Mar - 2011 |
Segurança da informação
O produto possui um gerenciamento depers de acesso magnica. Você pode
construir um perl e dizer o que elepode ver, criar, atualizar dentro naaplicação.
Relatório
Existe uma integração nativa com aplataforma de relatório Microsoft, o SQLServer Reporting Services. Com est{integração é possível criar relatórioscustomizados para seu negócio, sendopelo próprio Assistente de Relatóriopresente no Dynamics CRM, ouutilizando ferramentas dedesenvolvimento como Visual Studio ouReport Builder. A segurança dos dadosnão ca para tr{s, a criação dosrelatórios é feita acima de views na basede dados, onde é levado emconsideração o perl de acesso dousu{rio que est{ executando o relatório,
mantendo a informação segura edisponível apenas para aquele tem
xRM, Dynamics CRM como plataforma de desenvolvimento
direito de acesso.
Localização Avançada
Uma função interessante e que atrairiaqualquer usu{rio, onde o usu{rio podefazer uma busca na base de dados com
diversas condições e agrupamento, sem anecessidade de um pingo deconhecimento SQL.
WorkowCom uma interface amig{vel, é possível acriação de uxo de trabalho para um bomciclo da informação. Por exemplo, algosimples como a necessidade de que apósa criação ou atualização de um registroseja criada uma tarefa ou envie um emailpara um usu{rio, para que entre emcontato com alguém para atualização dainformação. Ou utilizar uxo de trabalho
por demanda, selecione uma lista deregistros e execute um workow. Oworkow trabalha de forma assíncrona,
Figura 2 - Criando e editando o formulário comDrop and Drag
Figura 6 - Resultado da Consulta
Figura 3 - Controle de perfil
Figura 4 - Painel de Relatório
Figura 5 - Criando consulta na localização
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 24/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
24 Fev / Mar - 2011 |
indo para uma la e executado por umserviço, respeitando a disponibilidadede recurso.
SharePoint e Sistema de auditoria
Na nova versão, CRM 2011, possuiintegração nativa com SharePoint, umafeature muito interessante e esperada. Eimagine os dados da aplicaçãototalmente auditados.
Versão Online
Não é necess{rio que o cliente tenhatodo o aparato de licenças e servidorespara aplicação, o CRM 2011 tambémestar{ disponível na nuvem, onde autilização é cobrada por usu{rio.
Gr{cos e Dashboard
Fora as ferramentas de relatório elocalização avançada, a ferramenta aindaconta com um ‘plus’ para a seu sistema,com gr{cos e dashboard nativos.O próprio usu{rio consegue gerargr{co a partir de uma lista de registros,com o retorno de uma localização
avançada. No exemplo abaixo crio umgr{co de contatos por propriet{rio a
xRM, Dynamics CRM como plataforma de desenvolvimento
partir da minha lista de contatos ativos:
E alternar o tipo do gr{co durante autilização:
Ou a crianção de dashboard, umoverview do sistema onde pode conter asinformações mais pertinentes ao usu{rio.Um painel onde é possível inserirgr{cos, imagens ou qualquerWebResource (tópico a seguir):
Integração com servidor de email Pode ser utilizado integrado comExchange ou outro servidor SMTPnativamente.
Figura 8 - Painel de edição das entidades.
Figura 7 - Criando um workflow
Figura 9 - Gráfico de contato por usuáriosproprietários.
Figura 10 - Dois dos tipos de gráficosdisponíveis por padrão.
Figura 11 - Dashboard
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 25/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
25 Fev / Mar - 2011 |
Multi-idioma
O CRM 2011 estar{ disponível em 40
idiomas.
Como e quanto é possível expandir oCRM 2011?
O Dynamics CRM tem uma arquiteturainteressante, por ser construídoem .NET, sua customização e extensão éfeita utilizando tecnologias atuais, que j{são utilizadas por muitos
desenvolvedores .NET, como VB.NET,C#, ASP.NET, Linq, WebService, WWF,WCF, Silverlight, XML , JScript, etc.
Ele possui um Software DevelopmentKit (SDK), que pode ser feito odownload gratuitamente, onde contémo que a aplicação suporta paramodicação, expansão e
desenvolvimento de novas features commuitos exemplos.
Consumindo o serviço do DynamicsCRM, WCF
Caso seja necess{rio uma integração comsistemas legados, isso pode feitovia .NET.
O Dynamics CRM possui interface porserviço WCF, sendo possível ter totalcontrole dos dados e sua aplicação com
xRM, Dynamics CRM como plataforma de desenvolvimento
total segurança. Ou por exemplo, aintegração com um front-end, um site, e-
commerce ou portal, utilizando o
Dynamics com back-end, administração egerenciamento da informação.
Um exemplo de criação e recuperação deum registro via serviço disponibilizadopelo CRM 2011, Organization.svc, e umtipo de ORM, feito por um serviçodisponibilizado no SDK, CrmSvcUtil.exe.Desta forma é possível utiliza o
DataContext como feito no EntityFramework:
Criar autenticação com o serviço:
public static ServiceContext GetServiceContext() {
Uri uri = new Uri("https://domain.crm.dynamics.com/XRMServices/2011/Organization.svc");
Uri homeRealmUri = null; ClientCredentials clientCredentials =
new ClientCredentials(); clientCredentials.UserName.UserName = "[email protected]";
clientCredentials.UserName.Password = "teste";
ClientCredentials deviceCredentials = new ClientCredentials();
deviceCredentials.UserName.UserName = "teste";
deviceCredentials.UserName.Password = "teste";
OrganizationServiceProxy serviceProxy = new OrganizationServiceProxy(uri, homeRealmUri, clientCredentials, deviceCredentials);
serviceProxy.ServiceConfiguration.CurrentServiceEndpoint.Behaviors.Add(new ProxyTypesBehavior());
return new ServiceContext(serviceProxy);
} Criar um registro de uma conta na
aplicação:
Figura 12 - Criando um Email
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 26/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
26 Fev / Mar - 2011 |
public void Create() { var service = Organizational(); var account = new Account() { Name = "Test account", CustomerTypeCode = new OptionSetValue
(3) }; service.AddToAccountSet(account);
var result = service.SaveChanges(); }
Recuperar um registro de umaconta na aplicação utilizando Linq:
public void RetrieveMultiple() {
var service = OrganizationServiceRepository.GetServiceContext();
var result = from a in service.AccountSet
where a.Name.Contains("test")
select a; }
Como podemos ver nada além de .NET,e podemos usar Linq para consulta peloserviço!
JScript Com os eventos OnLoad, OnSave doformul{rio e OnChange de cada campo,você ter{ total controle do fomul{rio via
JScript e inclusive a utilização de jQuery.
Como por exemplo este método JScript,onde colocar o valor do campo ‘Nome’no ‘Número da Conta’, colocado uma
classlibrary na aplicação:
function method() { var name = Xrm.Page.getAttribute("name"); var accountnumber = Xrm.Page.getAttribute
("accountnumber"); accountnumber.setValue(name.getValue());
}
Na aplicação seto que o método deve serchamado no OnChange do campo
Nome, ou seja, após a modicação dovalor no campo Nome.
xRM, Dynamics CRM como plataforma de desenvolvimento
WebResource e ISV
Se você precisar colocar um componenteSilverlight no meio do formul{rio, você
pode! Além do atributos, você podeadiciona iframe/web resource no seuformul{rio, podendo colocar itens comoHTML, ASP.NET, XAP (Silverlight),Imagens, etc.
Caso isto ainda não atenda suasnecessidades, você pode criar ISV(Independent Software Vendor), comowebpart totalmente independente, ondevocê cria sua p{gina/estrutura e anexa aoCRM com um botão no Ribbon ou outromenu, como no exemplo, onde eu indicoa p{gina do Bing Maps no menu denavegação:
Figura 13 - Formulário com um componenteSilverlight.
Figura 14 - Colocando o Bing como item nomenu de navegação.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 27/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
27 Fev / Mar - 2011 |
Custom Workow Activity, WWF
Utilizando Windows WorkowFoundation é possível criar um Custom
Workow Activity, registrar o assemblyna aplicação e adicion{-lo como umpasso no seu uxo de trabalho no CRM,e como é .NET você ter{ innitapossibilidades, utilizando par}metros eretornos para o uxo. Como nesteexemplo, onde eu pego o par}metroNome passado e crio uma nova conta:
using System; using System.Activities; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Workflow; namespace Microsoft.Crm.Sdk.Samples {
public sealed class SampleCustomActivity : CodeActivity
{ protected override void Execute
(CodeActivityContext executionContext) {
IWorkflowContext context = executionContext.GetExtension<IWorkflowContext>();
IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>();
IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);
Account account = new Account(); account.Name = AccountName.Get<string
>(executionContext); Guid id = service.Create
(sampleAccount); } // input [Input("Account Name")] [Default("teste")] public InArgument<string> AccountName { g
et; set; } }
}
xRM, Dynamics CRM como plataforma de desenvolvimento
Plugin
Com o Plugin você pode ter o controle dainformação, criando extensões a regra de
negócio em código .NET. Podem serinseridos antes ou após uma ação nosistema (criação, atualização, deleção, eoutros inúmeros eventos), em um simplesprocesso de registro do assembly naaplicação. Por exemplo, a criação de umplugin para agir na criação de registro(Create), crie e insira um valor numéricono campo ‘Número da Conta’ do registro,
antes da inserção em banco (Pre Stage):
using System; using Microsoft.Xrm.Sdk; namespace Microsoft.Crm.Sdk.Samples {
public class AccountNumberPlugin : IPlugin {
public void Execute(IServiceProvider serviceProvider)
{ Microsoft.Xrm.Sdk.IPluginExecutionCont
ext context = (Microsoft.Xrm.Sdk.IPluginExecutionContext)
serviceProvider.GetService(typeof
(Microsoft.Xrm.Sdk.IPluginExecutionContext)); if (context.InputParameters.Contains
("Target") && context.InputParameters
["Target"] is Entity) {
Entity entity = (Entity)context.InputParameters["Target"];
if (entity.LogicalName == "account")
{ if (entity.Attributes.Contains
("accountnumber") == false) { Random rndgen = new Random
(); entity.Attributes.Add
("accountnumber", rndgen.Next().ToString()); } else {
throw new InvalidPluginExecutionException("Somente o sistema pode inserir o valor no campo Número da Conta.");
} }
} }
} }
Figura 15 - Selecionando um Custom Activitypara o Fluxo de Trabalho.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 28/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
28 Fev / Mar - 2011 |
Digamos que isso não é nem umaparcela do que a ferramenta tem aoferecer para a criação de uma bom
sistema. Recomendo fazer o downloaddo SDK: hp://bit.ly/DynamicsCRM2011SDK
E grande parte das implantações deDynamics CRM são utilizando, mesmoque parcialmente, foram utilizando-ocomo plataforma de desenvolvimento,gerenciamento de X, xRM!
xRM, Dynamics CRM como plataforma de desenvolvimento
Ricardo Alves 22 anos, atua como consultorMicrosoft Dynamics CRMdesde a versão 3.0. Bacharel emCiência da Computação,cursando Pós-Graduação em
Engenharia de Software. Possui certi-cações em Dynamics CRM e ITIL Founda-tion. Moderador e membro ativo dos fóruns
Dynamics CRM do MSDN e TechNet.Twier @ricardoalvesbr e possui o blogwww.ricardoalves.me
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 29/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 29
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 30/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
30 Fev / Mar - 2011 |
Trabalhando com POCO utilizando
Entity Framework
Por: Ítalo Chesley
Introdução
O Entity Framework é a ferramenta demapeamento de objetos relacionais daMicrosoft. A versão 4 do do mesmo foi
lançada em 2010 juntamente com o VisualStudio 2010 e o NetFramework 4. Entre asprincipais novidades desta ferramentapodemos agora trabalhar com POCO(Plain Old CLR Object) ou Bom e velhoobjeto da CLR, que nada mais são queobjetos simples, sendo assim, o papel queo Entity Framework exerce é de abstrair apersistência e recuperação de dados.
Objetos simples
Exemplicando de forma pr{tica e tendoem vista que estamos falando de objetossimples, você poder{ visualizar naListagem 1 os dois objetos simples quecriei para o nosso exemplo, a saber:Livros e Autor.
public class Livros { public virtual int Id { get; set; } public virtual string NomeLivro { get;
set; } public virtual Autor Autor{ get; set; }
}
public class Autor {
public virtual int Id { get; set; } public virtual string NomeAutor { get;
set; } public ICollection<Livros> Livros {
get { return _livros; } set { _livros = value; }
}
private ICollection<Livros> _livros = new List<Livros>();
} Listagem 1 – Objetos simples: Livros eAutor
O contexto e o ModeloConceitual(EDMX)
Para utilizar o Entity Framework 4 napersistência de desses dados, é precisoque criemos duas coisas: O contexto e oarquivo Modelo Conceitual(EDMX), doEDMX não dependemosnecessariamente, poderíamos utilizar o
CodeFirst que est{ em CTP, entretanto,isso é assunto para outro artigo.
O Contexto do Entity Framework érelativamente simples, ele herda declasse ObjectContext que est{ sob onamespace System.Data.Objects,podemos visualiz{-lo na Listagem 2.
public class EF_POCOContainer : ObjectContext { public EF_POCOContainer()
: base("name=EF_POCOContainer","EF_POCOContainer")
{ this.ContextOptions.LazyLoadingEnabled
= true; } public ObjectSet<Livros> Livros {
get { return _Livros ?? (_livros =CreateObjectSet<Livros>("Livros")); }
} private ObjectSet<Livros> _livros;
public ObjectSet<Autor> Autor {
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 31/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
31 Fev / Mar - 2011 |
get { return _autor ?? (_autor =CreateObjectSet<Autor>("Autor")); }
} private ObjectSet<Autor> _autor;
} Listagem 2 – Contexto do EntityFramework
Agora, criamos o modelo conceitual danossa aplicação, caso você queira sabercomo cri{-lo passo a passo, consulte aedição 18 da Codicando.NET ondeexplico detalhadamente como fazê-lo.Então, vamos visualizar o arquivo EDMX,
na Figura 1.
Neste momento, a nossa Solução estar{semelhante | da Figura 2, contendo oarquivo EDMX, que tem a representaçãodo nosso modelo conceitual, o nossocontext , nossas classes e alguns outrosarquivos do template de um projeto emConsole, que não fazem parte da nosso
foco.
Reparem o arquivo denominadoEF_POCO.Designer.cs, este arquivogerado junto ao EDMX contém as classesque criamos e o contexto do EntityFramework, que também criamos: issogera uma redund}ncia de classes naaplicação, para trabalhar com POCO,vamos clicar com o botão direito sobre oEDMX, Properties e no limpar o conteúdo
da propriedade Custom Tool(Figura 3).
Isso vai fazer com que o arquivo
EF_POCO.Designer.cs não apareça mais emnossa Solution e o Entity Framework agorapasse a utilizar os objetos que criamos.
Persistindo e Recuperando osdados
Depois de criar nossas classes, o contexto eo modelo conceitual(EDMX), agora vamosver como funciona a persistência erecuperação dos dados através do Entity
Framework.
Trabalhando com POCO utilizando Entity Framework
Figura 1 - EDMX: Modelo Conceitual
Figura 2 - Solução com EDMX
Figura 3 - Propriedade Custom Tool do EDMX
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 32/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
32 Fev / Mar - 2011 |
Para o nosso exemplo, criei uma aplicaçãoconsole com a qual poderemosexemplicar como persistir e recuperar
dados com o Entity Framework, o quevocês podem ver na Listagem 3.
class Program {
static void Main(string[] args) {
EF_POCOContainer ctx = new EF_POCOContainer();
Autor objAutor = new Autor(){ NomeAutor = "Fernando Sabino" };
objAutor.Livros.Add(new Livros(){ NomeLivro = "O Encontro Marcado" });
objAutor.Livros.Add(new Livros(){ NomeLivro = "O Menino no Espalho" });
objAutor.Livros.Add(new Livros(){ NomeLivro = "O Grande Mentecapto" });
objAutor.Livros.Add(new Livros(){ NomeLivro = "O Amor de Capitu" });
ctx.AddObject("Autor", objAutor); ctx.SaveChanges();
Console.WriteLine(string.Format("Autor:{0}", objAutor.NomeAutor)); foreach (Livros livro in
objAutor.Livros) {
Console.WriteLine(string.Format(">>Livro:{0}", livro.NomeLivro));
} Console.ReadKey();
} }
Listagem 3 – Persistindo e Recuperandoinformações do Banco de Dados com
Entity Framework
Primeiro instanciamos o contexto, cujocódigo foi digitado por nós. Depoisinstanciamos o nosso objeto simplesAutor e preenchemos a sua propriedade‚NomeAutor‛, depois, adicionamosalguns Livros | sua propriedade Livros,que é uma coleção de objetos do tipo
Livros, até aqui, estamos trabalhando com
objetos simples.
Agora, para persistir, utilizamos o método
AddObject do nosso contexto passandocomo par}metro o tipo que queremosadicionar, e o objeto que queremosadicionar, invocamos o métodoSaveChanges e pronto, o próprio EntityFramework se encarregar{ de salvar osdados tanto da entidade Autor, como deLivros, como podemos ver na Figura 4, quecontém os dados gravados no banco de
dados e na Figura 5, a nossa aplicaçãoConsole.
O
Trabalhando com POCO utilizando Entity Framework
Figura 4 - Dados Persistidos no Banco de dados
Figura 5 - Aplicação Console com dadospersistidos no Banco de Dados
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 33/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
33 Fev / Mar - 2011 |
ConclusãoComo tivemos a oportunidade de verneste artigo, o Entity Framework facilita a
atividade de trabalhar com orientação aobjetos e persistir os dados em um bancode dados e que desta forma, podemosdiminuir o acoplamento entre as nossasaplicações e a ferramenta de mapeamentode objetos relacionais.
Trabalhando com POCO utilizando Entity Framework
Ítalo Chesley
é Microsoft Student Partner, gradu-ando em An{lise e Desenvolvi-
mento de Sistemas na Univale –Universidade Vale do Rio Doce.Atua na equipe de desenvolvimentode sistemas da Universidade desde
2009 tendo iniciado como estagi{rio e depois con-tratado como funcion{rio. Palestrou no evento detecnologia da universidade e contribui periodica-mente para a comunidade técnica com artigos téc-
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 34/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
34 Fev / Mar - 2011 |
Em meados de Novembro/2010 quando
resolvi prestar o exame, uma busca r{pida
sobre literatura para tal descobri que
naquele momento os famosos livos
preparatórios para o exame estavam
previstos para lançamento somente neste
ano. Então como me preparei ? A web é
rica em conteúdo e em demasiada escala,
com isso precisamos ‚ltrar‛ o que nos
interessa aliado a um plano de estudo edisciplina com certeza ter{ sucesso no seu
objetivo.
Primeiros passos
Bem em primeiro lugar eu instalei o
SharePoint 2010 inúmeras vezes. Nesse
ponto creio que j{ aprendi 30% do exame
antes de começar os estudos. Usei comoreferência para a criação da m{quina
virtual do site www.istomesmo.com.
Uma vez a m{quina instalada e
congurada vamos vericar os requisitos
para este exame:
O Exame
O exame Microsoft SharePoint 2010,
Conguring - abrange conceitos ehabilidades relacionadas | instalação,
conguração e gerenciamento de farms
de servidor do SharePoint, conjuntos de
sites e relacionamento com outras
tecnologias da Microsoft.
Ele enfatiza os seguintes elementos de
design e administração:
Conguração do Portal Microsoft
SharePoint Server 2010
Gerenciamento de Pesquisa
Conguração de Business forms
Gerenciamento de Business
Intelligence
Gerenciamento e administraçãofarm
Implantação e atualização do
SharePoint Server 2010
Os tópicos para o exame com o seu
percentual:
MCTS SharePoint 2010 -
Configuration (Exam 70-667)
Por: Comunidade
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 35/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
35 Fev / Mar - 2011 |
MCTS SharePoint 2010 - Configuration (Exam 70-667)
Installing and Conguring a
SharePoint Environment (25 %)
Managing a SharePoint
Environment (26 %)
Deploying and Managing
Applications (24 %)
Maintaining a SharePoint
Environment (25 %)
O exame é muito especíco a respeito de
requisitos de congurações e também
como são executadas as tarefas
administrativas e de conguração no
SharePoint. Concentra em conceitos
fundamentais sobre a operação do
SharePoint e sua interoperabilidade com
outros produtos da suite Microsoft
Oce. Por favor, visite o site do
Microsoft Learning em MicrosoftLearning para obter uma lista atualizada
dos objetivos do exame.
Teoria Vs Pr{tica
Antes de estudar as particularidades
decidi fazer todos Virtual Labs com o
intuito maior de conhecer a interface,assimilar e quando citado em alguma
refêrencia ter a noção de onde estamos
falando. Segue a lista direta para cada
laboratório.
1. Backup and Restore
2. Business Connectivity Services
3. Windows PowerShell
4. Power Shell and SharePoint 2010
5. Business Continuity Management
6. Conguring Remote Blob Storage
Filestream
7. Conguring Tenant
8. Conguring User Prole
Syncronization
9.
Enterprise Search
10. Introduction to SharePoint 2010
Upgrade
11. Monitoring
12. Performance Management
Lista completa dos laboratórios de todas
as versões do SharePoint:
hp://technet.microsoft.com/en-us/ bb512933.aspx
Recomendo os podcast a seguir, excelente
para o aprendizado.
Todd Klindt MVP e grande escritor
SharePoint Pod Show
E nalmente eu comprei o livro MCTS
Microsoft SharePoint 2010 Conguration
Study Guide: Exam 70-667 .
Dica* no nal de cada capítulo contém em
média 20 questões para xação do conteúdo,
para aqueles que já possui conhecimento na
tecnologia essas questões é um ótimo treino
para o exame.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 36/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
36 Fev / Mar - 2011 |
MCTS SharePoint 2010 - Configuration (Exam 70-667)
Para memorizar os menus, z esse Mapa
mental da Central Administration , vale a
pena, pois para quem não é
familiarizado com a ferramenta ajuda no
conhecimento dos menus.
A Prometric / Microsoft est{ com a
promoção segunda chance se você
comprar um pacote com 2 ou mais
exames hp://www.prometric.com/
microsoft/certpacks . Esta oferta vai até junho de 2011.
Recursos adicionais
Depois de passar por todos esses
laboratórios virtuais e estudar o livro eu
encontrei esses recursos que podem serúteis:
SharePoint 2010 Advanced IT Admin
Laboratórios Virtuais
hp://technet.microsoft.com/en-us/
sharepoint/420396.aspx - (Os vídeos
podem ser baixados para ver o-line
aqui )
SharePoint 2010 Developer Labs Virtual
hp://msdn.microsoft.com/en-us/
cc707678.aspx
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 37/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 37
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 38/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 38
TESTES DE SOFTWARE DE AMBIENTES VIRTUAIS
DE APRENDIZAGEM (AVA)
Por: KAROLINE MARIA XAVIER LEITE
Resumo
Descreve conceitos b{sicos sobrequalidade de websites, sobre os objetivosdo AVAs e da relação entre ambos.
Através de testes ser{ demonstrado onível de qualidade dos sistemasBlackBoard, TelEduc e Moodle.
A qualidade de software segundo avisão do usu{rio e segundo os objetivosdos AVAs são detalhados e relacionadosde maneira objetiva, dando maiorentendimento sobre o tema.
Introdução
A qualidade é relativa. O que é qualidade para uma pessoa pode ser falta de qualidade para outra.
– G. Weinberg
Sabendo o quão difícil é denir aqualidade de algo, podemos mensurar o
quanto a qualidade de software pode serainda mais subjetiva. No dia-a-dia vemoscomo um software é algo deverasinconclusivo, uma existência não palp{vele de difícil denição.
Como seria possível avaliar aqualidade de um software do ponto devista dos seus usu{rios? E de seus
idealizadores? E de especialistas emqualidade? Ou de especialistas no ramo a
que se dedica o tal software?
A qualidade é distinta para gruposdistintos, o software atende ou não seusrequisitos dependendo dos próprios
requisitos, de quem o valida e da formacomo cada um o encara.
Esse artigo visa demonstrar o nível dequalidade de alguns softwares deEducação a Distancia, os chamadosAmbientes Virtuais de Aprendizagem(AVAs) do ponto de vista do usu{rioutilizando padrões conhecidos da web.
O Ambiente
Naturalmente, ambientes deaprendizagem virtual não são atrativospor si só. Por mais que o aluno-usu{riotenha interesse no tema de estudo,diversos fatores conspiram para que essaexperiência de aula virtual não seja tãoeciente como uma aula presencial.
Entre os fatores que atrapalham osestudos virtuais estão a necessidade dousu{rio de se estimular sozinho paradedicar-se aos estudos, diculdades deutilizar o software, diculdade em entrarem contato com um instrutor e sanardúvidas, diversas distrações que ainternet proporciona ao alcance de
apenas um clique de mouse, entre outros.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 39/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 39
Para isso, os softwares de aula virtualprecisam ser atrativos o suciente, deleitura f{cil, com informações bem
distribuídas, e aptos a prender a atençãodo aluno-usu{rio.
Esses grandes desaos dos AVAs parasatisfazer seus usu{rios sãocompartilhados por toda a web, não sópor esses tipos de softwares – mas paraeles, em especíco, são pontos cruciaispara sua excelência.
Da usabilidade
Pela denição da InternationalOrganization for Standardization, usabilidadeé a medida pela qual um produto pode serusado por usuários especícos para alcançarobjetivos especícos com efetividade, eciênciae satisfação em um contexto de uso especíco(ISO 9241-11).
– Wikipédia, a enciclopédia livre
A usabilidade dos websites foiconsiderada satisfatória. De maneira geral,o usu{rio consegue realizar as tarefas quenecessita nos softwares, identica asinformações que necessita e as executacom tempo de resposta do sistema
bastante eciente – mesmo que em alguns
pontos encontre diculdades.O TelEduc é o que apresenta melhor
usabilidade, com layout bastanteagrad{vel, informações bem dispostas,menus intuitivos, etc.
Demonstração em imagens
Da acessibilidade
Acessibilidade na Internet ou acessibilidadena web signica permitir o acesso à web portodos, independente de tipo de usuário, situaçãoou ferramenta. É criar ou tornar as ferramentas
e páginas web acessíveis a um maior número deusuários, inclusive pessoas com deciências. Aacessibilidade na web benecia também pessoasidosas, usuários de navegadores alternativos,usuários de tecnologia assistiva e de acessomóvel (SERPRO).
– AcessibilidadeWeb
Quando se trata de web, acessibilidade ésempre um tema delicado – não muitodiferente do ‚mundo real‛. Poucos são os
TESTES DE SOFTWARE DE AMBIENTES VIRTUAIS DE
Figura 1 - BlackBoard apresenta excesso deinformação inutilizada, o que causa dificuldadepara encontrar determinadas informações e“cansa” o usuário.
Figura 2 - TelEduc apresentou erros de SQL emdiversos momentos da navegação. A mensagemestá tratada, mas a não exibição da informaçãobuscada e a grande quantidade de vezes em que
ocorreu esse tipo de erro pode causar desconfiançaao aluno-usuário.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 40/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 40
websites verdadeiramente prontos paraserem acessados por qualquer pessoa epouca import}ncia se d{ a isso - também
não muito diferente do ‚mundo real‛.
Embora as estimativas possam variar, amaioria dos estudos mostra queaproximadamente um quinto (20%) dapopulação tem algum tipo deincapacidade. Nem todas estas pessoaspossuem incapacidades que possamdicultar o acesso | internet, mas não
deixa de ser uma porção signicativa dapopulação.Os websites avaliados deixaram muito
a desejar nesse quesito.Apenas o TelEduc apresentou
funcionalidades satisfatórias para facilitara acessibilidade: o aumentar e diminuir otamanho da fonte da p{gina, p{ginas bemdispostas, menus intuitivos, etc. Aindaassim, não foi considerado satisfatório,pois peca em muitos pontos, comonavegação com o teclado, por exemplo.
Demonstração em imagensDa visibilidade
A visibilidade de uma informação publicadana web é a medida da facilidade com que osutilizadores da web a encontram e interpretam.
Não basta publicar informação na web. É
necessário fazer com que as suas páginas na websejam visíveis, para que todas as pessoas possam facilmente encontrar a informação nelas contida.
– Visibilidade.net
A visibilidade de um website é um mistode acessibilidade, otimização para serviçosde pesquisa e design da informação.
Nessa avaliação, todos os sistemasmostraram bons resultados, foramencontrados nos mecanismos de busca eoferecem algumas facilidades de acesso ao
TESTES DE SOFTWARE DE AMBIENTES VIRTUAIS DE
Figura 3 - TelEduc permite aumentar e diminuir otamanho da fonte.
Figura 4 - Blackboard utiliza cores leves, contudoapresenta muita informação nas páginas, muitoslinks e ícones sem permitir navegação com oteclado. Apenas o TAB funciona para navegarcom o teclado e navegar com o TAB em tantoslinks é uma tarefa árdua.
Figura 5 - Moodle apresenta menu de títuloshierárquico, pouco comum na web e sem
descrição do que cada nó dessa hierarquiarepresenta.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 41/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 41
usu{rio.
Ponto positivo para a disponibilizaçãode sistema de busca na home dos sistemas
Moodle e BlackBoard. Ponto negativo poresse mesmo sistema não existir no ambi-ente de ensino (apenas existe no site deapresentação do produto) do BlackBoard.
Demonstração em imagens
Conclusão
Os AVAs chegaram ao universo daeducação como solução para muitosproblemas. Não é conceitualmente umaevolução, pois h{ muito tempo j{ existia oconceito de educação | dist}ncia – ofamoso Instituto Universal Brasileiro é umgrande exemplo disso –, mas é umagrande evolução no como se transmite o
conhecimento da educação a distancia.
Entretanto, como tudo na web, os AVAsnecessitam ainda amadurecer. Osproblemas apresentados nesses softwares
são os mesmos que vemos em quaisqueroutros, seja no grande portal de noticias,seja no grande portal de vendas online. Aevolução, nesse sentido, vir{ na web comoum todo, não nos AVAs de forma isolada.
Obviamente, por se tratar de um me-canismo em expansão e amadurecimento,ainda h{ muito que melhorar nesses am-
bientes, muito que acrescentar e estudar so-
bre esse tipo de serviço e sobre como torna-
lo melhor. Nada que fuja da normalidade,tampouco nada que tire o mérito dessessoftwares. Os AVAs representam uma evo-lução consistente para a educação a dis-tancia e um grande auxilio para a educaçãoortodoxa. As possibilidades que os AVAsoferecem aos educadores e aos educandossão incomensur{veis.
Mas sem empolgação, não se deve con-siderar os AVAs como grandes inovaçõespara a web, apenas como inovações para aeducação. A medida em que a web evolui,esse mecanismos evoluirão também e comisso as possibilidades de aprendizado setornarão cada vez mais adequadas a cadapessoa.
Referências
Wikipédia, a enciclopédia livre. AmbienteVirtual de Aprendizagem. Disponível em:<hp://pt.wikipedia.org/wiki/Ambiente_virtual_de_aprendizagem> Aces-so em: 05 dez. 2010.
TESTES DE SOFTWARE DE AMBIENTES VIRTUAIS DE
Figura 6 - Moodle apresenta sistema de busca noambiente de aprendizado, porém o mecanismo élimitado a procurar por cursos.
Figura 7 - Blackboard apresenta sistema debusca apenas na página do produto, mas nãoapresenta no ambiente de aprendizagem.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 42/51
www.codificandomagazine.com.br
Codificando.nete-mag
azine
e-magazine
Dez / Jan - 10/11 | 42
Wikipédia, a enciclopédia livre. Usa-bilidade. Disponível em: <hp://
pt.wikipedia.org/wiki/Usabilidade> Aces-so em: 05 dez. 2010.
Visibilidade.net. O que é visibilidade naweb?. Disponível em: <hp://visibilidade.net/tutorial/o-que-e-a-
visibilidade.html > Acesso em: 05 dez.2010.
Brasilmedia. Acessibilidade na Web.Disponível em: <hp://www.brasilmedia.com/Acessibilidade-na-
Web.html> Acesso em: 05 dez. 2010.
TESTES DE SOFTWARE DE AMBIENTES VIRTUAIS DE
Karoline Maria Xavier Leite
Juliano Schimiguel
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 43/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
43 Fev / Mar - 2011 |
SketchFlow - Prototipagem com o
Expression Blend
O que é SKETCHFLOW?
Lançado na versão 3 do Expression Blendo SketchFlow permite a criação deprotótipos para aplicações, sites econtroles.
Porque Usar?
O uso do SketchFlow facilita acomunicação e a visualização dosprotótipos de seus projetos de formainterativa, r{pida e de f{cil troca deinformações entre as partes envolvidas noprojeto.
Ao logo desse artigo veremos uma dasvantagens de se usar o SketchFlow, ainteratividade do cliente com os
protótipos. Com SketchFlow é possívelcriar protótipos simulandofuncionalidades ,navegação entre paginase demais recursos que estarão em suaaplicação.
Criando seu primeiro protótipo.
Para esse artigo estarei usando o
Expression Blend 4.
Ao criar um novo projeto temos duasopções Silverlight SketchFlowApplication e WPF SketchFlowApplication.
Sua aplicação não precisaobrigatoriamente ser feita em Silverlightpara usar o SketchFlow, o Silverlight
ser{ a view de nosso protótipo,lembrando o SketchFlow é umaferramenta de prototipagem.
Por: Anderson Castro
Figura 1 - Expression Blend 4
Figura 1 - Novo Protótipo.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 44/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
44 Fev / Mar - 2011 |
Vamos iniciar um novo projeto deprotótipo do tipo Silverlight SketchFlowApplication.
Antes de iniciarmos vamos conhecer umpouco do que temos no ExpressionBlend 4 quando estamos usando oSketchFlow.
SketchFlow Map
Nessa aba podemos visualizar todas astelas do protótipo assim como a conexãoentre elas.
Perceba no exemplo acima que temoscinco telas: Home-FaleConosco-Cadastro-Usuarios-Produtos.
A Home tem conexão com as telasFaleConosco e Cadastro representadaspela linha azul.
A tela Cadastro tem conexão com
Usu{rios e Produtos representadas pelalinha amarela.
As telas Usu{rios e Produtos tem
conexão com a tela Home representada
pela linha branca.
Através do SketchFlow Map podemos
criar essa conexão facilmente basta
segurar a tela de origem e arrastar até atela de destino.
SketchFlow - Protopagem com o Expression Blend
Em cada item de nosso SketchFlow Maptemos quatro opções:
Create a connected screen: Ao clicarnesse item ser{ criada uma novatela juntamente com sua conexão
Connect an existing screen: Ao
clicar nesse item você ter{ a opção
de arrastar a conexão ate a tela
desej{vel.
Create and insert a Component
screen: Ao clicar nesse item ser{
criado um novo Component
juntamente com sua conexão.
Change visual Tag: Esta opção
permite editar a cor da janela em
que estamos.
SketchFlow Styles
Na aba ‚assets‛ temos a opção
SketchFlow Styles, nela temos todos
nossos controles no estilo do SketchFlow,
sua aparência lembra muito algo que foi
desenhado | mão algo como um rascunho
e a ideia é essa mesmo de passar a
aparência de um protótipo.
Figura 3 - SKETCHFLOW Map.
Figura 4 - SketchFlow Map Options.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 45/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
45 Fev / Mar - 2011 |
Abaixo podemos ver alguns controles no
estilo do SketchFlow.
Agora vamos iniciar nosso protótipo.
Ao criar um projeto Silverlight
SketchFlow Application ele j{ cria umatela default chamada ‚Screen 1‛.
Vamos renomear para ‚Home‛.
O modelo abaixo mostra o protótipo de
nossa Home com os seguintes itens:
Buon- Sketch: Login
Buon-
Sketch: Cadastro.
TabControl- Sketch: SimulandoMenu
SketchFlow - Protopagem com o Expression Blend
Cinco Rectangle-Sketch (Logo-
Banner-Conteúdo Principal-Conteúdo Lateral-Rodapé)
Cinco TextBlock-Sketch (Logo-Banner-Conteúdo Principal-Conteúdo Lateral-Rodapé)
O próximo passo é adicionar a tela de
Login.
Clicando com botão direito do mousesobre o SketchFlow Map escolha a opção
‚Create a Screen‛ e vamos cham{-lo de
‚Login‛.
O modelo abaixo mostra nosso o
protótipo da tela de Login com os
seguintes itens:
TextBox-Sketch: Usu{rio
PasswordBox-Sketch: Senha
Buon- Sketch: Entrar Buon- Sketch: Cadastre-se
Cinco TextBlock-Sketch (Logo-
Banner-Usu{rio-Senha) Dois Rectangle-Sketch (Logo-
Banner)
Figura 5 - SketchFlow Styles
Figura 6 - Styles
Figura 7 - Protótipo Home.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 46/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
46 Fev / Mar - 2011 |
Com nossa tela de Login desenhada
voltemos a nossa Home e vamosadicionar uma funcionalidade ao botão
‚Login‛.
Como o SketchFlow permite
interatividade e simulação de navegação
entre as p{ginas o que vamos fazer é que
ao clicar no botão de login o usu{rio seja
direcionado a ela. Clicando com o botão direito do mouse
sobre o botão login escolha a opção
‚Navigate to‛ e depois ‚Login‛.
Observe que no sketchFlow Map ele cria
uma conexão entre as telas.
SketchFlow - Protopagem com o Expression Blend
Vamos agora repetir o passo anterior e
criar a tela de cadastro.
Clicando com o botão direito do mouse
sobre o botão ‚Cadastro‛ em nossa Home
escolha a opção ‚Navigate to‛ e depois
‚Cadastro‛. Faça o mesmo passo na tela
de login com o botão ‚Cadastre-se‛.
Vamos observar nosso SketchFlow Map.
Agora temos uma ligação entre as telas
HomeLogin,HomeCadastro e Login
Cadastro
Figura 8 - Protótipo Login.
Figura 9 - Criar Navegação.
Figura 10 - Navegação no SketchFlow Map.
Figura 11 - Tela de Cadastro de usuários.
Figura 12 - Navegação no SketchFlow Map.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 47/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
47 Fev / Mar - 2011 |
Voltando a nossa tela de Login
queremos que quando o usu{rio clicar
em Entrar seja exibido uma mensagem
de bem vindo e que seja direcionado ahome. Nesse momento não irei fazer
tratamento de erro ou validação de
usu{rio, mas isso é perfeitamente
possível de ser feito mesmo se tratando
de um protótipo.
Clicando com o botão direito do mouse
sobre o botão ‚Entrar‛ em nossa telaLogin escolha a opção ‚Navigate to‛ e
depois ‚Home‛.
Por tratar-se de um botão podemos
programar o evento click nele
normalmente.
No Login.xaml.cs iremos exibir a
mensagem de bem vindo.
Em nossa tela de cadastro vamos
também exibir uma mensagem e
redirecionar o usu{rio a home.
Clicando com o botão direito do mouse
sobre o botão ‚Salvar‛ em nossa tela de
Cadastro escolha a opção ‚Navigate to‛
e depois ‚Home‛.
SketchFlow - Protopagem com o Expression Blend
No Cadastro.xaml.cs iremos exibir a
mensagem.
Observando mais uma vez nosso
SketchFlow Map irão perceber as novasligações entre as telas.
HomeLogin
HomeCadastro
LoginCadastro
LoginHome
CadastroHome
Ok digamos que eu j{ queira enviar esse
primeira fase do protótipo ao meu cliente
como fazer?
Vamos executar nossa aplicação F5, ela
ser{ aberta no seu navegador.
Como podemos ver ele gera um
Default.html com seu protótipo rodando
em Silverlight. Basta você publicar esse
projeto e passar a url ao seu cliente.
Também é possível publicar os arquivosdo projeto em um portal SharePoint.
Figura 10 - Navegação no SketchFlow Map.
Listagem 1 - Login.xaml.cs
Listagem 2 - Cadastro.xaml.cs
Figura 13 - Navegação no SketchFlow Map.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 48/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
48 Fev / Mar - 2011 |
Teste a vontade clique nos botões que
conguramos e observe que tudo
funciona normalmente.
Agora é a vez de o seu cliente interagir
com o modelo e te dar os feedback’s.
Para isso ele ira usar a aba SketchFlow
Player do lado esquerdo da tela.
SketchFlow - Protopagem com o Expression Blend
Vamos conhecer um pouco mais essaferramenta de feedback.
Na parte superior temos a pagina atual.
Navigate
temos
todas as
telas de
nosso
protótipo,
com opção
de zoom in e zoom out. Além disso, um
botão map que ao clicar ser{ exibido para
o cliente o SketchFlow Map. Você
também pode clicar em uma determinada
pagina e ir diretamente a ela.
Na parte inferior temos a aba MY
FEEDBACK e nela que o cliente ira fazer
todas as observações referentes ao seu
protótipo.
Ink FeedBack : Com ele é possível
fazer marcações, desenhos, rabiscose etc.. Em nosso protótipo.
Figura 17 - SketchFlow Player.
Listagem 1 - Login.xaml.cs
Figura 14 - SketchFlow no Browser.
Figura 15 - Testando Protótipo.
Figura 16 - Testando Protótipo.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 49/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
49 Fev / Mar - 2011 |
HighLighter FeedBack é uma opção
similar | caneta marca texto.
Erase ink FeedBack nada mais é que
uma borracha.
Show or Hide ink FeedBack, essaopção habilita e desabilita a
visualização dos feedBack’s.
Na parte inferior o cliente pode
adicionar coment{rios.
Feito os coment{rios e rabiscos o cliente
ira clicar em Export FeedBack.
SketchFlow - Protopagem com o Expression Blend
Ser{ criado um arquivo do tipo
‚Expression SketchFlow Feedback File‛,esse arquivo o cliente ira enviar para
você.
Ao receber esse arquivo abra seu projeto e
procure por uma aba chamada
SketchFlow FeedBack
Clique em add (+) e selecione o arquivoenviado pelo cliente. Ser{ possível ver as
observações feitas, quem fez e a data
dessa revisão, também é possível ver
gracamente os rabiscos e marcações
feitas.
Figura 21 - SketchFlow Player-Export.
Figura 18 - SketchFlow Player-FeedBack.
Figura 19 - SketchFlow Player-FeedBack.
Figura 20 - SketchFlow Player-Comentários .
Figura 22 - SketchFlow FeedBack.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 50/51
www.codificandomagazine.com.br
Codif
icando.nete-mag
azine
e-magazine
50 Fev / Mar - 2011 |
Podemos também adicionar anotações,
clicando em Tools Create Annotation
e assim enviar nossos coment{rios parao cliente.
Veja abaixo como ca o retorno.
É possível também gerar toda
documentação do protótipo e exportar
para um documento Word.
Clique em FileExport to MicrosoftWord. Nesse documento estarão todas
as telas do protótipo, coment{rios,
alterações, anotações, navegação entre
telas e muito mais.
É possível também simular dados
através de um Sample Data, mas isso j{ e
assunto para um próximo artigo.
SketchFlow - Protopagem com o Expression Blend
Conclusão
O SketchFlow é uma poderosa ferramenta
de protótipo não sendo necess{rio carpreso a projetos Silverlight, com isso
temos um aumento em nossa
produtividade além de um r{pido retorno
tanto pela parte do desenvolvedor
quando do cliente.
Anderson Castro
www.about.me/andersoncastro
Twier: @andersonCastro
Blog: www.abcsa.wordpress.com
Figura 18 - SketchFlow Player-FeedBack.
Figura 22 - SketchFlow Player-Import
Figura 23 - SketchFlow Player-AdicionandoAnotações.
5/10/2018 Codificando e Magazine 20 - slidepdf.com
http://slidepdf.com/reader/full/codificando-e-magazine-20 51/51
www.codificando.net Abril / Maio 2009 | 51 51
Fev / Mar - 2011 |
Por: Alexandre Tarifa
J{ não é nenhuma novidadefalar sobre o Windows Phone7 pois a plataforma j{ foilançada no ano passado nosEstados Unidos, o SDK j{disponível para os
desenvolvedores e o mercado começando areceber essa nova plataforma. Recentementea Nokia anunciou que utilizar{ a plataformae assim caminha a evolução da plataforma.
Por que então o Windows Phone 7 pode serconsiderada uma oportunidade aos
desenvolvedores?
Este ano teremos o lançamento no Brasil dosprimeiros celulares com o WP7 e issosignica muitas pessoas enlouquecidas poraplicativos, aplicativos e aplicativos. Quemconstrói os aplicativos??? Nós! E neste caso,nós, desenvolvedores .Net.
Site mostrando aplicativos mais populares. Acompanhando o mercado de aplicativos
nos Estados Unidos, vejo que a grande maioriados aplicativos bem construídos,independente de sua utilidade, são aplicativospagos, alguns custam centavos de dólares. Ouseja, assim que a plataforma for lançada noBrasil, muitas pessoas vão querem osaplicativos, e nós desenvolvedores podemos j{construí-los e faturar em cima disso, pois naloja de aplicativos não existe empresa grandeou pequena, programador independente ougrande empresa de desenvolvimento... existeuma loja onde os melhores aplicativos sedestacam e os primeiros aplicativos queagregarem aos usu{rios com certeza serãofonte de um bom dinheiro.
Existe também uma outra forma derentabilização que é através de publicidadedentro do aplicativo gratuito, ainda acho omercado mais difícil pois vender essesanúncios daria um trabalho bem complexoaqui e utilizar os adservers de adnetworksdepende de um volume monstro para ganhar
pouco dinheiro.
Claro que não precisamos restringir aomercado brasileiro, pois é possível tambémvender aplicativos em lojas de outros países,mas apostar neste mercado brasileiro eu achouma grande jogada.
Aproveite essa onda de lançamento, acredito
que alguns desenvolvedores ganharão um bom dinheiro.
Abraços!
e-magazine
Windows Phone 7, oportunidade!?
Top Related