Skip to content

Latest commit

 

History

History
83 lines (55 loc) · 3.62 KB

File metadata and controls

83 lines (55 loc) · 3.62 KB

Dev Guides

Questa cartella contiene guide pratiche sugli strumenti e le pratiche di sviluppo e amministrazione.

Sotto-cartelle

  • build-tools/ - Strumenti di build (Maven, Gradle, CMake, npm/Yarn/pnpm)
  • ci-cd/ - Continuous Integration e Deployment (GitHub Actions, GitLab CI)
  • containerization/ - Containerizzazione (Docker, Kubernetes)
  • databases/ - Database (MySQL, MariaDB, PostgreSQL)
  • debugging/ - Strumenti di debugging (Valgrind, Logging)
  • documentation/ - Documentazione e API (Doxygen, REST API, VSCode)
  • frameworks/ - Framework applicativi (Spring Boot)
  • os/ - Sistemi operativi e shell (Linux, Bash, SSH, Regex)
  • parallel-computing/ - Programmazione parallela (MPI)
  • testing/ - Framework di test (JUnit, pytest)
  • version-control/ - Controllo versione (Git, Git Hooks)

Build Tools

  • Maven: guida rapida a Maven, struttura del progetto e gestione dipendenze/plugin.
  • Gradle: build tool moderno per Java/Kotlin con DSL Groovy e Kotlin.
  • CMake: sistema di build cross-platform per progetti C/C++.
  • Makefile: automazione build con GNU Make.
  • npm / Yarn / pnpm: package manager JavaScript/Node.js a confronto.

CI/CD

  • GitHub Actions: automazione workflow CI/CD integrata in GitHub.
  • GitLab CI: pipeline CI/CD con GitLab, stages e jobs.

Containerization

  • Docker: comandi e esempi per gestire immagini, container, volumi, reti e Compose.
  • Kubernetes: orchestrazione container, deployment e gestione cluster.

Databases

  • MySQL - MariaDB: comandi essenziali, backup e gestione per MySQL/MariaDB.
  • PostgreSQL: database relazionale avanzato, query e amministrazione.

Debugging

  • Valgrind: uso di Valgrind per trovare memory leak e profilare l'applicazione.
  • Logging: best practices di logging in Python, Java, JavaScript e Go.

Documentation

  • Doxygen: introduzione a Doxygen e generazione automatica della documentazione dal codice.
  • REST API Design: best practices per progettare API RESTful.
  • VSCode: configurazione, shortcuts e estensioni per Visual Studio Code.

Frameworks

  • Spring Boot: framework Java per applicazioni enterprise-ready con Spring.

OS / Shell

  • Linux: comandi Linux utili, setup WSL e consigli per sviluppo su Linux/WSL.
  • Bash Scripting: automazione con script Bash, variabili, cicli e funzioni.
  • Python Environments: gestione ambienti virtuali con venv, conda e Poetry.
  • SSH: connessioni remote sicure, chiavi, tunneling e configurazione.
  • Regex: espressioni regolari per pattern matching e text processing.

Parallel Computing

  • MPI: introduzione a MPI per programmazione parallela e esempi di uso.

Testing

  • JUnit: guida rapida a JUnit 5 e best practice per i test.
  • pytest: framework di testing Python con fixtures, parametrizzazione e coverage.

Version Control

  • Git: elenco dei comandi Git piu utili per workflow, branching e ripristino.
  • Git Hooks: automazione con pre-commit, commit-msg e pre-push hooks.

Aggiungi nuove guide seguendo il TEMPLATE.