Pesquisar neste blog

quinta-feira, 29 de agosto de 2013

Entendendo Structs no Microsoft.Net: memória stack e heap.

Recentemente um aluno muito aplicado me perguntou detalhes sobre a alocação de memória da estrutura de dados Structs no C# e, reuni informações interessantes sobre essa estrutura.

O artigo "C# Heap(ing) Vs Stack(ing) in .NET: Part I" mostra um modelo conceitual da estrutura da memória Stack e Heap no MS.NET:


heapvsstack1.gif

No artigo "Six important .NET concepts: Stack, heap, value types, reference types, boxing, and unboxing", o autor mostra um "teste de mesa" com diversos códigos e o respectivo efeito na memória, inclusive, com análise de tempo de alguns destes procedimentos.



Bem, esse artigo já responde a questão de qual é a memória utilizada para alocar o tipo de dados Struct, uma vez que, "Struct Types" são descendentes da classe "Value Types" a mesma dos tipos primitivos (int, bool, etc..) que são considerados estáticos e portanto irão alocar memória Stack.

No MSDN existe um comparativo entre classes e structs no artigo "Classes e estruturas (guia de programação do C#)".

No artigo "Structs (guia de programação do C#)" é possível encontrar algumas limitações dos structs em relação as classes no Microsoft.NET:
  • Em uma declaração struct, campos não podem ser inicializados a menos que eles sejam declarados como const ou static.
  • Uma struct não pode declarar um construtor padrão (um construtor sem parâmetros) ou um destruidor.
  • Structs são copiados na atribuição. Quando uma estrutura é atribuída a uma nova variável, todos os dados são copiados e qualquer modificação na nova cópia, não é refletida na estrutura original. Isso é importante lembrar-se ao trabalhar com coleções de tipos de valor, como um Dictionary < string, myStruct >.
  • Structus são tipos de valor e classes são tipos de referência.
  • Diferentemente das classes, structs podem ser instanciados sem usar o operador "new".
  • Structs podem declarar construtores com parâmetros.
  • Uma estrutura não pode herdar uma outra estrutura ou classe, e também não podem servir como base de uma classe. Todos os Structs são herdados diretamente de System.ValueType, o qual herda de System.Object.
  • Uma estrutura pode implementar interfaces.
  • Um Struct (estrutura) pode ser usada como um tipo nullable (anulável) e pode ser atribuída um valor nulo.

No artigo "struct (referência de C#)" existe um exemplo de implementação em C# de um Struct e uma definição interessante:
Um tipo struct é um tipo de valor normalmente usado para encapsular pequenos grupos de variáveis relacionadas.


Lembram do tipo "Record" do pascal (delphi)? 

No artigo "Structured Types (Delphi)" o autor faz a seguinte afirmação sobre o tipo "Record":
A record (analogous to a structure in some languages) represents a heterogeneous set of elements.

Neste outro artigo, "Understanding and Using Record Data Types in Delphi",o autor descreve o record como:
Record types define fixed collections of items of different types.

CONCLUSÃO:
"Um Struct (estrutura) é uma coleção de variáveis alocadas estaticamente na memória (Stack)."

[]´s Flavio Barbosa.






quarta-feira, 3 de abril de 2013

Identificando o link a ser usado no Client Git para um projeto TFS (Team Foundation Server)

Os bons clients Gits permitem identificar qual o computador onde o repositório Git está alocado, veja imagem abaixo do Git Extension:


A fim de identificar qual o link do repositório que será clonado do TFS (Team Foundation Server), siga os seguintes passos:

1. Acesse o portal da sua coleção de projetos no browser (minhaempresa.visualstudio.com) ;
2. Clique em "Browse All..." para visualizar a lista de projetos;
3. Escolha o projeto Git desejado e clique no botão "Navigate";



4. A tela inicial do projeto é aberta, clique na guia "CODE";






Pronto! É só selecionar o link a frente do texto "git clone", copiar e colar no client Git da sua escolha.




No caso do client Git Extension a configuração do clone ficou da seguinte forma:

Quando clicar no botão "Clone" o usuário e a senha lhe serão solicitadas e o usuário não pode ter arroba ("@"), se o seu usuário possuir arroba ("@") será necessário criar um ID Alternativo no TFS. Para saber como criar um ID Alternativo clique aqui.


[]´s Flavio Barbosa

Criando ID Alternativo para usar projeto Git com TFS (Team Foundation Server)

Para usar um projeto Git com TFS (Team Foundation Server) é necessário criar um ID Alternativo para o seu usuário no TFS porque o arroba ("@") não é permitido.

