Arquivos de Tags: desenvolvimento

Make vs Ant — Automatizadores de tarefas

Make vs Ant é a batalha de quem precisa automatizar compilações, limpeza e geração de documentação no projetos, facilitando a vida do desenvolvedor e tirar o calvário de gerar um “nightly build” diariamente.

Make vs Ant

Existe o make, que já é muito conhecido pelos dinossauros da programação onde utilizam até hoje para automatizar o processo de compilação dos fontes principalmente, enquanto o ant muito utilizados pela turma do java, abaixo segue as sutileza das duas ferramentas:

Wikipédia escreveu:

A mais aparente diferença entre as ferramentas Ant e make, é que a primeira utiliza um arquivo no formato XML para descrever o processo de construção (build) e suas dependências, enquanto o make possui o seu próprio formato de arquivo, o Makefile. Por padrão este arquivo XML tem o nome build.xml.

Um dos principais objetivos do Ant é resolver os problemas de portabilidade do make. Num arquivo Makefile (o arquivo lido pelo make) as ações para construir o projeto (por exemplo, gerar um arquivo executável) são disparadas por comandos do sistema operacional (ou mais especificamente, da sua shell), usualmente uma shell Unix. O Ant resolve este problema através do grande número de funcionalidades próprias, e que garante que se comportarão identicamente (em tese pelo menos) em todas as plataformas.

Perl, assim como toda linguagem scripting consegue solucionar o proposto pelo make vs ant

Perl, assim como toda linguagem scripting consegue solucionar o proposto pelo make vs ant

Perl toda distribuição tem!

Esse é outra linguagem de script, além do Python, Ruby e o Shell, conforme já expliquei aqui. E esta disputa de make vs ant ganha outras dimensões com estes competidores.

O Perl encontra-se em toda distribuição Linux que se preza tem suporte por default desta linguagem. No CPAN, onde é depositados as impressionantes quantidades de módulos e que tem o lema:

Nós não importamos com a qualidade, não importamos com o propósito, apenas queremos hospedar seus módulos

Hoje em dia o Perl, a linguagem está fora de forma sem muitos recursos porém muita gente nos bastidores fazendo melhorias para a comunidade, tais como o Modern::Perl! O companheiro de longa data em java precisou entrar neste mundo e trouxe para nós o que encontro no fantástico mundo do Perl.

Pode automatizar suas usando as mais variadas linguagem de scripts. Já vi casos de utilizar linguagens para fazer automatização, usando o cron para disparar a atividade. Lembrando que todas linguagem mostradas aqui podem ter um grau de complexidade, exceto a batalha do make vs ant que faz o proposto

 

Lazarus IDE — A pantera da velocidade

Muitos hoje em dia procura a evolução do Delphi, hoje em mudou de objetivo utilizando a plataforma .NET e  a solução proposta é o Lazarus IDE com interface idêntica ao famigerado Delphi, tenta implementar os componentes tendo a capacidade de porta sua aplicação com algumas adaptações para a linguagem.

Lazarus IDE — A pantera da velocidade!

Splash Screen do Lazarus IDE

Maioria não querem abandonar seus projetos já existentes porém certamente podemos dar uma sobrevida e portabilidade para outros sistemas, no artigo anterior ao abordar o wxWidgets, era a alternativa nativa e multiplataforma que conheci que tinha o espirito open-source, em muitos casos a licença como a GPL impede de construir um aplicativo para uso comercial.

Lembrando que o Lazarus tenta ao máximo reproduzir o ambiente e desenvolvimento e essas semelhanças acabam por aqui, muitos componetes não tem suporte ou tem componentes totalmente diference com outras abordagens e isso terá que reescrever grandes quantidade para que seja aceitável na IDE.

Tem uma solução legada em clipper para portar para GNU/Linux?

Existe uma solução e deixo aqui a dica, era gerida por uma empresa e não sei que ainda é mantida, é o FlagShip, assim como cobol o Clipper na era DOS tem muitos adeptos. Acredito que a dinâmica de ter um aplicativo texto ao invés baseado em janelas dá velocidade e leveza não exigindo muitos recursos computacionais para nesta era.

Desfecho

Agora que já soltei meu combo, estou fechando o artigo, espero que tenha gostado pois pode ser o inicio da caminhada de antes de decidir que mantém opções legadas em seu portfólio.

Python&Ruby — Irmãos camaradas

Shell, assim como python vs ruby, poderoso e nativo

Shell, assim como python vs ruby, poderoso e nativo

