تسلط بر برنامهنویسی از طریق ساخت ابزارهای خودتان
فقط از APIها استفاده نکنید. ساخت خودِ ابزارها را شروع کنید.
اکثر توسعهدهندگان میدانند چگونه از فریمورکها و کتابخانهها استفاده کنند، اما تعداد کمی میدانند که آنها در لایههای زیرین چگونه کار میکنند. روش «ساختِ خودِ X» (build-your-own-x) این وضعیت را تغییر میدهد. شما تکنولوژیای را که هر روز استفاده میکنید انتخاب میکنید و نسخه سادهای از آن را بازسازی میکنید.
این رویکرد از چندین جهت به رشد شما کمک میکند:
- درک عمیق: ساختارهای داده و الگوریتمهای پشت آن ابزار را یاد میگیرید.
- حل مسئله بهتر: سیستمهای پیچیده را به بخشهای کوچک تقسیم میکنید.
- آزادی در انتخاب زبان: مفاهیمی را یاد میگیرید که در هر زبان برنامهنویسی کاربرد دارند.
- دیباگ کردن بهتر: چون خودتان آنها را ساختهاید، میدانید مشکل از کجاست.
- رزومه قویتر: کارفرمایان مهارتهای فنی عمیق شما را میبینند.
- انتخاب هوشمندانهتر ابزار: موازنه (trade-offs) بین ابزارهایی که انتخاب میکنید را درک میکنید.
چگونه بدون گیر کردن شروع کنیم:
یک پروژه کوچک انتخاب کنید. ابتدا سراغ ساخت یک سیستمعامل نروید. این موارد را امتحان کنید:
- یک HTTP server ساده
- یک ابزار خط فرمان مانند grep
- یک task manager ساده
- یک markdown parser
- یک ماشینحساب
چیزی را انتخاب کنید که از آن استفاده میکنید. وقتی پروژه برایتان اهمیت داشته باشد، انگیزه بالاست.
نسخه حداقلی را تعریف کنید. برای یک ویرایشگر متن، روی باز کردن، ویرایش و ذخیره فایلها تمرکز کنید. در ابتدا از ویژگیهای پیچیده مثل syntax highlighting صرفنظر کنید.
اصول اولیه را مطالعه کنید. مستندات رسمی را بخوانید یا به کدهای متنباز (open source) نگاه کنید. قبل از کدنویسی، اصول اصلی را بیابید.
مرحلهبهمرحله بسازید. سعی نکنید کل سیستم را یکباره بسازید. با یک تابع اصلی شروع کنید و بعداً موارد دیگر را اضافه کنید. همگام با پیشرفت کار، تستها را بنویسید.
زبانی را انتخاب کنید که میشناسید یا میخواهید یاد بگیرید. از آن برای تبدیل تئوری به عمل استفاده کنید.