capítulo 5 - colecaotecnica.cpscetec.com.br a operação é feita sem a interferência do usuário,...

6
Capítulo 5 Visual Studio 2008 Net Framework Soluções e projetos

Upload: others

Post on 21-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Capítulo 5 - colecaotecnica.cpscetec.com.br A operação é feita sem a interferência do usuário, em intervalos de ociosidade da CPU. 5.2. Soluções e projetos Quando iniciamos

Capítulo 5

Visual Studio 2008• Net Framework

• Soluções e projetos

Page 2: Capítulo 5 - colecaotecnica.cpscetec.com.br A operação é feita sem a interferência do usuário, em intervalos de ociosidade da CPU. 5.2. Soluções e projetos Quando iniciamos

O Visual Studio é um conjunto de ferramentas de desenvol-vimentoquecontémeditoresdecódigos, IntelliSense, assistentes ediferenteslinguagensemummesmoambientededesenvolvimentointegradoparaprin-cipianteseprofissionais.Apresenta-seemdiferentesplataformas:PC s,servido-res,aplicaçõeswebemóveis.Emumavisãomaisabrangente,oVisualStudiopermiteodesenvolvimentorápidodeaplicativos,recursosdedepuraçãoebancodedados,semdependerdosrecursosoferecidospeloFramework3.5.AuxilianodesenvolvimentoWebhabilitadoparaoAJAX,contandoaindacomosrecursosdoASP.NET.

5.1. .nEt FrameworkDesenvolvidopelaMicrosoft,o.NETFrameworkéummodelodeprograma-çãodecódigogerenciadoparacriaraplicativoscliente,servidoresoudispositi-vosmóveis.Éformadoporumconjuntovariadodebibliotecasquefacilitamodesenvolvimentodeaplicações,desdeasmais simples até asmais complexas,bemcomoainstalaçãoedistribuiçãodeaplicações.Baseadoemtecnologiademáquinavirtual,o.NETFrameworkétotalmenteorientadoaobjetos.

O .NET Framework 3.5 incrementa as versões anteriores comnovas imple-mentaçõesASP.NETeAJAXeaumentaaintegraçãocomoLINQ(LanguageIntegratedQuery, ou consulta integradade linguagem)que é umanova fer-ramentadepesquisasembasededados,alémdesuportetotalparaWindowsWorkflowFoundation(WF),WindowsCommunicationFoundation(WCF),WindowsPresentationFoundation(WPF)eWindowsCardSpace.Suaestrutu-raécompostapordiferentescamadas,comopodemosvisualizarnafigura196.

Na camada inferior, encontramos a Common Language Runtime (CLR) outempodeexecuçãodelinguagemcomum.Suafinalidadeéexecutarasaplica-ções,criandoumambientedemáquinavirtualecompilandoaslinguagensdeprogramação do .NET Framework em código nativo. O .NET FrameworksBaseClass,nasegundacamadadebaixoparacima,representaasbibliotecasdeclassesdisponíveisparaodesenvolvimentodeaplicativos(consulteoquadroRe-cursos de classes disponíveis napágina188).ÉoprincipalpontodeinteratividadecomoRuntime(tempodeexecução).

Naterceiracamadaascendente,estáoADO.NET(DataeXML).OActiveXDataObjects(ADO)oferecetodososrecursosnecessáriosparaacriaçãoema-nipulação de bancos de dados fornecidos por meio das classes System.Data,.Common,.OleDb,.SqlClients,SqlTypes,.Odbce.Xml.

AJAX (acrônimo para a expressão em inglês Asynchronous

Javascript And XML, que literalmente pode ser

traduzido para Javascript e XML Assíncrono) é o

nome dado à utilização metodológica de

Javascript e XML para fazer com que as páginas

web se tornem mais interativas.

O Microsoft .NET Framework 3.5 é o modelo de programação do Windows Vista e, segundo a

própria Microsoft ao anunciar o lançamento, “combina o

poder do .NET Framework 2.0 com novas tecnologias para construção de aplicativos”.

Permite a realização de novas experiências, comunicação integrada e sem fronteiras, além de ser útil para vários

processos corporativos.

Figura 196.NET Framework.

NaquartacamadatemosWebServiceseWebForms.OWebServicerepresentaaintegraçãoentreosdadosdediferentesaplicaçõeseplataformas,permitindooenvioerecepçãodedadosnoformatoXML.Tudodemaneiramuitofácil.Paraqueissoocorra,entraemcenaoWebForms,criandoumambientededesen-volvimentosemelhanteàsferramentasquenormalmenteutilizamos,clicandoearrastando,assimcomosefaznoFrontPagedaMicrosoft.JáoWindowsForméumaevoluçãodosformuláriosutilizadosparaprogramação.

