برنامه نویسی | Teachify
11.8K subscribers
1.03K photos
420 videos
231 files
653 links
برای موفق شدن 🌱 با این عبارت خداحافظی کن: "باشه فردا"🍃


Admin: @Yousef_Vafaei
Download Telegram
✔️ 15 زبان برنامه‌نویسی عجیب که شاید حتی اسمشان را هم نشنیده باشید!

Whitespace
کدهای این زبان فقط از فاصله، تب و خط جدید تشکیل شده‌اند؛ یعنی تقریباً هیچ چیز قابل مشاهده‌ای روی صفحه وجود ندارد!'

Chef
برنامه‌نویسی به سبک آشپزی! متغیرها مواد اولیه هستند و کدها شبیه دستور پخت غذا نوشته می‌شوند.

LOLCODE
الهام‌گرفته از میم‌های معروف LOLcats؛ سینتکس آن پر از عبارت‌های طنز و غلط‌های املایی عمدی است.

Malbolge
یکی از سخت‌ترین زبان‌های برنامه‌نویسی جهان که عمداً برای به چالش کشیدن و آزار برنامه‌نویس‌ها طراحی شده است.

Velato
در این زبان به جای متن، از نت‌های موسیقی برای نوشتن برنامه استفاده می‌شود.

Funciton
کدهای این زبان به جای متن، به شکل فلوچارت و نمودارهای ساخته‌شده با کاراکترهای یونیکد نمایش داده می‌شوند.

Brainfuck
فقط ۸ دستور دارد، اما نوشتن ساده‌ترین برنامه‌ها در آن می‌تواند ساعت‌ها زمان ببرد!

Piet
در این زبان، برنامه‌ها با مربع‌های رنگی نوشته می‌شوند و بیشتر شبیه یک اثر هنری هستند تا کد.

Befunge
برخلاف زبان‌های معمول، جریان اجرای برنامه می‌تواند در چهار جهت حرکت کند.

INTERCAL
زبانی که برای شوخی با زبان‌های برنامه‌نویسی رایج ساخته شده و پر از قوانین و پیام‌های خطای عجیب است.

Shakespeare
برنامه‌ها به شکل نمایشنامه‌های شکسپیر نوشته می‌شوند؛ شخصیت‌ها متغیرها هستند و دیالوگ‌ها دستورات برنامه.

ArnoldC
سینتکس این زبان از دیالوگ‌های معروف آرنولد شوارتزنگر الهام گرفته شده است.

Rockstar
در این زبان، کدها شبیه ترانه‌های موسیقی راک نوشته می‌شوند.

Cow
تقریباً تمام دستورات آن از ترکیب‌های مختلف کلمه "moo" تشکیل شده است!

Unlambda
یک زبان فوق‌العاده مینیمال که بر پایه مفاهیم ریاضی و Lambda Calculus ساخته شده و برای اکثر برنامه‌نویس‌ها به‌شدت گیج‌کننده است!

▪️اگر قرار باشد فقط یکی از این زبان‌ها را امتحان کنید، کدام را انتخاب می‌کنید)))

@Teachify | برنامه نویسی
👍83
✔️ تایپ‌اسکریپت 7 منتشر شد

🔹مایکروسافت نسخه نهایی TypeScript ۷ را با بازنویسی هسته اصلی در زبان Go منتشر کرد. این به‌روزرسانی بزرگ، سرعت کامپایل پروژه‌ها را در بسیاری از سناریوها بین ۸ تا ۱۲ برابر افزایش می‌دهد. پشتیبانی از اجرای چندرشته‌ای باعث شده تا فرآیندهای حیاتی مانند نمایش خطاها در ویرایشگر، تکمیل خودکار کد و اجرای دستور tsc بسیار سریع‌تر انجام شود. برای نمونه، نمایش نخستین خطا در پروژه VS Code از ۱۷٫۵ ثانیه به کمتر از ۱٫۳ ثانیه رسیده است.

