Viablog | TI e desenvolvimento de Software

TAG | dicas

set/10

2

Manutenção no Oracle Forms


Uma coisa incomoda e muito boa parte dos desenvolvedores, é o de prestar manutenção em um software já pronto e que foi desenvolvido por outra equipe/pessoa.

Isso ocorre, pois além de uma linha de raciocínio diferente também temos o fator de códigos muitas vezes elaborados de forma duvidosa, com pouca ou nenhuma padronização o que torna a sua compreensão por terceiros difícil além do fato que se o projeto do software for mal estruturado a sua manutenção é uma verdadeira tortura.

Deixemos de lado (por enquanto) o aspecto de desenvolvimento de novos recursos e vamos nos concentrar na parte mais maçante e cansativa para o desenvolvedor: a localização e correção de erros.

Para isso posso deixar algumas dicas:

O primeiro passo é conhecer o processo, é claro que você como desenvolvedor não precisa conhecer todos os processos, pois em um ambiente de grande porte isto é impossível, mas você precisa com certeza conversar muito com o usuário, não apenas o que relatou o erro, mas os usuários das outras áreas envolvidas, isso irá lhe permitir saber de antemão se o erro é realmente um erro de software, uma regra mal formada na definição durante o ciclo de desenvolvimento daquele software ou ainda uma mera má interpretação do usuário.

Caso seja mesmo um erro de software e é aqui que a minha dica se concentra, vou considerar então que você está utilizando o Oracle Forms, você deve em primeiro lugar interpretar o tipo do erro:

Caso seja uma mensagem de erro customizada, ou seja, aquela mensagem de erro mais amigável que você embute no seu software será necessário localizar em todo o Form qual o ponto de chamada para poder localizar o ponto exato do erro.

Caso seja um erro padrão do Oracle (seja um ORA, FRM, REL, etc) você pode anotar o código e procurar no Google ou na base de conhecimento para descobrir a causa e as possíveis ações de correção. Uma dica interessante é que no momento da execução, junto com o usuário mesmo, você pode acionar SHIFT + F1 e irá obter a descrição do erro e isso é bem útil em casos de erros em updates ou inserts que a sua aplicação pode precisar realizar.

E ainda caso o erro apresentado seja um FK, UK ou PK você pode varrer todo o banco, utilizar o PL/SQL Developer, por exemplo, procurando o ponto que esse recurso está para poder modular e corrigir o erro.

Corrigir erro é chato, mas é necessário fazer e seguinte os passos acima a tarefa de detectar erros e corrigi-los no Oracle Forms se torna menos maçante e mais produtivo.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Leia mais:

· ·


A alguns meses atrás a Mozilla precisou adicionar um remendo na linha Firefox 3.x, isso porque scripts JavaScript mal feitos ou estrategicamente programados para isso podiam entrar em colapso e travar todo o browser.

E como o Firefox trabalha com abas, imagine o tamanho do problema.

E a solução mais viável e inteligente seria o Firefox isolar a thread de cada aba, assim como o Chrome já faz, e assim quando um site travar todas as outras abas ficariam protegidas.

Só que esta solução é complexa demais para ser implementada em um minor update e teremos que esperar a versão 4 do Firefox para ver isso.

Mas a Mozilla nos brindou com um quebra-galho que mais atrapalha do que ajuda.

Agora quando o processamento de um script JavaScript ultrapassar 10 segundos o browser irá emitir um aviso sobre o script lento e se queremos continuar a execução ou cancelar.

Pronto, tudo resolvido na terra do Panda de Fogo, ou não!

Esse processo é anacrônico, mais confunde o usuário (ainda mais os leigos do que realmente ajuda) e em alguns diversos casos mesmo você optando por continuar a execução o Firefox faz o script se perder atrapalhando ou mesmo impedindo o correto funcionamento de toda a página.

Qual a solução definitiva?

Não precisamos chegar ao ponto extremo de utilizar a bomba do Internet Explorer, então temos que optar para o Opera (quem ninguém utiliza) ou ir para o Chrome que parece ser o caminho mais natural para os usuários do Firefox e que estão insatisfeitos.

Fica aqui a dica para o uso do Chrome.

E para você Mozilla, melhor sorte da próxima vez.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Leia mais:

·

ago/10

27

Arquivo texto ou arquivo XML?


No fundo ambas contém texto para os olhos humanos, porém computadores não têm olhos humanos e a escolha correta para a sua necessidade poderá influenciar drasticamente o sucesso do seu projeto de software.

Em primeiro lugar, vocês leram meu post sobre heterogeneidade? Não? Ele irá ajudar a entender este aqui.

É comum que aplicações diferentes e em muitos casos em diferentes plataformas precisem se comunicar e estabelecer a forma correta é vital para a sua continuidade, assim sendo a troca de arquivos é o caminha mais simples e talvez o mais utilizado.

Mas como serão os arquivos?

Vamos nos ater a dois tipos, arquivo texto comum e o XML.

O XML por obedecer à norma de implementação do W3C facilita a vida de ambos os lados, pois basta definir a estrutura de tag´s que o próprio parser de cada um dos sistemas se encarregará de criar/ler o XML sem maiores problemas.