Localizadonapenúltimacamadadebaixoparacima,oCommonTypeSys-tem(CTS),quepodeserliteralmentetraduzidocomosistemadetipocomum,existeparaqueocorraaintegraçãoentreaslinguagensdeprogramação.Defi-necomoostiposdedadosserãodeclarados,usadosegerenciadosnomomentodaexecuçãodoaplicativo.

Notopo,aparecemaslinguagensdeprogramaçãoutilizadasparaodesenvolvimen-todaaplicação,comoVB,C++,C#eJScript.Assim,pode-seconcluirqueocon-juntodetodasascamadasmencionadasrepresentaopacotedoVisualStudio.Net.

5.1.1. máquina virtual

Amáquinavirtualservecomoumacamadaentreocódigoeosistemaoperacio-nal.Todocódigoescritono.NET(VisualBasic,C#ouqualqueroutralingua-

ASP.NET, sucessora da tecnologia ASP (de

Active Server Pages ou páginas de servidor

ativo) é a plataforma da Microsoft usada para

o desenvolvimento de aplicações web.

InFoRmátICa 4

186

CaPítulo 5

187

Page 3: Capítulo 5 - colecaotecnica.cpscetec.com.br A operação é feita sem a interferência do usuário, em intervalos de ociosidade da CPU. 5.2. Soluções e projetos Quando iniciamos

gem),écompiladoparaumalinguagemintermediáriachamadaCIL(CommonIntermediateLanguageoulinguagemintermediáriacomum),queédistribuídaeexecutadapelosdiferentesclientesdaaplicação.

5.1.2. Garbage collector (coletor de lixo)

Mecanismointernoquepossibilitaaretiradadamemóriadeobjetosquenãoestãosendomaisutilizados.Aoperaçãoéfeitasemainterferênciadousuário,emintervalosdeociosidadedaCPU.

5.2. Soluções e projetosQuandoiniciamosumaaplicaçãoouserviçonoVisualStudio,temosumpro-jetoquefuncionacomoumrepositórioparagerenciamentodoscódigosfonte,conexõescombancos,arquivosereferências.ElerepresentaumapastadaSolu-ção(Solution),queporsuavezpoderáconterinúmerosprojetosindependentes

entresi,elaboradosemdiferenteslinguagenseorganizadosnoformatodepastassemelhanteaoWindowsExplorer.Osarquivosdeprojetos(.vbproj,.csprojetc.)eosarquivosdesolução(.sln)estãonoformatoXML.

5.2.1. Iniciando o Visual Studio – Solution

AoiniciaroVisualStudiopelaprimeiravez(figura197),surgeateladeStartPage(oupáginainicial).NomenuFile(arquivo),entreemNew(novo)ecliqueemProject(projeto),comoilustraafigura198.

Emtemplates(modelos),escolhaotipodeprojetoaserelaborado(WindowsFormApplicationouaplicaçãodeformulárioWindows,ConsoleApplicationouaplicaçãodepaineldecontroleetc.).Lembre-sedenomearoseuprojetoe

• System: entre os seus inúmeros recursos, está o suporte para programação, os tipos de bases (String, Int32, DateTime, Boolean etc.) e as funções matemáticas.

• System.CodeDom: para a criação e execução de código de maneira imediata.

• System.Collections: defi ne containers como listas, fi las, matrizes etc.

• System.Diagnostics: todas as classes necessárias para fazer diagnósticos.

• System.Globalization: suporte para a globalização, ou seja, essa classe integra toda a plataforma do Framework.

• System.IO: suporte para o FileSystem, usando classes de manipulação de arquivos e diretórios.

• System.Resources: usado para tradução do aplicativo em diferentes idiomas e também para retorno de mensagem de acordo com o idioma selecionado pelo usuário.

• System.Text: suporte para a codifi cação e ao StringBuilder, para manipulação de Strings.

• System.Text.RegularExpressions: suporte para expressões regulares.

Recursos de classes disponíveisFigura 198 Janela de Projeto.

Figura 197 O Visual Studio.

InFoRmátICa 4

188

CaPítulo 5

189

Page 4: Capítulo 5 - colecaotecnica.cpscetec.com.br A operação é feita sem a interferência do usuário, em intervalos de ociosidade da CPU. 5.2. Soluções e projetos Quando iniciamos

