quinta-feira, 26 de novembro de 2020

DICAS 3192 -WINDEV MOBILE TUTORIAL 12 - 09-12-2020-08_00Hrs- Lição 4.2. WLanguage - IF e SWITCH- PARTE B



https://youtu.be/Bv4B3vqKq1Q



Bom Dia Boa Tarde Boa Noite

Seja Membro do Canal

Esse Video Ao Vivo vai estrear as 08:00 do dia 09/12/2020-

DICAS 3192 -WINDEV MOBILE TUTORIAL 12 - 09-12-2020-08_00Hrs- Lição 4.2. WLanguage - IF e SWITCH- PARTE B


ASSUNTOS


The conditional IF and SWITCH statements
A declaração IF
Exemplo de código: 
Tot is currency
// Selects a number at random between 100 and 4000
Tot = Random(100, 4000)
IF Tot>2000 THEN
Info("The amount is greater than 2000")
ELSE
Info("The amount is less than or equal to 2000")
END

A instrução SWITCH
Exemplo:
D is Date
D = Today()
SWITCH D..Day // Checks the day of the date
CASE 1: Info("We are the first day of the month")
CASE 15: Info("We are the 15th of the month")
OTHER CASE: Info("We are the: " + DateToString(D))
END


Proxima Licao : Loops









PlayList WebDev tutorial Amarildo Webdev
Playlist Windev Tutorial Amarildo Windev
PlayList Windev Mobile 
Amarildo
Donwloads Windev
Windev
WxSolucoes
Matos Informatica
Repositorio Windev
Inscricao Evento Pcsof
Site forum Google 
Video sobre 3 Mil Videos Windev 
Video sobre Alfaserver servidor 












As instruções condicionais IF e SWITCH

A declaração IF

Esta instrução é usada para executar uma ação ou outra de acordo com o resultado de uma expressão. Se a expressão for marcada, um processo é executado; se a expressão não estiver marcada, outro processo pode ser iniciado.
A instrução IF pode ser usada da seguinte forma:
IF <Expression to check> THEN
  Processo a ser executado se a expressão estiver marcada
ELSE
  Processo a ser executado de outra forma
END
Exemplo de código: O código a seguir seleciona um número aleatoriamente e exibe uma mensagem de acordo com o valor.
Tot is currency
// Selects a number at random between 100 and 4000
Tot = Random(1004000)
IF Tot>2000 THEN
Info("The amount is greater than 2000")
ELSE
Info("The amount is less than or equal to 2000")
END



Neste caso, a expressão a verificar corresponde a "Tot> 2000".
Observação: várias linhas de código podem ser executadas durante o processo correspondente a uma condição. Nesse caso, a seguinte sintaxe deve ser usada:
IF <Expression to check> THEN
Linha de
código 1 Linha de código N
ELSE
Linha de
código 1 Linha de código N
END

A instrução SWITCH

Esta instrução é usada para avaliar uma expressão e executar um processo para cada valor de expressão possível.
A instrução SWITCH é usada de acordo com a sintaxe abaixo:
SWITCH <Expression>
CASE Value 1:
Process 1...
CASE Value 2:
Process 2...
...
CASE Value N:
Process N...

OTHER CASE
Process ...
END
Exemplo: O código a seguir recupera a data de hoje e exibe uma mensagem diferente de acordo com seu valor. Uma mensagem específica é exibida para o primeiro e para o dia 15 do mês. Nos outros casos, a data de hoje é exibida.
D is Date
D = Today()
SWITCH D..Day // Checks the day of the date
CASE 1Info("We are the first day of the month")
CASE 15Info("We are the 15th of the month")
OTHER CASE: Info("We are the: " + DateToString(D))
END
Observações :
  • Se a linha de código "CASE 1: ..." for executada, as outras linhas de código correspondentes aos valores possíveis não serão executadas.
  • Vários valores podem ser agrupados no mesmo caso. Os diferentes valores são separados por vírgula. Por exemplo:
    Sub is int = 2
    SWITCH Sub
           CASE 1,2Info("Case 1 or 2")
           CASE 3Info("Case 3")        
           OTHER CASE: Info("Other case")        
    END
  • Várias linhas de código podem ser executadas durante o processo correspondente a uma condição. Nesse caso, a seguinte sintaxe deve ser usada:
    SWITCH <Expression>
    CASE Value 1:
    Process 1 - Code line 1...
    Process 1 - Code line 2...
    CASE Value N:
    Process N - Code line 1...
    Process N - Code line 2...
    END