Outros dois pontos fortes do XML é a possibilidade de ao utilizar DOM você consegue atravessar toda a sua estrutura em busca de dados, sem a necessidade de ficar iterando linha a linha o que lhe garante robustez e performance na aplicação. O segundo ponto é que caso o conteúdo (CDATA) de uma tag for alterada a sua aplicação vai funcionar e entender o novo conteúdo de forma transparente, pois o parser procura o conteúdo com base na tag e não em posição do cursor ou coisa semelhante.

E para não deixar o XML como uma entidade de perfeição, ele tem por excelência a necessidade de ser maior que um simples arquivo texto, o que em grande volume pode complicar a sua utilização.

Já o arquivo texto tem a vantagem de ser menor (relativamente ao XML) e a sua flexibilidade é muito maior, pois a sua leitura ao ser executada linha a linha permite a captura de caracteres pela posição do cursor ou por delimitadores como a vírgula, tabulação e aspas (estas são as mais utilizadas, mas você pode definir a sua própria quebra no arquivo texto).

Porém o seu maior trunfo que é a flexibilidade é também o seu maior defeito, pois isto demanda uma análise maior e uma interação entre as duas pontas no desenvolvimento do padrão do arquivos texto e também em muitos casos uma simples alteração de conteúdo pode ocasionar a quebra de leitura e gerar transtornos enormes.

Então qual deles utilizar?

A sua análise é que manda, porém eu costumo utilizar o XML para troca maciça de informações entre aplicações e deixo o arquivo texto mais para configurações de software e pequenos detalhes onde eu posso definir a sua estrutura de acordo com a minha necessidade pontual.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Leia mais:

·


Eu sei que já prometi, mas agora o curso de Oracle Forms está realmente retornando, tanto isso é fato que vou colocar esse post como um adendo ao curso, portanto se você que é iniciante em Oracle não compreender, não se preocupe, com o passar do curso você vai entender o que quero dizer agora.

Vou explicar de forma rápida como funciona o processamento de um query dentro do Oracle.

É o seguinte, ao dar ordem de execução para a sua query, pode ser de dentro de um Form compilado ou mesmo de um PL/SQL Developer o Oracle vai identificar e semi processar a sua instrução para então depois passar para o parse e enfim dar ordem efetiva de execução e caso a sua instrução seja uma select ele ainda vai retornar o fetch de resultados para você.

E é aí que quero chegar, esse é o processo normal, onde caso a sua instrução seja novamente enviada para processamento para o Oracle, ele vai “entender” que já processou aqui e pular a faze de semi processamento que ocupa muito recurso e vai envia-la diretamente para o parse.

Outro ponto é que no caso de o retorno de uma select e caso você esteja operando um form construído da devida forma (amarrando a tabela para um banco de dados) o Forms da Oracle tem uma série de dispositivos e recursos para controlar e não enviar o fetch de uma única vez o que iria obrigar o seu usuário a esperar todo esse envio, e que em casos de várias linhas isso iria refletir em lentidão para a sua aplicação, o Forms vai identando e enviando o fetch para o cliente conforme a necessidade e aos poucos e isso se traduz em uma aplicação transparente e de boa performance.

O problema é que tem “desenvolvedores” que simplesmente ignoram todo esse processo e ao invés de amarrar uma tabela a um bloco de dados eles criam um bloco de dados livre, sem tabela, e vai controlando tudo via select into, o que causa todos os problemas relacionados acima.

Ambas as aplicações vão funcionar corretamente, porém uma irá aproveitar todos os recursos da ferramenta e obterá além de maior controle e segurança mais performance e a outra irá ser mais lenta pois irá trabalhar da forma mais rudimentar possível.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Leia mais:

· ·

jul/10

15

Melhorando a nitidez de texto no Windows 7


Essa dica vai para quem utiliza o Windows 7 e principalmente monitores LCD.

É possível melhorar significativamente a nitidez das fontes no Windows 7, para isso vá em Painel de Controle -> Aparência e Personalização -> Vídeo e no menu que irá abrir do lado esquerdo clique na opção Ajustar Texto ClearType.

Para quem ainda não sabe a tecnologia ClearType que vem desde o Windows XP e é destinada principalmente para monitores LCD, embora melhore consideravelmente a exibição de fontes em monitores CRT também, é uma tecnologia desenvolvida pela Microsoft para melhorar a nitidez e apresentação de fontes em monitores.

A imagem abaixo mostra a primeira etapa para configurar melhor o ClearType:

Tela inicial para verificar se o ClearType está ativo

Tela inicial para verificar se o ClearType está ativo

Após verificar se o ClearType está ativo, clique em avançar, na tela seguinte será apresentado o monitor em uso no momento, estando essa informação correta clique em avançar novamente e uma série de quatro etapas irá finalizar a configuração.

Em cada uma dessas etapas algumas caixas de texto com um texto dentro serão apresentadas, como mostra a figura abaixo, para configurar basta selecionar a caixa de texto que apresenta a melhor exibição do texto clicando em cima dela com o mouse e depois clique em avançar.

Tela de configuração do ClearType

Tela de configuração do ClearType

Realizadas essas quatro etapas basta clicar em Concluir e terá finalizado a configuração do ClearType.

Dependendo da sua configuração atual e do seu hardware pode ser que o efeito seja pequeno, mas no meu caso a diferença foi grande, melhorou muito a nitidez na exibição de texto.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Leia mais:

· ·

Get Adobe Flash playerPlugin by wpburn.com wordpress themes

Arquivos

Theme Design by devolux.nh2.me