codeigniterHá pouco tempo tive de efec­tuar um favor a um amigo meu de desen­volver um site que o desen­ras­cou de uma situ­ação com­pli­cada. Basi­ca­mente envolvia uma base de dados Access e a leitura da mesma em 3 pági­nas para mostrar vários dados e demon­strar que o sis­tema estava mesmo a “beber” dados do ficheiro.

Quando decidi arran­car com o pro­jecto, aproveitei para anal­isar esta frame­work CodeIgniter e anal­isar o que gostei e o que não gostei.

O codeIgniter em si pareceu-me sim­ples de insta­lar e usar. Assim que faço o unzip, instalo a direc­to­ria sys­tem den­tro da direc­to­ria do meu site e notei algo que me desagradou — terei de desen­volver den­tro da direc­to­ria system\application\controllers — para os con­tro­ladores e system\application\views — para os tem­plates. Isto já me parece um bocado obscuro.

De qual­quer das maneiras, a frame­work pos­sui uma lig­ação iner­ente para odbc. Criei o Sys­tem DSN para a base de dados e, no ficheiro de con­fig­u­ração system\application\config\database.php, lá con­fig­urei o acesso para o dsn, tendo colo­cado o host­name e a base de dados com o mesmo texto, o nome dado para o Sys­temDSN e o dbdriver colo­quei odbc.

appflowchartOutra sur­presa desagradável é a questão dos rout­ings que “obriga” a ter links do género , o que é feio, no meu ponto de vista. Outro exem­plo seria o acesso a detal­hes de um reg­isto, onde teria um link tipo , onde 2 seria o id de con­tac­tos que eu pre­tendia obter dado. Estranho e feio!

A nível geral o site era pequeno demais para fazer uma review exaus­tiva mas é fácil aperceber-me onde vai ficando con­fuso no decor­rer de um site mais complexo.

Mesmo assim deu para ter uma ideia do que esperar desta frame­work, o sufi­ciente para tes­tar o cakePHP ou o Symfony.

Bons pro­jec­tos!

Um abraço e tudo de bom,

7 comments
Jonathan
Jonathan

Olá novamente Ricardo, Por opinião propria devias experimentar mais profundado o codeigniter... Vale a pena. Tem opções mais avançadas... E isto sem criticar em nada. Mas que vale a pena vale... Também tentei o cakePHP mas não consegui perceber lá muito bem o funcionamento da coisa. Secalhar porque não dediquei mais tempo ... Cumprimentos, Jonathan Fontes

Ricardo
Ricardo

Viva Jonathan, Isto dos IDE's tem que se lhe diga :). É como a comida. Não gosto da maioria de doces com chocolate, o que pode já levantar um ou outro que grita "Sacrilégio!" heheheh. A verdade é que, à primeira "dentada", o codeigniter não me prendeu, e achei algo conturbado, onde o yii se me fez luz quase instantaneamente. Pode ser que seja no dia estava mais ou menos virado práquilo, não sei. Hei-de ter agora mais tempo para experimentar coisas novas. Um abraço e bons projectos Ricardo Rocha

Jose Rodrigues
Jose Rodrigues

Ora, Ricardo, não veja agressividade na minha resposta. Claro que o blog é seu, pode criticar o que bem entender, como bem entender. Mas também é claro que, se efectivamente pretende apresentar aos seus "leitores" algo que os faça voltar, acredito que tente pelo menos ter algum rigor nas suas criticas e comentários. Afinal o banner do seu blog diz "aqui podes saber as lições que aprendi em 10 e tantos anos de freelancing". Quando se aprende não se espera que seja "pela rama". Mas isto é também apenas a minha opinião. Sim, é verdade, foi essa a ideia que transmiti intencionalmente: de que infelizmente o conceito de Freelancer, mesmo que erradamente, muitas vezes se confunde com o de amador. Lamentavelmente, e sem ofensa, nem sendo nada de pessoal, voce acaba de dar razão a quem assim pensa. Cheers!

Ricardo
Ricardo

