Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

revista codigo fonte magazine de janeiro2008, Notas de estudo de Informática

Página com discussões sobre bioética, incluindo tópicos como: início da vida, morte, clonagem, transplantes, etc.

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 27/03/2008

maxwenne-guimaraes-10
maxwenne-guimaraes-10 🇧🇷

5

(1)

11 documentos

1 / 37

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25

Pré-visualização parcial do texto

Baixe revista codigo fonte magazine de janeiro2008 e outras Notas de estudo em PDF para Informática, somente na Docsity!

Após 2 meses finalizamos a quinta edição da Codificando.Net Magazine. Realmente não é fácil manter uma revista mensal com um nível como gostaríamos, por isso tomamos uma decisão... Teremos a partir de agora a revista a cada dois meses, ou bimestral para quem preferir :) Em 2 meses muitas coisas acontecem, por exemplo o São Paulo sagrou-se Penta Campeão Brasileiro. Nesta edição temos uma entrevista internacinal (mais uma), Alfred nos EUA entrevista 2 mulheres do time do VB na Microsoft! Temos nossos colunistas mantendo suas colunas sempre atualizadas e artigos técnicos de muita qualida- de. Espero que tenham uma excelente leitura. Alexandre Tarifa editor@codificandomagazine.net

Editorial

P O W E R E D B Y

C O D I F I C A N D O. N E T

E D I Ç Ã O 5 N Ú M E R O 4 A N O I^ O U T / N O V^ 2 0 0 7

Codificando Net

e-magazine

Equipe

Editor: Alexandre Tarifa Emerson Facunte Reporter Alfred Myers Colaboradores: Feio Tomaz Maurício Wieler Diego Nogare Alexandre Lopes

Entrevista - Amanda e Lisa ALFRED : E sobre o run-time do Visual Basic? AMANDA : Esta é uma pergunta interessante. O run-time do Visual Basic, o Microsoft.VisualBasic.dll contém funções de usuário, contém rotinas auxiliares do compilador que permitem o late-binding e as conversões no VB. Isto está escrito em Visual Basic, que por sua vez é compilado para IL. Logo, ele também passa a ser multi- plataforma. ALFRED : Então podemos esperar que o Visual Basic funcione no Moonlight que é a versão Linux do SilverLi- ght? AMANDA : Não sei dizer. ALFRED : Vocês ainda usam personas para representar os tipos de usuários de cada linguagem? Havia muita conversa sobre Mort, Einstein e Elvis nos primeiros dias do .NET Framework. AMANDA : Nós temos uma relação de amor e ódio com os personas. No início era muito difícil falar sobre o usuário típico das linguagens aqui dentro da Microsoft. Os personas nos ajudaram a falar sobre estes usuários típicos, mas isto é uma faca de dois gumes. Tem muita gente que acha que todos os programadores VB são “Mort” e isto não é verdade. Nós temos todo tipo de usuário VB desde Arquitetos Seniores até gente que aca- bou de baixar o VB Express e estão aprendendo a programar. Agora não falamos tanto de personas, e sim do tipo de programador. Agora temos o termo “desenvolvedor oportunista” que é aquele cara orientado a tarefas, que quer terminar o serviço. ALFRED : Então vocês mataram o Mort ?. AMANDA : Eu não diria que nós matamos o Mort. Tem gente aqui que ainda usa o termo internamente, mas não é como falamos do produto hoje em dia. ALFRED : Voltando ao Visual Studio 2008, alguma coisa mudou nos bindings de teclado no VB 2008? LISA : Migrando do 2005 para o 2008, só há uma nova combinação de teclas. Nada foi removido. Nós adiciona- mos um para quando o Intellisense está visível ficar transparente. Nós queremos manter aqueles atalhos de te- clado antigos, então estamos mantendo aqueles atalhos do VB 6. ALFRED : Há alguma novidade nos code snippets? LISA : Nós temos algumas novidades na forma como eles funcionam. Tivemos bastante feedback falando que aqueles campos verdes ficam na tela por muito tempo. Agora se você modificar texto fora do code snippet, isto indica que você terminou de mexer nele e os campos podem sumir. Se mais adiante você quiser voltar ao code snippet e ver os campos novamente, você pode clicar nele com o botão direito e selecionar “Show Snippet Hig- hlighting” ALFRED : Ao contrário do C#, o Visual Basic 2005 não veio com refactoring. Este era fornecido por terceiros. Alguma coisa mudou no VB 2008? LISA : Não foi incorporado ao produto ―principal‖, mas estamos bastante contentes com a solução atual de se baixar separadamente o add-in do MSDN Dev Center gratuitamente. Como a gente não colocou isto dentro do produto, tivemos tempo para trabalhar com outras coisas e colocá-las no produto. A Developer Express, desen- volvedora do add-in, fez um excelente trabalho e agora temos o dobro de “refactorings” que tínhamos na ver- são 2005.

