Olá iniciante... interessante seu Nick h1e1, me lembrei de STAR WARS R2-D2... C-3PO.... Kkkk talvez não tenha nada a ver mas lembra um pouco...
Vamos lá... (não vou falar do Xailer Kkk, mas agradeço a associação do Toledo)
Seguinte vou passar uma ideia de sequencia de aprendizado bem passo a passo, talvez até desnecessária pq vc já tem conhecimento de PHP etc, mas pode ter uma ideia e pular etapas q achar desnecessárias.
Com relação a linguagem aki tem um material q fala da linguagem xBase compilando com o Clipper, mas vc aproveita muito pra entender e compilar com Harbour/xHarbour
Depois na Seção Downloads e Contribuições/Dicas/Tutoriais tem várias rotinas interessantes, simples, muitas até pequenas e de fácil entendimento (após vc conhecer um pouco mais da linguagem no material acima por exemplo) vai te dando um entendimento mais amplo.
Ai vc prepara um ambiente como o q vc esta preparando tipo xHarbour ou Harbour (infelizmente o negócio é dividido, vc pode optar por 1 e seguir, seria melhor se fosse 1 só e ambos os times tivessem mantido 1 só etc, mas isso é muito pano pra OUTRA MANGA, não nosso assunto Ok.. Resumindo escolhe 1 e vai, lá na frente qdo tiver mais familiaridade se vc quiser mudar a gente te ajuda tb.)
Depois com um ambiente para compilar e linkar seus fontes (PRGs, C, CPP, CH, LIB, começa com um PRG simples e depois vai agregando, depois abrangemos melhor isto)
Ai vc monta um PRG tipo o abaixo pra ir testando os comandos e funções...
Código: Selecionar todos
/* Comentários podem ser assim, várias linhas ai começa com BARRA ASTERISCO
vc vai escrevendo...
no caso o inicio do teu sistema vc chama de procedure Main ou function Main
Ai depois de escrever teu comentário de várias linhas vc fecha com ASTERISCO BARRA
*/
procedure Main()
cls // Limpa a Tela, perceba q aki é outro comentário na própria linha, mas após o comando CLS (limpar a tela - Modo Console/Texto), ai uso // ou &&
*-- no caso de comentar uma linha inteira vc pode começar com ASTERISCO
*-- Vou mostrar 1 frase na tela
@ 10,20 say 'Bom dia' // aki usei o comando @ ... say onde informo após o @ a linha q varia de 1 modo geral de 0 a 24 e a coluna de 0 a79 (não lembro se começa em 0 ou 1)
nTempo := 10 // aki inicializei uma variável q não havia sido declarada previamente então ela automaticamente é do tipo PRIVATE (acredito q por ter conhecimento de PHP vc conheça sobre ESCOPO de variáveis)
inkey(nTempo) // Aki usei uma função chamada Inkey e passei o parametro de Qtos Segundos vai aguardar, no caso aqui 10 segundos, se passo ZERO fica aguardando por tempo indeterminado
// Poderia terminar aki ou no caso vou refazer a lógica acima chamando 1 função para retornar se é Bom dia, boa tarde ou boa noite
CLS // limpa a tela
@ 10,20 say Saudacao() // vai na função Saudação e traz o retorno dela
inkey(nTempo) // Aguarda 10 segundos e continua
return
function Saudacao()
local cHora := Time() // declarei a varivel cHora como local e inicializei ela com a Hora Atual através da função Time(), q retorna a hora como Caracter assim: 20:40:25
local cRetorno := '' // declarei a variavel local cRetorno do tipo CARACTER conteúdo VAZIO
*-- Se os 2 primeiro caracteres da hora forem < '12' então o retorno será Bom dia
if Left(cHora, 2) < '12'
cRetorno := "Bom dia"
elseif Left(cHora, 2) >= '12' .AND. Left(cHora, 2) < '18' // Se estiver entre 12 e 17, o retorno será Boa tarde
cRetorno := "Boa tarde"
elseif Left(cHora, 2) >= '18' // Ou se for maior ou igual a 18 retorna Boa noite
cRetorno := "Boa noite"
endif
return cRetorno
/* se não errei nada vai rodarTipo Cadastro de Clientes com:
Consulta, Alteração, Exclusão e um Relatório de Listagem de Clientes por exemplo.
E ai vc vai fazendo, tendo dúvidas e aprendendo etc...
Vamos se ajudando.
[]´s