1. Acesse o portal da sua coleção de projetos no browser (minhaempresa.visualstudio.com) ;
2. Clique no seu nome de conta no canto superior direito do browser;
3. Escolha a opção "My Profile";



4. Na janela que se abre, clique na Guia "CREDENTIALS";

5. Depois na opção para ativar as credenciais alternativas "Enable alternate credentials";

7. Defina um ID alternativo sem o símbolo de arroba "@".

6. Defina a senha e salve.

O ID alternativo para o seu usuário do TFS está habilitado e você deve usar esse ID para se conectar ao projeto Git em qualquer um dos clients existentes.

[]´s Flavio Barbosa.

quarta-feira, 27 de março de 2013

AppsDay - Windows 8

O que é o AppDay?

Dia em que toda comunidade de desenvolvedores e entusiastas por tecnologia do país serão convidados a participar de um evento virtual único.

A Microsoft apoiará cada desenvolvedor que nesta data, tiver interesse em criar e submeter um aplicativo do Windows 8 para a Windows Store.

Todos participantes do evento AppDay receberão um treinamento online de 1 dia totalmente gratuito, além de um certificado da Microsoft. Clique aqui e saiba mais.

Se você quer um certificado Microsoft, submeta uma Aplicação para Windows Store entre
20/04 e 05/05 e inscreva-se abaixo:



quarta-feira, 13 de março de 2013

Maioria dos pacientes prefere atendimento médico virtual, revela estudo

O atendimento presencial nem sempre é a opção mais desejada por muitos pacientes que procuram o serviço de saúde, ou seja, muitos preferem o acesso virtual porque se sentem bastante à vontade para usar tecnologias como meio de interação com o médico.



Esse cenário foi apontado em um estudo global realizado no início deste ano pela Cisco sobre a experiência de clientes da área de saúde. A empresa ouviu 1.547 usuários e profissionais de saúdes de dez países, entre os quais o Brasil.
A preferência pelo acesso virtual foi manifestada por 74% das pessoas consultadas. Assim, o relatório contradiz a ideia de que a interação presencial é sempre a preferida para a experiência de cuidado de saúde.
No Brasil, o porcentual de pessoas que dizem estar abertos ao atendimento médico virtual é ligeiramente superior ao dos demais países envolvidos no estudo: 76%.
Indagados sobre a relação entre contato pessoal e qualidade da assistência médica, 84% dos entrevistados brasileiros afirmaram estar mais preocupados com a qualidade da assistência do que com a presença física do médico na consulta.
Os resultados demonstram que com o uso da tecnologia, a largura de banda e a integração em rede se tornando cada vez mais presente na rotina das pessoas, tanto o aspecto humano quanto o digital passaram a fazer parte da experiência de pacientes.
Com a ajuda da tecnologia o médico pode ter uma interação em tempo real com o paciente, independente da distância e com a mesma qualidade da ação presencial.
A pesquisa também analisou a opinião de consumidores e profissionais do setor de saúde sobre o compartilhamento dos dados pessoais de pacientes, consultas médicas presenciais e comparou com atendimento remoto e o uso da tecnologia para fazer recomendações sobre a saúde individual.
A opinião nestes tópicos foi bastante diferente nos dois grupos (consumidores e profissionais de saúde) e nas dez regiões geográficas analisadas.
O relatório revelou aumento do interesse no acesso à informação de saúde em dispositivos móveis. No Brasil, 42% dos consumidores procuram informações médicas via dispositivos móveis e 34% checam resultados de laboratório antes de ir a consultas médicas.
Os brasileiros também têm interesse em receber recomendações médicas via tecnologia: 76% dos entrevistados gostariam de receber mais indicações sobre saúde nos seus computadores ou dispositivos móveis (o maior índice de todos os países).
À exceção de japoneses e alemães, a maioria das pessoas dos outros oito países envolvidos no estudo se sente à vontade em dispor de forma segura na nuvem a informação de saúde.
Quase metade dos consumidores e dois terços dos profissionais de saúde pesquisados se sentem à vontade para compartilhar e receber informação de saúde através de canais de mídia social.
Embora cerca de metade dos profissionais de saúde acredite que a proteção dos dados seja adequada  à privacidade de informações de saúde e médicos em  seus países, menos da metade dos consumidores ouvidos acredita que essa proteção  seja adequada.
A grande diferença entre a opinião de consumidores e profissionais da saúde é encontrada no Brasil: aproximadamente dois terços dos usuários ouvidos acham que a proteção é adequada, mas entre 8% e 10% dos profissionais de saúde disseram que não.
Nos EUA, por exemplo, cerca de 60% dos profissionais de saúde acreditam na proteção, mas apenas 40% dos consumidores concordam com esta opinião.

