You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Data-Science-For-Beginners/translations/km/CONTRIBUTING.md

21 KiB

ការរួមចំណែកក្នុង Data Science សម្រាប់អ្នកចាប់ផ្ដើម

សូមអរគុណសម្រាប់ការចាប់អារម្មណ៍របស់អ្នកក្នុងការរួមចំណែកទៅកាន់វគ្គសិក្សា Data Science សម្រាប់អ្នកចាប់ផ្ដើម! យើងសូមស្វាគមន៍ការរួមចំណែកពីសហគមន៍។

តារាងមាតិកា

វិន័យអំពើ

គម្រោងនេះបានអនុម័ត កូដវិន័យប្រើប្រាស់មូលដ្ឋានមើលដោយ Microsoft។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើល សំណួរដែលសួរញឹកញាប់អំពីកូដវិន័យ
ឬទាក់ទង opencode@microsoft.com សម្រាប់សំណួរឬមតិយោបល់បន្ថែម។

តើខ្ញុំអាចរួមចំណែកបានយ៉ាងដូចម្តេច?

ការរាយការណ៍បញ្ហា

មុនបង្កើតរបាយការណ៍កំហុស សូមពិនិត្យមើលបញ្ហាជាប់ទាក់ទងដែលមានស្រាប់ដើម្បីជៀសវាងការបំលែងដង។ ពេលអ្នកបង្កើតរបាយការណ៍កំហុស សូមបញ្ចូលព័ត៌មានលម្អិតច្រើនបំផុតដែលអាចធ្វើទៅបាន៖

  • ប្រើចំណងជើងច្បាស់លាស់ និងពិពណ៌នាបញ្ជាក់
  • ពិពណ៌នាជំហានច្បាស់លាស់ដើម្បីធ្វើឲ្យបញ្ហាឡើងវិញ
  • ផ្តល់ឧទាហរណ៍ច្បាស់លាស់ (កូដនិងរូបភាពបង្ហាញ)
  • ពិពណ៌នាពីអាកប្បកិរិយាដែលអ្នកបានសង្កេត និងអ្វីដែលអ្នករំពឹងទុក
  • បញ្ចូលព័ត៌មានបរិបទរបស់អ្នក (ប្រព័ន្ធប្រតិបត្តិការ, កំណែ Python, កម្មវិធីរុករក)

ផ្តល់យោបល់បន្ថែម

យោបល់បន្ថែមសូមស្វាគមន៍! ពេលផ្តល់យោបល់:

  • ប្រើចំណងជើងច្បាស់លាស់ និងពិពណ៌នាបញ្ជាក់
  • ផ្តល់ពិពណ៌នាពីការកែលម្អដែលអ្នកស្នើសុំ
  • ពន្យល់មូលហេតុដែលការកែប្រែនេះមានប្រយោជន៍
  • រាយបញ្ជីលក្ខណៈសម្បត្តិដូចគ្នានៅក្នុងគម្រោងផ្សេងទៀត ប្រសិនបើមាន

រួមចំណែកក្នុងឯកសារយោង

ការកែលម្អឯកសារយោងគឺតែងតែទទួលស្គាល់:

  • ជួសជុលកំហុសអក្ខរកម្ម និងវេយ្យាករណ៍
  • ធ្វើឲ្យការពន្យល់មានភាពច្បាស់ផងដែរ
  • បន្ថែមឯកសារយោងដែលខ្វះ
  • ធ្វើឲ្យព័ត៌មានអាប់ដេតឲ្យទាន់សម័យ
  • បន្ថែមឧទាហរណ៍ ឬករណីប្រើប្រាស់

រួមចំណែកក្នុងកូដ

យើងសូមស្វាគមន៍ការរួមចំណែកកូដរួមមាន៖

  • មេរៀន ឬលំហាត់ថ្មីៗ
  • ជួសជុលកំហុស
  • កែលម្អសៀវភៅតំណភ្ជាប់ដែលមានស្រាប់
  • ដាតាដុំ ឬឧទាហរណ៍ថ្មីៗ
  • កែលម្អកម្មវិធីសំណួរ

ការចាប់ផ្ដើម

ការត្រូវមានមុន

មុនរួមចំណែក សូមធ្វើការ:

  1. មានគណនី GitHub
  2. តំឡើង Git នៅលើប្រព័ន្ធរបស់អ្នក
  3. តំឡើង Python 3.7+ និង Jupyter
  4. តំឡើង Node.js និង npm (សម្រាប់ការរួមចំណែកកម្មវិធីសំណួរ)
  5. របស់ភ្ជាប់ជាមួយរចនាសម្ព័ន្ធវគ្គសិក្សា