Viva José, Concordo na primeira parte do que diz. No entanto, temo que, no caso do review do Code Igniter, o meu post deve ter-lhe afectado. Quando resolvi testar o codeigniter, foi o aproveitar de uma oportunidade de criar algo on-the-fly para um amigo necessitado. Assim, as minhas experiências e primeiras impressões resultaram no post que eu escrevi. Poderia ter dado um destaque do que me deixou feliz, que foi ter descoberto rapidamente a ligação ODBC para o Access. No entanto, tive de "andar à pesca" em fóruns, o que me fez perder algum tempo. Houve realmente coisas que não gostei e, como foi tudo "à queima-roupa" como já referi, a minha impressão foi colocada no post segundo o que eu senti. Se o José sente diferente, porque conhece melhor ou porque estudou durante mais tempo ou até porque teve uma experiência da framework diferente da minha, fico feliz por si. Parabéns! No entanto, se voltar a ler a frase "aqui podes saber as lições que aprendi em 10 e tantos anos de freelancing", refere às lições que eu aprendi e que o José pode saber. Em qualquer situação, sensações e experiências em cada pessoa são diferentes. Para finalizar, as suas conclusões são fruto das suas experiências, e o mesmo posso dizer das minhas conclusões, sendo fruto das minhas experiências. E sendo esse o resultado final, o José critica uma conclusão exposta da minha experiência pessoal referindo depois que todos os freelancers são amadores. Sem ofensa, essa é uma associação de ideias perigosa, mas como referi em cima, é a sua conclusão referente às suas experiências pessoais, não às minhas. E também não vejo, seguindo o que disse acima, como posso ter dado razão a quem pensa que o Freelancer é amador. Concluo dizendo que respeito a sua opinião, como respeitaria e comentaria qualquer opinião de um frequentador de fórum ou de um blogger que eu fosse visitar, sem para tal desenvolver conceitos genéricos. Respeito, porque parte da sua experiência pessoal. Um abraço Ricardo

M. Veiga
M. Veiga

Nota-se, não me leve a mal o desabafo, que não tem muitas bases de desenvolvimento PHP e que mal conhece (se conhece) a regra MVC. Digo isto por chamar templates a views, e por achar estranho ("um bocado obscuro", desculpe) o modo como o CI funciona. Digo-lhe já que se acha isto "obscuro" nem o aconselho sequer a experimentar o cake ou o symfony... De qualquer maneira (pois que "De qualquer das maneiras" não existe em bom português, e não queremos aqui envergonhar os lusitanos, fazendo crer que não sabemos usar a nossa lingua), a outra surpresa desagradável que sofreu aquando dos routings, leva-me a aconselhá-lo a ler, com um pouco de atenção, o User Guide disponibilizado no site do CI. Nele, em http://codeigniter.com/user_guide/general/urls.html, fala-se das possibilidades de manipulação dos URLs. Acredite, há mais no CodeIgniter do que aquilo que à primeira vista possa parecer. E, até agora, há mais surpresas boas do que más. Já agora, antes que descubra o problema do CI e do PHP 5, faço notar que o Kohana (ou o irmão mais velho do CI) está aí para colmatar essa pequena falha... Bons programas. E dê uma oportunidade mais aprofundada a qualquer software que se lembre de testar, pelo menos antes de colocar críticas seja lá onde fôr.

Jose Rodrigues
Jose Rodrigues

Bem, Ricardo, se o seu problema é o endereço ser "feio", que tal recordar que ainda existem endereços mais "escabrosos", tais como, p.ex.: http://www.informit.com/imprint/index.aspx?st=61090 ou http://www.breitbart.com/article.php?id=D99J23A02&show_article=1 ou ainda http://opac.iefp.pt/ipac20/ipac.jsp?session=1M4B3R7824484.149479&menu=tab12&aspect=subtab58&npp=20&ipp=20&spp=20&profile=crc&ri=&source=~!formei&index=.GW&term=digital&limitbox_3=DIG01+%3D+BIBDIG&x=0&y=0&aspect=subtab58 só para referir três ao acaso, qualquer deles válido? Se medirmos a qualidade dum framework pelo "bonitinho" dos endereços haverá muita coisa que nos vai passar ao lado. Já agora, não quero tirar-lhe o "suspense", mas provávelmente vai ver outras coisinhas "feias" no cakePHP e no Symphony, vai uma aposta? Porém acho que vale a pena experimentar, afinal é assim que se passa de Freelancer a Profissional. Boa sorte.

Ricardo
Ricardo

Viva Wow, não esperava tamanha... hum... agressividade ? será ? Bom de qualquer das maneiras, obrigado pelo vosso input. Não será demais referir que este post é origem da minha opinião pessoal a testar o codeigniter à queima-roupa, para desenvolver uma página simples em muito pouco tempo. Se, deste meu post, conseguiram retirar a elação que não possuo bases de desenvolvimento PHP, ou mesmo do conceito MVC (que já conhecia do Struts), então dou de bandeja a superioridade intuitiva face à minha. Eu acredito que haja mais no CI do que me leva a parecer à primeira vista. De qualquer das maneiras (oops, de qualquer maneira - desculpe o estilo literário que emprego nos meus posts :) ), o meu objectivo foi descrever o primeiro impacto sobre o CodeIgniter e, embora já me tenha deparado com ainda mais obscuridade (é assim ? ) no CakePHP, não eleva o CodeIgniter aos meus olhos. Para além de tudo isto, se me apetecer colocar uma crítica negativa a um software que experimente, tendo detalhado sobre que circunstâncias o fiz, acho que ninguém me pode impedir. Afinal, o blog é meu, certo ? Certo! Um abraço a ambos, Ricardo P.S.: Algo que aprendi nestes comentários é que Freelancer equivale a amador. É curioso, no mínimo...