SlideShare una empresa de Scribd logo
1 de 35
Descargar para leer sin conexión
Desenvolvimento em .Net




        Introdução
Objectivos
●   Forças Externas
●   .Net vs Java
●   C# vs VB.Net
●   Execução de Aplicações
●   Ambientes de desenvolvimento .Net
●   Criar Projecto em VStudio
●   Ferramentas básicas de debug
Forças Externas
●   Porque queremos mudar?
    –   Se está feito e funciona porquê mudar?
         ●   Desafios de hoje iguais aos de à 10 anos?
         ●   Empresas / Utilizadores / Mercado trabalho?
         ●   Novos paradigmas?
Forças Externas
●   Ciclo de vida de um produto: Matriz BCG
Forças Externas
●   Investimento vs Retorno
Forças Externas
●   Formação vs Resposta necessidades cliente
Forças Externas
●   Empresas
    –   integração de sistemas
    –   toda a informação disponível a qualquer hora em
        qualquer lugar
●   Utilizadores
    –   mais funcionalidades mais facilmente acessíveis
    –   smart-client, off-line, sincronização automática
Forças Externas
●   Mercado de trabalho
    –   Especialização vs generalização do conhecimento
         ●   Exemplo: criar um relatório em Crystal Reports que seja
             acessivel via browser
              –   Browser
              –   Browser => JScript
              –   Browser => JScript => Crystal Reports
              –   Browser => JScript => Crystal Reports => XML/XSD
              –   Browser => JScript => Crystal Reports => XML/XSD => .Net
              –   Browser => JScript => Crystal Reports => XML/XSD => .Net =>
                  OOP => desenvolvimento n-tier
              –   Browser => JScript => Crystal Reports => XML/XSD => .Net =>
                  OOP => desenvolvimento n-tier => SQL Ansi / Progress
Forças Externas
●   Novos paradigmas, novas competências
    –   .Net, Java, padrões de desenho, testes unitários,
        service-oriented architecture, …
●   Pesquisa / formação constante
    –   sites de referência, blogs, workshops, motores de
        pesquisa
Precisamos de
novas ferramentas
       para
 novos desafios

 .Net / Java / ...
.Net vs Java
●   Semelhanças Plataforma / Linguagem
    –   Perspectiva histórica

    C         C++

                                         C#


                                     VB.Net
.Net vs Java
●   Conceitos
    –   Compilação
         ●   .Net e Java usam o conceito de Intermediate Language
             (IL)
         ●   A linguagem de programação é compilada para a IL e
             depois executada
.Net vs Java
–   S.O. vs Linguagens de Programação
     ●   Java corre em diferentes hardwares / sistemas
         operativos mas só suporta uma linguagem de
         programação
          –   Existem algumas linguagens de programação que produzem IL
              java
     ●   .Net suporta várias linguagens de programação mas só
         corre em Windows…
          –   Em curso “porting” da .Net Framework para Linux (projecto
              Mono)
.Net vs Java
●   Serviços disponibilizados
                      .NET                          JAVA2EE
    Relational        ADO.NET                       JDBC
    Database Access

    Web Client        ASP.NET                       Java Server Pages (JSP) and
                                                    Servlets
    Standalone        Windows Forms                 AWT/Swing
    Client
    Distributed       .NET Remoting                 RMI/IDL
    Components
    XML               System.Xml and .NET in           JAX Pack (JAXM, JAXR, JAXB,
                      general is built around XML. JAXP)
    Messaging         Microsoft Message Queuing Java Messaging Service (JMS)
                      (MSMQ)
    Web Services      Support Built directly into .NET Java Web Services Developer
                      and Visual Studio                Pack (JWSDP) as well as
                                                       vendor specific tools.
.Net vs Java
●   IDE
    –   Notepad + Command
        Prompt
    –   VStudio vs Eclipse /
        Net Beans
         ●   Eclipse => próximo
             ambiente de
             desenvolvimento
             Progress