មើល INSTALLATION.md សម្រាប់ការណែនាំបំផុត។

Fork និង Clone

  1. Fork ឃ្លាំងទិន្នន័យ នៅលើ GitHub
  2. Clone Fork របស់អ្នក មកលើកុំព្យូទ័រ
    git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git
    cd Data-Science-For-Beginners
    
  3. បន្ថែម upstream remote
    git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
    

បង្កើតសាខាថ្មី

បង្កើតសាខាថ្មីសម្រាប់ការងាររបស់អ្នក៖

git checkout -b feature/your-feature-name
# ឬ
git checkout -b fix/your-bug-fix

បទបញ្ជាសម្រាប់ឈ្មោះសាខា៖

  • feature/ - លក្ខណៈសម្បត្តិ ឬមេរៀនថ្មី
  • fix/ - ជួសជុលកំហុស
  • docs/ - ការផ្លាស់ប្តូរឯកសារ
  • refactor/ - ការផ្លាស់ប្តូរកូដ

មគ្គុទេសក៍ការរួមចំណែក

សម្រាប់មាតិកាមេរៀន

ពេលរួមចំណែកឬកែលម្អមេរៀនដែលមានស្រាប់៖

  1. អនុវត្តរចនាសម្ព័ន្ធដែលមានស្រាប់

    • README.md ជាមួយមាតិកាមេរៀន
    • សៀវភៅ Jupyter ជាមួយលំហាត់
    • ការបែងចែក (បើមាន)
    • តំណភ្ជាប់ទៅការសាកល្បងមុន និងក្រោយ
  2. រួមបញ្ចូលធាតុទាំងនេះ

    • គោលបំណងរៀនដែលច្បាស់
    • ពិពណ៌នាដំណាក់កាលជាដំណាក់កាល
    • ឧទាហរណ៍កូដជាសេចក្ដីយល់ឃើញ
    • លំហាត់សម្រាប់អនុវត្ត
    • តំណភ្ជាប់ទៅធនធានបន្ថែម
  3. ធានាការចូលដំណើរការ

    • ប្រើភាសាដែលធម្មតា និងច្បាស់
    • បញ្ចូលអត្ថបទ alt សម្រាប់រូបភាព
    • រួមបញ្ចូលចំណាំកូដ
    • អនុវត្តចំពោះលក្ខណៈរៀនដ៏ខុសគ្នា

សម្រាប់សៀវភៅ Jupyter

  1. សម្អាតចេញពីលទ្ធផលទាំងអស់ មុនពេលប្តូរ

    jupyter nbconvert --clear-output --inplace notebook.ipynb
    
  2. រួមបញ្ចូលផ្នែក markdown ជាមួយពិពណ៌នា

  3. ប្រើរចនាបថស៊ីជម្រៅកំណត់

    # នាំចូលបណ្ណាល័យនៅខាងលើ
    import pandas as pd
    import numpy as np
    import matplotlib.pyplot as plt
    
    # ប្រើឈ្មោះអថេរដែលមានន័យ
    # បន្ថែមកំណត់ចំណាំសម្រាប់ប្រតិបត្តិការដ៏ពិបាក
    # តាមដានមីស្តង់រចនាបថ PEP 8
    
  4. សាកល្បងសៀវភៅរបស់អ្នកយ៉ាងពេញលេញ មុនពេលដាក់ស្នើ

សម្រាប់កូដ Python

អនុវត្តតាមមគ្គុទេសក៍រចនាបថ PEP 8

# ប៉ាត់ប៉ូលល្អ
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)

សម្រាប់ការរួមចំណែកកម្មវិធីសំណួរ

ពេលកែលម្អកម្មវិធីសំណួរ៖

  1. សាកល្បងបណ្ដាច់មូលដ្ឋាន

    cd quiz-app
    npm install
    npm run serve
    
  2. បើកដំណើរការ linter

    npm run lint
    
  3. សាងសង់ដោយជោគជ័យ

    npm run build
    
  4. អនុវត្តមាគ៌ារចនាបថ Vue.js និងគំរូដែលមានស្រាប់

សម្រាប់ការបកប្រែ

ពេលបន្ថែម ឬកែលម្អការបកប្រែ៖

  1. អនុវត្តរចនាសម្ព័ន្ធក្នុងថត translations/
  2. ប្រើកូដភាសាជាឈ្មោះថត (ឧ. fr សម្រាប់ភាសាបារាំង)
  3. រក្សារចនាសម្ព័ន្ធឯកសារដូចជាភាសាអង់គ្លេស
  4. បច្ចុប្បន្នភាពតំណភ្ជាប់ជាមួយប៉ារ៉ាម៉ែត្រភាសា៖ ?loc=fr
  5. សាកល្បងតំណទាំងអស់ និងរចនាបថ