« voltar para a lista de notícias

sábado, 9 de março de 2013

Não execute ASP.NET em Produção com debug ativado

A opção de executar a aplicação debugando existente no Visual Studio, inclusive em suas versões Express, deve ser usada somente quando realmente houver necessidade de debugging e nunca quando sua aplicação for para produção, ou seja, for publicada para uso na internet ou intranet. Ao invés disso utilize a opção "Start without debugging" ou pressione "CTRL+F5" ao invés de "F5". 

Vejam um post recente do portal C# Brasil:

Resumo:

  • A compilação de paginas ASP.NET leva muito mais tempo, porque otimizações ficam desativadas;
  • O código pode executar mais lento, porque caminhos adicionais de depuração estão desativados;
  • Muito mais memória é usada pelo aplicativo no tempo de execução;
  • Scripts e imagens baixadas por componentes como Ajax ToolKit ou similares não são armazenados em cachê;
  • Abre uma brecha na segurança, pois as mensagens de erro podem ser exibidas detalhadamente no servidor remoto expondo a aplicação.


[]´s Flavio Barbosa.

quinta-feira, 21 de fevereiro de 2013

CAIXA: primeira Autoridade Certificadora do Tempo da ICP-Brasil

CAIXA: primeira Autoridade Certificadora do Tempo da ICP-Brasil:
carimbodotempoO Instituto Nacional de Tecnologia da Informação (ITI) publicou no Diário Oficial da União desta segunda-feira, 28 de janeiro, o credenciamento da Caixa Econômica Federal (CEF) como Autoridade Certificadora do Tempo (ACT) da Infraestrutura de Chaves Públicas Brasileira (ICP-Brasil). O Carimbo do Tempo, ou timestamp, é um documento eletrônico emitido por uma parte confiável, neste caso a ACT, que fornece o exato momento (hora, dia, mês e ano) da realização de determinada transação eletrônica com base na hora oficial brasileira fornecida pelo Observatório Nacional.

O diretor-presidente do ITI, Renato Martini, afirma ser este um marco histórico para a ICP-Brasil. "Com o credenciamento da ACT CAIXA, a Autoridade Certificadora Raiz (AC-Raiz) passa efetivamente a operar suas instalações enquanto raiz do tempo para a ICP-Brasil, com plataformas tecnológicas que permitem o sincronismo de nossos relógios atômicos com a Hora Legal Brasileira provida pelo Observatório Nacional, e a partir daí, auditar e sincronizar, eletronicamente, os equipamentos de Carimbo do Tempo das ACT credenciadas, neste primeiro momento, da ACT CAIXA. Trata-se de mais um serviço de confiança atribuído e executado pelo ITI em prol da adoção massificada de documentos e processos eletrônicos", avalia.

Na opinião do diretor de Infraestrutura de Chaves Públicas do ITI, Maurício Coelho, a ICP-Brasil passa a prover serviços de emissão de Carimbos do Tempo, outro insumo tecnológico que agregará mais segurança e confiabilidade aos documentos e processos eletrônicos. "O Carimbo do Tempo é uma evidência temporal, ou seja, uma prova, eletrônica, de que na data e hora nele inseridas, as informações eletrônicas existiam na forma e nas condições envolucradas pelo Carimbo do Tempo. Desta forma, as aplicações que necessitem de evidências temporais do momento da realização de uma assinatura digital e do conteúdo assinado, agora terão meios de fazê-lo", destaca. Segundo o diretor, todo documento que gera efeitos jurídicos a partir da data de sua assinatura deve empregar, em tese, Carimbos do Tempo para evidenciar a data e hora da assinatura eletrônica realizada, bem como para a preservação de longo prazo dessa assinatura e assim permitir que ela seja validada no futuro.

CEF fala sobre o credenciamento como ACT ICP-Brasil

Em entrevista à Assessoria de Comunicação do Instituto Nacional de Tecnologia da Informação (ITI), o gerente Nacional de Certificação Digital da Caixa Econômica Federal,Wander Blanco, falou sobre o credenciamento da CAIXA como Autoridade Certificadora do Tempo (ACT). A CEF, que foi a primeira entidade financeira do Brasil a tornar-se Autoridade Certificadora (AC) de 1° nível no âmbito da Infraestrutura de Chaves Públicas Brasileira (ICP-Brasil), considera que o Carimbo do Tempo "agrega valor ao processo já existente, representando uma evolução do esforço iniciado a partir da Certificação Digital".

