Home

Capítulo 15 Programação orientada por objectos Ciclo de vida de

image

Contents

1. Multibanco classes e Os seguintes nomes pr prios s o pass veis de ATM User Keypad Display Display message Button State Bank account Checking account Savings account Customer Customer number PIN Bank eRSIDADE ka AWN k pe originarem classes Introdu o Programa o 2007 08 A Lopes Multibanco es cart es CRC manage state Customer select customer select account BankAccount execute transaction Customer Bank get accounts find customer Customer match number and PIN Introdu o Programa o 2007 08 read customers A Lopes Dz Multibanco AA diagrama de estados big input client ID START ESTADO Customer number entered Customer not found 1 input PIN PIN Customer found select account Exit selected ES ACCOUNT Account selected Transaction sa or select transaction E TRANSACT Introdu o Programa o 2007 08 A Lopes Multibanco o rela o entre classes UML big depende de ME has a rela o entre classes Introdu o Programa o 2007 08 A Lopes Multibanco implementa o eRSIDADE e a S4 k pe koa eA implementa o pode come ar pelas classes que n o dependem de outras E o caso de Keypad e BankAccount De seguida implementa se a classe Customer a qual depende somente de BankAcc
2. eRSIDADE E koai EN tons Cap tulo 15 Programa o orientada por objectos Ciclo de vida de software Regras de boa conduta no desenvolvimento de programas com programa o orientada por objectos Identifica o de novas classes e m todos incluindo o uso de cart es CRC Identifica o de rela es de heran a agrega o e depend ncia entre classes e respectiva descri o atrav s de diagramas UML Ciclo de vida de software e Consideram se todas as actividades desde a an lise inicial at ao software se tornar obsoleto eO processo formal de desenvolvimento de software descreve as fases do processo de desenvolvimento e fornece indica es sobre a forma de implementa o dessas fases e Fases do processo de desenvolvimento e an lise e design e implementa o e testes e instala o Introdu o Programa o 2007 08 A Lopes f A ANS h ae An lise e design An lise definir o que suposto o J documento de requisitos projecto executar no descri o do que far o programa n o pensar na forma como o programa executar as tarefas manual do utilizador com o modo de utiliza o do programa crit rios de performance Design planificar a implementa o do sistema descri o de classes e m todos identificar estruturas subjacentes ao problema a resolver Mi diagramas mostrando as so E rela es entre classes
3. i lt N koai Ono nota o UML para heran a e agrega o 2007 08 A Lopes E arnsa nons Depend ncia rela o uses S e a S4 toas sd e Por exemplo in meros programas dependem da classe Scanner para leitura de informa o do utilizador e Agrega o uma forma mais forte de depend ncia e Agrega o deve ser usada para recordar outro objecto entre chamadas de um m todo Introdu o Programa o 2007 08 A Lopes ste r lt N koai e A associa o um relacionamento mais geral entre classes sendo usada na fase inicial de design Agrega o e associa o Ono e Uma classe est associada a outra se for poss vel passar navegar de objectos de uma classe para objectos de outras Dado um objecto Bank podemos alcan ar objectos Customer serves Bank Customer rela o de associa o Introdu o Programa o 2007 08 A Lopes eRSIDADE arcano Diagramas UML heran a zero ou mais implementa o de interface gt um ou mais ta agrega o C zero ou um 0 1 depend ncia mmmmnas gt um 1 s mbolos UML para rela es multiplicidade BankAccount Attributes Customer Es BankAccount balance Methods rela o de agrega o com multiplicidade deposit O withdraw O atributos e m todos num diagrama de classe Introdu o Programa o 2007 08 A Lopes Processo de
4. o Programa o 2007 08 A Lopes Requisitos do Multibanco interac o L D io SH el E cd e No in cio o cliente deve indicar o n mero de cliente e de seguida pressionar o bot o A O ecr mostrar Enter Customer Number A OK e O cliente deve indicar o PIN e de seguida pressionar o bot o A O ecr mostrar Enter PIN A OK e Segue se a pesquisa pelo n mero de cliente e PIN Se a informa o coincide com a de um cliente do banco a interac o continua Caso contr rio volta para o ecr inicial e Se o cliente for autorizado o ecr mostrar Select Account A Checking B Savings C Exit Introdu o Programa o 2007 08 A Lopes Roso H Requisitos do Multibanco o interac o lt ese o cliente optar por C o Multibanco volta para o estado inicial isto solicita ao pr ximo cliente que indique o n mero de cliente e sen o i e com a op o A ou B o Multibanco memoriza a conta seleccionada O ecr mostrar Balance balance in selected account Enter amount and select transaction A Withdraw B Deposit C Cancel ese o cliente agora optar por C o Multibanco passa para o estado anterior e sen o i e o se o cliente optar por A ou B eo valor indicado levantado ou depositado e simula o n o levantado nem depositado nenhum dnheiro eo Multibanco passa para o estado anterior Introdu o Programa o 2007 08 A Lopes
5. desenvolvimento de um programa 1 Recolha de requisitos Cart es CRC para identificar classes responsabilidades e colaboradores Diagramas UML para registar rela es entre classes a Programa javadoc para documentar o comportamento dos m todos 5 Implementa o do programa Introdu o Programa o 2007 08 A Lopes Ea Co SH al a sd Requisitos do Multibanco o eO Multibanco utilizado por clientes de um banco e Um cliente tem e uma conta ordem e uma conta poupan a e um n mero de cliente eo PIN e Funcionamento eo cliente selecciona a conta ea m quina mostra o saldo da conta seleccionada e de seguida o cliente pode levantar ou depositar dinheiro eo processo repete se at o cliente decidir abandonar o programa Introdu o Programa o 2007 08 A Lopes Ong 30 H Requisitos do Multibanco o duas interfaces independentes q e interface baseada em texto Neste caso a leitura da entrada feita atrav s de System in Um di logo t pico Enter account number 1 Enter PIN 1234 A Checking B Savings C Quit A Balance 0 0 A Deposit B Withdrawal C Cancel A Amount 1000 A Checking B Savings C Quit C e interface gr fica t pica de um Multibanco real Deve possuir teclado ecr e tr s bot es A Be C O funcionamento destes depende do estado da m aq u in a First National Bank of Java Enter customer number A OK Introdu
6. janelas e streams INVOICE e A identifica o de classes feita normalmente 100 Main Sr segundo os nomes pr prios existentes na pi descri o de tarefas e Item Qty Price Total e De seguida define se o comportamento de Toaster 3 2995 89 85 cada classe Hair Dryer 1 24 95 24 95 Car Vacuum nt 19 99 39 98 e Por fim identificam se os m todos olhando para os verbos referenciados na descri o de RR E tarefas talvez Invoice LineItem Customer 1 Introdu o Programa o 2007 08 A Lopes Ono O KA Identifica o de classes se e Uma classe representa um conjunto de objectos com o mesmo comportamento Deste modo entidades com v rias ocorr ncias na descri o do problema s o bons candidatos para objectos deve se determinar o que t m em comum e assim desenhar as classes de modo as estas representarem essas caracter sticas comuns e Classes representam entidades como objectos outras como tipos primitivos Por exemplo devemos ter uma classe endere o ou usar simplesmente uma string e Nem todas as classes ser o identificadas na fase de an lise inicial e Algumas classes at j podem existir Introdu o Programa o 2007 08 A Lopes E Cart es CRC 09 H A Classe Responsabilidades Colaboradores e Um cart o CRC descreve uma classe as suas responsabilidades e os seus colaboradores Chass e Metodolo g ia Responsibilities Invoice Collaborato
7. identificar classes e m todos necess rios Introdu o Programa o 2007 08 A Lopes Implementa o testes e instala o Implementa o escrever e compilar c digo o qual M programa completo implementa as classes e os m todos identificados na fase de design Testes executar testes para verificar se o relat rio sobre testes e programa funciona correctamente respectivos resultados Instala o instalar o programa utilizar do programa Introdu o Programa o 2007 08 A Lopes Modelo de desenvolvimento em espiral bg e Processo com v rias itera es Numa primeira fase a nfase colocada na constru o de prot tipos Note se que a experi ncia no desenvolvimento de um prot tipo reutilizada na itera o seguinte Design Analysis Implementation Final Product Testing Deployment e Este modelo apresenta um problema existindo demasiadas itera es o seu desenvolvimento pode implicar mais tempo do que desej vel Introdu o Programa o 2007 08 A Lopes paan F q H H q pe topsn a0 Design orientado por objectos Introdu o Programa o 2007 08 A Lopes vT De Identifica o de classes a o e Uma classe representa de algum modo um conceito til Podem ser entidades concretas como por exemplo contas banc rias produtos ou rect ngulos Podem tamb m ser conceitos abstractos como o caso de
8. ount e A estrat gia bottom up permite testar as classes individualmente e As classes agregadas no diagrama UML originam vari veis de instancia o private Bank theBank e Pela descri o dos estados do Multibanco deduz se que s o necess rias vari veis de instancia o adicionais private int state private Customer currentCustomer private BankAccount currentAccount Introdu o Programa o 2007 08 A Lopes Multibanco implementa o e A maior parte dos m todos t m implementa o impl cita directa Por exemplo para o m todo selectCustomer a descri o pode ser literamente traduzida em instru es Java Finds customer in bank If found sets state to ACCOUNT else to START Precondition state is PIN param pin the PIN of the current customer public void selectCustomer int pin assert state PIN currentCustomer pre condition just keep going if state is PIN state theBank findCustomer customerNumber pin currentCustomer null START ACCOUNT Introdu o Programa o 2007 08 A Lopes Ficheiros java lt ATMTesterjava ATMViewer java ATMFrame java KeyPad java ATM java Bank java BankATM java Customer java BankAccount java Introdu o Programa o 2007 08 A Lopes
9. rs compute amount due LineItem e um cart o para cada classe e para cada m todo verbo escolher a classe que deve ser respons vel por ele e escrever essa responsabilidade no respectivo cart o e indicar quais as outras classes que s o necess rias para implementar essa responsabilidade os colaboradores Introdu o Programa o 2007 08 A Lopes Rela o entre classes Heran a Agrega o Depend ncia Introdu o Programa o 2007 08 A Lopes Heran a rela o is a S a Co al E cd e Rela o entre uma classe mais geral super classe e uma classe mais especializada sub classe e Exemplos e uma conta de poupan a uma conta banc ria e um c rculo uma elipse s que tem largura igual a altura apropriada e Por vezes abusa se do conceito uma classe Pneu deve ser uma sub classe da classe C rculo Talvez a rela o de agrega o has a seja mais Introdu o Programa o 2007 08 A Lopes Agrega o rela o has a e Objectos de uma classe cont m refer ncias a objectos de outra classe e Uso de uma vari vel de instancia o Vehicle eum pneu tem um c rculo como fontreira Rara etodo o carro tem um pneu at mais do que 1 Car class Car extends Vehicle class Tire has a private Tire tires private String rating private Circle boundary Tire Introdu o Programa o ste

Download Pdf Manuals

image

Related Search

Related Contents

Jabra 5700 User's Manual  Power-SOL UPSモニタ for Windows 取扱説明書  User guide for TF7700HDPVR/TF7710HDPVR    Graco Single Line Parallel Lubrication System User's Manual  13/08/21 できナビ 適合表 トヨタ www.field  Minka Lavery 176-1-138 Instructions / Assembly  

Copyright © All rights reserved.
Failed to retrieve file