indicaralocalização,ouseja,ondeosarquivosserãogravadoseonomedasuaSolution(solução),comomostraafigura199.ConfirmeosdadoseteremosaSolutionabertaparaodesenvolvimentodaaplicação.

Caso o projeto seja elaborado utilizando o Visual Basic, o procedimentoseráomesmo.EscolhaemProjectTypes(tiposdeprojeto)aopçãoOthersLanguages(outraslinguagens),depoisVisualBasice,porfim,atemplatenaqualdesejatrabalhar.

5.2.2. Conhecendo o Visual Studio

OVisualStudioapresentaumasériedejanelaseguiasquefazempartedasuaIDE(IntegratedDevelopmentEnvironmentouAmbientedeDesenvolvimentoIntegrado).Confiraalgumas,aseguir.

Barra de ferramentas(toolbar),quedisponibilizaosbotõesdecomandosmaisutilizados(figura200).

gramaçãodoformulário;Form1.Designer.cs,paraprogramaçãovisualdofor-mulário;eProgram.cs,oprogramaprincipal,noqualencontramosométodomain(),quedaráinícioàaplicação.

ParaaplicaçõesemVisualBasic,serádisponibilizadooarquivoForm1.vb,quepossuiamesmafunçãodoForm1.cs.Confira,aseguir,janelasdisponíveisesuasfunções:

ToolBox (caixa de ferramentas):contémcomponentesparaodesenvolvimentodoprojeto,osquaisestãodivididosemguiasdeacordocomotipodeaplicação.Nessecaso,podemosverificar(figura202)aabadecomponentesdacategoriaCommonControls(controlescomuns).

Form (formulário):essajanela(figura203)receberáoscomponentesdatool-boxeaprogramaçãocorrespondente.Oscomponentesserão“arrastados”sobreoFormparacomporainterfacedousuárioeterãosuaspropriedadesmodifica-dasdeacordocomoprojeto.Paraativarajaneladecódigoerealizaraprogra-mação,éprecisodarumduplocliquesobreocomponenteouformulário.

Properties (propriedades):permitealteraraspropriedadesdoscomponentes,quepodemaparecerorganizadasporcategoriaouemordemalfabética(figura204).

Ajaneladepropriedadetraz,deacordocomcadacomponentetoolbox,umasériederecursosparaconfiguração.Porexemplo,umcomponenteLabel(rótulo),utilizado

Figura 202 ToolBox.

Figura 199 Definição da Solution.

Figura 200Toolbar.

Solution Explorer:mostraosarquivosquefazempartedoseuprojeto.Éseme-lhanteaoExplorerdoWindows,poispermitecriar,excluireimportararquivos(figura201).

SeanalisarmosumaaplicaçãoWindowsFormApplicationemC#,dentrodajanelaSolution,podemosencontrarosseguintesarquivos:Form1.cs,parapro-

Figura 201 Solution Explorer. Figura 203

Form.

InFoRmátICa 4

190

CaPítulo 5

191

Page 5: Capítulo 5 - colecaotecnica.cpscetec.com.br A operação é feita sem a interferência do usuário, em intervalos de ociosidade da CPU. 5.2. Soluções e projetos Quando iniciamos

paraincluirexpressõesnoprojeto,possuindodiversaspropriedades–taiscomoname(nome),text(texto),visible(visível),font(fonte),forecolor(cor)–equepoderãosermanipuladasdiretamentenajanelaoupormeiodeprogramação,utilizandoanota-çãode“ponto”,conformeoseguintecódigo,queocultaoLabel:

Label1.Visible = false;

CodeandTextEditor(editordetextoedecódigo)éajanelaqueutilizaremosparaimplementaroscódigosdeprogramação(figura205).Paraacessá-la,bastaclicarduasvezessobreelaouemqualquercomponente.OutraopçãoéusarosbotõesCode(có-digo)eView(visualizar)najaneladeSolutionExplorer,comomostraafigura206.

Figura 209 Guias de janelas.

Figura 204Properties.

Figura 205 Code and text Editor.

Figura 206Em destaque, os botões

Code e View.

Auto Hide:umapontadorindicaaposiçãodajanela,queficaráoculta.Bastaumsimplesmovimentodomousesobreotítulodessajanela(figura207)paraque ela seja aberta. Para fixá-la, utilize o ícone semelhante a um preguinho(figura208),localizadonabarradetítulo.

