Introdução ao .Net - Bruno Campagnolo de Paula

Propaganda
Bruno C. de Paula
Introdução à
Plataforma .Net
1º Semestre 2010 > PUCPR > BSI
29/06/2017
Resumo da aula
Definir
o que é a plataforma
.Net;
Citar as principais opções de
desenvolvimento nesta
plataforma;
Situar o framework ASP.NET
neste contexto.
2
3
O que é a plataforma .Net ?
 Microsoft;
 Mudança
radical no modelo de
desenvolvimento e utilização de
software;
 “É
uma mudança tão grande quanto a
mudança do DOS para Windows”.
4
Motivação de uso da plataforma
Projetado
já tendo como objetivo:
Internet;
Banco de Dados.
Enquanto isso em outras
plataformas:
adaptadas para a Internet;
acesso a bd complexo.
5
 Versões
principais(compatíveis entre si):
2003: 1.1
– 2008: 3.5
2005: 2.0
– 2010: 4.0
6
Common Language
Runtime
CLR
7
CLR
 Ambiente
de execução;
 Padronizado pela ECMA;
 Fornece suporte às linguagens de
programação do .Net:
VB.Net;
C#;
C++;
J#;
F#
Etc??????
8
CLR - Responsabilidades
 Execução
do código MSIL:
Microsoft Intermediate Language;
Corresponde ao bytecode do Java, mas
otimizado para a máquina alvo;
Código gerenciado.
 Gerenciamento de memória;
 Criação de objetos;
 Usa biblioteca de classes comum (.Net) e
sistema de tipos comum (CTS).
9
C#
VB.Net
F#
Compilador
...
Código nativo
MSIL
Compilador JIT
do CLR
Biblioteca de classes:
.Net Framework Class Library
ASP.NET
VB.NET
C#
...
.NET Framework Class Library
System.Data
System.Security
System.Io
System.Net
Microsoft.CSharp
...
CLR
10
Common Type System (CTS)
11
Tipo
Por Referência
(“Reference Types”)
Por Valor
(“Value Types”)
Definidos pelo
Usuário
Pré-definidos
Auto-descritos
Inteiros
Enumerações
(“Enums”)
Ponto Flutuante
Estruturas
Interface
Ponteiro
Equivalentes
por Nome
Pré-definidos
String
Delegates
Object
“Boxed
Value Types”
“Boxed Enums”
Equivalentes
Estruturais
Arrays
12
Olá, Mundo – C#
using System;
class olaMundo
{
public static void Main()
{
String msg = "Ola Mundo!";
Console.WriteLine (msg);
}
}
COMPILAR COM:
csc olamundo.cs
13
Assembly
Código fonte
Compilador
Csc.exe, Vbc.exe,…
C++, C#,
Visual Basic
ou qualquer
outra
linguagem
.NET
DLL ou EXE
Principais plataformas de
desenvolvimento
ASP .NET
ASP .NET
Web
MVC
Services
Web
Forms
14
WPF e
Windows
Silverlight
Forms
ADO .NET – Dados e XML
Biblioteca de Classes Básicas
Common Language Runtime
Windows Forms
Desktop em .Net
 Abordagem
15
imperativa (código C#):
Descreve o programa como um conjunto de
ordens (ações);
Diz como fazer;
Poderosas, mas difíceis para "pessoas
normais";
 Exemplos:
Swing, Windows Forms, etc;
WPF
Desktop em .Net
 Usa
16
DirectX;
 Abordagem declarativa (XAML);
Descreve o que deve ser feito, mas não se
preocupa com como os procedimentos
funcionam;
Mais simples de serem entendido, mas
menos poderoso;
 Facilidade de usar editor visual;
 Exemplos:
WPF, HTML, JavaFx.
17
ASP.NET MVC
Implementação da Microsoft para o
paradigma MVC: Model View
Controller;
Visual Studio 2010 ou
http://www.asp.net/mvc
Alternativa a Web Forms;
Separação entre camadas.
Silverlight (WPF/e)
Web em .Net
Compete com o Adobe Flash;
Crossbrowser;
Mais voltado para design;
RIA: Rich Internet Applications;
Cases: olimpíadas, nba;
Abordagem declarativa (XAML);
Futuro bastante indefinido!
19
29/06/2017
(Web Forms)
20
Web Forms
Web em .Net – nossa disciplina!
 “Drag
& Drop” de componentes;
 Geração de código HTML/ CSS/ JS;
 Abordagem híbrida formada por 2
componentes principais:
Modelo (páginas ASPX):
• Declarativo;
• Semelhante a HTML;
Seção de código (páginas ASPX.CS):
• Imperativo;
• Código em C#.
21
Web Forms
Acoplamento forte entre camadas!
Web Forms
Acoplamento forte entre camadas
Download