هر تمرین میتواند رویکردهایی داشته باشد که روشهای مختلف حل آن تمرین را توصیف میکنند.
رویکرد
هر رویکرد باید بررسی کند که یک تمرین چگونه به شکلی خاص حل میشود.
- محتوای آن باید یکی از این دو باشد:
- بررسی یک رویکرد مرسوم
- بررسی یک رویکرد غیرمرسوم اما جالب
- با یک نمونهکد (کامل) شروع کنید
- در باقی سند، آزادانه از نمونهکد استفاده کنید
- با خیال راحت در موضوع عمیق شوید
- به منابع مفید (مثلاً مستندات) پیوند بدهید
- قطعهکد باید هستهی رویکرد را نشان دهد
- حداکثر ۸ خط میتوان استفاده کرد
اگر میخواهید رویکردهای مختلف را با هم مقایسه کنید، لطفاً یک مقاله بنویسید.
مرور رویکردها
- زمینهی مسئله را توضیح دهید
- نکات مهم (مثلاً دامهای رایج) را شرح دهید که برای همهی رویکردها صدق میکند
- دربارهی مرسومترین رویکردها بحث کنید
- هر رویکرد باید با قطعهکدی شروع شود که آن رویکرد را نشان میدهد
- محتوا را نسبتاً کلی نگه دارید
- اطلاعات جزئی باید در صفحهی مستقل رویکرد بیاید
- برای اطلاعات بیشتر به صفحهی مستقل رویکرد پیوند بدهید
- دربارهی چگونگی انتخاب میان رویکردها بحث کنید
- مزایا و معایب هرکدام چیست؟
- آیا برخی رویکردها برای موارد استفادهی خاص مناسبترند؟
نکات کلی
- در برخی زبانها، یک قطعه کد واحد را میتوان به شکلهای مختلف نوشت. اگر بخشی از این نحوهی نگارش فقط در نسخههای جدیدتر زبان در دسترس بوده باشد، بهتر است از نگارش «قدیمی» استفاده کنید. این کار احتمال درک کد توسط زبانآموزها را بیشتر میکند.
- نگارش جایگزین را میتوان در سند رویکرد نشان داد
- اگر زبان شما راهنمای سبک توصیهشدهای دارد، (تا حد امکان) از آن راهنماها پیروی کنید.
برای چه تمرینهایی رویکرد بنویسیم؟
بهطور کلی، تمرینهای عملی برای نوشتن رویکرد مناسبترند، چون معمولاً به چند روش حل میشوند.
برای تمرینهای مفهومی، بحث دربارهی رویکرد نمونه میتواند جالب باشد. مثلاً میتوانید نشان دهید مفهومی که آموزش داده میشود چطور نوشتن کدی خاص را آسانتر میکند.
فایلها
هر رویکرد باید دو فایل زیر را اضافه کند:
-
.approaches/<approach-slug>/content.md: توضیح رویکرد (به مستندات نگاه کنید)
-
.approaches/<approach-slug>/snippet.txt: قطعهکدی که رویکرد را نشان میدهد (به مستندات نگاه کنید)
سپس باید موارد زیر را اضافه یا بهروزرسانی کنید:
-
.approaches/config.json: فرادادهی رویکردها (به مستندات نگاه کنید)
پیکربندی پسوند قطعهکد
همچنین میتوانید بهجای پسوند پیشفرض .txt از یک پسوند سفارشی استفاده کنید، به این صورت که فیلد approaches.snippet_extension را در فایل config.json مسیر خود تنظیم کنید.
اگر تنظیم شده باشد، فایل قطعهکدی که باید اضافه کنید باید با نام .approaches/<approach-slug>/snippet.<approaches.snippet_extension> باشد.