11 KiB
Współtworzenie Data Science dla Początkujących
Dziękujemy za zainteresowanie współtworzeniem programu nauczania Data Science dla Początkujących! Zapraszamy do współpracy całą społeczność.
Spis Treści
- Kodeks Postępowania
- Jak Mogę Współtworzyć?
- Pierwsze Kroki
- Zasady Współtworzenia
- Proces Pull Request
- Zasady Stylu
- Umowa Licencyjna Współtwórcy
Kodeks Postępowania
Ten projekt przyjął Kodeks Postępowania Microsoft Open Source.
Więcej informacji znajdziesz w FAQ dotyczących Kodeksu Postępowania
lub skontaktuj się z opencode@microsoft.com, jeśli masz dodatkowe pytania lub uwagi.
Jak Mogę Współtworzyć?
Zgłaszanie Błędów
Przed zgłoszeniem błędu sprawdź istniejące zgłoszenia, aby uniknąć duplikatów. Podczas zgłaszania błędu podaj jak najwięcej szczegółów:
- Użyj jasnego i opisowego tytułu
- Opisz dokładne kroki prowadzące do wystąpienia problemu
- Podaj konkretne przykłady (fragmenty kodu, zrzuty ekranu)
- Opisz zaobserwowane zachowanie i oczekiwane rezultaty
- Podaj szczegóły dotyczące środowiska (system operacyjny, wersja Pythona, przeglądarka)
Proponowanie Ulepszeń
Sugestie dotyczące ulepszeń są mile widziane! Podczas ich zgłaszania:
- Użyj jasnego i opisowego tytułu
- Podaj szczegółowy opis proponowanego ulepszenia
- Wyjaśnij, dlaczego to ulepszenie byłoby przydatne
- Wymień podobne funkcje w innych projektach, jeśli to możliwe
Współtworzenie Dokumentacji
Poprawki w dokumentacji są zawsze mile widziane:
- Popraw literówki i błędy gramatyczne
- Zwiększ przejrzystość wyjaśnień
- Dodaj brakującą dokumentację
- Zaktualizuj przestarzałe informacje
- Dodaj przykłady lub przypadki użycia
Współtworzenie Kodów
Zapraszamy do współtworzenia kodu, w tym:
- Nowych lekcji lub ćwiczeń
- Poprawek błędów
- Ulepszeń istniejących notebooków
- Nowych zestawów danych lub przykładów
- Ulepszeń aplikacji quizowej
Pierwsze Kroki
Wymagania Wstępne
Przed rozpoczęciem współtworzenia upewnij się, że masz:
- Konto GitHub
- Zainstalowany Git na swoim systemie
- Python 3.7+ i Jupyter zainstalowane
- Node.js i npm (do współtworzenia aplikacji quizowej)
- Znajomość struktury programu nauczania
Zobacz INSTALLATION.md dla szczegółowych instrukcji instalacji.
Fork i Klonowanie
-
Zrób fork repozytorium na GitHub
-
Sklonuj swój fork lokalnie:
git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git cd Data-Science-For-Beginners -
Dodaj upstream remote:
git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
Utwórz Gałąź
Utwórz nową gałąź dla swojej pracy:
git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fix
Konwencje nazewnictwa gałęzi:
feature/- Nowe funkcje lub lekcjefix/- Poprawki błędówdocs/- Zmiany w dokumentacjirefactor/- Refaktoryzacja kodu
Zasady Współtworzenia
Dla Treści Lekcji
Podczas współtworzenia lekcji lub modyfikowania istniejących:
-
Przestrzegaj istniejącej struktury:
- README.md z treścią lekcji
- Notebook Jupyter z ćwiczeniami
- Zadanie (jeśli dotyczy)
- Linki do quizów przed i po lekcji
-
Uwzględnij następujące elementy:
- Jasne cele nauczania
- Wyjaśnienia krok po kroku
- Przykłady kodu z komentarzami
- Ćwiczenia do praktyki
- Linki do dodatkowych zasobów
-
Zapewnij dostępność:
- Używaj jasnego, prostego języka
- Dodaj tekst alternatywny do obrazów
- Uwzględnij komentarze w kodzie
- Rozważ różne style uczenia się
Dla Notebooków Jupyter
-
Wyczyść wszystkie wyniki przed zatwierdzeniem:
jupyter nbconvert --clear-output --inplace notebook.ipynb -
Dodaj komórki markdown z wyjaśnieniami
-
Używaj spójnego formatowania:
# Import libraries at the top import pandas as pd import numpy as np import matplotlib.pyplot as plt # Use meaningful variable names # Add comments for complex operations # Follow PEP 8 style guidelines -
Przetestuj swój notebook w całości przed przesłaniem
Dla Kodów Pythona
Przestrzegaj zasad stylu PEP 8:
# Good practices
import pandas as pd
def calculate_mean(data):
"""Calculate the mean of a dataset.
Args:
data (list): List of numerical values
Returns:
float: Mean of the dataset
"""
return sum(data) / len(data)
Dla Współtworzenia Aplikacji Quizowej
Podczas modyfikowania aplikacji quizowej:
-
Przetestuj lokalnie:
cd quiz-app npm install npm run serve -
Uruchom linter:
npm run lint -
Zbuduj pomyślnie:
npm run build -
Przestrzegaj wytycznych stylu Vue.js i istniejących wzorców
Dla Tłumaczeń
Podczas dodawania lub aktualizowania tłumaczeń:
- Przestrzegaj struktury w folderze
translations/ - Używaj kodu języka jako nazwy folderu (np.
frdla francuskiego) - Zachowaj tę samą strukturę plików co wersja angielska
- Zaktualizuj linki do quizów, aby zawierały parametr języka:
?loc=fr - Przetestuj wszystkie linki i formatowanie
Proces Pull Request
Przed Przesłaniem
-
Zaktualizuj swoją gałąź o najnowsze zmiany:
git fetch upstream git rebase upstream/main -
Przetestuj swoje zmiany:
- Uruchom wszystkie zmodyfikowane notebooki
- Przetestuj aplikację quizową, jeśli została zmodyfikowana
- Zweryfikuj działanie wszystkich linków
- Sprawdź błędy ortograficzne i gramatyczne
-
Zatwierdź swoje zmiany:
git add . git commit -m "Brief description of changes"Pisz jasne komunikaty zatwierdzeń:
- Używaj czasu teraźniejszego ("Dodaj funkcję", a nie "Dodano funkcję")
- Używaj trybu rozkazującego ("Przenieś kursor do...", a nie "Przenosi kursor do...")
- Ogranicz pierwszą linię do 72 znaków
- Odnoś się do zgłoszeń i pull requestów, jeśli to istotne
-
Wypchnij do swojego forka:
git push origin feature/your-feature-name
Tworzenie Pull Request
- Przejdź do repozytorium
- Kliknij "Pull requests" → "New pull request"
- Kliknij "compare across forks"
- Wybierz swój fork i gałąź
- Kliknij "Create pull request"
Format Tytułu PR
Używaj jasnych, opisowych tytułów w następującym formacie:
[Component] Brief description
Przykłady:
[Lesson 7] Fix Python notebook import error[Quiz App] Add German translation[Docs] Update README with new prerequisites[Fix] Correct data path in visualization lesson
Opis PR
W opisie PR uwzględnij:
- Co: Jakie zmiany wprowadziłeś?
- Dlaczego: Dlaczego te zmiany są konieczne?
- Jak: Jak zaimplementowałeś zmiany?
- Testowanie: Jak przetestowałeś zmiany?
- Zrzuty ekranu: Dodaj zrzuty ekranu dla zmian wizualnych
- Powiązane Zgłoszenia: Podaj linki do powiązanych zgłoszeń (np. "Fixes #123")
Proces Przeglądu
- Automatyczne sprawdzenia zostaną uruchomione na Twoim PR
- Opiekunowie projektu przejrzą Twój wkład
- Odpowiedz na uwagi poprzez dodanie kolejnych zatwierdzeń
- Po zatwierdzeniu, opiekun projektu połączy Twój PR
Po Połączeniu Twojego PR
-
Usuń swoją gałąź:
git branch -d feature/your-feature-name git push origin --delete feature/your-feature-name -
Zaktualizuj swój fork:
git checkout main git pull upstream main git push origin main
Zasady Stylu
Markdown
-
Używaj spójnych poziomów nagłówków
-
Dodawaj puste linie między sekcjami
-
Używaj bloków kodu ze specyfikacją języka:
```python import pandas as pd ``` -
Dodawaj tekst alternatywny do obrazów:
 -
