quarta-feira, 30 de setembro de 2015

Uma boa ideia

O mundo esta cada vez mais conectado, ferramentas inovadoras nascem todos os dias transformando a vida das pessoas, das corporações. As pessoas se comunicam muito mais, se mobilizam muito mais rapidamente, isto para expressar seu contentamento ou descontentamento, e este comportamento vem aproximado ideias, pessoas, países, interesses comuns.

Nessa linha uma excelente ideia surgiu no evento Genexus 2015: Que tal a comunidade se juntar para construir uma biblioteca de funções comuns a todos os sistemas? Ja tivemos iniciativas semelhantes, mas desta vez com uma nova visão, open source, novo momento, nova versão do Genexus, tudo contribuindo para criar o cenário ideal para se chegar a bons resultados para toda comunidade.

O projeto é chamado de Stone Framework, (link), licenciado pelo formato MIT (o licenciamento significa que você pode usar o recurso de forma totalmente livre)  

O idealizador é o Daniel Monza (dmonza@gxprojex.com) que esta a caça de contribuidores, que tal? Basta mandar as contribuições para ele.

Parabéns pela iniciativa.






terça-feira, 29 de setembro de 2015

What's Next!

O 25o. Encontro Genexus esta rolando solto nesses últimos dias de setembro, e apesar de um pouquinho de vento frio, típico em Montevidéu nesta época do ano, o que esta pegando de fato são as excelentes palestras, que somadas, nos dão uma boa visão a respeito do futuro da ferramenta.

Se você tiver a oportunidade de participar do próximo, eu recomendo, pois se trata de um momento singular, não apenas para refletirmos a respeito das novas oportunidades e tecnologias, mas também pelo acesso direto aos engenheiros que constroem o Genexus.  Em que momento, em nosso atarefado dia-a-dia, temos a oportunidade de parar para imaginarmos as tendências dos softwares modernos?  Se nossos projetos estão levando em conta as evoluções em termos de design Web ou SD? Ou ainda, ponderar a respeito das mais importantes plataformas, frameworks e recursos que constantemente são introduzidos em nossa efervescente área?

Na prática precisa-se de muita energia não apenas para se compreender as novidades, mas também para assimilar e por tudo em pratica. E fica claro a dinâmica da empresa na busca constante da evolução do Genexus, na análise das principais tendencias. E quanto a isso podemos ter certeza, Genexus estará preparado para o que vem por ai.

Em resumo o que podemos extrair até aqui é o seguinte:

Web


  1. As aplicações Web continuam muito fortes, principalmente com introdução da arquitetura Web Responsivo, cuja importância agora ganha contornos dramáticos. Falo isso porque o Google vai qualificar com melhores notas os sistemas que estiverem Mobile Friendly, ou seja, que sejam preparadas para serem apresentadas não apenas para Desktops mas também para dispositivos móveis.
  2. Genexus vai incorporar na próxima versão o recurso Live Editing Web, no qual ajustes na estrutura da interface serão imediatamente apresentados no browser sem que haja a necessidade de se realizar atualizações ou construção da interface.
  3. Recomendo que se aprofundem um pouco mais no tema Abstract Editor que publicamos aqui.
  4. Na próxima versão do Genexus a opção Web Responsive Design será a padrão.

Smartdevices



  1. Dois novos geradores estão sendo construídos para smartdevices: Windows 10 e Swift (iOS), além de um novo gerador para relógios.
  2. Novos controles e componentes estão sendo construídos para permitir aplicações mais bonitas. A própria App do evento já incorpora muitos dos novos recursos, e pode ser baixada nas lojas (Apple, Android, ...).
  3. O recurso Live Editing para Apps também causará uma revolução na construção de interfaces, pelo dinamismo da avaliação imediata do resultado.

Internet das Coisas



  1. Muitas oportunidades na área de sensores e controles de dispositivos foram apresentadas, inclusive uma excelente palestra do Rodolfo Robalo sobre Raspberry + Windows 10 + Genexus, para controle de iluminação.
  2. Muitos cases apresentados com recursos que incluem Genexus como ferramenta de apoio a automação eletrônica. 

Integração



  1. Conector SAP para construção de aplicações Genexus sobre o SAP, lançado este ano, e a grande novidade, um conector para o Mercado Livre que promete causar grande impacto sobre as aplicações ditas 'comércio eletrônico.
  2. Grande destaque sobre a importância da construção de APIs para a comunicação dos sistemas.

Cloud



  1. Genexus estará disponibilizando um novo modelo de prototipação na Cloud para sistemas em produção, com recursos de gerenciamento de deploy.