Entrevista - Amanda e Lisa ALFRED : Muito se tem falado de LINQ. Por onde você navegue você vê material sobre LINQ. Você acha que tem alguma coisa que não esteja sendo divulgado o bastante? Recursos interessantes sobre os quais as pessoas não estejam falando? AMANDA : Eu acho que uma das coisas que é particular ao VB 9 é a integração com XML que é parte do LINQ e que basicamente te permite copiar um documento XML e colá-lo dentro do editor de Visual Basic e você terá uma experiência semelhante ao que você tem com o editor XML hoje. Não é somente sobre copiar e colar blocos estáticos de XML. Você também pode usar aquelas expressões conhecidas do ASP clássico “<%=” e “%>” e inserir no meio qualquer expressão válida do Visual Basic. Ex.: Dim d As Date = Today Dim x As XElement = <%= d %> Console.WriteLine(x.ToString()) Isto faz com que o recurso seja bastante poderoso e faz com que seja bastante fácil escrever o seu documento XML dinâmico, mas combinado com LINQ, você pode incluir uma query expression dentro do documento X- ML. Isto significa que o VB agora pode substituir o XSLT em alguns cenários. É bastante poderoso. ALFRED : Era o que eu ia dizer: É realmente bastante poderoso. E nós não temos este recurso no C#. AMANDA : Este recurso é específico ao VB. Em C# você usaria uma construção funcional usando a API Linq to XML. Para criar o mesmo XML você faria algo como: DateTime d = DateTime.Today; XElement x = new XElement("ProcessLog", new XElement("Process", d)); Você pode usar o C# como uma espécie de XSLT, mas é o recurso de XML literal do VB que elimina a barreira da API. Você não precisa pensar na API. Você pensa somente no documento. ALFRED : É bem legal não ter que pensar na API. Eu vi o mesmo tipo de coisa sendo feita em outras linguagens com relação ao processamento de textos. Realmente facilita a nossa vida. Que tipo de coisa podemos esperar do VB na versão que virá depois do Orcas? Eu soube que existe um protó- tipo chamado VBx que será hosteado. AMANDA : O que estamos tentando fazer é pegar a experiência de usar o VB a linguagem, o compilador a ex- periência de edição e hospedá-lo num contexto fora do Visual Studio. Uma das coisas interessantes a se pensar é como usar esta tecnologia na console de linha de comando para que você possa usar a API do PowerShell para escrever scripts usando VB. Ainda estamos bem no comecinho do estágio de planejamento e brincando com protótipos. Parece que vai ficar bom.