As diferenças das entre linguagens Python vs Ruby é quase invisível e no fundo são linguagens scripting, colocando em pratos limpos, linguagem de scripting é interpretada, ou seja, executada na hora sem necessidade de compilar porém para isso necessita do código fonte. Conheci primeiramente o Ruby mas o Python me intrigou ainda mais minha atenção.

O Scripiting também conhecido como batch, são famosos para executar algumas tarefas repetitivas, mas no casos são linguagem completas cheias de recursos não só cabendo a fazer pequenas validações e chamar conjunto em sequencias automaticamente.

Python vs Ruby e o empate técnico

Ruby assim como Python tem escrita simples, é um as melhores ideias em linguagem e qual foi fortemente inspirado no Python, faz a economia milhares de linhas de código para solucionar um determinado problema.

Como nasceu de apanhados de ideias bacanas de outras linguagens,está sendo a linguagem muito requisitada no momento mas sua reputação está sendo formada não por sua linguagem e sim sua extensão para criação de aplicativos para internet chamado Rails, sem este o Ruby não teria a atenção que está tendo hoje em dia. Ele está corrigindo muitos bugs para aumentar o seu desempenho igualando ao Python e mesmo o java e seu ponto forte, segundo seus desenvolvedores, é ser totalmente orientada a objeto onde toda declaração é herdada da classe Objetct.

O Python também tem particularidades, como as encadeamento de comando, o que corresponde a identação do texto, como os comandos de laços de repetição, condicionais e palavras reservadas termina com “:” no termino da sentença de condicionais, laços e repetidores.

Isso tem agradado muitos desenvolvedores ao redor do mundo, seu cunho é a redução o tempo gasto decorrente a quantidade de texto no projeto e rendendo produtividade. Não é a toa que muitos desenvolvedores estão sugerindo o uso destas para projetos de pequeno e médio porte para utilizarem. Os custos de elaboração diminui fazendo um preço mais competitivo em relação soluções para o mundo corporativo entretanto tem boas bases e casos de sucessos. Diante de muitos gerentes saltam os olhos mas falta de conceituação solidas e esta tendencia está sendo mudada.

Ambas delas utiliza uma leitura natural o que facilita o entendimento e uma coisa interessante que elas trabalha tipagem dinâmica, a tipagem dinâmica você não precisa declarar que tipo de dados que ela pode armazenar e muitas outras características.

Então fica o empate entre Python vs Ruby

E o Shell?

O Shell não deveria estar neste artigo, porém é muito requisitado para scripting, se quiser saber mais sobre shell conheça o blog do Aurelio e conheça a conchinha dos unix(es), não vai arrepender!

Abraços e até o próximo artigo!

Existe alternativa ao Delphi/Kylix e outras ferramentas comerciais?

Sim… e posso dizer que ela não é brincadeira

O que é ?

É uma api de componentes gráficos dando a possibilidade de fazer uma aplicações nativas e multiplataforma. Umas das vantagens de uma aplicação nativa é a performance e possibilidade de utilizar em maquinas onde seu hardware e software é limitado, podendo dar flexibilidade para quem desenvolve a aplicação, esta api te dá poder de portar para demais plataformas e sistemas operacionais sem a alteração de uma linha de código sequer.

Recentemente estou me procurando informações a respeito do wxWidgets para elaborar um software como regras findamentais nativo e portáveis, nisso visando a flexibilidade de escolha abrangente de varias linguagens!

C/C++

Incluindo a reputação da linguagem adotada, ela que muitos projetos de sucesso rodam sobre esta, e sua customização lhe permite ir além daquelas linguagem que se escondem atrás de RADs, como o Dephi necessitando de componentes de terceiros para fazer funcionalidades nativas. Para elaborar um projeto com wxWidgets é necessário no minimo compreensão de Orientação a Objeto e conceitos da linguagem.

Ambiente básico

Para se construir uma aplicação gráfica basicamente necessita de um editor de texto. Mas se vem o caso de pelo menos tiver um editor com alguns recursos básicos como o code completation e salvo em último caso utilizar uma ferramenta RAD somente para construções de telas e formulários como o wxDev-C++ para windows e wxGlade para elaborar sobre unix-like 😉

Conclusão

Como é um projeto open source, eu escolhi pela flexibilidade que me proporciona em relação alguns aplicativos pagos e ineficiente para desenvolver aplicativos para desktop e por enquanto está me atendendo muito bem! 😀

Optimization WordPress Plugins & Solutions by W3 EDGE