Ciro Galvão

Iniciando com Python

by on Apr.18, 2011, under Python

Bom, primeiramente gostaria de novamente pedir desculpas pelo longo tempo ausente e consequentemente pela pausa nos artigos sobre a construção de um e-commerce com Zend Framework. Novamente muita turbulência, mudança e gás na minha startup me fizeram deixar o blog um pouco de lado. Então agora eu não vou prometer posts com a frequencia X de dias, porém prometo me esforçar ao máximo pra dar continuidade no e-commerce. :)

Bem, quem acompanhava o blog pode perceber q dei uma mudada no template dele e agora também tenho um favicon personalizado graças a minha amiga designer Helen Eremita

Apesar do pouco tempo que ando tendo, me surgiu uma vontade grande de aprender uma nova linguagem de programação, resolvi escolher o python. Por enquanto estarei postando coisas básicas de noob mesmo quem está aprendendo a linguagem, porém ja tem familiaridade com outra linguagem. Quem quiser acompanhar e sugerir algum artigo, fique à vontade.

E sempre que eu achar algo interessante sobre Scrum e UML também estarei postando por aqui…

Não farei como um curso tradicional de linguagem de programação, que no início o professor sempre fala da história da linguagem, quando/onde/porquê nasceu e etc, pra isso uma rápida lida na Wikipédia resolveria.

Hoje falarei um pouco sobre a instalaçao, sintaxe e funções em python.Python

Instalando:

Em sistemas debian like via apt-get:

apt-get install python

//Ó q inusitado
Nos demais sistemas operacionais basta entrar no site oficial do projeto e baixar o instalador.

Funções

Uma coisa que eu achei legal no python, foi a maneira de definição de bloco de código, que é feita pela identação do mesmo, coisa que quem programa em Java, PHP, C e etc não está acostumado a ver.

Ou seja, teoricamente não se deve ver código python ilegível como se costuma ver muito em PHP e Java, por exemplo.

Funções em Python são declaradas usando a palavra “def” e o restante ( pelo menos nesse primeiro post sobre python ) não será muito diferente

pra quem ja conhece Java ou PHP.


def resposta(arg1,arg2):

     if arg1 > arg2:

          print "O primeiro argumento é maior"

     else:

          print "O segundo argumento é maior"
resposta(10,12) # vai printar "O segundo argumento é maior"

That’s all folks. Até o próximo post!

Leave a Comment more...

Voltando à ativa!

by on Dec.08, 2010, under PHP

Olá pessoall.

Bem, primeiro gostaria de pedir desculpas pelo sumiço… Minha vida meio que deu uma “virada de pernas pro ar” de uns meses pra cá ( Mudança de cidade, trampo novo etc… ) e tava meio desorganizado. Mais agora está tudo entrando nos conformes e pretendo seguir direitinho a agenda do blog, lançando um post novo a cada 15 dias ( pelo menos assim espero ).

Gostaria de agradecer a galera que me manda e-mails e comentários nos posts, dando apoio/sugestões/críticas…Obrigado pela ajuda de vocês e saibam que esse blog só existe por  que eu quero ficar rico usando ADSENSE! causa de vocês! =P

No próximo post, estarei postando a tradução da primeira parte do capítulo 9 – XML and Webservices do “PHP Architect Zend PHP 5 Certification Study Guide”. Como tinha falado anteriormente, estava me preparando pra certificação “Zend Certified Enginner” pra esse ano ainda, mais por conta da “bagunça” na minha vida, pra esse ano acho que não vai dar, porém pretendo até março do ano que vem no máximo e sigo postando sempre os materias dos estudos ZCE ( se alguém se interessar em códigos-fonte, talk about it :) ).

Após esse post continuaremos com nosso Ecommerce feito em ZF. Desde Já agradeço meu colega de apartamento, cerveja e farras programação Andreus Timm por ter me fornecido o arquivo de banco de dados para o nosso Ecommerce.

Então galera, podem aguardar que vem muita coisa legal por aí ainda!

Até o próximo post!

Leave a Comment more...

Configurando o ZFDebug no Zend Framework

by on Sep.26, 2010, under Zend Framework

Salve!

Bem, gostaria de informar aos leitores que pela maioria de votos computados na enquete, o tema que iremos desenvolver será um E-commerce. Fiquei alguns dias sem postar nada, pq estava esperando pra galera votar :). Hoje falarei sobre a ZFDebug.