.Net vs Java
●   Conclusão – Opinião Pessoal
    –   .Net
         ●   melhor documentação
         ●   melhor IDE
         ●   mais produtivo mais rapidamente
    –   Java
         ●   mais projectos autónomos
C# e VB.Net

   2 linguagens
a mesma plataforma
C# vs VB.Net
●   Comparação
    ●
C# vs VB.Net
●   VB.Net + VStudio = rápida produtividade
    –   Sintaxe VB.Net mais simples e intuitiva
         ●   Excepto para quem já tenha bom domínio de C/C++ ou
             Java
    –   IDE de VB.Net mais amigável que o IDE de C#
         ●   Permite que mais rapidamente nos concentremos nos
             conceitos (métodos, propriedades, herança, …) e não na
             sintaxe (if then else…)
C# vs VB.Net
 ●   Performance
Both have access to the         Now hitting on some touchy issues, many developers
same framework libraries.       believe that VB.NET is slower then C#. That’s not
Both will perform               entirely true. The only place I see VB.NET slower than
largely equivalently            C# is where developers use old-style functions like
(with a few small               Len and Mid instead of calling reciprocal methods
differences which are           available within the .NET Framework library classes
unlikely to affect most         and as mentioned by Heath Stewart (see post below)
people, assuming                using old syntax like FunctionName = ReturnValue.
VB.NET is used with
Option Strict on)

.NET framework comes with a single class library. And thats all programmers need to
learn!! Whether they write the code in C# or VB.NET or J#, it doesn't matter, you just use
the .NET class library. There is no classes specific to any language. There is nothing
more you can do in a language, which you can't do in any other .NET language. You
can write code in C# or VB.NET with the same number of lines of code, same
performance and same efficiency, because eveyone uses same .NET class library.
Compiladores e Runtimes
Execução de Aplicações
●   Aplicação Tradicional
    –   Source => Parser / Compilador => Executável
Execução de Aplicações
●   Progress
    –   Source p-code
    –   Intermediate r-code
         ●   R-code portável... dentro de algumas restrições
●   Aplicação .Net
    –   Source (vb, c#, jscript, cobol.net, …)
    –   PE – portable executable (.exe, .dll)
Execução de Aplicações
●   .Net
    –   CIL – Common Intermediate Language
    –   CLR – Common Language Runtime
Execução de Aplicações
●   .Net
    –   Componentes Comuns
         ●   CLS – Common Language Specification - conjunto de
             regras que se aplicam a todas as linguagens .Net
         ●   CTS – Common Type System – especificação de todos
             os tipos de dados e sua utilização
    –   Permitem que todas as Linguagens .Net tenham
        um conjunto predefinido de tipos e funcionalidades
        base
    –
Ambientes de Desenvolvimento
Ambientes de desenvolvimento .Net
 –   Notepad + Command Prompt
 –   VStudio
 –   SharpDevelop
 –   Eclipse
 –   ...
Hello World
●   Hello world
    –   Definição e muitos exemplos
         ●   http://encyclopedia.laborlawtalk.com/Hello_world_program
Hello World - Notepad
●   Trabalho Prático
    –   Criar um programa em .net usando notepad
        ( gravar como Module1.vb)
Hello World - Notepad
●   Trabalho Prático
    –   Compilar e Executar
         ●   Start / Programs / Visual Studio .Net 2003 / Visual Studio
             .Net Tools / Visual Studio .Net 2003 Command Prompt
    –   vbc /target:exe Module1.vb
Hello World - VStudio
●   Trabalho Prático
    –   Criar um programa
        em .net usando visual
        studio
         ●   Visual Studio .Net
             2003
         ●   File / New / Project /
             Visual Basic Projects /
             Console Application
Hello World - VStudio
●   Trabalho Prático
    –   Código
Hello World - VStudio
●   Trabalho Prático
    –   Compilar – Build / Build Solution
    –   Executar – Debug / Start
Ferramentas básicas de debug
●   Break points
    –   Conditional break points
●   Watch
●   Step-By-Step
●   Call stack
Objectivos
●   Forças Externas
●   .Net vs Java
●   C# vs VB.Net
●   Execução de Aplicações
●   Ambientes de desenvolvimento .Net
●   Criar Projecto em VStudio
●   Ferramentas básicas de debug

Más contenido relacionado

La actualidad más candente

Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)Manoel Campos da Silva Filho
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaEduardo Bregaida
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Flávio Lisboa
 
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...Rogério Moraes de Carvalho
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Raphael Marques
 
Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)Mario Sergio
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...MVP ShowCast
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos JavaMarcio Marinho
 
TOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONI
TOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONITOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONI
TOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONIFábio Delboni
 
Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021Erik Cruz
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaÁlvaro Farias Pinheiro
 
Fundamentos do .NET Framework - Parte 1
Fundamentos do .NET Framework - Parte 1Fundamentos do .NET Framework - Parte 1
Fundamentos do .NET Framework - Parte 1Julian Correa
 

La actualidad más candente (20)

Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011
 
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
 
Jclouds jug vale
Jclouds jug valeJclouds jug vale
Jclouds jug vale
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
Netbeans
NetbeansNetbeans
Netbeans
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
 
Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)
 
Conhecendo Java
Conhecendo JavaConhecendo Java
Conhecendo Java
 
Groovy stack
Groovy stackGroovy stack
Groovy stack
 
Introdução ao Java
Introdução ao JavaIntrodução ao Java
Introdução ao Java
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
 
NetBeans: a IDE que você precisa
NetBeans: a IDE que você precisaNetBeans: a IDE que você precisa
NetBeans: a IDE que você precisa
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos Java
 
PHP versus Java
PHP versus JavaPHP versus Java
PHP versus Java
 
TOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONI
TOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONITOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONI
TOTVS IP CAMPINAS FSW Treinamento .NET C# - v4 POR FABIO DELBONI
 
Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Fundamentos do .NET Framework - Parte 1
Fundamentos do .NET Framework - Parte 1Fundamentos do .NET Framework - Parte 1
Fundamentos do .NET Framework - Parte 1
 

Similar a Desenvolvimento em .Net - Introducao A Framework

Microsoft .Net
Microsoft .NetMicrosoft .Net
Microsoft .Netjaumnc
 
Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?Pablo Souza
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010Norton Guimarães
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014Giovanni Bassi
 
Netbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesNetbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesRodrigo Peleias
 
Desenvolvimento Ria com Java
Desenvolvimento Ria com JavaDesenvolvimento Ria com Java
Desenvolvimento Ria com JavaTI Infnet
 
Desenvolvimento RIA com Java
Desenvolvimento RIA com JavaDesenvolvimento RIA com Java
Desenvolvimento RIA com Javaarmeniocardoso
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoLorival Smolski Chapuis
 
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta DefinitivaPalestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitivaalfredofurtado
 
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta DefinitivaPalestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitivaalfredofurtado
 
Projetos Mono e Moonlight
Projetos Mono e MoonlightProjetos Mono e Moonlight
Projetos Mono e MoonlightPedro Alves Jr.
 
OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)Ricardo Rufino
 
Palestra SFD etec Netbeans e Java 3D
Palestra SFD etec Netbeans e Java 3DPalestra SFD etec Netbeans e Java 3D
Palestra SFD etec Netbeans e Java 3DRenato Puccini
 

Similar a Desenvolvimento em .Net - Introducao A Framework (20)

.NET Open Source 2009
.NET Open Source 2009.NET Open Source 2009
.NET Open Source 2009
 
Microsoft .Net
Microsoft .NetMicrosoft .Net
Microsoft .Net
 
.NET Open Source
.NET Open Source.NET Open Source
.NET Open Source
 