ITI - A CEF já é uma AC de 1° nível e agora torna-se a primeira ACT dessa Infraestrutura. O que este momento representa para a CEF?

CEF - Ao ter sido credenciada como a primeira ACT, a CAIXA consolida sua infraestrutura interna de Certificação Digital para atender as demandas da empresa. Para nós este é mais um importante marco atingido e que resultou dos esforços conjuntos e de uma grande interação entre as equipes técnicas da CAIXA e do ITI.

ITI - Por que a Caixa Econômica Federal decidiu credenciar-se como Autoridade Certificadora do Tempo?

CEF - A CAIXA é uma instituição que trabalha com grandes volumes de documentos, e estes estão, gradativamente, migrando da forma física para a eletrônica. Hoje, a CAIXA, como AC de 1° nível, já emite certificados digitais que dão validade jurídica à assinatura em documentos eletrônicos. O Carimbo do Tempo agrega valor ao processo já existente, representando uma evolução do esforço iniciado a partir da Certificação Digital.

ITI - Qual é o público-alvo da ACT CAIXA?

CEF - O público-alvo são as áreas de negócio da CAIXA, que possuam ou venham a possuir produtos que tenham como base documentos eletrônicos com Assinaturas Digitais, que necessitem de elementos que permitam a comprovação da validade ao longo do tempo.

ITI - Quais expectativas a CEF têm em relação a sua atuação no mercado das Tecnologias da Informação e Comunicação enquanto ACT ICP-Brasil?

CEF - Inicialmente a CAIXA irá prover as necessidades dos seus processos internos, como abordado na questão anterior. Agora, já é possível a implementação dos demais tipos de assinatura digital, passando a utilizá-las em sua plenitude, em especial as que usam o Carimbo do Tempo, para permitir a comprovação da validade do documento a médio e longo prazo.

Saiba mais - O que é uma ACT?

Uma Autoridade Certificadora do Tempo (ACT) é uma entidade na qual os usuários de serviços de Carimbo do Tempo confiam para emitir Carimbos do Tempo. A ACT tem a responsabilidade geral pelo fornecimento do Carimbo do Tempo, conjunto de atributos fornecidos pela parte confiável do tempo que, associado a uma assinatura digital, confere provar a sua existência em determinado período.

Na prática, um documento é produzido e seu conteúdo é criptografado. Em seguida, ele recebe os atributos ano, mês, dia, hora, minuto e segundo, atestado na forma da assinatura realizada com certificado digital servindo assim para comprovar sua autenticidade. A ACT atesta não apenas a questão temporal de uma transação, mas também seu conteúdo.

Com a constituição da primeira ACT ICP-Brasil, o Padrão Brasileiro de Assinaturas Digitais (PBAD) passa a ser integralmente implementável, pois, das cinco políticas de assinatura (PAs) existentes, somente a básica não faz uso de Carimbos do Tempo, e por esta razão era a única que já vinha sendo implementada por aplicações. A partir de agora, as outras quatro PAs do PBAD, que fazem uso de Carimbos do Tempo, também podem ser implementadas pelas aplicações, conforme a necessidade que se tenha de agregar maior segurança, interoperabilidade e validade jurídica a longo prazo.

terça-feira, 19 de fevereiro de 2013

Rivalidades a parte, este vídeo demonstra bem como transformar informação em dinheiro

A Microsoft tem criado vários vídeos para sensibilizar as pessoas sobre a "quebra de privacidade" do carteiro GMail porque todos que o usam concordam com a violação conforme o termo de privacidade da Google

"Information we collect We collect information to provide better services to all of our users – from figuring out basic stuff like which language you speak, to more complex things like which ads you’ll find most useful or the people who matter most to you online. (...) "

Em português:

"Informações que coletamos
 Nós coletamos informações para prestar melhores serviços a todos os nossos usuários - de descobrir coisas básicas como o idioma que você fala, a coisas mais complexas, como os anúncios que você vai encontrar mais úteis ou as pessoas que mais importam para você online. (...)"

 Vejam os vídeos:




[]´s Flavio Barbosa.

sábado, 16 de fevereiro de 2013

PagSeguro NFC: Solução de pagamento via celular é destaque do Jornal da Band

PagSeguro NFC: Solução de pagamento via celular é destaque do Jornal da Band:
Jornal da Band: PagSeguro NFC
Esse é um post da coluna Nokia na TV que eu não poderia deixar passar em branco.
Ontem o Jornal da Band exibiu uma reportagem sobre pagamento via celular mostrando o PagSeguro NFC e eu até dei um rápido depoimento falando sobre a concepção do projeto.
A repotagem ainda mostra um pagamento sendo realizado em um salão de beleza, onde a transação acontece entre os celulares Nokia N9 e Nokia 808 PureView.

