Repo برنامه های نمونه 1000 قطعه کد را جشن می گیرد

سال 2025 است، و ما سال را با اخبار بسیار خوبی آغاز می کنیم! مخزن Sample Programs به 1000 قطعه کد رسیده است. بیایید در مورد آنها صحبت کنیم.
فهرست مطالب
تاریخچه مختصری از مخزن
من یک مخزن به نام Sample Programs نگهداری می کنم که برای اولین بار به عنوان یک چالش 100 روزه کد در سال 2018 شروع شد. در آن زمان، خودم را به چالش کشیدم تا برنامه Hello World را به هر تعداد زبان برنامه نویسی بنویسم و حتی آن را به یک سری در این زمینه تبدیل کردم. سایت
در طول سال ها، مخزن به طور چشمگیری تکامل یافته است. به عنوان مثال، یکی از اولین تغییرات اضافه شدن انواع مختلف برنامه ها بود. اگر درست به خاطر بیاورم، «رشته معکوس» و سپس «بازی زندگی» را اضافه کردم، که دومی دیگر بخشی از مخزن نیست.
تقریباً در همان زمان، من شروع به تبلیغ مخزن در dev.to کردم تا ببینم آیا میتوانم مشارکتکنندهای داشته باشم یا خیر. در مراحل اولیه، مشارکت بسیار آسان بود زیرا بسیاری از زبانهای محبوب، مانند جاوا اسکریپت و C، به مشارکتکنندگان نیاز داشتند.
سپس، Hacktoberfest را کشف کردم، که به سرعت به راه اصلی من برای کمک گرفتن در مخزن تبدیل شد. با ایجاد مشکلاتی که حفرههای خاصی را در مخزن مورد هدف قرار میدهند، مردم سریعاً به سراغ آنها رفتند. طولی نکشید که شروع به جذب چند همکار تکراری کردم.
در نهایت، مخزن آنقدر محبوب شد که مردم شروع به کمک به گسترش آن به روشهای جدید و جالب کردند. به عنوان مثال، ما یک سایت مستندسازی ایجاد کردیم که تمام برنامههای موجود در مخزن را به نمایش میگذارد و حتی در صورت نیاز از اسناد پشتیبانی میکند. به همین ترتیب، برخی از افراد علاقه مند بودند تا اطمینان حاصل کنند که همه برنامه های یک نوع خاص یکسان رفتار می کنند. در نتیجه، glotter ایجاد شد تا به ما کمک کند همه برنامه ها را آزمایش کنیم.
از ابتدا، چیزهای زیادی در مورد مخزن تغییر کرده است. از امروز، 37 نوع برنامه مختلف (که به آنها پروژه می گوییم) وجود دارد که می توانند در مخزن پیاده سازی شوند که همه آنها به طور خودکار تست می شوند. این کاملاً تغییری نسبت به چالش اصلی “Hello World in Every Language” دارد. علاوه بر این، مخزن 154 زبان برنامه نویسی را جمع آوری کرده است که از این تعداد 153 زبان آزمایش شده است.
علاوه بر همه اینها، مخزن از تعداد زیادی اتوماسیون پشتیبانی می کند. به عنوان مثال، آزمایش از آن زمان به glotter2 ارتقا یافته است. علاوه بر این، همه زبانها دارای README هستند که بهطور خودکار تولید میشوند تا اطلاعاتی درباره برنامههای مورد نیاز در اختیار خوانندگان قرار دهند. من مطمئن هستم که در این مرحله حتی چیزهای بیشتری وجود دارد که ذهن من را درگیر کرده است.
شاید از همه جالبتر، مخزن فقط به 1000 برنامه رسید بعد از حدود 7 سال کار! در ادامه این مقاله، در مورد آن نقطه عطف بزرگ صحبت خواهیم کرد.
1000 تفکیک برنامه
هنگامی که مخزن Sample Programs را در نظر می گیرید، مطالعه موردی جالبی است که کدام زبان ها محبوب هستند و کدام زبان ها به نوعی پیروان فرقه دارند. این را می گویم زیرا بسیاری از زبان های محبوب کامل هستند (یعنی برنامه ای برای تمام 37 پروژه دارند) یا تقریباً کامل هستند، با این حال برخی از زبان های مبهم تری در یک قایق مشابه وجود دارد. منظورم را به شما نشان خواهم داد.
در اینجا چند زبان وجود دارد که انتظار دارید حداقل بر اساس آخرین گزارش سالانه GitHub از برترین زبان های برنامه نویسی، مشارکت کنندگان داشته باشند:
- C (26 قطعه کد)
- C# (29 قطعه کد)
- C++ (27 قطعه کد)
- برو (29 قطعه کد)
- جاوا (26 قطعه کد)
- جاوا اسکریپت (30 قطعه کد)
- PHP (37 قطعه کد)
- پایتون (37 قطعه کد)
- TypeScript (23 قطعه کد)
با این حال، بسیاری از زبانها وجود دارند که در بین 10 زبان برتر قرار نمیگیرند که به وضوح مورد علاقه برخی هستند (یا حداقل آنقدر جالب هستند که ارزش مشارکت را داشته باشند):
- ALGOL68 (37 قطعه کد)
- گوشت گاو (37 قطعه کد)
- Commodore Basic (37 قطعه کد)
- سرخوشی (37 قطعه کد)
- Haskell (20 قطعه کد)
- جولیا (14 قطعه کد)
- کاتلین (19 قطعه کد)
- Lua (13 قطعه کد)
- Mathematica (26 قطعه کد)
- اکتاو (14 قطعه کد)
- پرل (18 قطعه کد)
- R (10 قطعه کد)
- Rust (37 قطعه کد)
- اسکالا (11 قطعه کد)
و با این حال، هنوز برخی از زبانهای محبوب وجود دارند که مشارکت ندارند:
- Objective-C (11 قطعه کد)
- روبی (17 قطعه کد)
علاوه بر این، GitHub پرکاربردترین زبانها را در یک مخزن ردیابی میکند، که به نظر من بر اساس خطوط کد است. در مورد ما، برترین زبانها عبارتند از:
- پایه: 11.7٪
- گوشت گاو: 9.6٪
- زنگ زدگی: 7.0%
- PHP: 6.7%
- ریاضی: 5.0%
- پایتون: 3.7٪
- سایر موارد: 55.3٪
آمارهای دیگری نیز وجود دارد که احتمالاً میتوانم آنها را پیدا کنم، مانند پروژههای محبوبی که باید اجرا شوند، اما من آنها را کاملاً در دسترس ندارم. شاید زمانی که 2000 قطعه کد را وارد کنیم، چیز دقیق تری ارائه کنم.
نگاه کردن به جلو
برای من واقعاً جالب است که فکر کنم مخزنی که برای به چالش کشیدن خودم جمع آوری کرده ام به چیزی بسیار بزرگتر از خودم تبدیل شده است. این روزها، من واقعاً برای حفظ مخزن کار نمی کنم. در عوض، تعداد زیادی از افراد فوقالعاده وجود دارند که در طول سالها، اساساً مخزن را در محل من حفظ کردهاند. این افراد شامل موارد زیر هستند اما محدود به آنها نیستند:
اگر مایلید که این مخزن همچنان در حال رشد باشد، من شما را تشویق میکنم که وارد Discord شوید تا ببینید از چه راههایی میتوانید کمک کنید. مدتی است که به dev.to پست ارسال نکردهام، اما این پلتفرم را دارم که باید از جایی که امروز مخزن است تشکر کنم. در نتیجه، اگر در حال خواندن این پست در آنجا هستید، از شما برای ادامه ایجاد یک جامعه فناوری مثبت متشکریم.
با این گفته، من می خواهم این یکی را جمع بندی کنم. مثل همیشه، اگر این مقاله را دوست داشتید، مطمئناً چندین مقاله دیگر نیز وجود دارد:
به همین ترتیب، میتوانید با بررسی فهرست راههای رشد سایت من، از The Renegade Coder پشتیبانی کنید. در آنجا پیوندهایی به Discord، Patreon و Newsletter خواهید یافت. در غیر این صورت، مراقب باشید و مجدداً از همه حمایتها سپاسگزاریم!