Csharp
CsharpCsharp
Csharp
 
Aula 1
Aula 1Aula 1
Aula 1
 
Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
Netbeans Slides
Netbeans SlidesNetbeans Slides
Netbeans Slides
 
Netbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesNetbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 Portugues
 
Desenvolvimento Ria com Java
Desenvolvimento Ria com JavaDesenvolvimento Ria com Java
Desenvolvimento Ria com Java
 
Desenvolvimento RIA com Java
Desenvolvimento RIA com JavaDesenvolvimento RIA com Java
Desenvolvimento RIA com Java
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - Introdução
 
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta DefinitivaPalestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
 
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta DefinitivaPalestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
Palestra Fpsl Alfredofurtado Netbeans A Ferramenta Definitiva
 
Projetos Mono e Moonlight
Projetos Mono e MoonlightProjetos Mono e Moonlight
Projetos Mono e Moonlight
 
OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)
 
POO - Aula 1 introducao
POO - Aula 1   introducaoPOO - Aula 1   introducao
POO - Aula 1 introducao
 
Minicurso Java
Minicurso JavaMinicurso Java
Minicurso Java
 
Palestra SFD etec Netbeans e Java 3D
Palestra SFD etec Netbeans e Java 3DPalestra SFD etec Netbeans e Java 3D
Palestra SFD etec Netbeans e Java 3D
 

Más de Vitor Silva

Forum Onde Vais Cidade - Habitação No Porto
Forum Onde Vais Cidade - Habitação No PortoForum Onde Vais Cidade - Habitação No Porto
Forum Onde Vais Cidade - Habitação No PortoVitor Silva
 
Desenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosDesenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosVitor Silva
 
Desenvolvimento em .Net - Deployment
Desenvolvimento em .Net - DeploymentDesenvolvimento em .Net - Deployment
Desenvolvimento em .Net - DeploymentVitor Silva
 
Desenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosDesenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosVitor Silva
 
Desenvolvimento em .Net - nHibernate
Desenvolvimento em .Net - nHibernateDesenvolvimento em .Net - nHibernate
Desenvolvimento em .Net - nHibernateVitor Silva
 
Desenvolvimento em .Net - Dados vs Objectos
Desenvolvimento em .Net - Dados vs ObjectosDesenvolvimento em .Net - Dados vs Objectos
Desenvolvimento em .Net - Dados vs ObjectosVitor Silva
 
Desenvolvimento em .Net - Reflection
Desenvolvimento em .Net - ReflectionDesenvolvimento em .Net - Reflection
Desenvolvimento em .Net - ReflectionVitor Silva
 
Desenvolvimento em .Net - Databinding
Desenvolvimento em .Net - DatabindingDesenvolvimento em .Net - Databinding
Desenvolvimento em .Net - DatabindingVitor Silva
 
Desenvolvimento em .Net - Eventos
Desenvolvimento em .Net - EventosDesenvolvimento em .Net - Eventos
Desenvolvimento em .Net - EventosVitor Silva
 
Desenvolvimento em .Net - Excepções
Desenvolvimento em .Net - ExcepçõesDesenvolvimento em .Net - Excepções
Desenvolvimento em .Net - ExcepçõesVitor Silva
 
Desenvolvimento em .Net - User Interface
Desenvolvimento em .Net - User InterfaceDesenvolvimento em .Net - User Interface
Desenvolvimento em .Net - User InterfaceVitor Silva
 
Desenvolvimento em .Net - Boas Praticas De Desenvolvimento
Desenvolvimento em .Net - Boas Praticas De DesenvolvimentoDesenvolvimento em .Net - Boas Praticas De Desenvolvimento
Desenvolvimento em .Net - Boas Praticas De DesenvolvimentoVitor Silva
 