Artigo: Novidades do Biztalk Server 2006 R Recentemente lançado, o Microsoft BizTalk Server 2006 R2 é a quinta versão do produto. Por ser, fundamentalmente, um release de atualização, a mudança não foi tão radical comparada às anteriores, mas as novidades são muito interessantes e algumas eram bastante aguardadas, como o alinhamento do produto as novas tecnologias Microsoft. A nova versão inclui algumas coisas realmente novas, além da atualização de algumas características importantes, que aumentam bastante as capacidades do Servidor BizTalk, como veremos a seguir. EDI O EDi (Electronic Data Interchange – Troca Eletrônica de Dados) é um dos meios predominantes de troca de dados eletronicamente. Pouco utilizado no Brasil (eu mesmo nunca tive oportunidade de trabalhar com esse formato em anos de experiência com BizTalk Server) represen- ta aproximadamente 75 por cento de todas as transações eletrônicas e cresce em média de 5 a 7 por cento por ano, segundo dados da Mi- crosoft. O uso de EDI implica sintaxe de mensagem e padrões (incluindo ANSI X12 e UN/EDIFACT), protocolos de mensageria e transportes. O BizTalk Servidor 2006 R2 processa mensagens de EDI usando Receive e Send pipelines específicos que podem fazer o parse e a serialização de mensagens EDI. As funcionalidades referentes ao EDI foram atualizadas sensivelmente melhorando em muito a sua performance. AS/ As transações de EDI transmitidas pela Internet (EDI over the Internet - EDIINT) são uma alternativa crescentemente popular a enviar e rece- ber EDI usando value-added networks (VANs). Usar a Internet para troca de dados reduz custos, aumenta eficiência, e tem vantagens em ter- mos de redundância e escalabilidade. Para dar suporte a esta tendência de crescimento, o BizTalk Servidor 2006 R2 suporta EDIINT AS/2 (Applicability Statement 2). AS/2 é uma especificação que permite o transporte de dados de negócio usando a Internet de maneira segura. O BizTalk Servidor 2006 utiliza “ AS/2- defined methods ” para enviar, receber, encriptar, decriptar, comprimir, descomprimir, assinar e verificar assinaturas entre parceiros usando HTTP sobre a Internet. O BizTalk Server ajuda a assegurar a segurança das mensagens pelo uso de chaves de encriptação, assinaturas digitais e certificados. O EDI e AS/2 do Microsoft BizTalk Server 2006 R2 executa os seguintes processamentos AS/2: Recebimento de mensagens codificadas EDIINT AS/2 sobre transporte HTTP/HTTPS. Envio de mensagens codificadas EDIINT AS/2 sobre transporte HTTP/HTTPS usando operações de HTTP POST. São Implementados como “solução de múltiplas cargas de suporte”, permitindo ao usuário enviar EDI, XML, ou outros dados de negócio seguramente pela Internet. Retornar uma notificação de disposição de mensagem (Message Disposition Notification - MDN), tanto no corpo da mensagem em um HTTP response (conhecido como um MDN síncrono), quanto através do novo operador HTTP POST para uma URL para o sender origi- nal (conhecido como um MDN assíncrono). Fornece a capacidade de aplicação de propriedades de processamento em transporte de documentos AS/2. Fornece o status das transmissões AS/2 a partir da lista de mensagens AS/2 e suas respectivas correlações (MDNs). Permite acesso as mensagens EDI quando enviadas via AS/2. Microsoft BizTalk RFID Radio Frequency Identification (RFID) é uma tecnologia originada nas forças armadas americanas que usam tags que emitem sinais de rádio, e dispositivos chamados “readers” que captam esses sinais. Os leitores (readers) então se comunicam com softwares para transmitir as informa- ções da tag. RFID pode ser amplamente utilizado vários cenários, tais como: supply chain, ativos de alto valor, documentos, farmacêutico, e muitos outros. 7

Artigo: Novidades do Biztalk Server 2006 R Por questões referentes a custos, o RFID ainda é uma tecnologia não muito implementada. Mas é uma das novidades mais interessantes pre- sente no BizTalk Server 2006 R2 porque, ao serem superadas as questões de custo dos chips, o mercado espera por larga utilização da tecno- logia RFID. O Microsoft BizTalk RFID é projetado para fornecer uma plataforma escálavel e expansível para desenvolver, instalar, e administrar RFIDs. Incluído nos componentes chave podemos encontrar uma framework de abstração dos dispositivos e um conjunto robusto de ferramentas que capacitam a construção de RFID baseados em tecnologia .NET e aplicações de sensores com: Serviços plug and play para suporte a diversos dispositivos RFID usando o Device Service Provider Interface (DSPI). Serviços de aplicação para interação com dispositivos e leitores de tags para filtragem, transformação e agregação de eventos. Ferramentas para gerenciamento de dispositivos e desenvolvimento de processo de negócio baseados em RFID (RFID Manager). Pontos de extensibilidade (event handlers) para implementar soluções baseadas em padrões. Principais Benefícios Gerenciamento e configuração uniforme para dispositivos RFID heterogêneos. Simplicidade Operacional. Inovadora arquitetura de processos que separa as atividades de design das atividades de deployment. Comunicação síncrona e assíncrona com dispositivos RFID. Plataforma de desenvolvimento extensível para criação de event handlers customizados. Parte integrante do Windows Server System. O RFID também permite a clientes e parceiros de negócio a criação de soluções fim a fim e real-time que: Conectem a aplicações line-of-business (LOB) usando adaptadores que podem executar workflow de negócios de longa duração (controle de inventários, por exemplo) fazendo uso de todo potencial de business-to-business (B2B) e business process management (BPM) do BizTalk Server. Uso de aggregations e views do Business Activity Monitoring (BAM) no BizTalk Server para a visualização fim a fim do processo e a visão analítica do fluxo de eventos RFID durante a execução do processo de negócio. Utilização do SQL Server para o gerenciamento de dados e Business Intelligence. Criação e deploy de regras de negócio utilizando o Business Rules Engine (BRE) para executar as decisões de negócio baseado nos even- tos de entrada. Utilização do Microsoft Operations Manager (MOM) para monitoração e troubleshoot que adicionarão escalabilidade e tolerância a falhas a soluções RFID já implementadas em ambiente produtivo. Adaptador WCF Penso que é essa a novidade mais interessante presente na nova versão do BizTalk Server. O BizTalk WCF (Windows Communication Foun- dation) adapters possibilita ao Microsoft BizTalk Server 2006 R2 comunicação com aplicações WCF. Se você ainda não sabe o que é o WCF recomendo que procure mais informações, pois aplicações WCF são a nova estratégia da Microsoft para aplicações distribuídas, com especial atenção a SOA (Service Oriented Architecture – Arquitetura Orientada a Serviços) e deve ser am- pla e rapidamente adotada. 8

