OOP - Padrões de Projeto  XML
Índice dos Fóruns » Arquitetura de Sistemas
Autor Mensagem
fabio.patricio
GUJ Master

Membro desde: 04/01/2004 02:51:33
Mensagens: 1512
Localização: Porto Alegre - RS
Offline

E velho e conhecido artigo deve ajudar.

http://martinfowler.com/articles/injection.html

ou em portugues

http://www.javafree.com.br/home/modules.php?name=Content&pa=showpage&pid=4

]['s

Fabio Patricio
http://blog.wansoft.com.br

[WWW] [MSN] [ICQ]
skill_ufmt
JavaEvangelist
[Avatar]

Membro desde: 20/05/2003 18:02:23
Mensagens: 318
Localização: Cuiabá - MT
Offline

Daniel Quirino Oliveira wrote:IoC é um padrão.
E aí, Kivanio? Vamos começar a dar uma Googlada?


Cara, tenho estudado muito e escrito sobre padões (TCC da facul), ja vi e li a maioria dos livros de padrões, vo começar a ler o de refactoring do fowler.

E não vi nenhum padrão IOC, poderia me explicar melhor ou dar uma referência de que padrão ele é, artigo, livro? se é padrão onde ele ta "encaixado" em que contexto?

No artigo do Fowler, ele discute mais service locator e IOC, service e mensiona varias vezes que prefere service locator, e também diz depender do contexto para poder decidir sobre qual uso. Também menciona IOC como um padrão, porém não da também essa refenrência.


Windows: Not Plug & Play, but Bug & Pay!
_________________________________________________
Kivanio Pereira Barbosa
Bacharel em Ciência da Computação

CUIABÁ JAVA USERS
www.cajumt.com.br
[WWW] aim icon [MSN] [ICQ]
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

Se voce ficar muito fissurado nesse lance de OOP e patterns e nao partir pra quebradeira e realmente implementar sistemas que precisam deles, acho que vc nao vai pegar a sutileza da coisa, mas existe um equilibrio muito delicado entre as situacoes que requerem codigo especializado e aquelas em que socar meia duzia de patterns eh mais facil. No geral, vc quer se livrar de alguns problemas logo, e usa uns patterns pra ajudar - o que traz um novo conjunto de problemas, e vc vai resolvendo, e por ai vai... ate dar um ataque, vc ver que usou patterns demais e enfrescou demais o desenho da aplicacao.

Ai voce joga 5 quilos de codigo fora, faz de novo de forma mais simples e acaba com menos de 1/3 do que tinha antes, mantendo toda a funcionalidade. E o processo se repete...

PS: "mensiona" foi foda hein?
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
einsamkeit
Thread.start()

Membro desde: 12/11/2004 11:34:44
Mensagens: 28
Offline

Na minha opnião OO é um grande avanço dentro da programação pois o desenvolvedor para de pensar orientado ao computador e começa a pensar orientado ao problema em si e nos processos que o compõe de forma bem mais intuitiva. Quando programamos proceduralmente ou imperativamente dividimos nossos programas em blocos e fluxos de execução, e isso se parece muito com o modo que um computador funciona em baixo nível. Agora quando pensamos em objetos conseguimos abstrair idéias do mundo a nossa volta, assim mesmo como o vemos: cheio de objetos diferentes que possuem n relacionamentos diferentes entre si. Assim fica bem mais fácil construir aplicações escalaveis e de fácil manutenção, quando começamos a enchergar Objetos interagindo e não fluxos e sequências de bits com finalidades obscuras... É isso aew pessoal, minha opnião de uma das grandes vantagens de OOP. Valeu!

This message was edited 1 time. Last update was at 26/02/2005 23:32:59


SI/FURB/Blumenau/SC
[MSN]
skill_ufmt
JavaEvangelist
[Avatar]

Membro desde: 20/05/2003 18:02:23
Mensagens: 318
Localização: Cuiabá - MT
Offline

cv wrote:Se voce ficar muito fissurado nesse lance de OOP e patterns e nao partir pra quebradeira e realmente implementar sistemas que precisam deles, acho que vc nao vai pegar a sutileza da coisa, mas existe um equilibrio muito delicado entre as situacoes que requerem codigo especializado e aquelas em que socar meia duzia de patterns eh mais facil. No geral, vc quer se livrar de alguns problemas logo, e usa uns patterns pra ajudar - o que traz um novo conjunto de problemas, e vc vai resolvendo, e por ai vai... ate dar um ataque, vc ver que usou patterns demais e enfrescou demais o desenho da aplicacao.

Ai voce joga 5 quilos de codigo fora, faz de novo de forma mais simples e acaba com menos de 1/3 do que tinha antes, mantendo toda a funcionalidade. E o processo se repete...

PS: "mensiona" foi foda hein?


opa, realmente a parada é implementar, eu diria, integrar, integrar padrões de maneira bem eficaz é realmente para pessoas experientes que também depois de muitas COs, aprenderam mais um pouco

Codigo de vai pro lixo, é reescrito, num é um prazer só dos patterns , OO proporciona isso, e pq não dizer que a estruturada também proporcianava, cada qual a sua maneira é claro.
Reescrever, retirar, refazer, fazem parte do ciclo de vida do software...

This message was edited 1 time. Last update was at 27/02/2005 01:12:12


Windows: Not Plug & Play, but Bug & Pay!
_________________________________________________
Kivanio Pereira Barbosa
Bacharel em Ciência da Computação

CUIABÁ JAVA USERS
www.cajumt.com.br
[WWW] aim icon [MSN] [ICQ]
skill_ufmt
JavaEvangelist
[Avatar]

Membro desde: 20/05/2003 18:02:23
Mensagens: 318
Localização: Cuiabá - MT
Offline

einsamkeit wrote:Na minha opnião OO é um grande avanço dentro da programação pois o desenvolvedor para de pensar orientado ao computador e começa a pensar orientado ao problema em si e nos processos que o compõe de forma bem mais intuitiva. Quando programamos proceduralmente ou imperativamente dividimos nossos programas em blocos e fluxos de execução, e isso se parece muito com o modo que um computador funciona em baixo nível. Agora quando pensamos em objetos conseguimos abstrair idéias do mundo a nossa volta, assim mesmo como o vemos: cheio de objetos diferentes que possuem n relacionamentos diferentes entre si. Assim fica bem mais fácil construir aplicações escalaveis e de fácil manutenção, quando começamos a enchergar Objetos interagindo e não fluxos e sequências de bits com finalidades obscuras... É isso aew pessoal, minha opnião de uma das grandes vantagens de OOP. Valeu!



Bom, vamos lá, o que OO revolucionou? qual efetivamente é seu ganho? Se for pensar com calma, realmente OO foi inovadora, mas não é perfeita, assim como na estruturada, OO tem seus vários problemas, e também não atendente de maneira completa a nossa realidade, dizer que OO é explendida, magnifica, é um exagero na minha opinião.

Se OO por si só fosse ótimo, não precisaria de patterns, IOCs e etc...
Os conceitos são magnificos, mas é preciso tomar cuidado ao usá-los...

Quem aqui já num viu OO Estruturada? hehehe


OBS: so fã de OO, antes que me batam

This message was edited 1 time. Last update was at 27/02/2005 01:10:55


Windows: Not Plug & Play, but Bug & Pay!
_________________________________________________
Kivanio Pereira Barbosa
Bacharel em Ciência da Computação

CUIABÁ JAVA USERS
www.cajumt.com.br
[WWW] aim icon [MSN] [ICQ]
einsamkeit
Thread.start()

Membro desde: 12/11/2004 11:34:44
Mensagens: 28
Offline

skill_ufmt wrote:
einsamkeit wrote:Na minha opnião OO é um grande avanço dentro da programação pois o desenvolvedor para de pensar orientado ao computador e começa a pensar orientado ao problema em si e nos processos que o compõe de forma bem mais intuitiva. Quando programamos proceduralmente ou imperativamente dividimos nossos programas em blocos e fluxos de execução, e isso se parece muito com o modo que um computador funciona em baixo nível. Agora quando pensamos em objetos conseguimos abstrair idéias do mundo a nossa volta, assim mesmo como o vemos: cheio de objetos diferentes que possuem n relacionamentos diferentes entre si. Assim fica bem mais fácil construir aplicações escalaveis e de fácil manutenção, quando começamos a enchergar Objetos interagindo e não fluxos e sequências de bits com finalidades obscuras... É isso aew pessoal, minha opnião de uma das grandes vantagens de OOP. Valeu!



Bom, vamos lá, o que OO revolucionou? qual efetivamente é seu ganho? Se for pensar com calma, realmente OO foi inovadora, mas não é perfeita, assim como na estruturada, OO tem seus vários problemas, e também não atendente de maneira completa a nossa realidade, dizer que OO é explendida, magnifica, é um exagero na minha opinião.

Se OO por si só fosse ótimo, não precisaria de patterns, IOCs e etc...
Os conceitos são magnificos, mas é preciso tomar cuidado ao usá-los...

Quem aqui já num viu OO Estruturada? hehehe


OBS: so fã de OO, antes que me batam


O paradigma de Programação Orientada a Objetos revolucionou sim todo o conceito de programação, assim como o paradigma Imperativo e outros tantos revolucionaram um dia, cada um em um determinado âmbito do desenvolvimento de software. É uma questão natural de evolução! É lógico que não temos um paradigma perfeito, pois se tivessemos todos os outros poderiam ser ignorados e esquecidos. Cada um tem sua funcionalidade, afinal mesmo dentro da OO programamos um pouco de Procedural invariavelmente. Os patterns são certamente uma evolução e possivelmente irão contribuir para o surgimento de novos paradigmas! Mas já que a evolução do software segue uma linha bem mais vagarosa que a do hardware por exemplo, o ideal é ir integrando o que há de melhor de cada paradigma/padrão de projeto/componentes/tecnologias etc. É minha opnião! Valeu pessoal! []s

Pablo

This message was edited 1 time. Last update was at 27/02/2005 01:46:11


SI/FURB/Blumenau/SC
[MSN]
Rocklee6544
Debugger
[Avatar]

Membro desde: 02/03/2010 03:05:46
Mensagens: 50
Offline

Na minha visão, se estiver errado por favor me falem.
OOP é uma filosofia de programação que prega a reutilização de código e que busca abstrair e representar objetos do mundo real da melhor forma possível.
A idéia é fazer com que os objetos cooperem entre sí para fazer uma determinada tarefa.(objetos se comunicando com objetos)
Além disso cada objeto assume um papel dentro do sistema , ou seja cada objeto tem sua responsabilidade.(Dentro desse contexto podemos aplicar várias conceitos abstraidos do mundo real para melhorar OOP , como herança por exemplo,criação de objetos modelo, entre outros).

Design patternss são padrões encontrados a longo do tempo para resolver um série de problemas frequentemente encontrados em projetos, resumindo
é uma solução para um determinado problema que foi exaustivamente testada e aprovada.


This message was edited 1 time. Last update was at 02/02/2012 22:55:45

[Email] [MSN]
Rocklee6544
Debugger
[Avatar]

Membro desde: 02/03/2010 03:05:46
Mensagens: 50
Offline

A inovação da programação Orientada a Objetos esta justamente na maior capacidade de abstração do mundo real.

Por exemplo quanto trabalho vc teria na programação procedural para dizer que um gerente pode fazer tudo que um funcionário normal faz e mais um monte de coisa.

Quanto trabalho vc teria para criar diferentes tipos de autenticação de funcionários sabendo que todos os tipos são similares ou tem partes comuns.

A programação orientada a objetos trouxe vários benefícios dentre eles: facilidade de manutenção (quando programado direito , orientado a objetos de fato e não a gab ou string).
Reutilização de código , divisão de responsabilidades , além de ter simplificado a simulação de problemas reais do dia-a-dia).


Sem falar em muitas outras coisas: Como uso de memória, grande tolerância a mudanças.
(Vc pode obrigar que sejam seguidos alguns padrões pelo código, através de contratos entre classe ou interfaces).

Lógico a OOP tem seus problemas? tem , mas ainda assim é muito melhor do que a velha programação procedural.(onde tudo era meio que misturado)







This message was edited 1 time. Last update was at 02/02/2012 23:18:21

[Email] [MSN]
 
Índice dos Fóruns » Arquitetura de Sistemas
Ir para:   
Powered by JForum 2.1.8 © JForum Team