Desenvolvimento em .Net - Programaçao Orientada a Objectos
Desenvolvimento em .Net - Programaçao Orientada a ObjectosDesenvolvimento em .Net - Programaçao Orientada a Objectos
Desenvolvimento em .Net - Programaçao Orientada a ObjectosVitor Silva
 
Desenvolvimento em .Net - Herança e Interfaces
Desenvolvimento em .Net - Herança e InterfacesDesenvolvimento em .Net - Herança e Interfaces
Desenvolvimento em .Net - Herança e InterfacesVitor Silva
 
Desenvolvimento em .Net - A Framework e o Visual Studio
Desenvolvimento em .Net - A Framework e o Visual StudioDesenvolvimento em .Net - A Framework e o Visual Studio
Desenvolvimento em .Net - A Framework e o Visual StudioVitor Silva
 
Desenvolvimento em .Net - Estruturas Basicas
Desenvolvimento em .Net - Estruturas BasicasDesenvolvimento em .Net - Estruturas Basicas
Desenvolvimento em .Net - Estruturas BasicasVitor Silva
 

Más de Vitor Silva (17)

Cidadania20
Cidadania20Cidadania20
Cidadania20
 
Forum Onde Vais Cidade - Habitação No Porto
Forum Onde Vais Cidade - Habitação No PortoForum Onde Vais Cidade - Habitação No Porto
Forum Onde Vais Cidade - Habitação No Porto
 
Desenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosDesenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a Dados
 
Desenvolvimento em .Net - Deployment
Desenvolvimento em .Net - DeploymentDesenvolvimento em .Net - Deployment
Desenvolvimento em .Net - Deployment
 
Desenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosDesenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes Unitários
 
Desenvolvimento em .Net - nHibernate
Desenvolvimento em .Net - nHibernateDesenvolvimento em .Net - nHibernate
Desenvolvimento em .Net - nHibernate
 
Desenvolvimento em .Net - Dados vs Objectos
Desenvolvimento em .Net - Dados vs ObjectosDesenvolvimento em .Net - Dados vs Objectos
Desenvolvimento em .Net - Dados vs Objectos
 
Desenvolvimento em .Net - Reflection
Desenvolvimento em .Net - ReflectionDesenvolvimento em .Net - Reflection
Desenvolvimento em .Net - Reflection
 
Desenvolvimento em .Net - Databinding
Desenvolvimento em .Net - DatabindingDesenvolvimento em .Net - Databinding
Desenvolvimento em .Net - Databinding
 
Desenvolvimento em .Net - Eventos
Desenvolvimento em .Net - EventosDesenvolvimento em .Net - Eventos
Desenvolvimento em .Net - Eventos
 
Desenvolvimento em .Net - Excepções
Desenvolvimento em .Net - ExcepçõesDesenvolvimento em .Net - Excepções
Desenvolvimento em .Net - Excepções
 
Desenvolvimento em .Net - User Interface
Desenvolvimento em .Net - User InterfaceDesenvolvimento em .Net - User Interface
Desenvolvimento em .Net - User Interface
 
Desenvolvimento em .Net - Boas Praticas De Desenvolvimento
Desenvolvimento em .Net - Boas Praticas De DesenvolvimentoDesenvolvimento em .Net - Boas Praticas De Desenvolvimento
Desenvolvimento em .Net - Boas Praticas De Desenvolvimento
 
Desenvolvimento em .Net - Programaçao Orientada a Objectos
Desenvolvimento em .Net - Programaçao Orientada a ObjectosDesenvolvimento em .Net - Programaçao Orientada a Objectos
Desenvolvimento em .Net - Programaçao Orientada a Objectos
 
Desenvolvimento em .Net - Herança e Interfaces
Desenvolvimento em .Net - Herança e InterfacesDesenvolvimento em .Net - Herança e Interfaces
Desenvolvimento em .Net - Herança e Interfaces
 