Enfim, se você não pode participar, tem a oportunidade de acompanhar ao vivo o último dia de evento, nesta terça-feira, através deste endereço http://www.genexus.com/encuentro2015/gx25-en-vivo?es, e ao término as palestras serão disponibilizadas para serem assistidas.




Um ponto fundamental no evento foi o anuncio da troca do nome da empresa Artech para Genexus.

Whats next? Eu particularmente não sei, mas uma coisa tenho certeza, Genexus estará melhor, mais simples, mais tecnológico, acompanhando a evolução tecnológica mundial. Parabéns a equipe Genexus pelo excelente evento!

domingo, 6 de setembro de 2015

Efeito Hover

Parece nome de filme apocalíptico ou de política americana, mas apesar desta ser curta e rápida, como o próprio nome estimula, causa de fato um 'efeito' muito interessante. A ideia é simples, mostrar uma borda sombreada sobre um controle, tipo uma imagem, quando esta possuir um comportamento de botão. E o porque desta frescura toda? simples, para que pareça de fato um botão, que cause a sensação de que ocorre alguma coisa quando pressiona-se a tal imagem, precisamos destacá-la através de alguma ação do usuário.

A ação que escolhemos é o mouse sobre a imagem, que em CSS significa HOVER, e o código para se programar isso é simples, mas como acoplar esta ação em Genexus? Simples também, mas meio esquisito.

Ja haviamos tratado do hover anteriormente Efeito Click em Botão, desta vez estamos usando uma abordagem com classes do Genexus Evolution 3.

Construindo as Classes

Sim precisamos de duas classes para produzir este efeito, e como estamos tratando de imagem, a ideia é uma que seja associada a imagem e outra que represente a ação HOVER. Como fazer isso? No editor de temas incluir uma classe do tipo Image e outra na área Custom com o mesmo nome, porém com um :hover.


No nosso exemplo programamos uma classe Image chamada ImageButton, e outra em Custom com o nome ImageButton:hover. Veja na imagem acima como ficaram as duas classes.

Em seguida basta incluir o código hover na classe customizada, ou seja em ImageButton:hover,  que programamos segundo o código gerado por um editor de bordas que está na internet http://www.cssmatic.com/box-shadow.

Este editor gerou o seguinte código:

-webkit-box-shadow: 0px 0px 12px 3px rgba(207,72,119,1);
-moz-box-shadow: 0px 0px 12px 3px rgba(207,72,119,1);
box-shadow: 0px 0px 12px 3px rgba(207,72,119,1);


Este código incluímos na propriedade Custom Properties da classe ImageButton:hover


Resultado

Para usar isso defina a classe ImageButton ( não a classe hover ) na imagem que quer causar o efeito.


O resultado não poderia ser mais interessante, pois uma imagem estática e meio sem graça, ganha um efeito legal quando o mouse está sobre ela, destacando que quando a mesma for pressionada algo ocorrerá.

quinta-feira, 3 de setembro de 2015

Action Group

Um dos recursos apresentados pelo Abstract Editor, para interfaces Web responsivas,  é o Action Group, que representa um conjunto de botões em uma especie de container ou agrupamento que pode ser apresentado na interface de forma bem organizada e interessante.  O controle é meio esquisitão, mas não é difícil de entender, gastei uns 15 minutos para pegar o jeito, acho que pra você vai ser mais simples.

Criando um ActionGroup

Os grupos de botões são criados a partir da barra superior do editor abstrato, selecionando-se uma operação Add Action Group.


Ao realizar a operação nada de muito interessante acontece a não ser a apresentação de uma palavra ActionGroupn no canto superior, na imagem abaixo ActionGroup2. Esta é a barra de botões que você estará inserindo novos botões que é feito mediante o arrastar e soltar do controle Button localizado no Toolbox para essa barra cinza.


Cada botão tem suas propriedades normais, como classe, evento chamado, bastando configura-lo corretamente nas properties.

Finalmente para adicionar o ActionGroup em sua interface existe um truquezinho, que é fazer com que toolbox volte a apresentar os controles normais de design, para isso clique em qualquer posição na interface que não no ActionGroup., como uma Table,  Form, ou qualquer outro controle.  Procure um novo grupo ActionGroups e arraste o grupo desejado para o local onde deseja apresentar o grupo na interface.


Digamos que com isso a você incluiu uma bela barra de botões na interface, sujeito as regras pre-programadas de design recursivo providas pelo Theme Flat.



Tudo funciona direitinho, de forma organizada.