Artigo: Novidades do Biztalk Server 2006 R Line-of-business (LOB) adapters Um dos principais objetivos do BizTalk Server 2006 é facilitar a troca de documentos de negócio entre parceiros. Para auxiliar a atingir esse objetivo o BizTalk Server 2006 R2 inclui diversos adaptadores LOB que possibilitam a conectividade entre o BizTalk Server e aplicações LOB usando dados de protocolos e formatos de documentos comumente reconhecidos. Windows SharePoint Services adapter - O suporte para esse adaptador agora inclui Windows SharePoint Services 3.0, enquanto conti- nua mantendo para o Windows SharePoint Services 2.0. Enterprise Single Sign-On 4. A nova versão do SSO contém as seguintes funcionalidades: Management agent for MIIS : Objetiva simplificar o gerenciamento de credenciais mapeadas no SSO database. Mapeamentos podem ser criados e deletados no SSO usando o Microsoft Identity Integration Server (MIIS). SSO também pode receber mudanças de senha do através de seu agente de gerenciamento. Microsoft Management Console (MMC) snap-in : No Enterprise SSO Administration console, administradores SSO podem visuali- zar status e gerenciar servidores SSO remotamente usando o novo snap-in MMC. Mapping Wizard for Affiliate Applications : Permite que administradores de SSO criem mapeamentos usando um wizard quando o nome externo de conta é baseado numa conta de domínio Windows. Adicionalmente, a senha inicial também pode ser especificada quan- do se criar o mapeamento para um usuário. Direct Password Sync from Windows : Habilitando esta opção em um Affiliate Application permitirá que serviços de EntSSO sincro- nizem a senha na base de dados do SSO diretamente. A mudança de senha de Windows é recebida de qualquer Microsoft Password Change Notification Service (PCNS) ou MIIS. Isto é útil, por exemplo, onde uma conta de domínio Windows mapeada é criada na base de dados de SSO. Password filtering : Para cenários ―single sign-on and password sync‖, se um filtro é definido, então a senha filtrada é retornada ao cha- mador ou ao adaptador de sincronização de senha. Filtros básicos incluem as opções para upper case and lower case , truncagem, e remo- ção de caracteres especiais. Filtros avançados incluem opções para substituição de caracteres e a capacidade de acomodar um caracter na frente ou fim. Backward compatibility and upgrade : SSO 4.0 pode atualizar versões anteriores de SSO. Isto é feito para atualizar o master secret server, que também atualizará o SSO database. O upgrade do master secret server e do SSO pode trabalhar com todas versões prévias de servidores de SSO. Conclusão Sempre alinhado as novas tendências e tecnologias (tanto as do universo Microsoft, quanto dos padrões de mercado que se consolidam), o Microsoft BizTalk Server 2006 R2 mais uma vez prepara um grande salto para o futuro das aplicações distribuídas com os novos adaptadores WCF. A constante evolução e atualização do produto se mostra presente nas importantes atualizações implementadas na versão R2 e nos dão uma boa idéia do que está por vir para a próxima versão, que deve ser lançada no final de 2008 ou começo de 2009. Espera-se que no futuro o BizTalk Server esteja ainda mais profundamente alinhado aos investimentos recentes da Microsoft na frame- work .NET, especialmente ao Windows Communication Foundation e Windows Workflow Foundation. É esperar para ver. 1 0 Feio Tomaz (feiotomaz@codificandomagazine.net) é tecnólogo em Processamento de Dados, formado pela Fatec-Americana. MCTS em BizTalk Server 2006, trabalha desde 2004 como consultor es- pecialista em Desenvolvimento de Processos de Negócio e Soluções de Integração. Atualmente é consul- tor da ITGROUP. Mantêm uma longa relação de amor (e algumas vezes ódio) com novidades e mudanças.

