Python, science des données et ingénierie logicielle

Principes d’ingénierie logicielle en Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Diagramme de Venn de la science des données

Principes d’ingénierie logicielle en Python

Diagramme de Venn de la science des données

Principes d’ingénierie logicielle en Python

Diagramme de Venn de la science des données

Principes d’ingénierie logicielle en Python

Diagramme de Venn de la science des données

Principes d’ingénierie logicielle en Python

Diagramme de Venn de la science des données

Principes d’ingénierie logicielle en Python

Concepts d'ingénierie logicielle

  • Modularité
  • Documentation
  • Tests
  • Contrôle de version & Git
Principes d’ingénierie logicielle en Python

Avantages de la modularité

  • Améliorer la lisibilité
  • Améliorer la maintenabilité
  • Résoudre les problèmes une seule fois

Pièces de puzzle modulaires

Principes d’ingénierie logicielle en Python

Modularité en Python

# Importer le PACKAGE pandas
import pandas as pd

# Créer des données d'exemple
data = {'x': [1, 2, 3, 4], 
        'y': [20.1, 62.5, 34.8, 42.7]}

# Créer un objet de CLASS dataframe
df = pd.DataFrame(data)

# Utiliser la METHOD plot
df.plot('x', 'y')
Principes d’ingénierie logicielle en Python

Avantages de la documentation

  • Montrer aux utilisateurs comment utiliser votre projet
  • Éviter la confusion chez vos collaborateurs
  • Éviter la frustration future

Utilisateur confus

Principes d’ingénierie logicielle en Python

Avantages des tests automatisés

  • Gagner du temps par rapport aux tests manuels
  • Trouver et corriger plus de bugs
  • Exécuter des tests à tout moment/partout

Écraser les bugs avec Pytest

Principes d’ingénierie logicielle en Python

Révisons

Principes d’ingénierie logicielle en Python

Preparing Video For Download...