
Thirty Seconds of Code: مجموعه اسکریپتهای کاربردی برای دولوپرهای JS
Thirty Seconds of Code کالکشنی (مجموعهای) از قطعه کدهای جاوااسکریپت است که ظرف مدت ۳۰ ثانیه یا حتی کمتر قادر به درک آنها خواهید بود. این قطعات کد تا جای ممکن سازماندهی و طبقهبندی شدهاند تا هر کدام به موضوع و مشکلی واحد بپردازند (این ریپازیتوری منبعی مناسب برای آن دسته از برنامهنویسان جاوااسکریپت است که دنبال عبور از سطح متوسط و ارتقاء مهارتهای خود هستند).
تمرینهای متعدد بر روی کدهایی که مشکلاتی ایزوله و خاص را مرتفع میکنند، باعث یادگیری سریعتر و عدم سردرگمی میشود و به نظر میرسد که Thirty Seconds of Code، یک ریپازیتوری کاربردی برای دولوپرهای جاوااسکریپت است که قصد عبور از سطح متوسط را دارند.
نیاز به توضیح نیست که یکی از مهمترین چالشهای یادگیری برنامهنویسی، ایجاد یک پروسهٔ مطالعاتی مستمر و پایدار با منابع آموزشی غنی است و این در حالی است که برنامهنویسهای مبتدی و متوسط بدون داشتن تمرینات مناسب برای به چالش کشیدن آموختههای خود، در محیط کاری دچار مشکلات زیادی میشوند.
همچنین بسیاری از دولوپرهای جوان دچار اشتباه متداولی میشوند بدین شکل که آنها با درک این موضوع که برای بهتر شدن در کدنویسی باید تمرین کرد و بهترین تمرین این است که از صفر پروژهای را بسازند، پروژههایی بیش از حد توان خود انتخاب میکنند، آن هم در حالی که هنوز از بسیاری جزئیات زبان برنامهنویسی، مفاهیم OOP (شیئگرایی) و الگوریتمهای متداول بیخبرند.
البته از بُعد دیگری هم میتوان به این مشکل نگاه کرد. در پروژههای بزرگ، تعداد موضوعات مرتبط که باید در آن واحد به آنها توجه داشت، بسیار زیاد است که این باعث میشود تا بسیاری از کدهایی که مینویسیم کار نکنند و یا همه چیز را به هم بزنند، بسیاری از جزئیات از دیدمان پنهان بمانند و از همه بدتر اینکه ممکن است دولوپر به این مدل نوشتن عادت کند و دلیل همهٔ اینها این است که ما بر روی یک مشکل واحد متمرکز نیستیم.
آشنایی بیشتر با مجموعهٔ آموزشی Thirty Seconds of Code
Thirty Seconds of Code مجموعهای آموزشی است که تقریباً تمام کدهای آن با استاندارد ES6 نوشته شدهاند. استایل و راهحلهای بهکار گرفته شده در برخی از کدها مبتکرانه است و اگر تجربهٔ کار با لایبرری Underscore را داشته باشید، استایل برخی از کدها برایتان آشنا خواهد بود (البته لازم به ذکر است که بر خلاف لایبرری Underscore، تعداد قابلتوجهی از کدهای موجود در این ریپازیتوری آماده برای استفاده در پروژه یا اصطلاحاً Production-ready نیستند و این یکی از دلایل اصلی تبدیل نشدن کدها به یک لایبرری و یا ماژول مستقل است).
البته خود این موضوع که برای استفاده از برخی کدها باید تغیرات مهمی (با توجه به نوع پروژه) انجام بدهیم، میتواند یک چالش هیجانانگیز، نفسگیر و در عین حال بسیار آموزنده باشد. در برخی از کدها، بیش از حد به استایل (Readability) اهمیت داده شده است و پرفورمنس فراموش شده است و بلعکس؛ اما در کل، Thirty Seconds of Code ریپازیتوری بسیار ارزشمندی است که کدهای فراوانی برای تمرین بر روی موضوعی خاص و ایزوله را در اختیار دولوپرهای زبان کاربردی JavaScript قرار میدهد. این پروژه تحت لایسنس MIT است اما به گفتهٔ دولوپر اصلی این ریپازیتوری:
ما خیلی در رعایت لایسنس MIT برای این پروژه وسواس به خرج نمیدیم و تمام هدف پروژه اینه که قطعه کدی که نیاز دارید رو استفاده کنید. به همین دلیل، شاید به لایسنس دیگری سوییچ کنیم.
هرچند که فعلاً لایبرری و ماژولی برای پروژه وجود ندارد، اما این امکان فراهم شده است تا از طریق یک پکیج (با استفاده از پکیج منیجر)، تمام کدها را دانلود کنید.