Projeto oficina

Este foi o primeiro projeto com interface gráfica que desenvolvi com os conhecimentos adquiridos no programa Jovem Programador Senac módulo 2.

O projeto consiste basicamente em:

É utilizado o banco de dados Sqlite3.

Regra de negócio deste projeto

O usuário pode se cadastrar livremente, porém com o simples cadastro do usuário ele apenas terá permissão para consultas, para ter mais permissões elas deverão ser concedidas a ele pelo ROOT.

As permissões possíveis são:

Existe um superusuário que através dele poderá ser setado ao primeiro usuário cadastrado a permissão de ROOT e após isso esse primeiro usuário já pode setar as permissões aos demais usuários conforme a necessidade e nível de cada usuário.

No cadastro de clientes existe uma verificação para saber se o CPF é válido, para efeito de testes também foi colocado um botão de gerar CPF que gera CPFs aleatórios válidos para facilitar os testes e os cadastros de clientes, lembrando que esse sistema é apenas um exercício didático e não tem nenhuma funcionalidade prática, apenas serve como uma forma de praticar o CRUD.

Ao entrar no sistema o usuário deve receber uma mensagem de boas vindas informando suas permissões. De acordo com suas permissões será as opções que ele deve ter disponível na tela.

Caso seja apenas consulta ele verá as opções de buscar clientes e manutenção de clientes, sendo que não conseguirá fazer nenhuma alteração, apenas verificar os dados.

Se a permissão for criar, vai aparecer também a opção de cadastrar clientes e cadastrar veículos, e ele conseguirá fazer cadastros, porém não poderá alterar dados existentes, pois para isso é necessário a permissão de editar.

Se a permissão for editar, ele poderá apenas editar os registros e se for criar e editar vai poder criar e editar, mas não poderá excluir registros, pois para isso é necessário a permissão de excluir.

Se a permissão for excluir, então ele poderá também excluir registros, e se for criar, editar e excluir ele poderá fazer o CRUD completo, apenas não poderá setar permissões aos usuários, pois para isso é necessário a permissão de ROOT.

Caso o usuário tenha permissão de ROOT ele poderá setar as permissões para ele mesmo e os demais usuários, portanto se ele tiver a permissão de ROOT ele consegue fazer o que quiser no sistema.

Quanto a lógica na exclusão dos registros

Caso tente excluir algum cliente que possui veículos cadastrados, o sistema deve informar uma mensagem de erro avisando que esse cliente não pode ser excluído pois possui veículos cadastrados para ele e que é necessário primeiro excluir o registro desses veículos para depois poder excluir o cliente, caso o cliente não tenha nenhum registro de veículo cadastrado ele pode ser excluído sem problemas.

Resumo do projeto oficina

Em resumo, esse simples exemplo de exercício serviu para praticar a construção de um programa com interface gráfica utilizando o PyQt5 e o Qt design e também um exercício para praticar o uso do banco de dados relacional Sqlite3, pois era necessário haver uma relação entre os clientes e seus veículos.

Também esse sistema foi importante para exercitar a lógica de permissão, do que os usuários podem ou não podem fazer, dependendo de suas permissões.

Quem quiser ver como ficou basta baixar esse projeto, e instalar as dependências (basicamente pyqt5) e o Python na versão 3.x

Para poder setar as permissões deve utilizar inicialmente o superusuário ROOT e a senha manager.

Para executar o sistema utilize o arquivo main.py, que vai abrir a tela de login, onde você poderá se cadastrar e logo em seguida logar novamente com o superusuário ROOT para lhe dar as permissões que você quiser.

Medalha de Bronze OBMEP 2021

Após ganhar minha primeira medalha de bronze na OBMEP 2018 eu tive a oportunidade de participar do PIC (programa de iniciação científica da OBMEP) onde, por um ano inteiro pude me dedicar a aprender muito sobre matemática, através desse programa.

Foram 12 meses de estudos de forma online, aos sábados e pra isso ganhávamos uma bolsa de R$ 100,00 por mês como incentivo para estudarmos.