Na minha humilde opinião, acho que todo programador PHP deveria ter alguma ferramenta que lhe auxiliasse na tarefa de debugar sua aplicação ( Além de var_dump() , print_r() e echo() heheheheh ). A ZFDebug é uma biblioteca que pode ser acoplada ao ZF para nos fornecer várias informações importantes sobre a aplicação, dentre elas a descrição sobre variáveis, cache, arquivos utilizados, registro e mais coisas legais :D.

Bem, instala-la é um processo bem simples até, basta fazer o download no site oficial do projeto , Colocar a pasta ZFDebug dentro do seu diretório Library. Feito isso vamos configurar a inicialização da ZFDebug no bootstrap.


protected function _initZFDebug()
{
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace('ZFDebug');

$options = array(
'plugins' => array('Variables',
'File' => array('base_path' =>  APPLICATION_PATH ),
'Memory',
'Time',
'Registry',
'Exception',
'Cache' => array( 'backend' => APPLICATION_PATH . '/cache' ) )
);

# Instantiate the database adapter and setup the plugin.
# Alternatively just add the plugin like above and rely on the autodiscovery feature.
if ($this->hasPluginResource('db')) {
$this->bootstrap('db');
$db = $this->getPluginResource('db')->getDbAdapter();
$options['plugins']['Database']['adapter'] = $db;
}

# Setup the cache plugin
if ($this->hasPluginResource('cache')) {
$this->bootstrap('cache');
$cache = $this-getPluginResource('cache')->getDbAdapter();
$options['plugins']['Cache']['backend'] = $cache->getBackend();
}

$debug = new ZFDebug_Controller_Plugin_Debug($options);

$this->bootstrap('frontController');
$frontController = $this->getResource('frontController');
$frontController->registerPlugin($debug);
}

Agora vamos habiliata-la no nosso application.ini adicionando esse trecho:


zfdebug.enabled = true

Preferencialmente na sessão de desenvolvimento do application.ini, pois não queremos informações de debug aparecendo em produção certo?

Bem, se tudo ocorreu como deveria, vc vai ter uma barra de debug semelhante a essa :

ZFDebugEssa ZFDebug é mesmo uma mão na roda, desde que a conheci a utilizo em todos os meus projetos, espero que seja útil pra vcs quanto é pra mim… PS: Repararam na semelhança com a barra de debug do framework Symfony? rs…

No próximo post criaremos o banco de dados do nosso E-commerce e testaremos a conexão.

Envie suas sugestões, criticas e elogios, serão de muita importância para mim.

Ótima semana a todos!

[17:44:12] Lah .. S.E.P diz:
E eu num posso? haha
[17:44:30] Lah .. S.E.P diz:
Eu tenho gastrite nervosa, tenho pelo menos uma vez a cada 2 meses
[17:44:31] Lah .. S.E.P diz:
haha
[17:44:36] Jr diz:
lol
[17:44:39] Jr diz:
e como q é isso?
[17:44:40] Jr diz:
rs…
[17:45:34] Lah .. S.E.P diz:
SAbe o que tu sente quando ta morrendo de vontade de mijar, ah umas 2 ou 3 horas?
[17:45:45] Jr diz:
sim
[17:45:48] Jr diz:
lol
[17:45:57] Lah .. S.E.P diz:
Tu sente isso o TEMPO TODO!
[17:46:08] Lah .. S.E.P diz:
mesmo que seja só uma gotinha de xixi
[17:46:09] Lah .. S.E.P diz:
ahuahuahua
[17:46:29] Jr diz:
caralho
[17:46:30] Jr diz:
q bosta
[17:46:31] Jr diz:
:S:S:S:S:S
[17:46:48] Jr diz:
véi, eu acho q ja tive essa parada então
[17:46:49] Jr diz:
:S
[17:46:55] Jr diz:
mais como nunca vo no médico
[17:46:56] Jr diz:
nunca tratei
[17:46:57] Jr diz:
:S
[17:47:09] Lah .. S.E.P diz:
hauahuahua
[17:47:15] Lah .. S.E.P diz:
num tem tratamento ;s
[17:47:17] Lah .. S.E.P diz:
hauahuahuahuahuahua
[17:47:17] Jr diz:
lol
[17:47:19] Jr diz:
não?
[17:47:21] Jr diz:
caraio…
[17:47:23] Jr diz:
mais q bosta
[17:47:25] Jr diz:
UAIDSHIUAHDUAHDSIUHASDIUHSDIUHSAD
[17:47:28] Lah .. S.E.P diz:
ahuahuahuahuahuahuahuahuahua
[17:47:59] Lah .. S.E.P diz:
A infecção vem por alguma coisa que você comeu ou bebeu, com muuuito acido e sei la .. sem o organismo aceitar e parara
[17:48:10] Lah .. S.E.P diz:
ae tu fica assim ate o liquido sair completamente do corpo
[17:48:13] Lah .. S.E.P diz:
ahuahuahuahua
3 Comments more...

