quinta-feira, 24 de junho de 2010

Considerações interessantes sobre programação em VB.NET Vs Qt Java e Python

Tradicionalmente sempre optei por programar em sistemas mais "livres", livre no quesito liberdade de criação, nunca vi com bons olhos a plataforma .Net da MS (e continuo não vendo hehe). Porém vontade e ideologia não enche barriga, por isso desenvolvo nessa plataforma também.
Aqui vai algumas impressões de um programador Pythoniano, java e C++ eventual, vale lembrar que eu não tenho qualificação, conhecimento e nem pretensão de dizer se alguma linguagem é superior à outra, se em algum momento do texto eu ser tendencioso ou dar a preferência à algum aspecto, o mesmo se baseia unicamente em opiniao e experiência estritamente pessoal.

Antes de iniciar gostaria de definir duas palavrinas para vocês:


fácil:  adj. Que se faz sem dificuldade: trabalho fácil. Que se consegue sem grande trabalho. / Claro, inteligível

simples:  Que não é composto. ,. Que não é complicado. Sem ornatos nem enfeites. De fácil interpretação.Puro; claro. Singelo; inocente.. Mero; natural.. Ingénuo; crédulo.. Exclusivo.

Eu sempre tive uma pequena ressalva quanto o modo de desenho visual em GTK+ e Qt, os layouts, no Glade por exemplo você tem que criar os layouts e depois colocar os "widgets" (botões, caixas de texto, etc)em containers para organizar a sua interface, fazer isso em um aplicativo gráfico é um tanto tedioso e o Visual Studio, Delphi, Netbeans e afins não precisam usar esse recurso, em Qt (utilizando o Qtdesigner) o desenho é mais flexível que no Glade, porém a aplicação dos layouts é praticamente obrigatória para que a sua interface fique mais bem acabada.
No Visual Studio e no Netbeans conforme você vai adicionando os objetos os mesmos vão apresentando as "linhas guias" e fica fácil fácil alinhar os objetos de iteração.
Só que após um tempo programando no Visual Studio é que percebi as vantagens do Jeito Qt e GTK de ser.
A programação da interface via código é extremamente simples desse modo e o redimensionamento da tela ao maximizar é excelente também, não existem problemas ao aumentar o tamanho da mesma pois os "conteiners layout" se ajustam automaticamente sem causar transtornos. É muito simples trabalhar com Layouts e Containers dessa maneira.
Percebi uma coisa interessante, usar o Visual Studio e o Netbeans é fácil, mas não é simples. É extremamente difícil compreender como funciona a construção da GUI no Netbeans e No Visual Studio é realmente muuito difícil, é muito fácil trabalhar mas não é simples.

Já sobre a programação eu percebi que usando o Visual Studio a mesma é realmente muito fácil, a gente fica só movendo ícones de lá pra cá e boas, muitas delas a gente nem sabe exatamente o que faz mas tem que colocar lá porque senão o programa não funciona, no visual studio para trabalharmos com os bancos de dados precisamos utilzar diversos tipos de variáveis: recordset, dataadapter, comand, conexão e fora as strings.
Para programar em Qt e usar banco de dados a gente precisa apenas de uma variável QSqlQuery uma Database e as strings que eventualmente precisaremos! pronto, o uso é muito simples e inteligível, e se usar uma ide como o netbeans fica muito fácil mesmo.
Outra coisa que eu percebi que o pessoal do trolltech desenvolveu e que é extremamente eficiente são os sinais e slots da Qt depois que você começa a utilizar fica realmente simples o código, ágil e fácil de programar.
Cada linguagem de programação possui seus pontos fortes e fracos, e na maioria das vezes o costume e conhecimento do programador é que define qual é realmente a "melhor", estou gostando muito e achando os recursos do Qt fantásticos e das API gráficas que venho utilizado atualmente é a mais rica em recursos, mais customizável e mais simples de utilizar.

terça-feira, 22 de junho de 2010

A "Idiocracia" da Informática

Quando eu comecei a mexer em micros na década de 90 onde para cada vez que se ligava um computador era preciso programar um editor de texto em basic, para automatizar um pouquinho as tarefas era possível salvar os programas em fita cassete, quem não entendesse nada de inglês simplesmente não conseguia usar o micro, era coisa de pessoal super capacitado.
Felizmente as coisa melhoraram muito daquele tempo para cá, só não me entra na cabeça o paradoxo seguinte:

 - Na época onde computadores eram menos importantes e não poderiam armazenar a VIDA das pessoas os que o utilizavam tinham total e completo conhecimento sobre o mesmo e eram capazes de resolver os seus próprios problemas e olha que se tivesse algum era muito difícil de encontrar, não tinha o "Oráculo" Google.
 - Hoje em dia os computadores armazenam todos os dados importantes da vida da pessoa e muitas outras coisas e o pessoal não tem o mínimo de interesse em aprender nem que seja um pouco a respeito do uso e funcionamento do mesmo, o que vivemos é uma idiocracia da informática, é triste mas vemos usuários fazendo as coisas mais estúpidas, eu concordo que nem todo mundo tem que ser um "expert" em informática e que temos mais o que fazer, mas para quem não sabe, com um mínimo de conhecimento é possível usar o Windows XP sem antivírus e nunca pegar um vírus sequer, e mais ainda, se pegar, identificar que pegou e remover manualmente.

Se for o caso, apenas um antivírus simples como o MS Security essentials e um pequeno conhecimento a pessoa praticamente não tem problemas com o tal.
Infelizmente com a democratização do computador e as ferramentas que facilitam o manuseio do mesmo as pessoas passaram a desprezar o conhecimento e o estudo do mesmo, como disse anteriormente, não é preciso que todo mundo vire geek porém é preciso sim que as pessoas aprendam o mínimo do funcionamento do computador, tem gente que perde trabalhos, horas preciosas e importantes por simplesmente salvar o arquivo no local errado ou por não saber qual extensão de arquivo utilizar.