Zachowuj rozsądną długość linii (około 80-100 znaków)
Python
- Przestrzegaj wytycznych stylu PEP 8
- Używaj znaczących nazw zmiennych
- Dodawaj docstringi do funkcji
- Uwzględniaj wskazówki typów, jeśli to możliwe:
def process_data(df: pd.DataFrame) -> pd.DataFrame: """Process the input dataframe.""" return df
JavaScript/Vue.js
- Przestrzegaj wytycznych stylu Vue.js 2
- Używaj konfiguracji ESLint dostarczonej w projekcie
- Pisz modułowe, wielokrotnego użytku komponenty
- Dodawaj komentarze do złożonej logiki
Organizacja Plików
- Trzymaj powiązane pliki razem
- Używaj opisowych nazw plików
- Przestrzegaj istniejącej struktury katalogów
- Nie zatwierdzaj niepotrzebnych plików (.DS_Store, .pyc, node_modules, itp.)
Umowa Licencyjna Współtwórcy
Ten projekt zaprasza do współtworzenia i składania sugestii. Większość wkładów wymaga od Ciebie
zgody na Umowę Licencyjną Współtwórcy (CLA), która deklaruje, że masz prawo do
i faktycznie udzielasz nam prawa do korzystania z Twojego wkładu. Szczegóły znajdziesz na
https://cla.microsoft.com.
Podczas przesyłania pull requestu, bot CLA automatycznie określi, czy musisz
podpisać CLA i odpowiednio oznaczy PR (np. etykieta, komentarz). Wystarczy postępować zgodnie z
instrukcjami podanymi przez bota. Musisz to zrobić tylko raz dla wszystkich repozytoriów korzystających z naszego CLA.
Pytania?
- Sprawdź nasz Kanał Discord #data-science-for-beginners
- Dołącz do naszej społeczności Discord
- Przejrzyj istniejące zgłoszenia i pull requesty
Dziękujemy!
Twoje wkłady sprawiają, że ten program nauczania staje się lepszy dla wszystkich. Dziękujemy za poświęcony czas na współtworzenie!
Zastrzeżenie:
Ten dokument został przetłumaczony za pomocą usługi tłumaczenia AI Co-op Translator. Chociaż dokładamy wszelkich starań, aby tłumaczenie było precyzyjne, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za źródło autorytatywne. W przypadku informacji o kluczowym znaczeniu zaleca się skorzystanie z profesjonalnego tłumaczenia przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.