Criando o projeto com Zend Tool

by on Aug.29, 2010, under Zend Framework

Olá, dando continuidade a sequência de posts sobre Zend Framework hoje falarei sobre a Zend Tool. A Zend Tool é uma ferramenta para criação de controllers, views, models, projetos entre outros recursos do ZF via linha de comando, o que é uma baita mão na roda, pois antigamente tinhamos que fazer todas as configurações, criação de pastas e etc ‘na unha’. Então o primeiro passo para podermos utilizar a Zend Tool é baixar o pacote do ZF. Em seguida descompacte-o em uma pasta onde vc preferir, eu gosto de deixar a minha em /var/www/ no linux. Após descompactar a pasta, vamos colocar o caminho do ZF no include path do PHP.

gedit /etc/php5/apache2/php.ini

E na diretiva include_path, coloque o caminho onde você descompactou o ZF.

Feito isso, agora vamos configurar as variáveis de ambiente do sistema operacional.

No ubuntu, editaremos o arquivo bash.bashrc


gedit /etc/bash.bashrc

E adicionaremos as seguintes linhas ao final do arquivo:


zf="/var/www/ZendFramework-1.10.0/"
CLASSPATH="$zf:$zf/bin/zf:$."
PATH="$zf/bin/:$PATH"
export zf CLASSPATH PATH

Eu particularmente gosto de inserir um alias para o comando zf.sh, para que fique mais fácil o uso da ferramenta.

alias zf='zf.sh'

Agora como as variáveis de ambiente estão configuradas, vamos testar. Abra o terminal e digite

zf ?

Você deverá receber um resultado como esse:

Resultado do comando ZF ?

Se esse foi seu resultado, ocorreu tudo bem e nosso Zend Tool ja está devidamente configurado e prontinho pra ser usado.

Então agora criaremos nosso projeto. Como dito no artigo de configuração do virtualhost, nosso projeto se chamará projetozf, então entraremos na pasta onde se encontra nosso document root e criaremos lá o nosso projeto:


cd /var/www

zf create project projetozf

Prontinho, A Zend Tool criou toda a estrutura básica de um projeto ZF pra gente, como pode ser visto na imagem abaixo:

Agora que ja estamos com a estrutura do projeto ok, vamos testar se está funcionando de acordo. Abra seu browser e digite http://projetozf

Deverá ser exibida uma tela como essa:

E aqui finalizamos o segundo post da série sobre Zend Framework! Conto com a ajuda de vocês leitores para que possamos decidir qual tipo de aplicação devemos fazer. Por favor, entre nas Enquetes e vote!

Sua ajuda será muito importante!

Ótima semana a todos.

4 Comments more...

Tradução do capítulo “Funções” do Zend PHP5 Certification Study Guide

by on Aug.25, 2010, under PHP

Como prometido, estou aqui postando a tradução do capítulo “Funções” do Zend PHP5 Certification Study Guide. Espero antes de ter feito a prova ZCE, ter terminado todo o livro. Na verdade não recomendo muito a leitura da tradução caso você queira fazer a prova ZCE, pois a mesma é em inglês. Porém se você quer estudar para aprimorar seus conceitos em PHP, pode ser uma boa. Se Deus quiser em dezembro eu e meus colegas de trabalho que estão no grupo de estudos, faremos a prova. Perdão pelos erros, caso encontre algum, ficarei feliz em ser notificado para correção.

Download do capítulo Funções

Caso alguém se interesse pelos scripts utilizados para estudo, é só deixar um comentário pedindo.Bons estudos!

1 Comment more...

Configurando o VirtualHost no Ubuntu 10.04 ( e distros Debian like )

by on Aug.20, 2010, under Zend Framework

Zend FrameworkOlá! Estou migrando de servidor de blog e pra comemorar, começarei com uma série de posts sobre Zend Framework.  E nesse primeiro post, começaremos com a configuração mais básica do projeto. Para essa sequencia de posts assumo que você tenha PHP 5 , Um banco de dados qualquer ( Nos posts eu sempre usarei o PostgreSQL como banco padrão ) e o servidor Apache devidamente instalados e configurados, também como domínio sobre orientação a objetos e MVC, caso não tenha algum desses requisitos recomendo que dê uma estudada =D.