🔹تایپ‌اسکریپت ۷ با کاهش ۸۰ درصدی خطاهای Language Server و ۶۰ درصدی کرش‌ها، تجربه توسعه را برای شرکت‌های بزرگی مثل گوگل، اسلک و فیگما متحول می‌کند. اسلک از کاهش ۴۰ درصدی زمان انتظار در صف ادغام کدها خبر داده است. این نسخه اکنون مراحل پردازش از جمله تجزیه کد و بررسی نوع‌ها را به‌صورت موازی اجرا می‌کند. توسعه‌دهندگان می‌توانند با استفاده از گزینه‌های --checkers و --builders تعداد پردازش‌های موازی را مدیریت کنند.

@Teachify | برنامه نویسی
6🔥2
✔️ بالاخره بعد از سال‌ها، HTTP یک متد جدید به نام QUERY دارد!

اگر تا امروز برای جستجوهای پیچیده در APIها مجبور بودید از POST استفاده کنید یا با محدودیت‌های GET کنار بیایید، وقت آن رسیده با HTTP QUERY آشنا شوید.

▪️ متد QUERY چیست؟
▪️ چه تفاوتی با GET و POST دارد؟
▪️ چرا به وجود آمد؟
▪️ مزایا و کاربردهای آن در طراحی REST API
▪️ مثال‌های عملی و وضعیت پشتیبانی فریم‌ورک‌ها

🔗 لینک مقاله:
متد HTTP QUERY چیست؟ معرفی کامل متد جدید HTTP

@kaliboys | کالی بویز
👍3
✔️ کاهش مصرف حافظه با slots در پایتون

اگر تعداد زیادی از یک کلاس می‌سازید (مثلاً میلیون‌ها آبجکت)، استفاده از slots می‌تواند مصرف حافظه را به شکل قابل‌توجهی کاهش دهد.
به‌صورت پیش‌فرض، هر شیء در پایتون یک dict دارد که تمام ویژگی‌ها را داخل آن نگه می‌دارد. این انعطاف‌پذیر است، اما حافظه بیشتری مصرف می‌کند.
بدون slots:
    def init(self, name, age):
        self.name = name
        self.age = age

با slots:

    slots = ("name", "age")

    def init(self, name, age):
        self.name = name
        self.age = age

مزایا:
• کاهش مصرف حافظه (گاهی بین ۳۰ تا ۶۰ درصد)
• ایجاد آبجکت‌ها با سربار کمتر
• جلوگیری از اضافه شدن ویژگی‌های جدید به‌صورت تصادفی
مثلاً این کد خطا می‌دهد:

user.email = "ali@example.com"
# AttributeError


در پروژه‌های پردازش داده، بازی‌سازی، شبیه‌سازی و سرویس‌هایی که میلیون‌ها آبجکت می‌سازند، slots می‌تواند صرفه‌جویی قابل‌توجهی در حافظه ایجاد کند.
@Teachify | برنامه نویسی
👍2
پاول دوروف: خرید دامنه‌ی جدید تا مشکل به «ما» مربوط شود

پاول دوروف، بنیان‌گذار تلگرام، از خرید دامنه‌ی اینترنتی جدید t.you خبر داد.

او همچنین حل مشکل دامنه‌ی t.me را نیز اعلام کرده است و‌حالا با me و you شوخی کرده. دو روز پیش دامنه‌ t.me تلگرام از دسترس خارج شده بود.
@Teachify | برنامه نویسی
7
✔️ مدل GPT-5.6 Sol وارد شد... و ظاهراً دکمه Delete رو زیادی دوست داره! 😅

تعدادی از برنامه‌نویس‌ها گزارش دادن که GPT-5.6 Sol بدون اینکه ازش بخوان، شروع کرده به حذف فایل‌های پروژه، پوشه‌ها و حتی دیتابیس‌ها!

جالب‌تر اینکه OpenAI هم این رفتار رو تأیید کرده و گفته این مدل در بعضی سناریوها ممکنه بیش از حد «خودمختار» عمل کنه و کارهایی انجام بده که اصلاً ازش خواسته نشده!

پس اگه قصد داری با GPT-5.6 Sol کد بزنی:
اول git commit
بعد Backup
و لطفاً مستقیم به سرور Production وصلش نکن! :))
فعلاً این هوش مصنوعی بیشتر از اینکه بگه:
«مشکل رو حل کردم»

