{"id":26865747,"url":"https://github.com/cesarvasconcelos/p3","last_synced_at":"2025-10-27T00:23:07.163Z","repository":{"id":284984899,"uuid":"956687700","full_name":"cesarvasconcelos/p3","owner":"cesarvasconcelos","description":"Códigos produzidos nas aulas de Programação III - IFPB Campus CG","archived":false,"fork":false,"pushed_at":"2025-03-28T18:20:22.000Z","size":4,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-28T19:24:48.684Z","etag":null,"topics":["java","springframework"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cesarvasconcelos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-28T17:23:32.000Z","updated_at":"2025-03-28T18:20:25.000Z","dependencies_parsed_at":"2025-03-28T19:24:55.392Z","dependency_job_id":"fe77724d-bcd3-4cb7-bb46-52f2f22238ef","html_url":"https://github.com/cesarvasconcelos/p3","commit_stats":null,"previous_names":["cesarvasconcelos/p3"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cesarvasconcelos%2Fp3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cesarvasconcelos%2Fp3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cesarvasconcelos%2Fp3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cesarvasconcelos%2Fp3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cesarvasconcelos","download_url":"https://codeload.github.com/cesarvasconcelos/p3/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246414265,"owners_count":20773240,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","springframework"],"created_at":"2025-03-31T04:23:49.470Z","updated_at":"2025-10-27T00:23:07.158Z","avatar_url":"https://github.com/cesarvasconcelos.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# IFPB - Programação III\n\nInstituto Federal de Educação, Ciência e Tecnologia da Paraíba - IFPB - *Campus*\nCG  / PB\n\n**Disciplina**: Programação III.\n\nNeste repositório, encontram-se exemplos de código utilizados em sala de aula.\nOs códigos não devem ser usados como único material de referência para estudo.\nHá trechos de códigos incompletos, com erros e/ou outros problemas de\nimplementação, os quais devem ser analisados pelo aluno como exercício de\nprogramação.\n\n## Objetivos de aprendizado\n\n- Como projetar e implementar aplicações Web coorporativas usando framework Spring\n- Implementar o front-end e back-end de uma aplicação Web típica\n- Operações CRUD, submissão de formulários HTML, validação e integração com banco de dados\n- Spring ecossistema: Spring Web MVC, Spring Integration, Spring Testing, Spring Boot, Spring\n  Data/JPA, Spring Security and Spring AOP\n- No Spring Security, como realizar autenticação com login, gerência de sessões e autorização baseada em privilégios\n- Discutir boas práticas no projeto de aplicações orientadas a microserviços\n- Construir REST APIs e Aplicações Web com Spring MVC, Thymeleaf, Bootstrap CSS\n- Persistência em banco de dados usando Spring Data JDBC/JPA, MySQL/MariaDB, Flyway\n- Como utilizar ORM Frameworks (e.g., Hibernate)\n- Setup do desenvolvimento local com Docker, Docker Compose e Testcontainers\n- Usar o JUnit5, AssertJ, Mockito para testes\n\n## Material de Referência\n\nOs principais materiais de estudo usados na disciplina são os seguintes livros: [Spring Start\nHere](https://www.manning.com/books/spring-start-here) e [Use a Cabeça! HTML e\nCSS](https://www.amazon.com.br/Use-Cabe%C3%A7a-HTML-Eric-Freeman/dp/8576088622).\nOutras fontes de leitura serão indicadas pelo professor.\n\nAs documentações oficiais:\n\n- [Spring Website](https://spring.io/)\n- [Spring Projects](https://spring.io/projects)\n- [Spring Framework Javadoc API](https://docs.spring.io/spring-framework/docs/current/javadoc-api/)\n- [HTML Reference](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference)\n- [CSS Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference)\n- [Thymeleaf](https://www.thymeleaf.org/)\n\nOutros links:\n\n- [Spring initializr](https://start.spring.io/) para gerar projetos. Alternativamente, pode-se usar\n  o comando `spring init` via linha de comando (instalável via [SDKMAN](https://sdkman.io/)) com\n  parâmetros como, por exemplo:\n  ```bash\n  spring init \\\n  --name=my-web-app \\\n  --groupId=com.example \\\n  --artifactId=my-web-app \\\n  --package-name=com.example.mywebapp \\\n  --dependencies=web,security,data-jpa,mariadb,docker-compose,testcontainers,thymeleaf,validation,flyway \\\n  --java-version=21 \\\n  --packaging=jar \\\n  --version=0.0.1-SNAPSHOT \\\n  --boot-version=3.5.6 \\\n  --build=maven \\\n  my-web-app\n  ```\n\n## Suporte ferramental básico\n\n- Um navegador (Firefox, Brave, Google Chrome, Opera, Safari, etc.)\n- Uma distribuição OpenJDK (e.g., [Amazon Correto](https://aws.amazon.com/corretto/)) - pode ser instalada via [SDKMAN](https://sdkman.io/)\n- [IntelliJ IDEA](https://www.jetbrains.com/idea/)\n- [Apache Maven](https://maven.apache.org/)\n- [Docker Desktop](https://docs.docker.com/get-started/get-docker/)\n- Um editor de texto (e.g., [Visual Studio Code](https://code.visualstudio.com/) ou [TRAE](https://trae.ai/))\n- Spring Boot CLI (instalável via [SDKMAN](https://sdkman.io/)) para usar o comando `spring init`\n- Algumas [extensões](https://marketplace.visualstudio.com/vscode) do Visual Studio Code, que serão sugeridas pelo professor.\n\n## Este repositório\n\nPode-se obter apenas os [códigos](https://github.com/cesarvasconcelos/daweb1/archive/master.zip) ou, alternativamente, utilizar o [Git](https://git-scm.com/) para clonar todo o repositório funcional e seu histórico de versões:\n\n```\n$ git clone https://github.com/cesarvasconcelos/p3.git\n```\n\n## Autor\n\n* **Prof. Dr. César Vasconcelos (cesarocha@ifpb.edu.br)** - [GitHub Page](https://github.com/cesarvasconcelos)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcesarvasconcelos%2Fp3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcesarvasconcelos%2Fp3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcesarvasconcelos%2Fp3/lists"}