Nesse post explicarei como fazer a configuração do Virtual Host como recomendado pela Zend.

Então chega de conversa e vamos ao que interessa!

Logado como root,  abra seu arquivo ao qual incluiremos o virtual host:

gedit /etc/apache2/sites-enabled/000-default

Acrescente as seguintes linhas ao final do arquivo:

<VirtualHost *:80>
ServerAdmin administrador@gmail.com
DocumentRoot "/var/www/projetozf/public"
ServerName projetozf
ServerAlias projetozf
<Directory "/var/www/projetozf/public">
Options Includes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

Chamaremos nosso primeiro projeto de projetozf, por isso os parâmetros ServerName e ServerAlias estão com esse nome.

Em seguida vamos atualizar nosso arquivo hosts.

gedit /etc/hosts

E incluiremos a seguinte linha:

127.0.0.1 projetozf

reinicie o apache:

service apache2 restart

e voilá! Se tudo tiver ocorrido bem ja temos o nosso virtualhost configurado. Se você tiver recebido algum erro ferrou volte e reveja os passos novamente. Caso mesmo assim não tenha funcionado, deixe um comentário.

Obviamente se testarmos agora, teremos um erro pela pasta não estar criada em nosso document root, porém no próximo artigo falarei sobre Zend Tool, e então criaremos a base de nosso projeto.

Aproveitando, gostaria de pedir sugestões do que deviamos fazer no projetozf. Um e-commerce? Um cadastro de clientes? Um site? Nada disso? Vote no link “Enquetes” vote e contribua!

Obrigado e até o próximo post

Leave a Comment more...

À caminho da certificação Zend Community Enginner

by on Aug.11, 2010, under PHP

Gostaria de comunicar que junto com uma galera do meu trabalho aqui em SP, formamos um grupo de estudos para tirar uma certificação da Zend, a ZCE ( para programadores PHP5 ). O objetivo do grupo é estarmos com a certificação no máximo até dezembro desse ano,e assim consequentemente dando aquele “up” nos nossos Currículos e claro, também no “knowledge”  =) .

Estarei sempre postando o que tivermos estudado, e sempre que as aulas forem de minha autoria, estou traduzindo os capítulos do “Zend PHP 5 Certification Study Guide”. Então fiquem atentos as novidades!

=D

Abraços

4 Comments more...

Dica de otimização de desempenho em PHP

by on Aug.03, 2010, under PHP

Muitos talvez ja conheçam esse “macete”, porém eu confesso que só conheci essa forma de utilizar o echo a pouco tempo. Essa forma de usar o echo pode deixar seu script php até 5x mais rápido, de acordo com testes realizados. Entäo ao invés de usar o modo :

<!–?php

echo “conteudo 1″;
echo “conteudo 2″;
echo “conteudo 3″;
?>

Se pode utiliza-lo assim:

echo “conteudo 1″,
“conteudo 2″,
“conteudo 3″

Isso me lembra o chainning , talvez até tenha sido implementado assim mesmo…
Então fica aí a dica…

2 Comments more...

Instalando o AMSN no Debian

by on Jul.01, 2010, under Linux


Abra o terminal e faça login como root:

su

Em seguida altere o arquivo com os repositórios:

gedit /etc/apt/souces.list

Acrescente ao final do arquivo esse repositório

deb http://repositorio-livre.wiki.br/n6 main contrib


Salve o arquivo e feche.


No terminal digite apt-get update, para o gerenciador de pacotes poder encontrar seu novo repositório.


Em seguida, instale o amsn com o comando apt-get install amsn


Se tudo correu bem, após a finalização do último comando o amsn ja estará disponível em applicativos/internet/amsn


Fica a dica!


Abraços



3 Comments more...

Sorteio de notebooks e hospedagens

by on Jun.23, 2010, under Diversos

É com muito prazer que venho divulgar uma promoção bacana do blog Criar sites ( http://criarsites.com/ ) e pela Zooming ( http://www.zooming.com.br/ ).
O primeiro colocado levará um notebook ( podendo optar dentre 6 modelos ) e os 4 colocados seguintes ganharão 1 ano de hospedagem free!

Corre lá e veja as regras para participar dessa promoçao!

http://www.criarsites.com/concorra-a-1-netbook-5-hospedagens-5-dominios-no-valor-de-r1700/

Leave a Comment more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!