# data[].attributes.body
Mesmo sendo uma linguagem de programação considerada antiga, o C é visto como vantajoso por facilitar a portabilidade de aplicações entre dispositivos. Além de funcionar em quase todos os tipos de sistemas, não exige tanto de performance quanto outras linguagens. Por essa razão, ainda é bastante utilizado em dispositivos com IoT (Internet das Coisas).

# data[].attributes.body
Desenvolvido em 1980, o objetivo do C++ era unir facilidade na hora de escrever códigos de sistemas complexos à agilidade de performance, através da adição de funcionalidades à linguagem C.

Da indústria de jogos ao mercado financeiro, grandes aplicações, sistemas operacionais e microcontroladores, o C++ é bastante utilizado por empresas como Facebook, Adobe, Eletronic Arts (EA) e até mesmo Google e Microsoft.

# data[].attributes.attachment_link.readable_text
Considerada a quarta linguagem mais popular do mundo, segundo o Índice Tiobe da Comunidade de Programação, a linguagem C++ é muito utilizada para o desenvolvimento de sistemas de alta performance, jogos, interfaces gráficas e no ensino sobre orientação a objetos.

Ela foi desenvolvida por Bjarne Stroustrup em 1983 na empresa Nokia Bell Labs. Considerada como uma extensão da linguagem C por utilizar comandos e estruturas dessa linguagem, essa linguagem proporciona maior desempenho, fácil aprendizado, é open source e continua em constante melhorias em suas novas versões.

Vamos aprender mais sobre essa linguagem nos seguintes tópicos:

O que é C++ e para que serve essa linguagem?

C++ é uma linguagem de programação open source orientada a objetos, utilizada tanto como linguagem de máquina quanto para softwares empresariais, acadêmicos, jogos, edição de imagens, fotos e vídeos.

Essas características permitem que ela seja considerada uma linguagem tanto de alto quanto de baixo nível, isso sendo possível pelas bibliotecas e funções que ela possui, o que permite que sistemas desenvolvidos nessa linguagem sejam de alto desempenho, estáveis e seguros.

Aprender a programar nessa linguagem é fácil, razão essa que torna essa linguagem ainda mais atrativa e amplamente utilizada desde a década de 80.

O que significa o símbolo "++"?

O símbolo "++" significa um acréscimo à linguagem C, utilizada como base para o desenvolvimento da linguagem C++. Esse símbolo foi utilizado na linguagem para demonstrar que determinados recursos da linguagem C estariam presentes nela, e novos recursos foram implementados, fazendo da nova linguagem uma das mais utilizadas ao longo do tempo.

Esse símbolo é uma referência ao operador incremental conhecido como "++".

Entenda a história do C++ e saiba como surgiu!

A linguagem C++ foi desenvolvida em 1983 pelo dinamarquês Bjarne Stroustrup na empresa Nokia Bell Labs.

Surgiu como extensão da linguagem C, em que a diferença fundamental entre essas linguagens é o conceito de orientação a objetos, permitindo que a linguagem C++ apresentasse alto desempenho para aquela época.

O ano de 1985 foi marcado pelo seu lançamento comercial e do livro The C++ Programming Language.

Com o decorrer dos anos, novas versões foram lançadas, oferecendo funcionalidades e recursos performáticos, o que permitiu que essa linguagem continuasse se modernizando e se tornasse uma das linguagens mais utilizadas no mundo.

Onde C++ é usado?

C++ é usado para o desenvolvimento de sistemas embarcados, bibliotecas gráficas, jogos, sistemas operacionais, entre outros.

No ensino acadêmico, ela tem grande aceitação porque abrange as linguagens de alto e baixo nível e é open source.

As interfaces gráficas DirectX, OpenGL, SDL e Allegro a utilizam pelo desempenho e interação com a máquina.

Conheça algumas das empresas e sistemas que utilizam essa linguagem:

C++ e a programação orientada a objetos

O conceito sobre programação orientada a objetos é baseado na definição e implementação de tipos de dados e as suas relações, resultado esse que chamamos de objetos. A linguagem de programação C++ utiliza bibliotecas de funções que auxiliam na criação e execução de funções que manipulam esses objetos.

As bibliotecas de funções são conjuntos de procedimentos desenvolvidos para realizarem tarefas específicas diretamente no software. Para utilizá-las, é necessário referenciá-las diretamente no módulo que fará uso desses recursos.

Conheça algumas dessas funções e suas respectivas bibliotecas:

O que é o C++ Stack?

A linguagem C++ permite trabalhar com o conceito de pilha, utilizando o tipo de trabalho conhecido como LIFO. A biblioteca que fornece as funções específicas para acessar esses elementos é chamada de stack.

A biblioteca stack implementa o tipo de estrutura conhecido como pilha, onde os elementos são armazenados sequencialmente nessa estrutura. Para manipulá-los, deve-se respeitar o padrão LIFO, onde o último elemento inserido, será o primeiro a ser retirado da pilha.

Vamos conhecer um exemplo da implementação stack, utilizando o conceito de pilha:

#include <iostream> #include <stack> using namespace std; int main() {     stack<int> stack;     stack.push(30);     stack.push(31);     stack.push(32);     stack.push(33);                stack.pop();     stack.pop();       while (!stack.empty())      {         cout << ' ' << stack.top();         stack.pop();     } }

O resultado dessa operação será:

Entenda o que significa cada linha da implementação acima demonstrada:

#include <iostream>: Biblioteca utilizada para declarar objetos que realizam o controle da leitura e da gravação dos fluxos estabelecidos no código.

#include <stack>: Declaração da classe stack, utilizada para operações de pilha executadas no código.

using namespace std: É utilizado para definir toda a estrutura contida neste (espaço de nome), sendo: constantes, variáveis, funções e os fluxos de execução do código. Essa definição evita duplicidade de estruturas semelhantes contidas no mesmo projeto.

stack<int> stack: Declaração utilizada para a criação de um objeto do tipo pilha, que armazenará somente valores do tipo inteiro.

stack.push: Função utilizada para inserir um determinado valor no objeto do tipo pilha, nesse caso, criado na linha anterior. No código acima, essa função inseriu os valores 30, 31, 32 e 33 no objeto chamado stack.

stack.pop(): Função utilizada para remover o último elemento inserido no objeto do tipo pilha. No código acima, essa função removeu os valores 33 e 32.

while: Recurso utilizado para a repetição de determinadas ações até que a condicional estabelecida neste recurso seja satisfatória. Importante considerar que este recurso utiliza os delimitadores de código chamados de chaves ("{ }").

while(!stack.empty()): Determina a execução das ações contidas neste laço de repetição, enquanto o objeto stackcontenha valores.

cout: Objeto utilizado para a impressão de dados em tela. Conhecido como stream de saída da linguagem C++.

top(): Função utilizada para retornar o elemento superior da pilha, ou seja, como o conceito de pilha armazena os dados de baixo para cima, o código stack.top() irá informar os valores na ordem decrescente.

stack.pop(): Essa função vai remover, em sequência, o valor que foi impresso em tela.

Observe que no final de cada instrução de código, foi utilizado o delimitador de código chamado de ponto-e-vírgula (";"), responsável por indicar o término de execução de cada função ou declaração de variáveis.

Qual a diferença entre as linguagens C, C# e C++?

A principais diferenças entre essas linguagens são:

Linguagem C: linguagem estrutural, de baixo nível, alto desempenho e curva de aprendizado muito alto, utilizada em aplicações que interagem fortemente com o entendimento da máquina;

Linguagem C++: linguagem orientada a objetos, não usa o garbage collector para gerenciar memória, utiliza comandos e estrutura base da linguagem C e curva de aprendizado baixo;

Linguagem C#: linguagem orientada a objetos, alto desempenho, bibliotecas criadas pela Microsoft, desenvolvida com base no subset das linguagens C e C++ e curva de aprendizado baixo.

Preciso aprender C para aprender C++ e C#?

Aprender a linguagem C não é um precedente para começar a utilizar as linguagens C++ e C#, mas ela possui recursos, funções e estruturas, utilizados tanto em uma quanto na outra que facilitarão o seu aprendizado, saiba quais são:

Linguagem C++: compartilha comandos, biblioteca e estrutura da linguagem C.

Linguagem C#: desenvolvida com base no subset da linguagem C.

Se você quer aprender a desenvolver jogos, interfaces gráficas, e sistemas que trabalham mais perto da máquina, a linguagem C++ é mais indicada do que a linguagem C.

Para o desenvolvimento de softwares empresariais, APIs, dispositivos móveis, plataformas de Website, escolha a linguagem C#.

C++ vs Linguagens de alto nível

A linguagem de alto nível possui uma abstração mais próxima à linguagem humana, enquanto a linguagem de baixo nível possui características da linguagem de máquina.
Essa linguagem possui a flexibilidade de combinar abstrações que somente as linguagens de alto nível possuem e funcionalidades que são encontradas nas linguagens de baixo nível.
Com ela, você pode manipular bits, bytes e endereços, como também desenvolver software com base no paradigma de programação orientado a objetos.

Quais as vantagens e desvantagens do C++?

Vantagens

Processamento rápido e performático;

Utilizada para sistemas de alto desempenho;

Linguagem open source;

Curva de aprendizado baixo

Desvantagens

Gerenciamento manual da memória, maior probabilidade de erros e comportamento não mapeados;

Código complexo para desenvolvimento de grandes projetos;

Garbage Collector manual, impactando no desempenho do programa.

Por que aprender C++? Vale a pena?

Aprender a linguagem C++ vale a pena, mesmo depois de 40 anos da sua criação. O motivo para isso é que ela continua sendo uma linguagem amplamente aplicada em softwares modernos e atuais, com vários materiais de estudos para você começar a aprender.

Por ser uma linguagem orientada a objetos e open source, é uma oportunidade para quem pretende aprender mais sobre esse paradigma.

Primeiros passos com C++: Instalação e primeiro arquivo!

O desenvolvimento de uma aplicação é realizada em ferramentas conhecidas como IDE, são softwares que oferecem diversas funcionalidades e recursos em uma única interface gráfica do usuário.

Para a linguagem, vamos demonstrar a instalação da IDE Code::Block e como criar o seu primeiro arquivo.

Instalando a IDE

Faça o download do Code::Blocks;

No instalador, clique no botão Next para iniciar o fluxo de instalação:

Clique no botão I Agree para concordar com o Contrato de Licença, mesmo sendo uma IDE gratuita:

As escolhas dos componentes já estarão selecionadas, clique no botão Next:

Por último, clique no botão Install:

O editor de código foi instalado com sucesso. Clique no botão Finish para começar a utilizar a ferramenta:

Criando o seu primeiro código em C++

No término da instalação do editor de código, esta será a tela de apresentação.

Observe que o Code::Blocks, é composto de menus e barras dos ícones mais utilizados na ferramenta:

Nessa nova página em branco, vamos digitar a seguinte instrução de código em C++:

#include <iostream> using namespace std; int main() {   cout << "Meu primeiro código em C++";   return 0; }

Entenda o que significa cada linha da implementação acima demonstrada:

#include <iostream>: Biblioteca utilizada para declarar objetos que realizam o controle da leitura e da gravação dos fluxos estabelecidos no código.

using namespace std: É utilizado para definir toda a estrutura contida neste namespace (espaço de nome), sendo: as constantes, variáveis, funções e os fluxos de execução do código. Essa definição evita duplicidade de estruturas semelhantes contidas no mesmo projeto.

cout << "Meu primeiro código em C++": Essa instrução vai imprimir na tela a informação: "Meu primeiro código em C++"

return 0: ponto final da execução do programa, retornando o valor zero para a função main().

Agora chegamos no momento da execução do nosso programa, onde será validado se todas as instruções contidas em cada linha do program estão corretas. Acesse o menu e clique nas opções: Build > Build and Run:

O resultado final será apresentado dessa forma:

Você aprendeu como é prático e fácil iniciar o aprendizado sobre C++.

Essa linguagem é utilizada tanto para quem deseja iniciar na programação, principalmente para aprender o conceito de orientação a objetos, quanto para pessoas desenvolvedoras que buscam aprimorar ainda mais os seus conhecimentos.

Se você gostou deste artigo, convidamos você para a leitura sobre Pair programming: como implementar a programação em par!

# data[].attributes.attachment_link.title
C++: o que é, porque usar e quais as diferenças com C - Blog da Trybe

# data[].attributes.attachment_link.description
Considerada a quarta linguagem mais popular do mundo, segundo o Índice Tiobe da Comunidade de Programação , a linguagem C++ é muito utilizada para o desenvolvimento de sistemas de alta performance, jogos, interfaces gráficas e no ensino sobre orientação a objetos. Ela foi desenvolvida por Bjarne Stroustrup em 1983 na empresa Nokia Bell Labs.

# data[].attributes.body
A primeira linguagem de programação mais utilizada pelas empresas de tecnologia é o Python, originalmente destinado a ter uma sintaxe semelhante ao ABC, mas com acesso às chamadas do sistema  Amoeba. Desde então, evoluiu no mercado e é amplamente utilizado no desenvolvimento web e aprendizado de máquina.

# data[].attributes.body
No ano de 1991, a empresa Sun Microsystems deu início ao Green Project, projeto esse que originou uma linguagem de programação orientada a objetos, denominada Java. É uma linguagem de programação rápida, segura e confiável para codificar tudo, desde aplicações móveis e software empresarial até aplicações de big data e tecnologias do servidor.

# data[].attributes.attachment_link.title
O que é linguagem Java e como funciona: - Blog ISBrasil

# data[].attributes.attachment_link.description
A tecnologia da linguagem Java para desenvolver aplicativos para vários dispositivos, consumidores e sistemas corporativos, foi criada para resolver problemas.

# data[].attributes.body
PHP é uma linguagem de programação voltada para o desenvolvimento de aplicações para a web e para criar sites, favorecendo a conexão entre os servidores e a interface do usuário. Entre os fatores que fizeram o PHP se popularizar bastante é possível apontar, principalmente, o fato de ser em código aberto.

# data[].attributes.body
A segunda das linguagens de programação mais usadas pelas empresas de tecnologia, conforme pesquisa do GitHub, é o JavaScript. Embora mais moderno que o Java, o JavaScript é uma linguagem que está no mercado também desde a década de 90. JavaScript é uma linguagem de programação criada por Brendan Eich em nome da empresa Netscape em meados de 1995. Inicialmente, o JavaScript recebeu outro nome: LiveScript. No entanto, a Netscape não estava sozinha no desenvolvimento do JavaScript.

# data[].attributes.attachment_link.title
O que é JavaScript e Para Que Serve? (Como Funciona o JavaScript / Como Aprender Javascript)

# data[].attributes.body
A linguagem de programação Ruby é considerada uma das mais fáceis do mundo da programação. Também é novo, criado pelo programador japonês Yukihiro Matsumoto em 1995, e permite o desenvolvimento ágil e rápido de aplicativos.

# data[].attributes.body
Executado no framework .NET, sua complexidade é encarada como uma desvantagem em relação a outras linguagens. Porém, o C# continua sendo bastante utilizado na indústria de jogos.

Além disso, está em sua versão 5.0 e continua evoluindo, sendo considerado de fácil ambientação mesmo para iniciantes.

# data[].attributes.attachment_link.readable_text
Neste artigo apresento Thiago Ferreira de Toledo, que pode ser contatado pelo e-mail thiagoftoledo@live.com. O Thiago foi meu aluno durante sua graduação e está concluindo o último período do curso de Tecnologia em Análise e Desenvolvimento de Sistemas da UTFPR campus Medianeira neste segundo semestre de 2013. Faz estágio na área de infraestrutura na Frimesa e participa de um grupo de pesquisa na área de Tecnologia da Informação e Comunicação na Educação.

O desenvolvimento do C# (pronuncia-se: C Sharp), de acordo com o website Wikipédia (2013), teve início no final do século XX (1999). A convite da Microsoft, Anders Hejlsberg formou uma equipe de programadores para desenvolver uma nova linguagem de programação. A primeira linguagem criada pela equipe de Hejlsberg recebe o nome de Cool. Mais tarde, na virada de século, a linguagem Cool foi rebatizada para C#.

Após o renome da linguagem, a Microsoft submeteu-a à ECMA (European Computer Manufacturers Association), associação cujo objetivo é a padronização de sistemas de informação. Em 2001, a ECMA aprovou o C# e a linguagem recebeu a especificação ECMA-334. Mais tarde, em 2003, tornou-se padrão também da ISO, recebendo a especificação de ISO/IEC 23270.

O C# surgiu com a finalidade de possibilitar a criação de soluções executáveis sobre a plataforma .NET Framework, com o intuito de flexibilizar o desenvolvimento de aplicativos. Dessa maneira, o desenvolvedor não cria soluções para um dispositivo eletrônico específico, e sim para a plataforma .NET Framework.

Para a codificação de sistemas baseados em .NET Framework, a Microsoft lançou o Visual Studio. Esta ferramenta é uma IDE (Integrated Development Environment) que conta com um editor de código, compilador, com modelos de projetos de exemplos, designers e assistente de códigos.

MSDN (2012), diz que os algoritmos escritos em C# são executados no .NET Framework, um componente para Windows que inclui um sistema de execução virtual da aplicação por meio do Common Language Runtime (CLR) e um conjunto de bibliotecas de classes, além de contar com uma solução comercial da Microsoft, que faz parte da infraestrutura de linguagem comum (CLI). O CLI é tido como um padrão internacional para a criação e execução de ambientes de desenvolvimento onde as linguagens e as bibliotecas trabalham em sincronia.

Ainda de acordo com MSDN (2012), a compilação em C# é processada em uma Intermediate Language (IL) que está em conformidade com a especificação CLI. O código IL e seus recursos, tais como bitmaps e strings, são armazenados no disco rígido em um arquivo executável chamado de Assembly. No momento da execução de um programa em C#, o Assembly é carregado para o CLR. Uma vez aprovado os requisitos de segurança, o CLR executa a compilação Just in Time (JIT) para converter o código IL em linguagem de baixo nível.

A linguagem C# e suas características

A criação do C# foi baseada nas linguagens de programação C, C++ e Java. Deste modo, programadores habituados com uma dessas linguagens são capazes de desenvolver soluções sem maiores dificuldades, pois ela reúne recursos de cada uma destas linguagens base e adiciona novos recursos exclusivos.

Em relação a linguagem C, o C# tem foco na compilação de soluções de alto nível, já a linguagem C é voltada para o desenvolvimento de baixo nível. Outras comparações, de acordo com MSDN (2012), o C#, simplifica de modo significativo a complexidade do C++ e introduz novos elementos não disponíveis no Java, tais como: tipos primitivos com valores nulos, delegações, expressões lambda e acesso direto à memória.

MSDN (2012) ressalta que, o processo de compilação do C# é mais simples e mais flexível comparado ao C++ ou Java, pois elimina-se a necessidade de arquivos de cabeçalhos separados e não há a necessidade da declaração de métodos e tipos em uma ordem específica. Um arquivo contendo códigos de programação podem ser definidos quaisquer números de classes, estruturas, interfaces e eventos que forem necessários.

De acordo com OFICINA DA NET (2007), comparada ao C e C++, a linguagem C# é restrita e melhorada em vários aspectos, tais como:

Unsafe mode: ponteiros e fórmulas aritméticas utilizados sem verificação de integridade só podem serem utilizados na modalidade de modo inseguro;

Overflow: acessos a objetos são realizados através de referências seguras, dessa forma não podem serem invalidadas e normalmente as operações aritméticas são checadas contra sobrecarga;

Garbage collector: os objetos não são liberados da memória explicitamente, e sim através de um processo que elimina objetos quando não há referências;

Disposable: Destrutores não existem, mas utilizada junto com a construção using block, torna possível que recursos alocados por um objeto sejam liberados;

C# é mais seguro com tipos: as conversões implícitas por default são conversões seguras, tais como ampliação de inteiros e conversões de um tipo derivado para um tipo base; não existem conversões implícitas entre inteiros e variáveis lógicas ou enumerações; não existem ponteiros nulos; todas as conversões implícitas definida pelo usuário deve ser marcada explicitamente;

Namespace: membros de enumeração são colocados em seu próprio espaço de nome;

Reflexão: recursos de reflexão complexos estão disponíveis.

Ainda de acordo com OFICINA DA NET (2007), as diferenças do C# com o Java são: diferentemente de Java, no C# são implementados propriedades e sobrecargas de operadores, implementa modo inseguro que permite a manipulação de ponteiros e aritméticos sem checagem, exceções não são checadas, implementa goto como estrutura de controle, oferece suporte a indexadores e delegates.

MSDN (2012), ressalta algumas características do C#, a citar:

Suporta conceitos típicos de orientação a objetos, como encapsulamento, herança e polimorfismo;

Todas as variáveis, métodos e o ponto de execução de uma aplicação, são encapsuladas em definições de classes;

Uma classe derivada pode herdar apenas uma classe pai, e herdar quantas interfaces forem necessárias;

Os métodos da classe derivada que substituem os métodos virtuais de uma classe pai exigem a utilização da palavra reservada: override para evitar a redefinição acidental de um método;

Uma struct tem a mesma funcionalidade de classe, com a diferença, de ser mais simplificada; implementam interfaces, mas não suporta herança;

Suporte à implementação de métodos e tipos genéricos para garantir maior segurança de tipo e de desempenho à aplicação;

Os iteradores permitem a implementação de coleções de classes para definir comportamentos de iteração personalizados;

As expressões LINQ (Consultas Integradas à Linguagem) são responsáveis em realizar consultas com base na integração dos recursos de consultas da própria linguagem.

Segundo LIMA (2002), as características essenciais do C# são:

Simplicidade: os projetistas de C# costumam dizer que essa linguagem é tão poderosa quanto o C++ e tão simples quanto o Visual Basic;

Completamente orientada a objetos: em C#, qualquer variável tem de fazer parte de uma classe;

Fortemente tipada: isso ajudará a evitar erros por manipulação imprópria de tipos, atribuições incorretas etc.;

Gera código gerenciado: assim como o ambiente .NET é gerenciado, assim também é o C#;

Tudo é um objeto: System.Object é a classe base de todo o sistema de tipos de C#;

Controle de versões: cada assembly gerado, seja como EXE ou DLL, tem informação sobre a versão do código, permitindo a coexistência de dois assemblies homônimos, mas de versões diferentes no mesmo ambiente;

Suporte a código legado: o C# pode interagir com código legado de objetos COM e DLL's escritas em uma linguagem não-gerenciada;

Flexibilidade: se o desenvolvedor precisar usar ponteiros, o C# permite, mas ao custo de desenvolver código não-gerenciado, chamado "unsafe".

Linguagem gerenciada: os programas desenvolvidos em C# executam num ambiente gerenciado, o que significa que todo o gerenciamento de memória é feito pelo runtime via o GC (Garbage Collector), e não diretamente pelo programador, reduzindo as chances de cometer erros comuns a linguagens de programação onde o gerenciamento da memória é feito diretamente pelo programador.

Evolução da linguagem

A primeira versão do C# começou a ser usado a partir do Visual Studio 2002. De acordo com o Website kunal-chowdhury (2012), sua principal característica era a capacidade de escrever códigos gerenciáveis. Outras características da primeira versão do C# são: conceitos de Orientação a Objetos, suporte nativo a propriedades e eventos, documentação XML, exceções, segurança de tipos, sobrecarga de operadores e gerenciamento automático de memória.

Desde a primeira versão, o C# suporta dois tipos de dados. Tipos de valor: incluem variáveis simples, como char, int e float, tipos de enumeração e de estrutura. O segundo grupo engloba tipos de dados por referência, como: classes, interface, delegates e array.

A segunda versão da linguagem (2.0) foi introduzida com o Visual Studio 2005 e Visual Studio 2005 Express. De acordo com MSDN (2005) as novidades são: tipos genéricos, iteradores, classe parcial, tipos anuláveis, métodos anônimos, qualificador de alias de namespace, classes estáticas, modificadores externos para declarar métodos declarados externamente, possibilidade de definir diferentes níveis de acessibilidades ao métodos gets e sets, maior flexibilidade no tipo de retorno e parâmetros ao passar para um delegate, buffer de tamanha fixo.

Com o Visual Studio 2008 e Visual Studio 2008 Express, o C# 3.0 ("C# Orcas"), de acordo com MSDN (2007) introduziu várias extensões de linguagem que se baseiam no C# 2.0. A versão 3.0 conta ainda com métodos de extensão, expressões lambda, tipos anônimos, tipos implícitos de arrays, expressões de consulta e árvores de expressões.

Na sua versão 4.0, contando com o Visual Studio 2010 e Visual Studio 2010 Express, os novos recursos agregados, de acordo com BURROWS (2010), compreendem: DLR, parâmetros opcionais e de argumentos nomeados, propriedades indexadas, suporte COM.

Atualmente, o C# está na versão 5.0 acompanhada com o Visual Studio 2012 e Visual Studio 2012 Express. O Website kunal-chowdhury (2012) diz que são duas as novas funcionalidades apresentadas na quinta versão da linguagem: Async e Caller Information. Async é utilizada para indicar se o método, expressão lambda, ou método anônimo são assíncronos. Caller Information para obter informações sobre a chamada a um método, obter o caminho e número de linhas do código-fonte e o nome do membro que o chamou. Caller Information é utilizado para a detecção, depuração e criação de ferramentas de diagnósticos.

Considerações Finais

A criação do C# foi baseada em C, C++ e Java. Dessa maneira, o desenvolvedor possui um apoio referencial no aprendizado da linguagem, não precisando estudar novos conceitos e paradigmas de programação opostos. Desde o seu lançamento, o C# permite o desenvolvimento de aplicações executadas exclusivamente sobre a plataforma .NET Framework.

Dentre algumas das características essenciais do C#, em ordem cronológica de versão, destacam-se : (1.0) totalmente orientada a objetos, gerenciamento automático de memória; (2.0) tipos genéricos, métodos anônimos, classes estáticas; (3.0) tipos anônimos, expressões de consulta e árvore de expressões; (4.0) propriedades indexadas, suporte COM e DLR; (5.0) Async e Caller Information.

A linguagem C# veio acompanhada de uma IDE comercial de desenvolvimento: Visual Studio. A partir de 2005, contou ainda com uma IDE gratuita, denominada Visual Studio Express. Em ordem cronológica, o Visual Studio conta com as seguintes versões: 2002, 2005, 2008, 2010 e 2012.

A utilização do Visual Studio como plataforma de desenvolvimento e o C# garantem algumas vantagens nas construções de aplicativos, tais como: programação orientada a objetos, uso de eventos nos controles, validação de dados e tratamento de erros.

# data[].attributes.attachment_link.title
A evolução da linguagem de programação C#

# data[].attributes.attachment_link.description
Neste artigo apresento Thiago Ferreira de Toledo, que pode ser contatado pelo e-mail thiagoftoledo@live.com. O Thiago foi meu aluno durante sua graduação e está concluindo o último período do curso de Tecnologia em Análise e Desenvolvimento de Sistemas da UTFPR campus Medianeira neste segundo semestre de 2013.

# data[].attributes.body
Lançado como código livre pelo Google em 2009, o  Go foi pensado para combinar funcionalidades que a equipe responsável achou ideais para a programação. O resultado foi uma linguagem de programação capaz de criar programas eficientes, simples e confiáveis.

# data[].attributes.body
O TypeScript começou a ser desenvolvido pela Microsoft em 2012, com o objetivo de adicionar recursos e ferramentas que não estão presentes nativamente na linguagem. Utilizar o TypeScript ao invés do JavaScript, permite feedbacks de erros mais rápidos e processos de refatoração mais fáceis. Ainda, pode ser adotado gradativamente em uma base de código.

# data[].attributes.body
Alunas: Fernanda Ketlen e Maria Luiza
Turma: 3 EMINF- Técnico
Data: 28-03-2023