[CodeIgniter] Chamar model dentro de model

Marco Telles contato em pierdeipanema.com.br
Quinta Dezembro 6 22:03:25 BRST 2007


Oi Marcus, eu li todos eles e outros que eles indicavam... :-)
Newton, acho que agora entendi. :-)

O problema maior que vejo, citando meu caso: meu primeiro trabalho em 
informática, nos idos de 1980, foi num mainframe IBM 4381 com cobol. 
Passei por pascal, clipper e até mumps (que eu detestava) num 
'supermicro' cobra, que de super não tinha nada... :-)
Tudo 'altamente' estruturado e procedural (tirando o mumps com seus 
gotos para tudo quanto é lado)

[Como diria um amigo, momento zen: a galera mais jovem (estou com 47) 
não faz idéia de como era difícil o aprendizado naquela época, com 
poucas faculdades e cursos raríssimos (de qualidade). Livros, também 
caros e na maioria importados ou com traduções terríveis.
Me afastei da informática (e aposentei) por motivos de saúde. Cansado de 
não fazer nada (também cansa,rs) voltei sem muitas pretensões a 
trabalhar como freela, aproveitando uma oportunidade em uma agência de 
marketing de um amigo que precisava 'dinamizar' os sites de seus 
clientes. E aí veio a complicação. O mundo tinha mudado, só via OOOOOO 
em tudo quanto canto que entrava, mergulhei de cabeça há uns 2 anos 
estudando OO e mais recentemente quando decidi que precisava evoluir e 
sair do gedit para Eclipse e da programação na unha para os tão 
propagados frameworks. Ao conhecer o CI o prazer de programar tem 
voltado a cada dia, a cada nova descoberta.]