quarta-feira, 25 de novembro de 2020

DICAS 3191 -WEBDEV TUTORIAL 113 - 08-12-2020-08_00Hrs- Licao 10.3 Performance Profiler



https://youtu.be/njQ9Fbhn0Xk



Bom Dia Boa Tarde Boa Noite

Seja Membro do Canal

Esse Video Ao Vivo vai estrear as 08:00 do dia 08/12/2020-

DICAS 3191 -WEBDEV TUTORIAL 113 - 08-12-2020-08_00Hrs- Licao 10.3 Performance Profiler Parte A


ASSUNTOS

Performance profiler
visão global
O princípio é simples :
Iniciando o perfil de desempenho
Estudando o resultado
Summary
Criando um httprequest para dar erro 
arrumando o codigo httprequest

Proxima Licao  : Debugging a project

DICAS 3067 -WEBDEV TUTORIAL 1-Licao 1.1-14-09-2020 11hrs-DESCUBRA WEBDEV
DICAS 3068 -WEBDEV TUTORIAL 1-Licao 1.2-14-09-2020 15hrs-Web development and WEBDEV - PARTE A
DICAS 3069 -WEBDEV TUTORIAL 3-Licao 1.2-14-09-2020 16hrs-Web development and WEBDEV - PARTE B





PlayList WebDev tutorial Amarildo Webdev
Playlist Windev Tutorial Amarildo Windev
PlayList Windev Mobile 
Amarildo
Donwloads Windev
Windev
WxSolucoes
Matos Informatica
Repositorio Windev
Inscricao Evento Pcsof
Site forum Google 
Video sobre 3 Mil Videos Windev 
Video sobre Alfaserver servidor 











Lição 10.3. Perfilador de desempenho
Esta lição vai te ensinar os seguintes conceitos
  • Visão global.
  • Iniciando o criador de perfil de desempenho.
  • Estudando o resultado.
Duração da aula

Tempo estimado: 15 min
Lição AnteriorÍndicePróxima lição
visão global
O Performance Profiler (também denominado Profiler) é uma ferramenta utilizada para verificar e otimizar o tempo de execução dos processos encontrados em seu site.
O princípio é simples :
  • Você executa o teste do seu site.
  • Durante este teste, o profiler de desempenho acompanha todas as ações realizadas e salva os tempos de execução de cada um dos processos executados.
No final do teste, o criador de perfil de desempenho exibe:
  • as 10 operações mais demoradas,
  • a duração e o número de chamadas para todos os processos executados.
O projeto "WW_Optimization" contém uma página específica usada para visualizar os resultados interessantes com o criador de perfil de desempenho.
Iniciando o perfil de desempenho
O profiler de desempenho pode ser iniciado:
  • no editor WEBDEV :
    Neste caso, o projeto é executado automaticamente em modo de teste. Você pode usar seu aplicativo e iniciar os processos de sua escolha.
    Para voltar ao editor WEBDEV, basta sair do seu site.
    Em seguida, o criador de perfil de desempenho exibe o resultado do monitoramento. Este resultado é salvo em um arquivo WPF.
  • de um de seus processos WLanguage , com as seguintes funções:
    ProfilerStartInicia a "coleta de dados" para o criador de perfil de desempenho.
    ProfilerEndPara a "coleta de dados" para o criador de perfil de desempenho.

    Nesse caso, apenas o código encontrado entre ProfilerStart e ProfilerEnd é estudado. O resultado é salvo em um arquivo WPF.
  • O primeiro método será usado em nosso exemplo. Para iniciar o profiler de desempenho no projeto "WW_Optimization":
    1. Na faixa de opções, na página "Projeto", grupo "Auditoria e desempenho", expanda "Analisar desempenho" e selecione "Analisar desempenho".

      Observação

      O perfil de desempenho também pode ser iniciado a partir do painel do projeto, por meio do widget "Desempenho". Simplesmente:
      • habilite o widget se necessário (clique no link "Clique aqui para reativar").
      • clique na seta e selecione "Analisar desempenho".
        Widget 'Performance' (painel do projeto)
    2. O teste do projeto é executado.
    3. Clique em "TEST PAGE OF PERFORMANCE PERFILER".
    4. Clique em "PROCESSAR PARA ANALISAR".
    5. Valide a janela de informações e pare o teste do projeto. A janela de relatório do profiler de desempenho é exibida.