ممکنه بگه:
«مشکل رو... کلاً حذف کردم!» 💀😂


@Teachify | برنامه نویسی
😁12🤣4
.
✔️ خداحافظی با SMS OTP؟ Firebase یک قدم بزرگ برداشت!
گوگل در Firebase قابلیتی جدید به نام Firebase Phone Number Verification (PNV) معرفی کرده که می‌تواند روش تأیید شماره موبایل را تغییر دهد.

در روش قدیمی:

□ کاربر شماره را وارد می‌کند
□ یک پیامک حاوی کد OTP ارسال می‌شود
□ کاربر کد را وارد می‌کند
□ شماره تأیید می‌شود

اما مشکلاتی مثل تأخیر یا نرسیدن پیامک، هزینه ارسال SMS، حملات فیشینگ و سرقت کد OTP همیشه وجود داشته است.

حالا با Firebase PNV روند متفاوت است:

□ کاربر روی گزینه تأیید شماره می‌زند
□ فایربیس بررسی می‌کند آیا دستگاه و اپراتور پشتیبانی می‌شوند یا نه
□ اپراتور، شماره متصل به سیم‌کارت را تأیید می‌کند
□ شماره بدون وارد کردن هیچ کدی به اپلیکیشن برمی‌گردد.

مزایایی که دارد عبارت است از سرعت بالاتر، تجربه کاربری ساده‌تر، حذف وابستگی به پیامک، کاهش ریسک حملات مبتنی بر OTP

اما هنوز محدودیت هایی وجود دارد:

- همه اپراتورها و کشورها پشتیبانی نمی‌شوند
- مخصوص اپلیکیشن‌های موبایل است، نه وب
- در صورت عدم پشتیبانی، باید از روش‌هایی مثل SMS استفاده شود

@Teachify | برنامه نویسی
6❤‍🔥2👍2
✔️ یک گنجینه رایگان برای برنامه‌نویس‌ها!

اگر از Claude Code استفاده می‌کنید، حتماً Prompt Library جدید Anthropic را ببینید.

داخل این صفحه ده‌ها پرامپت آماده (Copy & Paste) برای کارهای مختلف توسعه نرم‌افزار قرار گرفته است؛ از جمله:

🔹 Code Review
🔹 Debugging
🔹 Refactoring
🔹 Security Audit
🔹 نوشتن تست
🔹 طراحی معماری
🔹 مستندسازی پروژه
🔹 و ده‌ها سناریوی کاربردی دیگر

اما جذاب‌ترین بخش ماجرا اینجاست که Anthropic فقط پرامپت‌ها را منتشر نکرده؛ زیر هر کدام توضیح داده چرا این پرامپت مؤثر است و از چه الگوی Prompt Engineering استفاده می‌کند تا بهترین خروجی را از Claude بگیرد.

اگر با هوش مصنوعی کدنویسی می‌کنید، مطالعه این صفحه می‌تواند به همان اندازه که یادگیری یک ابزار جدید مفید است، کیفیت پرامپت‌های شما را هم ارتقا دهد.

🔗 لینک:
https://code.claude.com/docs/en/prompt-library

@Teachify | برنامه نویسی
4💯1
✔️ چرا گوگل دسترسی به قوی‌ترین هوش مصنوعی امنیتی خود را محدود کرد؟

🔹گوگل با معرفی سه مدل جدید از خانواده جِمینای (Gemini)، گام بلندی در بازتعریف رقابت هوش مصنوعی برداشت.

🔹مدل Flash Cyber بر پایه نسخه استاندارد Flash آموزش دیده و به‌طور ویژه برای مرور، تحلیل و وصله‌کردن خودکار کدهای نرم‌افزاری بهینه‌سازی شده است.

🔹این مدل درون عامل امنیتی گوگل به نام CodeMender یکپارچه شده و قادر به تحلیل کدهای پیچیده است.

🔹در آزمون‌های اولیه روی موتور مرورگر کروم (V۸ JavaScript Engine)، این مدل هوش مصنوعی موفق به شناسایی ۵۵ اختلال امنیتی شد که ۱۰ مورد از آن‌ها پیش‌تر توسط هیچ مدل دیگری کشف نشده بود.

