Giter Site home page Giter Site logo

projeto-curso-php's Introduction

Projeto Curso PHP

Note for english speakers

This is the project that I used for teaching basic PHP to Junior devs at a company that I used to work for here in Brazil, so:

  • This project is only available in Brazilian Porgutuese.
  • The code was developed in a simplistic way for teaching purposes, putting aside more elaborate code patterns.

📜 Tabela de conteúdo

💻 Sobre o projeto

Este projeto era utilizado para ministrar as minhas aulas de introdução ao PHP para iniciantes em programação. Basicamente trata-se de um sistema de folha de pagamento simplificado de uma prefeitura fictícia.

Esta aplicação web era desenvolvida ao longo de uma carga horária de 64 horas, que englobava HTML, PostgreSQL, PHP básico, comunicação entre PHP e banco de dados e programação orientada a objetos. Como o foco do curso em questão era o back-end, toda interface já tinha sido desenvolvida por mim antes do início das aulas, assim, os alunos focavam apenas em desenvolver a regra de negócio.

A interface utilizada neste projeto foi idealizada pelo meu amigo Amilton Schlemper - UI/UX Designer. Você pode conferir a prototipação em detalhes no arquivo .fig, localizado na pasta assets deste repositório.

🌐 Live demo

O projeto não está disponível porque não foi encontrada nenhuma solução gratuita viável para hospedagem.

🔎 Funcionalidades

As funcionalidades básicas desta aplicação são:

  • Cadastro, remoção e listagem de cidades
  • Cadastro, remoção e listagem de cargos
  • Cadastro, remoção e listagem de funcionários
  • Cálculo de pagamento de funcionário
  • Consulta de pagamento de funcionário

Front-end

O lado do cliente desta aplicação foi desenvolvido com HTML, e CSS, contando com JavaScript apenas para pequenas manipulações.

📐 Layout

Como a trilha de aprendizados era de fato o back-end, a aplicação conta apenas com interface desktop.

Desktop 1 Desktop 2
Desktop 3 Desktop 4
Desktop 5 Desktop 6

Back-end

Esta aplicação foi escrita em Vanilla PHP, utilizando apenas o composer para fazer a inclusão automática das classes através do namespaces.

Como o foco principal deste projeto é a didática, o mesmo foi desenvolvido de forma simplificada. Assim sendo, para fins de produção/comerciais, seu código fonte teria de ser refatorado e reescrito em uma arquitetura mais elaborada.

Banco de Dados

O banco de dados escolhido para desenvolver este projeto foi o PostgreSQL. Veja a seguir uma breve descrição de suas tabelas:

  • tbcidade: armazena as cidades a serem vinculadas aos funcionários;
  • tbcargo: armazena os cargos a serem vinculados aos funcionários;
  • tbfuncionario: armazena os funcionários. Possui vinculo com a tabela tbcargo e tbcidade;
  • tbpagamento: armazena pagamentos realizados para os funcionários.

❓ Como configurar

Se você deseja fazer um fork deste projeto, você precisará configurar as seguintes variáveis de ambiente:

  • DATABASE_URL (String de conexão com o banco de dados)

👩‍🦲 Autores

Full stack desenvolvido por Matheus do Livramento.

GitHub | LinkedIn | Website

Interface do usuário criada por Amilton Schlemper.

Dribble | LinkedIn

projeto-curso-php's People

Contributors

livramatheus avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.