nbdev
عبارة عن منصة تطوير تعتمد على الكمبيوتر المحمول. ما عليك سوى كتابة دفاتر الملاحظات بعلامات خفيفة الوزن والحصول على وثائق واختبارات وتكامل مستمر وتغليف عالي الجودة مجانًا!
يجعل nbdev
تصحيح الأخطاء وإعادة بناء التعليمات البرمجية الخاصة بك أسهل بكثير من بيئات البرمجة التقليدية حيث أن لديك دائمًا كائنات حية في متناول يدك. يقوم nbdev
أيضًا بتعزيز أفضل ممارسات هندسة البرمجيات نظرًا لأن الاختبارات والوثائق تعتبر من الدرجة الأولى.
nbdev-index
)__all__
يعمل nbdev على أنظمة التشغيل macOS وLinux ومعظم أنظمة التشغيل على غرار Unix. إنه يعمل على Windows ضمن WSL، ولكن ليس ضمن cmd أو Powershell.
يمكنك تثبيت nbdev باستخدام النقطة:
pip install nbdev
… أو مع كوندا (أو مامبا):
conda install -c fastai nbdev
لاحظ أنه يجب تثبيت nbdev
في نفس بيئة Python التي تستخدمها لكل من Jupyter ومشروعك.
أفضل طريقة لتعلم كيفية استخدام nbdev هي إكمال الإرشادات المكتوبة أو الإرشادات التفصيلية بالفيديو:
وبدلاً من ذلك، هناك نسخة مختصرة من الفيديو التفصيلي مع أقسام الترميز التي تم تسريعها باستخدام مكتبة unsilence
Python - إنها أسرع بـ 27 دقيقة، ولكن متابعتها أصعب قليلاً.
يمكنك أيضًا تشغيل nbdev_help
من الوحدة الطرفية لرؤية القائمة الكاملة للأوامر المتاحة:
!n bdev_help
nbdev_bump_version Increment version in settings.ini by one
nbdev_changelog Create a CHANGELOG.md file from closed and labeled GitHub issues
nbdev_clean Clean all notebooks in `fname` to avoid merge conflicts
nbdev_conda Create a `meta.yaml` file ready to be built into a package, and optionally build and upload it
nbdev_create_config Create a config file.
nbdev_docs Create Quarto docs and README.md
nbdev_export Export notebooks in `path` to Python modules
nbdev_filter A notebook filter for Quarto
nbdev_fix Create working notebook from conflicted notebook `nbname`
nbdev_help Show help for all console scripts
nbdev_install Install Quarto and the current library
nbdev_install_hooks Install Jupyter and git hooks to automatically clean, trust, and fix merge conflicts in notebooks
nbdev_install_quarto Install latest Quarto on macOS or Linux, prints instructions for Windows
nbdev_merge Git merge driver for notebooks
nbdev_migrate Convert all markdown and notebook files in `path` from v1 to v2
nbdev_new Create an nbdev project.
nbdev_prepare Export, test, and clean notebooks, and render README if needed
nbdev_preview Preview docs locally
nbdev_proc_nbs Process notebooks in `path` for docs rendering
nbdev_pypi Create and upload Python package to PyPI
nbdev_readme Create README.md from readme_nb (index.ipynb by default)
nbdev_release_both Release both conda and PyPI packages
nbdev_release_gh Calls `nbdev_changelog`, lets you edit the result, then pushes to git and calls `nbdev_release_git`
nbdev_release_git Tag and create a release in GitHub for the current version
nbdev_requirements Writes a `requirements.txt` file to `directory` based on settings.ini.
nbdev_sidebar Create sidebar.yml
nbdev_test Test in parallel notebooks matching `path`, passing along `flags`
nbdev_trust Trust notebooks matching `fname`
nbdev_update Propagate change in modules matching `fname` to notebooks that created them
nbdev_update_license Allows you to update the license of your project.
ج: يجب ألا يكون لديك خلايا لم يتم تصديرها، وتحتوي على مزيج من عبارات import
بالإضافة إلى تعليمات برمجية أخرى. على سبيل المثال، لا تفعل ذلك في خلية واحدة:
import some_module
some_module . something ()
بدلًا من ذلك، قم بتقسيم هذا إلى خليتين، إحداهما تقوم import some_module
والأخرى تقوم باستيراد some_module.something()
.
والسبب في ذلك هو أنه عندما نقوم بإنشاء موقع ويب للتوثيق الخاص بك، فإننا نتأكد من أن جميع التوقيعات الخاصة بالوظائف التي تقوم بتوثيقها محدثة، عن طريق تشغيل عمليات الاستيراد والخلايا المصدرة ووظائف show_doc
في دفاتر ملاحظاتك. عند مزج عمليات الاستيراد مع تعليمات برمجية أخرى، سيتم تشغيل تلك التعليمات البرمجية الأخرى أيضًا، مما قد يتسبب في حدوث أخطاء (أو على الأقل تباطؤ) عند إنشاء موقع الويب الخاص بك.
ج: عند إعداد مشروعك الأول، سيحاول nbdev تنزيل Quarto وتثبيته تلقائيًا نيابةً عنك. هذا هو البرنامج الذي نستخدمه لإنشاء موقع التوثيق الخاص بك.
تتطلب عملية التثبيت القياسية لـ Quarto الوصول إلى الجذر، وبالتالي سيطلب nbdev كلمة مرور الجذر الخاصة بك أثناء التثبيت. بالنسبة لمعظم الأشخاص، سيعمل هذا بشكل جيد وسيتم التعامل مع كل شيء تلقائيًا - إذا كان الأمر كذلك، فيمكنك تخطي بقية هذا القسم، الذي يتحدث عن التثبيت دون الوصول إلى الجذر.
إذا كنت بحاجة إلى تثبيت Quarto دون الوصول إلى الجذر على نظام التشغيل Linux، cd
أولاً إلى المكان الذي تريد تخزينه فيه، ثم قم بتنزيل Quarto، واكتب:
dpkg -x quarto * .deb .
mv opt/quarto ./
rmdir opt
mkdir -p ~ /.local/bin
ln -s " $( pwd ) " /quarto/bin/quarto ~ /.local/bin
لاستخدام هذا الإصدار غير الجذري من Quarto، ستحتاج إلى ~/.local/bin
في متغير بيئة PATH
الخاص بك. (بدلاً من ذلك، قم بتغيير خطوة ln -s
لوضع الرابط الرمزي في مكان آخر في المسار الخاص بك.)
ج: شاهد هذا الفيديو. لا تقلق، ما زلنا نحصل على هذا أيضًا، على الرغم من استخدامنا nbdev
لمجموعة واسعة من مشاريع البرامج "الخطيرة جدًا" على مدار السنوات الثلاث الماضية، بما في ذلك مكتبات التعلم العميق، وعملاء واجهة برمجة التطبيقات (API)، وملحقات لغة بايثون، وواجهات المستخدم الطرفية، والمزيد. !
إذا كنت تريد المساهمة في nbdev
، فتأكد من مراجعة إرشادات المساهمة. يلتزم هذا المشروع بقواعد سلوك Fastai. من خلال المشاركة، يتوقع منك الحفاظ على هذا الرمز. بشكل عام، نحن نسعى جاهدين للالتزام بأفضل الممارسات المقبولة عمومًا في تطوير البرمجيات مفتوحة المصدر.
تأكد من تثبيت خطافات git الخاصة بـ nbdev
عن طريق تشغيل nbdev_install_hooks
في المستودع المستنسخ.
حقوق الطبع والنشر © لعام 2019 فصاعدًا fast.ai, Inc. مرخصة بموجب ترخيص Apache، الإصدار 2.0 ("الترخيص")؛ لا يجوز لك استخدام ملفات هذا المشروع إلا وفقًا للترخيص. يتم توفير نسخة من الترخيص في ملف الترخيص الموجود في هذا المستودع.