Veja o vídeo da UOL de um salão de beleza:






[]´s Flavio Barbosa




domingo, 3 de fevereiro de 2013

Recuperação da Nuvem: cuidados com dropbox, skydrive e googledrive

São inúmeras as utilizações dos drives virtuais (Google Drive, DropBox, SkyDrive, Box, iCloud, etc.) armazenados na "nuvem computacional" de grandes players do mercado de TI (Tecnologia da Informação) com recursos assustadoramente útil e versátil que permitem acesso aos arquivos digitais em qualquer lugar e dispositivo com conexão a internet.  

Comparação entre alguns drivers virtuais

Na área da saúde, os médicos e paramédicos utilizam para disponibilizar imagens médicas, discutir casos, confeccionar laudos, disponibilizar artigos científicos, etc.. Todavia, não podemos esquecer que os bits e bytes são armazenados em dispositivos eletrônicos, ou seja, em um ou mais servidores distribuídos em algum lugar em solo terrestre e, por este motivo, eles estão sujeitos a danos, perdas e recuperação de dados podendo acarretar perda total ou parcial do trabalho gravado na "nuvem computacional".

Quando um servidor ou conjunto de servidores estão com problemas uma copia de segurança (backup) pode vir a ser restaurada e, este procedimento não é diferente para os servidores que sustentam a "nuvem computacional". Se o servidor foi totalmente danificado e não foi possível restaurar o backup, então, todo o seu trabalho será perdido; se o backup puder ser recuperado, então, seu trabalho recente  poderá ser substituído por uma versão anterior, desatualizada.

Concluímos que a "Nuvem Computacional" é extremamente interessante e útil, mas são necessários alguns cuidados:

  • Faça backup do seu trabalho em dispositivos que fiquem sobre sua guarda;
  • Caso não tenha um dispositivo para backup grave suas informações em drivers virtuais de players diferentes, assim, caso um deles falhe o outro manterá seu trabalho a salvo;
  • Elabore o seu trabalho nas pastas locais do seu dispositivo e não naquelas que estão sendo sincronizadas pelos drivers virtuais (Google Drive, DropBox, SkyDrive, Box, iCloud, etc.). Isto é importante porque se backups forem restaurados nos servidores dos players que mantem o seu driver virtual o seu trabalho recente será substituído por um mais antigo durante a sincronização efetuada por eles.

Estes cuidados poderão salvar o seu trabalho e com certeza lhe pouparão tempo e dinheiro que poderiam ser perdidos no caso de uma recuperação de danos efetuada por um desses players.

[]´s Flavio Barbosa.

Governador de Pernambuco anuncia próxima edição da Campus Party no Recife

Governador de Pernambuco anuncia próxima edição da Campus Party no Recife:
Anderson Falcão

Repórter da EBC
São Paulo - O governador de Pernambuco, Eduardo Campos, anunciou hoje (2), durante visita à Campus Party, em São Paulo, que a próxima edição da feira será realizada no Recife, em julho de 2013. O evento, segundo Campos, colocará a capital pernambucana no mapa estratégico do desenvolvimento da ciência e da inovação no país. O prefeito do Recife, Geraldo Júlio, que acompanhou o governador na visita, disse que com a Campus Party é possível levar tecnologia e conhecimento não apenas para a cidade, mas também para a Região Nordeste.
Em entrevista à Empresa Brasil de Comunicação (EBC), Eduardo Campos comentou a criação da Empresa Pernambuco de Comunicação (EPC), a primeira empresa pública estadual do setor inspirada no modelo da EBC. "O estado precisava se somar ao esforço nacional", disse. Sobre as formas de participação da sociedade na empresa, o governador destacou que um conselho vai garantir o espaço efetivamente público, com participação da sociedade e a serviço da liberdade de expressão.
Campos comentou ainda a eleição de Renan Calheiros (PMDB-AL) para a presidência do Senado. Ele observou que a escolha não atende às expectativas da sociedade para o Congresso Nacional. "Nosso partido foi unânime e defendeu que era hora de fazer uma renovação no Senado, ouvir o que está nas ruas. Entendemos que o resultado deveria ser outro".
Edição: Graça Adjuto
Todo o conteúdo deste site está publicado sob a Licença Creative Commons Atribuição 3.0 Brasil. Para reproduzir as matérias é necessário apenas dar crédito à Agência Brasil