Estudando o resultado
  • Vamos estudar a janela de relatório do criador de perfil de desempenho. Os resultados são exibidos em várias guias:
    • a guia "Resumo" apresenta os dez processos mais longos.
    • a aba "Mapeamento" apresenta uma visão gráfica dos principais processos.
    • a guia "Detalhes" apresenta todos os processos executados durante o teste do aplicativo (do mais lento ao mais rápido).
    • a guia "Chamadas" é usada para ver os detalhes das operações realizadas em um processo.
  • Vamos apresentar essas diferentes guias em nosso exemplo.
    • A guia "Resumo" apresenta os dez processos mais longos. Em nosso exemplo, você pode ver que o procedimento local denominado "UpdateProductStock" leva mais de 3 segundos para ser executado (este tempo pode mudar de acordo com a potência do seu computador).
      Perfilador de desempenho - guia 'Resumo'
    • A guia "Mapeamento" é usada para identificar visualmente o que demorou mais. No nosso caso, é uma chamada para HTTPRequest :
      Perfilador de desempenho - guia 'Mapeamento'
    • A guia "Detalhes" apresenta todos os processos ou eventos executados, do mais lento ao mais rápido.
      Perfilador de desempenho - guia 'Detalhes'
      As seguintes informações são exibidas para cada processo:
      • Função: Função, evento ou procedimento executado.
      • Tempo total: tempo de execução da função.
      • Tempo interno: tempo de execução devido ao motor.
      • Nb de chamadas: Quantidade de chamadas feitas à função (procedimento ou evento).
      • Tempo 1 chamada: tempo de execução de uma chamada à função (procedimento ou evento).
      • % De código: porcentagem de tempo gasto no processo de função ou procedimento (código do desenvolvedor que pode ser otimizado).
      • Pai: Elemento que contém o processo ou evento.
  • No nosso caso, a guia "Detalhes" indica que a chamada para HTTPRequest é um dos elementos que mais demoram .
    1. Selecione esta linha. Vamos verificar se essa desaceleração é causada por um problema específico.
    2. Clique no botão "Chamadas" para exibir os detalhes das chamadas para o procedimento UpdateProductStock . Selecione "HTTPRequest" e clique em "Código": a linha correspondente do código WLanguage é exibida no editor de código.
      Ligações feitas pelo procedimento local
    3. Feche o criador de perfil de desempenho.
    4. A seguinte linha de código WLanguage é executada:
      HTTPRequest ("fornecedor-addr")
      A lentidão é causada pelo fato de que o endereço especificado para HTTPRequest não está acessível.
  • Vamos verificar o modo de operação do aplicativo otimizando este código:
    1. Substitua a linha de código que contém HTTPRequest pela seguinte linha de código:
      // Verifica a acessibilidade do servidor do fornecedor
      HTTPRequest ("www.google.com")
    2. Salve o código (Ctrl + S).
  • Agora vamos reiniciar o criador de perfil de desempenho:
    1. No painel "Projeto", grupo "Auditoria e desempenho", expanda "Analisar desempenho" e selecione "Analisar desempenho".
    2. O teste do projeto é executado.
    3. Clique em "TEST PAGE OF PERFORMANCE PERFILER".
    4. Clique em "PROCESSAR PARA ANALISAR".
    5. Valide a janela de informações e pare o teste do projeto. A janela de relatório do profiler de desempenho é exibida.
    6. Na aba "Mapeamento", HTTPRequest não aparece com a mesma importância.
      Perfilador de desempenho - guia 'Mapeamento'
  • Feche a janela do relatório do criador de perfil de desempenho.

Teste

Teste
teste