ដំណើរការជូនពរ Pull Request

មុនបញ្ជូន

  1. ធ្វើឲ្យសាខារបស់អ្នកទាន់សម័យជាមួយការផ្លាស់ប្តូរទំនើបបំផុត

    git fetch upstream
    git rebase upstream/main
    
  2. សាកល្បងការផ្លាស់ប្តូររបស់អ្នក

    • បើកទស្សនាវិជ្ជាបានបង្កើតបានទាំងឡាយ
    • សាកល្បងកម្មវិធីសំណួរចំពោះការកែប្រែ
    • ផ្ទៀងផ្ទាត់តំណទាំងអស់
    • ពិនិត្យកំហុសសរសេរពាក្យ និងវេយ្យាករណ៍
  3. Commit ការផ្លាស់ប្តូររបស់អ្នក

    git add .
    git commit -m "Brief description of changes"
    

    សរសេរពាក្យ commit ឲ្យច្បាស់៖

    • ប្រើសព្ទវេលាបច្ចុប្បន្ន ("Add feature" មិនមែន "Added feature")
    • ប្រើបំពានបរិបទ ("Move cursor to..." មិនមែន "Moves cursor to...")
    • កំណត់បន្ទាត់ទីមួយមិនឲ្យលើស 72 តួអក្សរ
    • ឧបករណ៍បញ្ហា និង pull requests ដែលពាក់ព័ន្ធ
  4. បញ្ចូនទៅ fork របស់អ្នក

    git push origin feature/your-feature-name
    

ការបង្កើត Pull Request

  1. ទៅកាន់ repository
  2. ចុច "Pull requests" → "New pull request"
  3. ចុច "compare across forks"
  4. ជ្រើស fork និងសាខារបស់អ្នក
  5. ចុច "Create pull request"

ទ្រង់ទ្រាយចំណងជើង PR

ប្រើចំណងជើងច្បាស់លាស់ តាមទ្រង់ទ្រាយដូចខាងក្រោម៖

[Component] Brief description

ឧទាហរណ៍៖

  • [Lesson 7] ជួសជុលកំហុសនាំចូលសៀវភៅ Python
  • [Quiz App] បន្ថែមការបកប្រែ ភាសាអាល្លឺម៉ង់
  • [Docs] ថ្មីសម័យ README ជាមួយការទាមទារថ្មីៗ
  • [Fix] កែប្រែផ្លូវទិន្នន័យនៅ មេរៀនបង្ហាញទិន្នន័យ

ការពិពណ៌នាប្រកាស PR

រួមបញ្ចូលក្នុងការពិពណ៌នាប្រកាស PR របស់អ្នក៖

  • អ្វី៖ តើអ្នកបានផ្លាស់ប្តូរអ្វី?
  • ហេតុអ្វី៖ ហេតុអ្វីការផ្លាស់ប្តូរនេះចាំបាច់?
  • របៀប៖ តើធ្វើការផ្លាស់ប្តូរយ៉ាងដូចម្តេច?
  • ការសាកល្បង៖ តើអ្នកបានសាកល្បងការផ្លាស់ប្តូរដូចម្តេច?
  • រូបថតអេក្រង់៖ បញ្ចូលរូបថតអេក្រង់សម្រាប់ការផ្លាស់ប្តូរក្នុងចក្ខុវិស័យ
  • បញ្ហាដែលពាក់ព័ន្ធ៖ តំណបញ្ហាដែលពាក់ព័ន្ធ (ឧ. "Fixes #123")

ដំណើរការត្រួតពិនិត្យ

  1. ការត្រួតពិនិត្យស្វ័យប្រវត្តិ នឹងដំណើរការលេី PR របស់អ្នក
  2. អ្នកថែទាំនឹងពិនិត្យការរួមចំណែករបស់អ្នក
  3. ដោះស្រាយមតិយោបល់ ដោយបង្កើត commit បន្ថែម
  4. ពេលទទួលស្គាល់ ហើយអ្នកថែទាំនឹងបញ្ចូល PR របស់អ្នក

បន្ទាប់ពី PR របស់អ្នកត្រូវបានបញ្ចូល

  1. លុបសាខាររបស់អ្នក៖

    git branch -d feature/your-feature-name
    git push origin --delete feature/your-feature-name
    
  2. ផ្ទុះសាខា fork របស់អ្នក៖

    git checkout main
    git pull upstream main
    git push origin main
    

មគ្គុទេសក៍រចនាបថ