Podemosmovimentarasjanelasecolocá-lasemqualquerlugardaaplicaçãocomaajudadosguias.Paraisso,cliquenabarradetítuloemantenhaobotãodomousepressionado,arrastandoajanelaparaqualqueráreadeseudesktop.Imediatamen-te,surgirãoasindicaçõesdasguias(figura209).Escolhaumadelasesolteajanela.

Figura 207 Auto Hide.

Figura 208 Fixar janela.

5.2.3. Gerenciador de janelas

OVisualStudioapresentamuitasjanelase,parafacilitaroseugerenciamento,existemquatrorecursos.Confiraquaissão,aseguir.

Dockable:colocaajanelaabertajuntoàjanelaprincipaldoprograma.

Hide:fechaaquelajanelae,paraabri-lanovamente,usaomenuView.

Floating:ajanelaficaflutuante,podendoserdeslocadaparaqualquerpartedodesktop.

5.2.4. nomenclatura de componentes

Cadacomponenterecebeumanumeraçãoautomáticaquandoinseridonopro-jeto(Label1,Label2,Label3etc.).Nãoháproblemasemmanteressesnomes,mas,paradeixarocódigomaislegívelepadronizado,omelhoréutilizarumprefixorelacionadoaotipodecomponenteeàsuaidentificação.Porexemplo:

Label1 = lblPergunta

Label2 = lblMensagemAlerta

InFoRmátICa 4

192

CaPítulo 5

193

Page 6: Capítulo 5 - colecaotecnica.cpscetec.com.br A operação é feita sem a interferência do usuário, em intervalos de ociosidade da CPU. 5.2. Soluções e projetos Quando iniciamos

Atabela12mostraalgunsdosváriosprefixosutilizadosnaplataforma.NET.

tabela 12 PREFIXOS USADOS NA .NET

Componente

label

textBox

DataGrid

Button

ImageButton

DropDownlist

RadioButtonlist

Image

Panel

Prefi xo

lbl

txt

dtg

btn

imb

ddl

rbl

img

pnl

Prefi xo

lst

Dtl

Rep

Chk

Cbl

Rdo

PhD

tbl

Val

Componente

listBox

Datalist

Repeater

Checkbox

CheckBoxlist

RadioButton

PlaceHolder

table

Validators

5.2.5. IntelliSense

Aodigitaralgumainstrução,apareceráumasériedecomplementosrelacionadosaela.Quandoescrevemos“Console”,porexemplo,sãodisponibilizadosváriosmétodos.ComaajudadateclaTaboudaBarradeEspaço,ainstruçãosecom-põenaturalmente(figura210).

Duranteessaatividade,podemosrecorreraalgunsbotõesauxiliares(figura212)comoBreak,StopeRestart.

5.2.7. Identifi cação de erros

OVisualStudionosajudaaidentificarouinterpretaralgunserrosquepo-democorrerduranteoprocessodecriaçãoouexecuçãodocódigo.Confiraalguns,aseguir.

Erro de sintaxe: geralmente é identificado comuma linha emvermelho su-blinhandoaexpressão.Noexemplomostradonafigura213,estãofaltandoasaspasnofechamentodaexpressão.

Figura 211 Executando a aplicação.

Figura 212 Controles de execução.

Figura 210IntelliSense.

Instrução

Opções de complemento

Figura 213Erro de sintaxe.

Erro antes da execução: quandoocódigoapresentaalgumerroeumaexecu-çãoéforçada,umacaixadediálogosolicitaaousuárioquecontinueaexecuçãodocódigo,mesmoconstandoerro(figura214).Issofazcomqueaúltimaversãocorretasejaexecutada,ignorandoaatual.

Figura 214 Janela de erro.

Figura 215 Painel de erros.

Figura 216Erro de classe.

NaparteinferiordoVisualStudio,podemosvisualizaropainel(errorlist)deErros,WarningseMessages(figura215).

Cliquesobreoerroidentificado(1,2etc.)paraqueelesejaselecionadonocódi-goparavisualização.

Erro de classe ou método:comumenteidentificadocomumalinhaemazulsublinhandoaexpressão(figura216).Noexemplo,ainstruçãoestáescritadeformaerrada,poisocorretoéWriteLine().

5.2.6. Executando a aplicação

Paraexecutaraaplicação,pressioneatecla“F5”,ou,nabarrademenu,cliquenoitemDebug.EscolhaaopçãoStartDebuggingouutilizeobotãodabarradeferramentas(figura211).

InFoRmátICa 4

194

CaPítulo 5

195