Em 2019 minha escola acabou se atrapalhando e não fez inscrição para participar da OBMEP de 2019, e em 2020 não houve a olimpíada por causa da pandemia, porém, como em 2019, quando participei do PIC tive ótimas notas e um ótimo aproveitamento, fui convidado para participar por mais um ano em 2021 do PIC.

Em 2021 minha escola fez inscrição para a OBMEP, e tive a oportunidade de participar de novo, dessa vez mais preparado, pois adquiri vários conhecimentos novos durante o PIC.

Esses conhecimentos foram muito importantes, pois essa participação foi no nível 3, onde as questões são as mais complexas, pois é o nível máximo da olimpíada de matemática.

Essa foi minha última participação na OBMEP, pois também estava encerrando o ensino médio, para minha alegria, após bastante esforço consegui novamente outra medalha de bronze, mas dessa vez no nível 3 que é o mais avançado, foi uma grande conquista para mim.

No dia 07/06/2022 fui a cerimônia de premiação que ocorreu na UFSC para receber minha medalha.

Jovem Programador Senac módulo 3

Após o encerramento do módulo 2 do curso Jovem Programador, fui aprovado para participar do módulo 3, onde estudei sobre programação Web.

Esta etapa do curso teve duração de 240 horas e foi do dia 21/02/2022 até 08/06/2022, e neste curso aprendemos o seguinte:

No geral, assim como no módulo 2, foi uma excelente experiência pra mim, e pude aprofundar ainda mais os meus conhecimentos, inclusive, durante essa etapa do curso, desenvolvi alguns projetos, utilizando Python e o framework Django, entre eles:

Certificado de conclusão do curso
Carga horária do curso

Faculdade de Engenharia de software

Recentemente, logo após encerrar o ensino médio e o curso Jovem Programador do Senac, iniciei a faculdade de Engenharia de software na Anhanguera Pitágoras Ampli.

Iniciei no mês de Junho de 2022 com previsão de me formar em Maio de 2025.

Você pode ver a matriz curricular do curso clicando aqui

Neste primeiro semestre vou cursar as seguintes matérias:

Segue abaixo a matriz curricular do curso:

Matrícula da faculdade.

Minha formação no ensino médio

Sou natural de Novo Hamburgo/RS, porém quando eu tinha 5 anos minha família veio morar em Santa Catarina, mais precisamente na Praia da Pinheira onde moro até hoje.

Com exceção dos primeiros anos (creche, maternal) que foram em escolas particulares, sempre estudei em escola pública, meu ensino médio foi todo feito na escola E.E.B. Padre Vicente Ferreira Cordeiro na Praia da Pinheira, uma escola estadual onde cursei todo o ensino fundamental, desde o primeiro ano das séries iniciais até o terceiro ano do ensino médio.

Como podem ver no meu histórico escolar abaixo sempre tive boas notas, principalmente nas áreas das exatas que é o que eu mais gosto.

Histórico escolar do ensino médio.

Curso Desenvolvedor web Udemy

Devido a pandemia de COVID-19 que ocorreu no ano de 2020, houve a necessidade de fazer quarentena, então, como eu sou autodidata e estava com bastante tempo livre devido as aulas online, resolvi aproveitar esse tempo livre para aprender uma coisa nova, foi assim que conheci e me apaixonei pelo mundo da TI.

Com a ajuda do meu pai conheci a Udemy e adquirimos vários cursos de programação, um deles foi um curso de desenvolvimento Web que me ensinou minhas primeiras noções de lógica de programação.

Esse curso foi sem dúvida uma ótima experiência, e foi muito importante pra mim, afinal foi o primeiro curso que eu fiz, e é por causa dele que este site existe, mesmo que indiretamente, após concluir esse curso eu continuei estudando e aprimorando ainda mais os meus conhecimentos.

Certificado de conclusão do curso

Desafio da robótica 2 Projeteiros

Após a conclusão do desafio da robótica 1, fiquei bastante empolgado pelos conteúdos aprendidos, portanto resolvi tentar o desafio da robótica 2.