Markdown

  • ប្រើកម្រិតជំពូកយ៉ាងរឹងមាំ
  • រក្សាបន្ទាត់ទទេ រវាងផ្នែក
  • ប្រើទ្រង់ទ្រាយកូដជាមួយនៃភាសាបញ្ជាក់៖
    ```python
    import pandas as pd
    ```
    
  • បន្ថែមអត្ថបទ alt ទៅរូបភាព៖ ![Alt text](../../translated_images/km/image.4ee84a82b5e4c9e6.webp)
  • រក្សាប្រវែងបន្ទាត់សមរម្យ (ប្រហែល ៨០-១០០ តួអក្សរ)

Python

  • អនុវត្តមគ្គុទេសក៍រចនាបថ PEP 8
  • ប្រើឈ្មោះផ្ទុកមានន័យ
  • បន្ថែម docstrings ទៅមុខងារ
  • រួមបញ្ចូលសញ្ញាប្រភេទពេលដែលសមស្រប៖
    def process_data(df: pd.DataFrame) -> pd.DataFrame:
        """Process the input dataframe."""
        return df
    

JavaScript/Vue.js

  • អនុវត្តមគ្គុទេសក៍រចនាបថ Vue.js 2
  • ប្រើការកំណត់ ESLint ដែលបានផ្តល់
  • សរសេរតំបន់មេធ្វើបានច្រើន និងអាចប្រើឡើងវិញ
  • បន្ថែមចំណាំសម្រាប់តុល្យភាពស្មុគស្មាញ

ការរៀបចំឯកសារ

  • រក្សាឯកសារដែលពាក់ព័ន្ធជាក្រុម
  • ប្រើឈ្មោះឯកសារដែលពិពណ៌នា
  • អនុវត្តរចនាសម្ព័ន្ធថតដែលមានស្រាប់
  • អត់ commit ឯកសារដែលមិនចាំបាច់ (.DS_Store, .pyc, node_modules, ល។)

សន្ធិសញ្ញាប័ណ្ណអ្នករួមចំណែក

គម្រោងនេះស្វាគមន៍ការរួមចំណែក និងយោបល់។ ការរួមចំណែកច្រើនត្រូវការអ្នកព្រមព្រៀងទៅលើ សន្ធិសញ្ញាប័ណ្ណអ្នករួមចំណែក (CLA) ដែលថ្លែងថាអ្នកមានសិទ្ធ និងពិតជាផ្តាច់សិទ្ធិឲ្យយើងប្រើប្រាស់ការរួមចំណែករបស់អ្នក។ សម្រាប់ព័ត៌មានលម្អិត ចូលទៅ https://cla.microsoft.com

ពេលអ្នកបញ្ជូន pull request មួយ CLA-bot នឹងកំណត់ដោយស្វ័យប្រវត្តិថាតើអ្នកត្រូវការផ្តល់ CLA ឬអត់ និងតភ្ជាប់ស្លាកត្រឹមត្រូវ (ឧ. ស្លាក, មតិ)។ សូមអនុវត្តតាមការណែនាំដែលបានផ្ដល់ដោយ bot។ អ្នកត្រូវតែធ្វើម្ដងតែតែមួយគត់ សម្រាប់គ្រប់ឃ្លាំងដែលប្រើ CLA របស់យើង។

មានសំណួរទៀត?

អរគុណ!

ការរួមចំណែករបស់អ្នកធ្វើឲ្យវគ្គសិក្សានេះកាន់តែល្អសម្រាប់មនុស្សគ្រប់រូប។ សូមអរគុណដែលបានចំណាយពេលក្នុងការរួមចំណែក!


ការបដិសេធ:
ឯកសារនេះត្រូវបានបម្រើប្រាស់ដោយសេវាកម្មបកប្រែ AI ដែលមានឈ្មោះ Co-op Translator។ ខណៈពេលដែលយើងខិតខំប្រឹងប្រែងដើម្បីភាពត្រឹមត្រូវ សូមយល់ដឹងថាការបកប្រែដោយស្វ័យប្រវត្តិអាចមានកំហុស ឬភាពមិនត្រឹមត្រូវមួយចំនួន។ ឯកសារដើមក្នុងភាសាមាតុភូមិគួរត្រូវបានយកទៅជាប្រភពចម្បង។ សម្រាប់ព័ត៌មានសំខាន់ៗ, គ្រាន់តែបកប្រែដោយអ្នកជំនាញមនុស្សត្រូវបានផ្តល់អនុសាសន៍។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំណាស់ ឬការបកប្រែខុសពីការប្រើប្រាស់ការបកប្រែនេះឡើយ។