@Teachify | برنامه نویسی
4
✔️ نتفلیکس چطور همزمان به بیش از ۲۶۰ میلیون کاربر و ده‌ها میلیون استریم را بدون بافر مدیریت می‌کند؟

راز ماجرا فقط قدرت سرورها نیست؛ بیشتر کار قبل از اینکه شما روی دکمه Play بزنید انجام شده است.

چند نکته جالب از معماری Netflix:

🔹 ویدیو از Cloud پخش نمی‌شود.
احراز هویت، پیشنهاد فیلم، DRM و APIها روی AWS اجرا می‌شوند، اما خود فایل ویدیو از سرورهای اختصاصی Open Connect که داخل شبکه ISPها قرار دارند ارسال می‌شود؛ یعنی فیلم از نزدیک‌ترین نقطه ممکن به کاربر تحویل داده می‌شود.

🔹 محتوا از قبل روی سرورهای نزدیک کاربران قرار می‌گیرد.
نتفلیکس با پیش‌بینی رفتار کاربران، شب قبل فیلم‌ها و سریال‌های پربازدید را روی سرورهای هر منطقه کپی می‌کند. به همین دلیل هنگام انتشار یک فصل جدید، میلیون‌ها درخواست به سرور مرکزی هجوم نمی‌آورند.

🔹 کیفیت ویدیو دائماً با سرعت اینترنت شما تنظیم می‌شود.
ویدیو به قطعات چندثانیه‌ای تقسیم شده است. پلیر بعد از هر قطعه سرعت اینترنت و میزان بافر را بررسی می‌کند و کیفیت قطعه بعدی را انتخاب می‌کند. اگر سرعت اینترنت افت کند، کیفیت تصویر موقتاً کاهش پیدا می‌کند تا پخش متوقف نشود.

🔹 هر فیلم تنظیمات فشرده‌سازی مخصوص خودش را دارد.
یک انیمیشن ساده و یک فیلم اکشن پرجزئیات به بیت‌ریت یکسان نیاز ندارند؛ به همین دلیل نتفلیکس برای هر محتوا نسخه‌های مختلفی با کیفیت‌ها و حجم‌های متفاوت آماده می‌کند.

▪️ درس مهم برای برنامه‌نویس‌ها:

اگر سیستم شما تازه بعد از رسیدن درخواست کارهای سنگین را شروع می‌کند، احتمالاً دیر اقدام کرده‌اید.

به‌جای واکنش لحظه‌ای:

□ داده‌های پرمصرف را از قبل داخل Cache قرار دهید.
□ پردازش‌های سنگین را قبل از نیاز کاربران انجام دهید.
□ محتوا را تا جای ممکن به کاربران نزدیک کنید (Edge/CDN).
□ اجازه دهید Client خودش با شرایط شبکه سازگار شود.

💡 اصل طلایی معماری در مقیاس بزرگ:
Predict → Pre-position → Adapt
یعنی پیش‌بینی کن، از قبل آماده کن و در نهایت با شرایط لحظه‌ای سازگار شو.
@Teachify | برنامه‌نویسی
👍53🔥2
✔️ مدل Mythos آنتروپیک نقص‌های اساسی در استانداردهای رمزنگاری کشف کرد

آنتروپیک اعلام کرد که مدل هوش مصنوعی Claude Mythos Preview موفق به شناسایی نقاط ضعف ریاضیاتی در دو الگوریتم رمزنگاری شده است. اولین نقص، امنیت امضای دیجیتال رمزنگاری پساکوانتومی HAWK را که در مرحله ارزیابی نهایی سازمان NIST قرار دارد، به نصف کاهش می‌دهد.

دومین نقص می‌تواند حمله به نسخه‌ای از استاندارد رمزنگاری AES را بین ۲۰۰ تا ۸۰۰ برابر قدرتمندتر کند. با این حال، هیچ‌یک از این دو مورد، سیستم‌های عملیاتی فعلی را تهدید نمی‌کنند؛ زیرا الگوریتم HAWK هنوز به‌طور گسترده مستقر نشده و حمله دوم نیز نسخه تقلیل‌یافته AES را هدف قرار داده است.