Desenvolvimento em .Net - A Framework e o Visual Studio
Desenvolvimento em .Net - A Framework e o Visual StudioDesenvolvimento em .Net - A Framework e o Visual Studio
Desenvolvimento em .Net - A Framework e o Visual Studio
 
Desenvolvimento em .Net - Estruturas Basicas
Desenvolvimento em .Net - Estruturas BasicasDesenvolvimento em .Net - Estruturas Basicas
Desenvolvimento em .Net - Estruturas Basicas
 

Desenvolvimento em .Net - Introducao A Framework

  • 2. Objectivos ● Forças Externas ● .Net vs Java ● C# vs VB.Net ● Execução de Aplicações ● Ambientes de desenvolvimento .Net ● Criar Projecto em VStudio ● Ferramentas básicas de debug
  • 3. Forças Externas ● Porque queremos mudar? – Se está feito e funciona porquê mudar? ● Desafios de hoje iguais aos de à 10 anos? ● Empresas / Utilizadores / Mercado trabalho? ● Novos paradigmas?
  • 4. Forças Externas ● Ciclo de vida de um produto: Matriz BCG
  • 5. Forças Externas ● Investimento vs Retorno
  • 6. Forças Externas ● Formação vs Resposta necessidades cliente
  • 7. Forças Externas ● Empresas – integração de sistemas – toda a informação disponível a qualquer hora em qualquer lugar ● Utilizadores – mais funcionalidades mais facilmente acessíveis – smart-client, off-line, sincronização automática
  • 8. Forças Externas ● Mercado de trabalho – Especialização vs generalização do conhecimento ● Exemplo: criar um relatório em Crystal Reports que seja acessivel via browser – Browser – Browser => JScript – Browser => JScript => Crystal Reports – Browser => JScript => Crystal Reports => XML/XSD – Browser => JScript => Crystal Reports => XML/XSD => .Net – Browser => JScript => Crystal Reports => XML/XSD => .Net => OOP => desenvolvimento n-tier – Browser => JScript => Crystal Reports => XML/XSD => .Net => OOP => desenvolvimento n-tier => SQL Ansi / Progress
  • 9. Forças Externas ● Novos paradigmas, novas competências – .Net, Java, padrões de desenho, testes unitários, service-oriented architecture, … ● Pesquisa / formação constante – sites de referência, blogs, workshops, motores de pesquisa
  • 10. Precisamos de novas ferramentas para novos desafios .Net / Java / ...
  • 11. .Net vs Java ● Semelhanças Plataforma / Linguagem – Perspectiva histórica C C++ C# VB.Net
  • 12. .Net vs Java ● Conceitos – Compilação ● .Net e Java usam o conceito de Intermediate Language (IL) ● A linguagem de programação é compilada para a IL e depois executada
  • 13. .Net vs Java – S.O. vs Linguagens de Programação ● Java corre em diferentes hardwares / sistemas operativos mas só suporta uma linguagem de programação – Existem algumas linguagens de programação que produzem IL java ● .Net suporta várias linguagens de programação mas só corre em Windows… – Em curso “porting” da .Net Framework para Linux (projecto Mono)
  • 14. .Net vs Java ● Serviços disponibilizados .NET JAVA2EE Relational ADO.NET JDBC Database Access Web Client ASP.NET Java Server Pages (JSP) and Servlets Standalone Windows Forms AWT/Swing Client Distributed .NET Remoting RMI/IDL Components XML System.Xml and .NET in JAX Pack (JAXM, JAXR, JAXB, general is built around XML. JAXP) Messaging Microsoft Message Queuing Java Messaging Service (JMS) (MSMQ) Web Services Support Built directly into .NET Java Web Services Developer and Visual Studio Pack (JWSDP) as well as vendor specific tools.
  • 15. .Net vs Java ● IDE – Notepad + Command Prompt – VStudio vs Eclipse / Net Beans ● Eclipse => próximo ambiente de desenvolvimento Progress
  • 16. .Net vs Java ● Conclusão – Opinião Pessoal – .Net ● melhor documentação ● melhor IDE ● mais produtivo mais rapidamente – Java ● mais projectos autónomos
  • 17. C# e VB.Net 2 linguagens a mesma plataforma
  • 18. C# vs VB.Net ● Comparação ●
  • 19. C# vs VB.Net ● VB.Net + VStudio = rápida produtividade – Sintaxe VB.Net mais simples e intuitiva ● Excepto para quem já tenha bom domínio de C/C++ ou Java – IDE de VB.Net mais amigável que o IDE de C# ● Permite que mais rapidamente nos concentremos nos conceitos (métodos, propriedades, herança, …) e não na sintaxe (if then else…)
  • 20. C# vs VB.Net ● Performance Both have access to the Now hitting on some touchy issues, many developers same framework libraries. believe that VB.NET is slower then C#. That’s not Both will perform entirely true. The only place I see VB.NET slower than largely equivalently C# is where developers use old-style functions like (with a few small Len and Mid instead of calling reciprocal methods differences which are available within the .NET Framework library classes unlikely to affect most and as mentioned by Heath Stewart (see post below) people, assuming using old syntax like FunctionName = ReturnValue. VB.NET is used with Option Strict on) .NET framework comes with a single class library. And thats all programmers need to learn!! Whether they write the code in C# or VB.NET or J#, it doesn't matter, you just use the .NET class library. There is no classes specific to any language. There is nothing more you can do in a language, which you can't do in any other .NET language. You can write code in C# or VB.NET with the same number of lines of code, same performance and same efficiency, because eveyone uses same .NET class library.
  • 22. Execução de Aplicações ● Aplicação Tradicional – Source => Parser / Compilador => Executável
  • 23. Execução de Aplicações ● Progress – Source p-code – Intermediate r-code ● R-code portável... dentro de algumas restrições ● Aplicação .Net – Source (vb, c#, jscript, cobol.net, …) – PE – portable executable (.exe, .dll)
  • 24. Execução de Aplicações ● .Net – CIL – Common Intermediate Language – CLR – Common Language Runtime
  • 25. Execução de Aplicações ● .Net – Componentes Comuns ● CLS – Common Language Specification - conjunto de regras que se aplicam a todas as linguagens .Net ● CTS – Common Type System – especificação de todos os tipos de dados e sua utilização – Permitem que todas as Linguagens .Net tenham um conjunto predefinido de tipos e funcionalidades base –
  • 27. Ambientes de desenvolvimento .Net – Notepad + Command Prompt – VStudio – SharpDevelop – Eclipse – ...
  • 28. Hello World ● Hello world – Definição e muitos exemplos ● http://encyclopedia.laborlawtalk.com/Hello_world_program
  • 29. Hello World - Notepad ● Trabalho Prático – Criar um programa em .net usando notepad ( gravar como Module1.vb)
  • 30. Hello World - Notepad ● Trabalho Prático – Compilar e Executar ● Start / Programs / Visual Studio .Net 2003 / Visual Studio .Net Tools / Visual Studio .Net 2003 Command Prompt – vbc /target:exe Module1.vb
  • 31. Hello World - VStudio ● Trabalho Prático – Criar um programa em .net usando visual studio ● Visual Studio .Net 2003 ● File / New / Project / Visual Basic Projects / Console Application
  • 32. Hello World - VStudio ● Trabalho Prático – Código
  • 33. Hello World - VStudio ● Trabalho Prático – Compilar – Build / Build Solution – Executar – Debug / Start
  • 34. Ferramentas básicas de debug ● Break points – Conditional break points ● Watch ● Step-By-Step ● Call stack
  • 35. Objectivos ● Forças Externas ● .Net vs Java ● C# vs VB.Net ● Execução de Aplicações ● Ambientes de desenvolvimento .Net ● Criar Projecto em VStudio ● Ferramentas básicas de debug