Artigo: Introdução às “Fábricas de Software” Esclarecendo as coisas... Antes de mais nada, vamos começar esclarecendo algumas coisas para evitar confusão. Na área de desenvolvimento, o ter- mo “factory” (fábrica) é utilizado em pelo menos três diferentes situações (até onde eu conheço!), embora elas possam es- tar relacionadas. Primeiro, traduzindo para o português, chamamos de “Fábrica de Software”, a empresa que executa servi- ços de tercerização para a construção de softwares. Esse uso é bastante conhecido no Brasil, e diversas empresas oferecem esse serviço. Uma determinada empresa interessada na produção de um “sistema” transfere parte ou todo o trabalho de construção do mesmo para uma fábrica de software. Nesta fábrica existe toda a estrutura (ou deveria existir!) para que este sistema seja produzido da forma mais rápida e barata possível, seguindo um modelo de fábrica realmente, com processos e funções bem definidos. Um outro uso do termo “factory”, embora menos conhecido, mas que pode causar alguma confusão aos desavisados, são os padrões “factories” de projeto, que estão relacionados à orientação a objeto (“Factory Method” e “Abstract Factory”). Já no terceiro uso do termo, “Software Factory” diz respeito a um conjunto de ferramentas, modelos, wizards, arquivos de configuração, application blocks, geradores de código, padrões, documentos e outros, que podem ser utilizados pelos arqui- tetos e desenvolvedores com a finalidade de agilizar a entrega de um produto de software. E é exatamente deste tipo de “factory” que iremos falar neste artigo. Como chegamos até aqui? A busca por produtividade no desenvolvimento de software não é algo novo. Reusabilidade de requisitos, modelos, código e outros artefatos é um dos objetivos desta busca. Iniciativas para tentar estabelecer padrões industriais na produção de soft- ware são do tempo das ferramentas CASE (Computer-Aided Software Engineering). Hoje temos termos como Model- driven development (MDD), Component-Based Development (CBD), MOF (MetaObject Facility), BPMN (Business Process Modeling Notation), SysML (Systems Modeling Language), DSL (Domain Specific Language), só para citar alguns. Por outro lado, a padronização talvez seja uma das maneiras mais simples de caminhar na direção da produtividade. Padrões de nomenclatura de código, padrões para o uso de determinadas bibliotecas, melhores práticas (ou para se evitar as “piores práticas” !), padrões de projeto (os chamados “design patterns”), etc. Conforme a complexidade do software aumenta, os prazos de entrega diminuem, a velocidade de mudança dos requisitos de negócio aumenta ou amadurecem durante a construção. Hoje uma aplicação “normal” tem que consumir diversos serviços, enviar email, atualizar bases de dados diferentes, gerar alertas para dispositivos móveis, acessar sistemas legados, gerar dife- rentes formatos de interface com o usuário, aplicar recursos de autenticação, controle de acesso, auditoria, etc. Ou seja, existe toda uma infra-estrutura que poderia (e deveria) ser reaproveitada de aplicação para aplicação. Enfim, o cenário é caótico, o desafio é enorme. Mas calma, vamos procurar não perder a cabeça. Inicialmente tínhamos as diretrizes para desenvolvimento publicadas na forma de documentos de padrões. A própria Micro- soft sempre disponibilizou material de referência ou melhores práticas. Além disso, tínhamos aplicações de referência, para que o desenvolvedor pudesse se basear em “alguma coisa” na hora de aplicar uma determinada tecnologia que ainda estava de certa forma obscura. Depois disso, já na era .NET, vieram os “Application Blocks”, que eram, como o próprio nome diz, “blocos” de software que poderiam ser utilizados (ou alterados), para se ganhar tempo e qualidade na construção de aplicações .NET. Blocos de acesso à dados, logging, tratamentos de erro, segurança, etc. Esse blocos foram sendo reagrupados para se tornarem mais tarde as conhecidas “Enterprise Libraries”. Aliás, o desenvolvedor .NET que não usa que me desculpe, mas provavelmente ele deve gostar de escrever bastante código e a essa altura já deve estar com algum tipo de “tendinite”. Brincadeira, o obje- tivo dessas bibliotecas é exatamente prover a infra-estrutura necessária de desenvolvimento para a aplicação, permitindo focar na lógica de negócio, para tornar o ciclo de desenvolvimento menos penoso para o desenvolvedor. Seguindo essa mesma linha, percebemos que já existe uma série de recursos para dar suporte e agilizar o desenvolvimento, porém eles estão “dispersos” na forma de documentação, guias, bibliotecas, aplicações de exemplos, etc. Isso exige um es- forço razoável para que possamos reunir, compilar e absorver essas “toneladas” de informações.

