Introdução ao Desenvolvimento de Sistemas de Software

Disciplina do Bacharelado em Ciência da Computação do Instituto de Matemática e Estatística da Universidade de São Paulo, ministrada pelo Prof. Paulo Meirelles em 2024. Usaremos este espaço para os alunos postagem materiais para serem compartilhado com a turma de 2024.1 e a comunidade.

Objetivos da disciplina

editar

Tornar os alunos capazes de projetar, implementar e testar sistemas de software avançados, usando conceitos e técnicas de engenharia de software e banco de dados de maneira integrada e evolutiva. Os sistemas serão desenvolvidos em times, de maneira colaborativa, e de modo a priorizar clareza de código e extensibilidade.


Programa resumido

editar
  • Princípios e técnicas de desenvolvimento de sistemas de software
  • Testes de software
  • Persistência de dados
  • Modelo entidade relacionamento e modelo relacional

Tutoriais

editar
  1. Pytest + check (Beatriz Viana Costa e Maysa Cristina Claudino)
  2. Cucumber (Filipe Tressmann Velozo e Lais Nuto Rossmann)
  3. Testes de propriedade (João Paulo Pereira da Silva e Renan Ribeiro)
  4. Google Test (Luísa Menezes da Costa)
  5. Dev Containers (Thiago Duvanel Ferreira e Jorge Harrisonn Mantovanelli Thomes Vieira)
  6. Ferramentas de desenvolvimento colaborativo em tempo real (Fernando Yang e Lucas Eiji)
  7. Testes de Acessibilidade (Anna Beatriz Serikyaku e Jonathas Castilho)
  8. TensorFlow em aplicativos Android (Beatriz Gonzaga Correia da Silva e Enzo Ikeda)
  9. Flask: desenvolvimento web com python (Eduardo Cruz Guedes e Gustavo Vaz Pinto)
  10. Streamlit (Victor Nascimento Ribeiro e Marcelo Nascimento)
  11. Learn Vim: aprenda a integrar seu VSCode com o Vim (Gabriel Haruo Hanai Takeuchi e Lucca Ciriac Vilhena Oliveira)
  12. Usando Selenium e Python para fazer scraping (Gilvane da Silva Sousa e Miqueias Vitor Lopes Lima)
  13. Criação de Aplicação em Python com Kivy (Diogo Ribeiro de Faria e Luiz Fernando de Freitas Fernandes)
  14. Refatoração (Luan Tavares de Andrade e Mayara de Oliveira Pinheiro)
  15. Entity-Component-System (Bruno Armond Braga e Guilherme Vinicius Ferreira de Assis)
  16. Arquitetura de software e componentes reutilizáveis (Aya Esther Prado Meira e Luiz Carlos Costa da Silva)
  17. TestContainers (Roberto Bolgheroni e Lucas Quaresma)
  18. 5 ferramentas de DevOps que você precisa conhecer (Guilherme Wallace e Eduardo Figueredo)
  19. Tópicos básicos de React (Natalya Silva Aragão)
  20. React Hooks (Agnaldo Nunes de Oliveira e Gabriel Ferreira de Souza Araujo)
  21. Git Rebase de maneira mais fácil e intuitiva (João Vitor Magalhães Leite e Pedro Zamecki Andrade)
  22. Git Cherry Pick (Lucas Escobar e Rodrigo Michelassi)
  23. Git do Básico ao avançado (Felipe Aníbal e Vinícius Lira)
  24. Estratégias de Branching no Git (Francisco de Castro Leal Henriques e Mohamad Walid Marrer Abed)
  25. Clean Commits: boas práticas na escrita de mensagens de commit (João Pedro Petrosino Costa)
  26. VSCode + GitHub: Como otimizar seu workflow (Davi Gonçalves Bezerra Coelho e Vinícius Yuiti Okuma Shimizu)
  27. Importância do Controle de Versão (Felipe Kaneshiro de Souza e Matheus Koiti Ito)
  28. Serviços aws (Luigi Gasparetti e Pedro Cruz Martins)
  29. Otimizando Docker (Pedro Mariano e Vinicius Lima)
  30. RabbitMQ (Adriano Elias Andrade e Guilherme Henrique Vasconcelos da Cunha)
  31. Tutorial introdutório à Godot Game Engine (Clara Yuki Sano e Pedro Tonini Rosenberg Schneider)
  32. Design Patterns: Métodos importantes utilizados no mundo do desenvolvimento (Antônio Fernando Cruz e Bruno Stephan)
  33. Programação funcional em Kotlin (Marcelo Machado Lage e Otávio de Oliveira Silva)
  34. Padrões de projeto em Aprendizado de Máquina: representando palavras e a intuição por trás dos Embeddings. (Lucas Sobrinho e Luiza Soezima)
  35. Documentação e Doxygen (Fernando Gouveia Lima e Lucas Francesco Lima Gesteira)
  36. Múltiplas ferramentas para auxiliar na construção de uma interface mais acessível e convidativa (Mariana Tiemi Silva Misu e Odair Gonçalves de Oliveira)
  37. WebAssembly com C++ (Pedro Simões e Rafael Sesoko)
  NODES
todo 1