A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Linguagens de programação. Introdução C# possui melhor balanceamento entre poder e produtividade se comparado com C e C++. Ambiente sincronizado com os.

Apresentações semelhantes


Apresentação em tema: "Linguagens de programação. Introdução C# possui melhor balanceamento entre poder e produtividade se comparado com C e C++. Ambiente sincronizado com os."— Transcrição da apresentação:

1 Linguagens de programação

2 Introdução C# possui melhor balanceamento entre poder e produtividade se comparado com C e C++. Ambiente sincronizado com os padrões Web que proporciona a fácil integração com as aplicações existentes. Possibilidade de codificar em baixo nível quando e se a necessidade aparecer. Linguagem Orientada a Objetos Alto grau de fidelidade com C e C++

3 Visão Geral Produtividade e seguranca Abraça os padrões de programação Web: framework extensivo Elimina erros de programacao mais comuns em C++ com as seguintes implementacoes: coleta de lixo, variaveis inicializadas automaticamente, variaveis sao type-safe. Reduz os custos de desenvolvimento do dia a dia com suporte pré-construído para versioning

4 Visão Geral Poder, expressividade e seguranca Melhor mapeamento entre processos abstratos de negocio e a implementacao real do software Interoperabilidade extensiva Suporte nativo para o Component Object Model (COM) e APIs baseadas em Windows®. Uso restrito de ponteiros nativos e premitido.

5 Especificação da Linguagem Um nome nao pode ser igual a uma palavra-chave da linguagem, com uma unica excecao: podemos usar uma palavra-chave de C# na frente. O nao e parte do identificador, apenas fornece um contexto para interpretar a palavra-chave como interpretador. Os tipos em C# sao tipos de valor e tipos de referencia. Uma constante e uma classe cujo valor pode seratribuido em tempo de compilacao. class Constantes { public const int A = 1; public const int B = A + 1; }

6 Especificação da Linguagem Arrays: Unidimensionais: int[] arr = new int[5] // Declaracao e construcao Multidimensionais: int[,, ] a = new int[,, ] {{1}, {4}, {8}}; // declaracao e construcao de um array de inteiros tridimensional int [][][] j; // array de (array de (array de inteiros))

7 Especificação da Linguagem Classes: FormIntuitive meaning publicAccess not limited protectedAccess limited to the containing class or types derived from the containing class internalAccess limited to this program protected internalAccess limited to this program or types derived from the containing class privateAccess limited to the containing type

8 Os fontes tem extensao.cs e sao compilados diretamente para um unico Assembly (.exe ou.dll no formato PE). Os executaveis possuem informações de versão detalhadas tanto sobre o próprio módulo como os demais módulos referenciados, informações detalhadas de todos os tipos implementados no arquivo e Código MSIL – Microsoft Intermediate Language. Um executável ou DLL pode tanto chamar classes da biblioteca ou de outros executáveis como também criar classes derivadas de classes localizadas em outros executáveis. Compilação

9 Ambiente gerenciado: O executável não contém código Intel x86 e sim código MSIL com chamadas à biblioteca de classes; O gerenciamento de memória é feito automaticamente com o uso de um coletor de lixo As atribuições têm o tipo validado; Operações que podem comprometer a segurança, como abrir um arquivo, exigem permissões especiais. O compilador pode, em tempo de execução / compilação, verificar e garantir que o programa não faça nenhuma operação que possa comprometer a segurança e integridade do sistema.

10 Compilação Independência de CPUs e sistema operacional: basta que exista um runtime do.NET para o programa rodar. O sistema de runtime pode fazer verificações de segurança impossíveis caso o código fosse realmente executável. Os programas podem rodar em uma espécie de caixa de areia e não danificar o sistema hospedeiro. A compilação final traz performance melhor que a obtida em ambientes interpretados. Em tempo de execução o código do assembly é finalmente compilado, método a método, para o ambiente final com um JIT- Just In Time Compiler. Isto traz as seguintes vantagens:

11 Compilação Uso de variáveis não atribuídas; Parâmetro out não atribuído na função de chamada; Parâmetro ref não atribuído na função de chamada; Existência de código inatingível; Possibilidade de uma função não receber o valor de retorno; Switch/Case sem break nas opções; Verificações em tempo de compilação: Compilador alternativo gratuito pode ser obtido em:

12 Bibliografia Lippman, Stanley B., C#: um guia pratico, Bookman,


Carregar ppt "Linguagens de programação. Introdução C# possui melhor balanceamento entre poder e produtividade se comparado com C e C++. Ambiente sincronizado com os."

Apresentações semelhantes


Anúncios Google