Category: Desenvolvimento


Salve,

O ZFDebug é uma lib que cria uma barra flutuante no seu projeto onde mostra informações dependendo dos plugins que você ativa. Estava usando o profiler Firebug do ZF, mas indicaram esse e é sensacional, pois é independente de navegador e super simples de instalar. Para mais: http://code.google.com/p/zfdebug/

Faça o Checkout (svn):

svn checkout http://zfdebug.googlecode.com/svn/trunk/ zfdebug-read-only

Descompacte e copia a pasta ZFDebug/ que está dentro da pasta library/, e copie para a dentro da library/ do seu projeto.

Adicione no seu application.ini, na seção production:

;ZFDebug
ZFDebug.enabled = false

E na seção development:

; ZFDebug
ZFDebug.enabled = true

Abra seu Bootstrap principal ( application/Bootstrap.php ) e adicione esse init:

protected function _initZFDebug()
{
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace('ZFDebug');
$this->bootstrap('db');
$db = $this->getPluginResource('db')->getDbAdapter();

$config = Zend_Registry::get('config');
$ZFDebugConfig = $config->ZFDebug;

if( $ZFDebugConfig->enabled )
{
$options = array( 'plugins' => array('Variables'
, 'Database' => array('adapter' => array('standard'=>$db))
, 'File' => array('basePath' => '/'),'Memory'
, 'Time'
, 'Registry'
, 'Exception'));

$debug = new ZFDebug_Controller_Plugin_Debug($options);

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

No seu index.php ( public/index.php ) adicione:

$config = new Zend_Config_Ini( APPLICATION_PATH . '/configs/application.ini', APPLICATION_ENV );
Zend_Registry::set( 'config', $config );

Pronto! Rode seu projeto e você verá uma assim:

Clique nos botões para ver as informações de Debug.

Salve,

Para gerar código de barra com o Zend Framework é super simples.

// Somente o texto é obrigatório para a criação
$barcodeOptions = array( 'text' => $valor );

// Não obrigatório, para retornar em JPG usa-se: 'imageType' => 'jpg'
$rendererOptions = array();

// Para criar uma imagem, faltando só colocar os headers, o 'image' retorna o código de barra em PNG
return Zend_Barcode::render( 'code39', 'image', $barcodeOptions, $rendererOptions );

Em um projeto eu criei um Plugin com a geração do código de barra e uma action onde chama esse plugin assim:
Método do Plugin pra criar e retornar o código de barra

public function create( $value, $options = array(), $barcodetype = 'code39', $type = 'image' )
{
// Somente o texto é obrigatório para a criação
$barcodeOptions = array( 'text' => $value );
// Junta a configuração padrão e o $options informado, que são os valores de configuração padrão do Zend_Barcode
$barcodeOptions = array_merge( $barcodeOptions, $options );

// Não obrigatório, para retornar em JPG usa-se: 'imageType' => 'jpg'
$rendererOptions = array();

// Para criar uma imagem, faltando só colocar os headers, o padrão de imagem é PNG
return Zend_Barcode::render( $barcodetype, $type, $barcodeOptions, $rendererOptions );
}

Usando o Plugin numa Action

public function barcodeAction()
{
$barcode = new MY_Plugin_Barcode();
// Passando o Valor, dizendo que o texto não é pra ser exibido e a cor do código de barra, vermelho.
$barcode->create( '0000001', array( 'drawText' => false, 'foreColor' => '#FF0000' ) );
exit;
}

Para mais configurações do Options: http://framework.zend.com/manual/en/zend.barcode.objects.html

Configuração sobre o Zend_Barcode: http://framework.zend.com/manual/en/zend.barcode.html

Ai no seu view, chama assim:

<img src="./index/barcode/" />

‘./index/barcode/’ = é o barcodeAction do controller. Você pode usar parâmetros via _GET para setar os valores e as configurações, só tratar no seu barcodeAction.

Valeu!

Salve,

Estou num projeto, na parte de otimização de frontend e backend para ter uma melhora na performance e outras coisinhas mais. Um dos itens do YSlow, PageSpeed, WebPageTest e qualquer outro sobre otimização de frontend é: Otimizar imagens.

O melhor link sobre práticas de otimização de frontend está no  Best Practices for Speeding Up Your Web Site, do Yahoo! Developer: http://developer.yahoo.com/performance/rules.html

Eles usam/indicam os:

  • pngcrush – para otmização de PNG
  • jpegtran – para otimização de JPEG
  • imagemagick – para otimização de GIF

Para instalar esses no Ubuntu:

PNGCrush

Você pode simplesmente dá:

sudo aptitude install pngcrush

Mas ele instala uma versão mais antiga, a nova é somente:

  1. Baixar o pngcrush aqui: http://pmt.sourceforge.net/pngcrush/]
  2. Descompactar: unzip pngcrush-1.7.9.zip
  3. Entrar na pasta: cd pcr010709/
  4. Executar: make
  5. Executar depois: make install
  6. Teste: ./pngcrush -version
  7. Mova para a pasta /usr/bin/: sudo mv pngcrush /usr/bin/
  8. Corra para o abraço :D

Fácil né?

Usando: pngcrush -rem alla -reduce -brute image.png image_output.png ( comando errado, desculpe pngcrush image.png -rem alla -reduce -brute result.png )

JPEGTRAN

Essa está difícil. Tentei instalar a libjpeg8 do http://www.ijg.org/ mas não consegui, tive que instalar a 6b. Depois eu continua procurando a última versão.

Vamos instalar:

  1. Procure por jpegsrc.v6b.tar.gz
  2. Eu achei aqui: http://dir.filewatcher.com/d/GNU/Other/jpegsrc.v6b.tar.gz.613261.html
  3. Faça o download
  4. Entre na pasta: cd jpeg-6b/
  5. Configure: ./configure
  6. Execute: sudo make install
  7. Verifique: jpegtran -h
  8. Essa não precisa mover, já coloca lá automático
  9. Corra para o abraço :)

Facim! Facim!

Usando:  jpegtran -copy none -optimize -outfile image_output.jpg  image.jpg ( comando errado, desculpe jpegtran -copy none -optimize -perfect src.jpg dest.jpg )

Agora volte para o Best Practices for Speeding Up Your Web Site, do Yahoo! Developer ( http://developer.yahoo.com/performance/rules.html ) e comece a trabalhar na melhora da performance do frontend.

* Estou fazendo testes com ferramentas, seguindos dicas e postarei mais sobre isso. Desde já procure: Firebug, YSlow, PageSpeed, WebPageTest e vá se divertindo.

Valeu!

Salve,

Estive ajudando um Amigo ( Hilton Luiz ), e ele estava usando o LavaLamp ( menu ) e o Carousel, mas teve um problema: os 2 plugins usavam o Easing, mas o LavaLamp só funcionava no 1.1 e o Carousel no 1.3.

Solução:
No site do Easing tem um arquivo onde você usa junto com a 1.3 e ele torna-se compativel com os scripts que só funcionam na 1.1. Bem legal e fácil.

http://gsgd.co.uk/sandbox/jquery/easing/

Parabéns equipe Easing jQuery.

NFePHP

Salve,

Estou participando do projeto NFePHP – Nota Fiscal Eletrônica em PHP, muito legal, com uma equipe de primeira, empenhada a torná-lo um projeto ‘foda’ e vai ser. Está licenciado em GPL V3. Quer ajudar? http://www.assembla.com/wiki/show/nfephp/Como_participar

Mais em http://www.assembla.com/wiki/show/nfephp/ e http://www.nfephp.org

Vamos que vamos!

Salve,

Pessoal já tem um tempo que uso e participo do CoreTeam do SQLReactor por que simplesmente eu gostei muito, rápido pra cacete, fácil demais de modelar as entidades, perfeito. É inspirado no SQLAlchemy, ORM para Python, e foi criado por Snit.ram aka Rafael Martins, o cara bota pra ferver, visitem e participem do grupo SQLReactor Brasil, aqui http://groups.google.com.br/group/sqlreactor-brasil e em breve aqui http://www.sqlreactor.com, e descubra a maravilha de ORM.

Valeu!

http://www.theducks.com.br/downvideolog/DownVideoLog.jpg

Salve,

Tem umas 2 semanas que criei rapidinho esse sisteminha que voce passa uma URL onde tenha um video do Videolog ‘embed’, externo ou do próprio Videolog, e ele te retorna a URL do FLV ou força o download do mesmo, qualquer problema avise-me.

http://www.theducks.com.br/downvideolog/

Valeu!

Video-aulas de PHP

Salve,

O Igor Fernandes ( da SistemaSIS e CBCT ) lançou 16 video-aulas sobre PHP, ótima iniciativa.

Veja aqui: http://www.youtube.com/results?search_query=php+CBCT&search_type=&aq=f

Baixe aqui: http://www.4shared.com/file/116243476/6732b2fc/PHP_CBCT_completo.html

Parabéns ao Igor Fernandes.

Valeu!

Salve,

Fazendo algumas pesquisas e usando o material do Walker de Alencar, PHP Coding Standards, criei esse “manual”, que será adotado por mim de agora em diante.

Lembrando que 90% do manual é o PHP Coding Standards, do Walker de Alencar, eu só mudei algumas coisinhas e acrescentei outras e pretendo acrescentar mais e mais.

Manual de Padronização de Codificação – PHP Coding Standards

PHP Coding Standards ( Original do Walker de Alencar )

Valeu!

Salve,

Tem um cara ( aka Brother Wolf ) que fez uma contribuição genial: criou um livro, Python para Desenvolvedores, e distribuiu em CC ( Creative Commons ) para download com download da capa ( formato Jpeg ).

Um viva a esse gênio: Brother Wolf.

Para baixar: http://ark4n.wordpress.com/python/

Valeu!

Powered by WordPress | Theme: Motion by 85ideas.

Bad Behavior has blocked 104 access attempts in the last 7 days.