Neste curso tínhamos um carrinho motorizado e tínhamos que fazer com que ele se movesse, pra frente e pra trás e que também fizesse curvas, e mais importante, que ele desviasse quando houvesse algum obstáculo pelo caminho.

Outro desafio era que o carrinho saísse de dentro de um labirinto feito com fita adesiva, então tínhamos que programar para que ele andasse pelo labirinto, evitando a fita adesiva.

Depois de completarmos esse desafio, tivemos que fazer o carrinho andar em uma pista feita com fita adesiva, seguindo as linhas.

Os conceitos aprendidos nesse curso foram:

Assim como o primeiro, esse curso também foi uma ótima experiência e eu honestamente gostei mais desse do que do primeiro.

Desafio da robótica Projeteiros

No ano de 2021, eu ainda estava tendo aulas online devido a pandemia, então, como sou autodidata, resolvi dedicar o meu tempo livre para fazer outras coisas, foi então que descobri o curso Desafio da robótica Projeteiros, e resolvi tentar.

O curso teve duração de 30 horas e nele aprendi sobre arduino e alguns de seus conceitos e componentes básicos, tais como:

Apesar de ter sido um curso bem básico, posso dizer que aprendi bastante coisas e foi uma ótima experiência pra mim.

Jovem Programador Senac módulo 2

Após passar na seleção pelo módulo 1 de lógica de programação, iniciei o módulo 2 do curso.

O módulo 2 consiste basicamente em desenvolvimento de software e aplicativos desktop, utilizando a linguagem Python, o PyQT5, o QT design e o banco de dados Sqlite.

Este módulo do curso se iniciou no dia 02/08/2021 e terminou no dia 10/12/2021 com 200 horas de aulas teóricas e práticas, esse módulo 2 do curso era a princípio híbrido, com aulas online e presenciais, e devido a pandemia, o aluno que desejasse (como foi o meu caso) poderia fazer esse módulo 100% online.

Certificado de conclusão do curso.
Carga horária do curso.

Neste módulo começamos aprendendo o básico da linguagem Python utilizando linhas de comando e o terminal.

Após isso, aprendemos também a utilizar o Qt design e o PyQt5 para construção de interfaces gráficas. Aprendemos também um básico da linguagem SQL e de trabalhar com o banco de dados Sqlite3.

Com as habilidades que aprendi nesse curso, desenvolvi alguns projetos para colocar em prática o meu aprendizado, foram eles:

Finalizamos esse módulo do curso com um Hackathon 100% online que ocorreu entre os dias 11/12/2021 e 18/12/2021, foi uma intensa semana com várias oficinas e workshops e muito aprendizado, onde os mais de 400 alunos desse módulo foram divididos em grupos de 5 a 7 integrantes e tiveram a oportunidade de escolher entre 8 eixos, cada um com uma tarefa, onde apenas 14 equipes seriam classificadas para a grande final.

Com muito orgulho minha equipe conseguiu ficar entre as 14 classificadas, apesar de não chegar entre os 3 primeiros, foi uma experiência muito importante para nosso aprendizado.

Jovem Programador Senac módulo 1

No ano de 2020 eu já havia começado meus estudos informalmente na área de TI, pois sou autodidata. Mas foi somente em 2021 que fiquei sabendo do curso Jovem Programador do Senac.

Esse curso foi patrocinado pelas principais empresas de tecnologia do estado de Santa Catarina e foi feito pelo Senac de Santa Catarina. Este curso teve um grande número de inscrições e a seleção principal dos inscritos foi feita através desse módulo 1 que era o de lógica de programação.

O curso foi basicamente dividido em 3 módulos, sendo os seguintes:

Concluí o módulo 1, que basicamente foi um workshop entre os dias 21/06/2021 e 01/07/2021, de forma totalmente online trabalhando lógica de programação, e ele serviu como a peneira para selecionar os alunos aptos a prosseguirem para o módulo 2 (Programação de sistemas).