Artigo: Introdução às “Fábricas de Software” Fique atento aos pré-requisitos para a instalação, que dependem da fábrica que será instalada. Eles podem variar desde o GAX (Guidance Automation Extensions), que é o ―run-time‖ necessário para que o Visual Studo 2005 seja capaz de execu- tar os pacotes, até o .NET Framework 3.0, Microsoft SQL Server 2005 Compact Edition Runtime, e outros componentes opcionais como o GAT (Guidance Automation Toolkit) e Visual Studio 2005 extensions para .NET framework 3.0 (WCF & WPF). Um componente interessante citado é o GAT , que é exatamente a ferramenta que possibilita a criação de pacotes novos de guias. Ou seja, É através do GAT que o arquiteto da sua empresa poderá criar um determinado guia de desenvolvimento (que inclui código, documentação, templates, wizards, etc) e distribuir para os demais desenvolvedores da equipe. Onde eu consigo mais informação? http://msdn2.microsoft.com/en-us/practices/default.aspx Conclusão Espero que este artigo tenha dado uma idéia do que se tratam as software factories. Para aqueles que estão chegando agora, realmente, existe um “mundo novo” a ser explorado. Termos novos, ferramentas novas e conceitos novos. A medida que caminhos da produção artesanal de software para a produção “automatizada”, ferramentas que viabilizem essa transição tornam-se fundamentais. A idéia de “operários de software” nunca me agradou muito, mas podemos encarar as coisas por um outro ângulo : todo o esforço de codificação realizado até agora em processos repetitivos e entediantes poderá ser “deslocado” para áreas mais “nobres” durante a construção de uma aplicação. Essas áreas seriam exatamente onde o desen- volvedor é insubstitível, ou seja, nas coisas que não podem ser automatizadas. Felipe Cembranelli (cembranelli@excite.com) é graduado em Ciências da Computação pela Unesp e pós-graduado em Telecomunicações. Atua a 11 anos na área de desenvolvimento e é certificado na plataforma Microsoft desde 2001. Atual- mente trabalha na equipe .NET da Sanmina-SCI em Campinas. Não sente saudade da época do Visual Basic 3.0.

Artigo: Integrando aplicações .Net com SAP R Olá pessoal, nesse artigo estarei demonstrando algo que não é muito comum entre os desenvolvedores .Net, e por esse motivo, existe uma carência muito grande desses profissionais nas grandes empresas. Para quem não conhece, o R3 é um ERP da empresa alemã SAP, atualmente na versão 6 o R3 (da versão 6 em diante é co- nhecido como ECC), está presente em 53% das grandes empresas do planeta, e no Brasil ele é usado por empresas como Petrobras, Vivo, Claro, TIM, Embratel, Eletropaulo entre outras. O R3 possui uma linguagem própria, o ABAP, também pos- sui uma camada de gerenciamento de acesso a tabelas, ou seja, um programador ABAP não acessa diretamente o banco de dados, tudo é feito no R3 e o próprio internamente persiste as informações no banco de dados. Devido a facilidade de criação de telas de gerenciamento e relatórios, tornou-se interessante para as empresas terem aplica- ções externas que conversam diretamente com o R3, até pelo fato da aplicação poder acessar informações do negócio em tempo real, por exemplo um software de ponto de venda, sites con informações detalhadas até mesmo aplicações para efei- tos gerênciais. Em uma parceria feita entre SAP e Microsoft foi desenvolvido um componente para o Visual Studio 2003 chamado de SAP- DotNetConnector, este consegue acessar RFCs que estão flegadas com acesso remoto no R3. Esse projeto será demonstrado no Visual Studio 2003, porém, para as pessoas que já usam o Visual Studio 2005, como eu, podem apenas criar uma DLL no VS2003 e usa-la no VS2005 acessando todos os seus recursos. Primeiro é necessário instalar o SAPDotNetConnector 2.0, essa instalação já aplica algumas coisas no VS2003 para facilitar o acesso à RFCs. Na figura abaixo, estou mostrando uma RFC que criei como exemplo, esta estará recebendo um parametro que será o ID de um cliente (parâmetro opcional) e estará retornando uma tabela de Clientes com todos ou apenas um referente ao ID passado. Parâmetro de entrada O que é uma RFC? RFC é uma função desenvolvida em ABAP, essa funciona como qualquer tipo de função, recebendo parâmetros e retornando parâmetros. No R3 quando se cria uma RFC, é possível habilitar uma flag de acesso remoto, para que assim seja visualizado por outros aplicativos.