Então, parando por aqui (acabei me empolgando, rs) na verdade acho que o 
problema é que grande parte ainda programa (ou tenta) orientado a 
objetos mas pensando estruturadamente. É como um professor de inglês 
dizia: se você pensa em inglês você fala em inglês. Acho que é por ai, 
precisamos pensar OO para programar OO, e apesar de ser tão simples, é 
muito difícil quando já temos os conceitos enraizados na mente.
Hoje ganhei o dia, foi uma discussão muito legal, em altíssimo nível, 
sem ranços e produtiva.
Enfim, descobri que estava fazendo tudo errado :-[

Abraços.

Muita sorte para nós!

Marco Telles

#############
# Pier de Ipanema ( http://www.pierdeipanema.com.br/ )
# X-Trad Traduções BR ( http://www.x-trad.org/ )
# CodeIgniter PHP framework ( http://www.codeigniter.com.br/ )
# Ubuntu The power of free software ( http://www.ubuntu-br.org/ )
# Python Programming Language ( http://www.pythonbrasil.com.br/ )



Marcus Cavalcanti escreveu:
> Eu só acho q vou continuar achando que todo mundo pensa antes em 
> implementação do que em conceito (analise, modelagem,  comportamento) 
> .. como as pessoas ficam presas a implementacao, acabam nao fazendo o 
> que uma arquitetura propoe .. ai se perdem, ficam com duvidas, nao 
> conseguem mudar ... isso sempre pq fulano ao inves de saber o que é 
> modelo, quer saber o que tem nele, se tem método, se tem bean, se tem 
> validação .. isso que eu acho errado e é o erro que eu mais vejo as 
> pessoas cometerem...
>
> Outra coisa é que a grande maioria das pessoas que vejo em PHP em 
> listas/fórums que frequentam acham que estão programando OO, mas não 
> estão programando usando implementações OO (herança, objetos, classes, 
> etc) mas não estão pensando como se deve pensar em OO .. as pessoas 
> não se importam em saber o que é coesão, acoplamento, encapsulamento, 
> o porque de uma herança, a diferença entre interface e classe 
> abstrata, métodos estáticos, visibilidade .. o porque disso tudo, as 
> pessoas apenas se prendem a saber o que determinada coisa faz, mas não 
> como ela deve funcioanr... eu digo isso pq eu já pensei MUITO assim, e 
> achava que estava certo .. ai comecei a estudar um pouco mais, ir pra 
> outros projetos, outros lados e vi que o buraco era mais embaixo...
>
> Essa febre PHP5 x OO x Frameworks MVC acabou sendo boa e sendo ruim .. 
> sendo boa pq as pessoas começaram a pensar diferente, a não pensar 
> como script (programar procedural é bom também dependendo do contexto) 
> e sim em sistemas, e aprender novas coisas. Mas foi ruim também pq 
> como eu disse, como em PHP nunca se teve a prática de OO, de pensar 
> assim, de estudar e de PHP tb ser uma linguagem muito fácil, então as 
> pessoas ficam muito confusas em conceitos, e passam isso pra 
> implementação ... não quero soar arrogante, eu quero ajudar, não sou o 
> dono da verdade, mas qdo mandei aqueles 4 links foi para as pessoas 
> pensarem na situação antes de codificar .. aposto que poucos leram ..
>
>
>
>
> On Dec 6, 2007 6:58 PM, Newton Wagner <newtonweb em gmail.com 
> <mailto:newtonweb em gmail.com>> wrote:
>
>     Marcus, também não exagera. heheheh. Se não daqui a pouco vão me
>     xingar aqui. Esse é um tema bem confuso, e sempre que discuti ele ouvi
>     diversas opiniões diferentes.
>
>
>     Douglas, fazendo desta forma eu te pergunto: O tamanho de um campo
>     DOCUMENTO em uma tabela CLIENTE é uma regra de negócio ou é apenas uma
>     "validação de campo de formulário"?
>
>     Pra mim é regra de negócio. Se for armazenar só CPF, é 11, se for CNPJ
>     (cliente pessoa jurídica) é 14 (?), se for RG, depende do estado...
>
>     Validar um e-mail é algo que também pode ser variável. Hoje você pode
>     armazenar e-mail do cliente, no formato cliente em servidor.com
>     <mailto:cliente em servidor.com>, mas um
>     dia você decidiu que usa o skype como mensageiro oficial, aí o
>     formato
>     é só "apelido". Essa é uma regra de negócio?
>
>
>     Respondam estas perguntas. Se alguém conseguir me responder dizendo
>     que isto não é uma regra de negócio, eu ainda vou contrariar vocês,
>     pois acho que dividir a mesma tarefa em diferentes camadas da
>     aplicação não é uma boa idéia. (rs).
>
>
>     --
>     Newton Wagner
>
>     skype: newtonwagner
>     msn/gtalk: newtonweb em gmail.com <mailto:newtonweb em gmail.com>
>
>     http://www.newtonwagner.net/blog
>     - http://www.owshit.com.br/
>
>
>     Em 06/12/07, Marcus Cavalcanti<marcus.cavalcanti em gmail.com
>     <mailto:marcus.cavalcanti em gmail.com>> escreveu:
>     > Como o Newtown falou, vcs estão entendendo tudo errado hehe
>     >
>     >
>     > On Dec 6, 2007 6:02 PM, Douglas Matoso < douglas em rocknaveia.com
>     <mailto:douglas em rocknaveia.com>> wrote:
>     > > Sobre essa parte de validação, no meu curto tempo de MVC eu
>     entendo o
>     > seguinte:
>     > >
>     > > - O controller verifica os dados obrigatórios, tamanhos mínimos e
>     > > máximos, se email está bem formado, etc.
>     > > - O controller manda essas informações na forma correta para o
>     model
>     > > (que é a forma que o model espera)
>     > > - O model então verifica coisas como se o email já está
>     cadastrado, se
>     > > o login já existe, etc. Se não, ele retorna pro controller a
>     > > informação do erro (ou lança exceção), ou insere o dado se estiver
>     > > tudo certo.
>     > >
>     > > Ou não...
>     > >
>     > > Abraços,
>     > >
>     > > Douglas Matoso
>     > >
>     > >
>     > >
>     > >
>     > > _______________________________________________
>     > > Lista mailing list
>     > > Lista em codeigniter.com.br <mailto:Lista em codeigniter.com.br>
>     > >
>     >
>     http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>     <http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br>
>     > >
>     >
>     >
>     > _______________________________________________
>     > Lista mailing list
>     > Lista em codeigniter.com.br <mailto:Lista em codeigniter.com.br>
>     > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>     >
>     >
>
>     _______________________________________________
>     Lista mailing list
>     Lista em codeigniter.com.br <mailto:Lista em codeigniter.com.br>
>     http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Lista mailing list
> Lista em codeigniter.com.br
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>   



Mais detalhes sobre a lista de discussão Lista