@Teachify | برنامه نویسی
🔥3❤‍🔥1
✔️ گیت‌هاب قابلیت Stacked Pull Requests را منتشر کرد

گیت‌هاب قابلیت جدید Stacked Pull Requests را به‌صورت Public Preview در دسترس توسعه‌دهندگان قرار داده است.
با این قابلیت، به‌جای ساخت یک Pull Request بزرگ و شلوغ، می‌توانید تغییرات پروژه را به چند Pull Request کوچک و وابسته تقسیم کنید. هر PR به‌صورت مستقل بررسی می‌شود و پس از تأیید، کل استک به‌ترتیب یا حتی با یک کلیک Merge خواهد شد.

مزایای این قابلیت:
• کدها سریع‌تر و دقیق‌تر Review می‌شوند.
• هر Pull Request کوچک‌تر و خواناتر است.
• مدیریت تغییرات بزرگ ساده‌تر می‌شود.
• احتمال بروز Conflict بین تغییرات کاهش پیدا می‌کند.
اگر روی پروژه‌های بزرگ یا تیمی کار می‌کنید، این قابلیت می‌تواند تجربه Code Review را به‌مراتب بهتر و سریع‌تر کند.

@Teachify | برنامه نویسی
👍3
✔️ ایجنت‌های OpenAI و Anthropic در تست‌های امنیتی بریتانیا از هویت جعلی و مهندسی اجتماعی استفاده کردند!

مؤسسه امنیت هوش مصنوعی بریتانیا (AISI) اعلام کرده در ارزیابی امنیتی جدید مدل‌های OpenAI و Anthropic، برخی ایجنت‌های هوش مصنوعی برای رسیدن به اهداف تعیین‌شده، اقداماتی خارج از محدوده مجاز انجام داده‌اند.
در این تست‌ها، مواردی مانند ساخت هویت‌های جعلی آنلاین، نوشتن کد مخرب و تلاش برای متقاعد کردن کاربران انسانی جهت تأیید اجرای آن مشاهده شده است.

در مجموع ۱۹ رفتار غیرمجاز ثبت شد که: ۱۷ مورد مربوط به مدل Anthropic و ۲ مورد مربوط به مدل OpenAI میباشد.

البته این اتفاقات در یک محیط آزمایشی و کنترل‌شده رخ داده‌اند و هیچ حمله واقعی یا آسیبی به کاربران یا سازمان‌ها گزارش نشده است. هدف این آزمایش‌ها، بررسی رفتار ایجنت‌های هوش مصنوعی در شرایط پیچیده و شناسایی ریسک‌های احتمالی پیش از عرضه عمومی بوده است.

این نتایج نشان می‌دهد هرچه ایجنت‌های هوش مصنوعی توانمندتر می‌شوند، آزمون‌های امنیتی نیز اهمیت بیشتری پیدا می‌کنند تا از سوءاستفاده‌های احتمالی در دنیای واقعی جلوگیری شود.

@Teachify | برنامه نویسی
🔥3
✔️ این ابزارم جدیدا ترند شده 50 هزار ستاره گیتهاب گرفته، Strix یه Pentester مبتنی بر AI هستش.

یعنی به‌جای اینکه خودت بشینی مرحله‌به‌مرحله یه اپلیکیشن رو تست امنیتی کنی، چندتا Agent هوش مصنوعی بهش میدی که سعی کنن مثل یه هکر واقعی با اپلیکیشن کار کنن، باگ پیدا کنن و بعد مهم‌تر از اون، بررسی کنن که آیا واقعاً قابل Exploit شدن هست یا نه

نکته‌ی مهمش اینه که فقط نمیگه:  اینجا SQL Injection وجود داره.

بلکه سعی می‌کنه واقعاً Exploit رو اجرا و Validate کنه و برای Finding، Proof-of-Concept و مراحل بازتولید ارائه بده. این یکی از تفاوت‌های اصلیش با خیلی از Static Scannerها هستش.


https://github.com/usestrix/strix


@Teachify | برنامه نویسی
1