Artigo: Integrando aplicações .Net com SAP R Execução da função: Resultado: Nesse momento, a parte que será feita no R3 está pronta, observem na ultima figura que quando não passamos nenhum parametro a função returna todos os usuários.

Artigo: Integrando aplicações .Net com SAP R P R O J E T O Já com o SAPDotNetConnector instalado, vou criar um projeto Windows Application. Indo ao “Server Explorer”, ao pres- sionar o botão Refresh vai aparecer um icone do SAP, Vou expandindo em “Application Servers” e adiciono uma conexão com o servidor do ambiente no qual desenvolvi a RFC, expando para Functions e efetuo um “filtro” para ver as RFCs, veja va figura abaixo. Feito isso, adiciono uma classe no projeto, selecionando “New Item”, mais aparecerá outro tipo de classe, veja na imagem abaixo.

Artigo: Integrando aplicações .Net com SAP R Após exetutar o projeto aparecerá todos os clientes na grid conforme mostra a imagem abaixo. A versão do R3 usada na demonstração é a versão 4.6C, a partir da versão 6 a SAP implantou o conceito de SOA no ECC, dessa forma é possível acessar qualquer informação de RFC por meio de Web Services. Conclusão: Com esse artigo, eu quis demonstrar como é possível fazer acessos remotos à RFCs no R3. Atualmente as gran- des empresas estão querendo cada vez mais aplicações que conectem em tempo real com informações do negócio, o SAPDot- NetConector ajuda e muito à acessar essas informações. Até o próximo artigo. Weliton Carlos Flor é MCTS Web Applications e analista de sistemas na Stefanini, trabalha com .Net a 4 anos sendo 2 focado em SAP

Artigo: Mundo Acadêmico Queria contar-lhes uma experiência que creio que é comum a todos no ambiente universitário, principalmente. Ouvimos que o Java é a linguagem ideal para o ambiente universitário, que ela tem isso, tem aquilo, é orientada a objetos, que é a úni- ca capaz de ensinar aos alunos o verdadeiro conceito de programação orientada a objetos. Dentre outros mitos, ouvimos que as linguagens C#, Visual Basic.NET e outras não “servem” para que aprendamos o básico de algoritmos e fluxogramas, isto é, que não são próprias para dar os primeiros passos no estudos das linguagens de programação. Vamos desmistificar essa série de besteiras e “mitos” bobos e ver quão práticas são essas linguagens para a aprendizagem nas disciplinas de Algoritmos e Linguagens de Programação. Vamos abordar aqui um problema bem simples, que é a resolução de uma equação de segundo grau, da forma: ax²+bx+c = 0 A resolução dessa equação usa a fórmula de resolução de Báskara, que nos diz: em que x é a raiz da equação de segundo grau, além disso, dá-se o nome de delta (∆) é chamado de discriminante da equação e quem nos permite dar casos condicionais para a resolução da equação de segundo grau, como segue: Se ∆ >0 = > Existem duas raízes reais diferentes. Se ∆ =0 = > Existem duas raízes reais e iguais. Se ∆ <0 = > Não existem raízes reais. Em que ∆ = b^2 – 4ac. O fluxograma desta aplicação (que pode ser melhorado, este é apenas um exemplo prático feito rapidamente para que mos- tremos a simplicidade de trabalhar com o .NET) é dado abaixo: