Wednesday, February 22, 2012

O que é Visual Studio?


Não é de estranhar que muitos companheiros de sala de aula que jamais colocaram a mão em ferramentas de desenvolvimento de software saibam o que é Visual Studio, algo que será necessário para a aula de Estrutura de Dados, então deixarei algumas informações de interesse aqui (alguns tiveram algum contato com DevC++ que eu sei).

Muita gente por aí já sabe disso no mercado, mas deixarei o conteúdo em uma linguagem facilitada, para leigo mesmo.

Primeiramente, acho que todos devam saber que das diversas carreiras possíveis na área de Tecnologia da Informação (simplesmente Informática para muitos) é aquela dedicada ao desenvolvimento de software, assim como temos outras dedicadas à infraestrutura (clientes e servidores), banco de dados, etc.

No que confere desenvolvimento, caso ainda não saiba, todo programa que usa em seu computador, assim como tudo que acessa na internet, foi produzido através de linhas de código, similares as que foram vistas no primeiro ano do curso, com as aulas de linguagem C.

Linguagem? 

Pois é, você digita, uma ferramenta chamada compilador ou interpretador transforma o que você digitou em código de máquina, no formato binário, e então o processador é capaz de executar o que lhe foi programado (o código que você digitou em uma linguagem específica).

Há diversas linguagens de programação no mundo, para todo tipo de desenvolvimento, seja para Windows, Macintosh, Linux, Solaris, internet, dispositivos móveis, aparelhos eletrônicos, etc. Alguns exemplos são: C, C++, Java, Pascal, Fortram, Delphi, Visual Basic, C#, JavaScript, PHP, JScript, VBScript, ObjectiveC, Ruby, Matlab, etc.

Algumas delas são utilizadas com tecnologias específicas que facilitam o desenvolvimento de aplicativos. Por exemplo, VBScript e JScript são utilizadas na antiga tecnologia ASP para produzir aplicações para a internet. Seu sucessor, ASP.NET, já trabalha com outras linguagens, sendo as principais, Visual Basic.NET e C#.

Java é uma plataforma de desenvolvimento, que acaba por utilizar uma linguagem de mesmo nome, sendo possível desenvolver aplicativos para praticamente qualquer plataforma (qualquer sistema operacional) ou dispositivo.

.NET é uma tecnologia Microsoft com propósitos similares aos da plataforma Java, embora sua utilização não seja feita em qualquer plataforma com tanta facilidade, pois o foco é a plataforma Windows.

No desenvolvimento de aplicativos para a plataforma Windows dos dias de hoje, seja para seu sistema operacional Windows da sua casa ou de uma empresa, para a internet (com uso de servidor Microsoft), dispositivos móveis (a exemplo dos aplicativos que rodam no Windows Mobile), etc. basicamente, utilizam-se 2 peças que, embora não indispensáveis, são fundamentais para um trabalho facilitado. São elas:

  • .NET Framework
  • Microsoft Visual Studio

O .NET Framework é um aplicativo que hoje em dia já vem instalado no sistema operacional Windows. Ele provê uma espécia de máquina virtual (chamada CLR = Common Language Runtime) onde todo o código por você criado é executado de forma segura e padronizada. É um ambiente de execução de código de forma segura, de forma que códigos maliciosos não tenham plena liberdade de atingir outras áreas do sistema operacional ou outros aplicativos, além de gerenciamento automático de memória e outras facilidades, é um confinamento seguro.

O .NET Framework também provê algo chamado Biblioteca de Classes, que nada mais é do que um conjunto de rotinas pré-prontas, pré-programadas, para você fazer uso quando precisar. Por exemplo, se em um de seus códigos você precisar calcular a função seno da trigonometria, não precisará criar esta função do zero, pois ela já estará disponível pra você, basta pegá-la e fazer uso.

Mas afinal de contas, o que é o Visual Studio? 

Esta ferramenta Microsoft é conhecida como uma IDE (Integrated Development Environment), um software com um editor de texto muito poderoso onde você digita seus códigos em uma dada linguagem de programação, possuidor de diversas ferramentas auxiliares para depuração (detecção de erros de sintaxe de código e de lógica de seus programas), plenamente integrado com o .NET Framework, facilidade na interação com bancos de dados e integrado também com os compiladores das linguagens de programação que trabalham com ele.

Com o Visual Studio, você consegue criar projetos de software completos, sejam eles orientados para a plataforma Windows, internet ou dispositivos móveis.

Uma característica marcante do Visual Studio é a capacidade de criar muitas aplicações com pouca digitação de código. Por exemplo, ao invés de digitar o código para desenhar um componente de tela, você simplesmente "pega" o componente de tela em uma caixa de ferramentas e adiciona ela em sua janela que está sendo criada. Conexões simples com banco de dados podem ser realizadas sem nenhuma linha de código, apenas através dos assistentes do Visual Studio.

As principais linguagens utilizadas com o Visual Studio desde o início do século são Visual Basic.NET, C++ e C#.

C# (leia “C sharp”) é uma das linguagens de programação mais famosas do mundo, e uma das mais amplamente utilizadas no mercado de desenvolvimento de software comercial, disputando diretamente com Java em nosso país, assim como em outros também. C# será a linguagem utilizada no nosso curso de Estrutura de Dados, além da linguagem C como foi também mencionada. É uma linguagem poderosa como o Java, embora esta última seja mais largamente utilizada no contexto multi-plataforma, com o C# sendo utilizado quase que em sua totalidade na plataforma Windows apenas.

Resumindo, nas aulas, utilizaremos a tecnologia Microsoft para o estudo de Estrutura de Dados. Progamaremos em C#, utilizando a ferramenta Visual Studio e as facilidades do .NET Framework.

Onde obter o Visual Studio? 

Vai no Google meu filho... mas pra facilitar, você poderia ir direto no site da Microsoft (www.microsoft.com) e realizar uma busca por Visual Studio, ou mais diretamente na página (www.microsoft.com/downloads).

Vale a pena dizer que o Visual Studio é uma ferramenta profissional, e por isso, é paga, muito bem paga por sinal, pois ela é utilizada por muitas empresas para produzirem seus rios de dinheiro. Contudo, a Microsoft disponibiliza versões simplificadas da ferramenta, para uso doméstico ao invés de comercial, são as chamadas versões Express (www.microsoft.com/express).

As últimas versões do visual Studio são:

  • .NET (2002)
  • 2003
  • 2005
  • 2008
  • 2010

Temos aí 10 anos de Visual Studio integrado com a plataforma .NET, mas é bom saber que o Visual Studio já existia e era largamente utilizado anteriormente, indo das versões 1 até a 6, no final do século passado, foi a ferramenta que popularizou a utilização da linguagem Visual Basic da Microsoft.

Qual versão instalar? 

É bom saber que quanto mais recente, mais "pesada" as ferramentas tendem a ser. Contudo, se você está usando um sistema operacional mais recente, talvez não consiga instalar uma muito antiga (por exemplo, a versão 2005 instala no Windows 7, mas avisa que o faz com problemas de compatibilidade). Se está na dúvida, acredito que a versão 2008 instale no XP, Vista e 7 sem nenhum problema.

Como é dividido o Visual Studio Express, a versão free?

O Visual Studio em sua versão paga é um grande agregado de ferramentas. Na versão free, este agregado não existe, é tudo separado, e você instala apenas o que precisa. As opções disponíveis são, no caso da versão 2010:

  • Visual Studio 2010 Express for Windows Phone
  • Visual Web Developer 2010 Express
  • Visual Basic 2010 Express
  • Visual C# 2010 Express
  • Visual C++ 2010 Express

Acho que fica fácil saber qual utilizaremos, obviamente a versão para C#. Todas elas estão disponíveis aqui: (http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express). A versão 2010 exige registro para poder utilizar depois de 30 dias.

As versões 2008 estão neste link (talvez peça registro também depois de alguns dias): http://www.microsoft.com/visualstudio/en-us/products/2008-editions/express

Tendo o Visual Studio em mãos, provavelmente com o .NET Framework já instalado na máquina (se não tiver instalado, o programa de instalação do Visual Studio irá exigir), bastará apenas conhecer a linguagem de programação que irá utilizar, C# no caso, algo que o professor disse que irá ensinar, então começar a codificar. Sempre tem mais coisas a saber, como Orientação a Objetos, uma estratégia de desenvolvimento que deve ser seguida para programar em C#, mas isso seria conversa longa, e o professor também me disse que irá abordar tal assunto.

Como foi citado, linguagem C será utilizada também, mas isso já não é tanta novidade pois esteve presente nos 2 primeiros semestres do curso.

Fiz o teste por aqui e é possível compilar linguagem C com o Visual C++. Pode ser útil baixá-lo também, caso não tenham outra IDE de programação C.

Caso tenham alguma dúvida, podem perguntar.

Abraços a todos!

4 comments:

  1. Olá Marcos, bom dia. Em primeiro lugar, parabéns pelo artigo e pela explicação o texto ficou muito claro. Eu estava querendo entender o que era essa ferramenta chamada Visual Studio e agora entendi.

    Eu gostaria de tirar uma dúvida: Eu tenho um projeto e preciso desenvolver um sistema no qual este lê um conjunto de dados experimentais em um arquivo txt externo e no final exiba para mim um gráfico em 3D. É uma espécie de software para modelagem. Com o Visual Studio é possível fazer isso?
    Abraços - Carlos

    ReplyDelete
    Replies
    1. Olá Carlos, grato pela visita! Bom saber que o artigo te foi útil.

      Sim, é possível criar tal tipo de software com o Visual Studio. Aliás, praticamente qualquer tipo de software comercial, para ser executado na plataforma Windows ou ser armazenado em um servidor de aplicações (servidor web) com capacidade de executar a tecnologia Microsoft.

      A questão é apenas saber fazer, ter o conhecimento para tal. Acho que vale a pena mencionar que qualquer programa feito em C, C++, C#, Java, Visual Basic, etc., todos eles são feitos através de codificação manual nas respectivas linguagens. Em outras palavras. o .NET framework tem uma biblioteca de classes, funções (métodos) pré-determinadas e de funcionalidades específicas, que permite ao programador criar uma vastidão de aplicações até mesmo no bloco de notas se for o caso (nunca o é, contudo).

      Aonde entra o Visual Studio no cenário acima então? Trata-se apenas de um facilitador, para que se ganhe tempo, não tendo que digitar muito código que ele é capaz de gerar automaticamente pelo programador. Por exemplo, ao invés de digitar inúmeras linhas de código para se criar uma janela, monta-se a janela apenas arrastando seus componentes visuais de uma caixa de ferramentas: barras de rolagem, caixas de texto, menus suspensos, etc. Um outro exemplo seria, ao invés de criar uma interface e programar as funções básicas de acesso a um banco de dados como o Microsoft SQL Server, é possível através dos assistentes visuais criar tal interface funcional sem nenhuma linha de código.

      Sabendo programar, tendo em mãos a repleta documentação do .NET Framework que está disponível online, o MSDN (http://msdn.microsoft.com/en-US/), é possível consultar o que e como criar as coisas com Visual Studio/.NET Framework. Por exemplo, para criar-se gráficos, teria que buscar as funções (métodos) de desenho gráfico na biblioteca MSDN.

      Bom, espero ter ajudado mais uma vez.

      Abraços!

      Delete
    2. Carlos, segue alguns pequenos exemplos 3D do que é possível fazer com o .NET Framework/Visual Studio, para que veja o potencial que eles têm:

      1) https://www.youtube.com/watch?v=GzrAS9SGj2k

      2) https://www.youtube.com/watch?v=OJgHMA2uJO0

      Abraços!

      Delete
    3. Caro Marcos,
      Rapaz, sensacional, muito obrigado pelas explicações, elas fizeram toda a diferença.
      Você realmente deveria receber uma comissão no meu projeto, eh eh.
      Depois que reli seu artigo consegui até um vídeo de um desenvolvedor que fez um calculadora simples no visual studio e colocou no youtube, veja: http://www.youtube.com/watch?v=wTBdSlzaJzY
      Acho que é o bom exemplo "ao vivo" do que podemos fazer. Vou explorar esta ferramenta de gráficos 3D pois o vídeo que você postou acima deu uma motivação extra pra pesquisar. Eu estava anteriormente falando de gráficos que contruímos a partir de dados experimentais de laboratorio mas agora vendo estes queria tentar mesclar ambos.

      Muito obrigado!!
      Abração
      Carlos

      Delete