WebBaz | وب باز
1.17K subscribers
751 photos
136 videos
82 files
672 links
قراره هرچیزی که نیازه و قراره توی پروژه واقعی به کار گرفته بشه رو یاد بگیریم

من: @call_me_nouh
لینکدین من : https://www.linkedin.com/in/mahdi-nouri-7aa043227
Download Telegram
Forwarded from tech-afternoon (Amin Mesbahi)
🧪 مفهوم و کاربرد API Mocking & Virtualization

خیلی از سردردها از نداشتن محیط اجرای مناسب نشأت می‌گیره؛ و خیلی از محیط خوب نداشتن‌ها از ترس پیچیده یا زمان‌بر بودنِ پیاده‌سازی. از طرف دیگه خیلی از integration ها با آسودگی و سرعت پیش نمی‌رن؛ چون API سیستمِ دیگه، شفاف نیست، یا محیط test نداره.

شنیدن جمله "منتظرم API شون آماده شه!" چیز غریب و نادری نیست! ولی واقعیت اینه که توی تیم‌های بالغ، منتظر نمی‌مونن، mock می‌کنن، یا قبل از توسعه API واقعی، اول API Spec رو می‌نویسن و در اختیار تیم‌های دیگه قرار می‌دن. اگر هم خیلی بالغ باشن که به جز API Spec ساز و کارkey management برای محیط‌های dev/test/stage/production رو هم محیا و ارائه می‌کنن.

بیاین در گام اول بیخیالِ میزان بلوغ تیم مقابل بشیم و خودمون رفتارهای بالغانه در تیم داشته باشیم:

مفهوم Mocking و Virtualization یعنی ساخت یه نسخه‌ی شبیه‌سازی‌شده از سرویس‌ها، قبل از اینکه backend واقعی در دسترس باشه. این کمک می‌کنه تا فرانت‌اند یا بکندی که API رو صدا می‌کنه، یا تست خودکار، و حتی هم‌زمانی توسعه بین تیم‌ها سریع‌تر بشه.

🚦 چرا مهمه؟
- کاهش وابستگی‌ها: تیم‌ها می‌تونن موازی کار کنن.
- بهبود تست و استیجینگ: سناریوهای خطا و پاسخ‌های خاص قابل بازسازی هستن.
- تکرارپذیری: تست‌ها بدون وابستگی به داده‌های زنده انجام می‌شن.
- پیشرفت بدون صبر: تا backend آماده بشه، frontend یا consumer هم رشد می‌کنه.

🧰 ابزارها

۱: ابزار Mockoon
رایگانه، دسکتاپ اپلیکیشن با رابط گرافیکی خوب است (نسخه مک و ویندوز داره) نسخه CLI هم داره.

۲: ابزار WireMock
یکی از بهترین ابزارها بود تا اینکه نسخه رایگان و پولی منتشر کرد! هنوز هم از نظر قابلیت‌ها ابزار خیلی خوبیه و مثلا rule-based mock، یا fault simulation رو خیلی خوب پشتیبانی می‌کنه.

۳: ابزار Microcks
هنوز به بلوغ WireMock نرسیده ولی ابزار خیلی خوبیه، یه UI وب ساده هم داره ولی هنوز کامل نیست (مثلا اینکه بتونید با UI انواع payloadها رو تعریف کنید یا chain بسازید رو نداره.

۴: ابزار (سرویس) Postman Mock Server
خب پست‌من دیگه برای همه شناخته شده است، ولی سرویس‌ها انترپرایزش نیاز به لایسنس داره چون نسخه رایگان همین mock server فقط ۳ کاربر رو پشتیبانی می‌کنه و محدودیت‌های زیادی داره.

چجوری payload رو محیا کنیم؟

۱. استخراج از مستندات موجود
اگر تیم backend مستندات OpenAPI/Swagger داره، راحت‌ترین راهه:

curl https://api.company.com/openapi.json -o spec.json
mockoon-cli import --data spec.json


حتی اگر schema دقیق نباشه، حداقل مسیرها و ساختار پایه آماده‌ست.

۲. Sniff کردن درخواست‌ها در زمان کار
اگه endpointها در محیط تست یا staging یا جایی که بتونین حداقل یک بار صداشون کنین در دسترس هستن؛ ولی مستندات ندارن:
از Fiddler, Charles, یا mitmproxy یا ابزارهای مشابه استفاده کنید برای کپی کردن و استخراج درخواست‌ها و پاسخ‌ها. بعد اون‌ها رو به JSON تبدیل و برای mock استفاده کنین.
(یه snapshot واقعی از تعامل سیستم‌هاست)

۳. تولید خودکار مدل از JSON
وقتی چند تا نمونه JSON داری ولی model نه:
ابزارهای زیادی از جمله خود IDE های رایج سریع JSON رو به تایپ تبدیل می‌کنن و این کمک می‌کنه تا schema بسازین و بر اساس اون mock بنویسین.

۴. ساخت چند سناریو
فقط happy path رو mock نکن! یعنی اینکه همه چیز خیلی خوب و باب طبع باشه کافی نیست؛ سناریوهای مختلف مثل انواع خطاهای کد 4xx یا 5xx یا کندی‌ها یا تام‌اوت یا... رو هم در mock‌هات بسازین.

جمع‌بندی
فراموش نکنین که Mocking فقط یه کار “موقتی” نیست، یه مهارت توسعه‌ی تیمیه برای استقلال، سرعت و کیفیت. وقتی payloadها درست جمع‌آوری بشن، Mocking تبدیل میشه به پلی بین توسعه، تست و واقعیت سیستم.

💬 اگر موضوعاتی مثل Governance and Standardization یا API-First یا API Monitoring براتون جذاب بود حتمن بگید تا کمی در موردشون گپ بزنیم.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Linuxor ?
ساختن پروژه اوپن سورس توی گیتهاب یا هر جایی یه فرهنگی داره، مثلا اینکه چطوری کانتریبیوت کنیم، چطوری اصلا خودمون پروژه اوپن سورس بسازیم و یا چطوری کاربر برای پروژمون پیدا کنیم، اینجا قوانین و روش هاشو نوشته خیلی کوتاه و مفید هم هستن :

opensource.guide

@Linuxor
مثلا آینده توی این کلاس های موفقیت میگم تا وقتی پشت پاتون پینه نزده از راه رفتن به این اداره و اون اداره و شرکت به شرکت موفقیت رو بیخیال بشین
🔥1
تقریبا تمام کدهایی که در گیتهاب وجود دارند، fine tune یک LLM رو به شما یاد میدن. در طی دو روز گذشته من درگیر این پروژه شدم که pretrain یک LLM رو یادتون میده:

https://github.com/prp-e/minillm

و صدالبته یه مدل کوچک هم باهاش پری‌ترین کردم که می‌تونید تست کنید.

@DevTwitter | <Muhammadreza Haghiri/>
Forwarded from Linuxor ?
اگه از با ++C کد می‌زنی و حس می‌کنی یکم کد زدن سخته نگران نباش چون توی زبان هایی مثل ++C ناخودآگاه آدم به سمت ساخت از نوی چرخ می‌ره، گوگل کل تجربه هاشو توی یه لایبری و یا مجموعه ابزار به اسم abseil قرار داده، از مدیریت زمان بگیر تا رشته‌ها، همزمانی، کانتینرها و هش‌ها کلی کارتون رو جلو می‌ندازه

مستنداتش اینجاست :
abseil.io/docs/cpp

این کتابی هم که می بینید توش روش گوگل روش هایی از مهندسی نرم افزار رو گفته که توی استفاده abseil بدرتون می‌خوره، لینک کتاب :

abseil.io/resources/swe-book

@Linuxor
Forwarded from Linuxor ?
این سایته کلی آزمایشگاه رایگان در اختیارتون قرار می‌ده که توش تکنولوژی های کامپیوتر و زبان های برنامه نویسی رو تمرین کنید و یاد بگیرید :

labex.io

@Linuxor
زیر 10 دقیقه؛
با توجه به اینکه قبلا Gemini Pro رو گرفتیم؛
اینجا Perplexity PRO رو می‌گیریم...
یکساله | رایگان


لینک ویدیو:
https://www.youtube.com/watch?v=0p6dZ1NPecc&list=PLwUWEGKy5kyNrPv05-Asbhm6g6S8_eRPb&index=16

@DevTwitter | <Ryan Heida/>
طراحی UI گرچه قبل‌تر با هوش مصنوعی امکان‌پذیر بود اما الان «صرفا با یک پرامپت» و بدون تغییر خاصی، با کمک Gemini Flash Image یا همون Nano Banana می‌تونید چنین چیزی طراحی کنید. سوال پیش میاد چطور میشه از این به محصول رسید؟
این مساله‌ایه که نیاز به بررسی داره :)

@haghiri75_blog
Forwarded from Linuxor ?
This media is not supported in your browser
VIEW IN TELEGRAM
اگه بتونید یه برنامه وب Node.js بسازین، ساختن نسخه اجرایی ویندوز و لینوکس و مکش کاری نداره با nexe می‌شه این کارو کرد. خیلی کاربردیه به خصوص برای زمانی که نمی‌خواید برای توسعه برنامه برای سیستم عامل های متفاوت وقت بذارید:


github.com/nexe/nexe

@Linuxor
Forwarded from پک پکیج 💾
ریفکتورینگ در برنامه نویسی Refactoring
💜 سایت : کدیاد
مدرس : ساسان صفری
پسورد فایل
@P4_ir

جهت دانلود
https://t.iss.one/p_4kbot?start=d30a4c8ab283
Please open Telegram to view this post
VIEW IN TELEGRAM
چرا از pnpm به جای npm استفاده کنیم؟

جوابش سادست. فرض کنید ده تا پروژه روی کامپیوتر خودتون در دست توسعه دارید که از node modules استفاده میکنن.

️ قطعا بین این ده تا پروژه تعداد زیادی پکیج مشابه و مشترکه، اما اگر از npm استفاده کنید:

۱- همه پکیج ها توی هر یک از پروژه ها هر بار نصب میشن و نتیجتا شما پکیج های مشابه رو برا هر پروژه دوباره و دوباره دانلود میکنید.

۲- همچنین نهایتا روی دیسکتون از هر پکیج مشترک ده تا کپی خواهید داشت که بهینه نیست.

حالا pnpm چیکار میکنه؟

میاد و به جای این که این ماژول هارو هر بار توی فولدر هر پروژه ذخیره کنه، توی یک دایرکتوری مرکزی ذخیره میکنه و صرفا به هر پروژه ای که به اون دپندنسی نیاز داره لینکش میکنه.

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

البته مزایای دیگه ای هم داره که میتونید تو داکیومنت خود pnpm بخونید:
https://pnpm.io/pnpm-vs-npm

@DevTwitter | <Omid Baharifar/>
👍1
این ریپو Gini Impurity منه که که پارسال برای پروژه درس داده‌کاوی دانشگاه درستش کرده بودم و الان رتبه اول گیت‌هاب تاپیک شده و از نظر ستاره محبوب ترین ریپو گیت‌هاب من هم هست.

شامل یک اسکریپت محاسبه شاخص جینی بصورت کلاسیک و یک مدل تکامل یافته که ابداع خودم بوده.

کاربرد شاخص جینی در درخت های تصمیم و پیش پردازش دیتاست ها است و ... خیلی چیز های دیگه.

داخل ریپو یک فایل PDF بصورت جزوه هست(به زبان انگلیسی) که صفر تا 99 درصد کار رو توضیح میده و برای دانشجوهایی که مثل من پروژه و ارائه داشتن عالیه

github.com/a-partovii/Gini-Impurity

@DevTwitter | <Ashkan-P/>
This media is not supported in your browser
VIEW IN TELEGRAM
به‌تازگی با Mage-UI آشنا شدم
مجموعه‌ای از کامپوننت‌های رابط کاربری که طراحی مدرن، انیمیشن‌های نرم و افکت‌های چشم‌نواز رو با ساده‌ترین روش ممکن ترکیب کرده.

چیزی که منو جذب کرد اینه که فقط با یه copy-paste ساده می‌تونی جلوه‌هایی حرفه‌ای و مدرن به پروژه‌هات اضافه کنی، بدون نیاز به تنظیمات پیچیده یا وابستگی‌های سنگین.

برای توسعه‌دهنده‌ها و طراح‌هایی که دنبال سادگی، خلاقیت و سرعت هستن، Mage-UI یه ابزار کم‌نظیره برای ساخت تجربه‌های کاربری زنده و جذاب.
لینکش هم که اینجاست

mageui.live

@DevTwitter | <Abolfazl Shekarshekan/>
Forwarded from EFN
مهدی‌ اینو بزار تو کانال میتونن یک دوره رو بصورت کاملا رایگان دریافت کنن
خب دیگه داریم بازی رو شروع می کنیم
🚨طبق گفته APTIRAN و بررسی هایی که انجام دادن بیش از 80% سازمان ها تو ایران این اسیب پذیری هارو دارن
CVE-2025-64095
CVE-2025-59287
CVE-2025-53770
CVE-2019-18935
که مربوط به ویندوز هم هستند و این یعنی فاجعه!

البته یک پیامی هم داشت :

یادآوری راهبردی برای تحلیل‌گران امنیت

معیار سنجش توانمندی یک جنگجو در میدان نبرد، صرفاً بر اساس قدرت حمله نیست؛ بلکه دفاع مؤثر و هوشمندانه بخش مهمی از مهارت‌های او را تشکیل می‌دهد. نیازی نیست با ادعای شکار گروه‌های APT نظیر APT15 خود را مطرح کنید؛ آن‌چه اهمیت دارد، توانایی درک تهدیدات، پیشگیری از نفوذ، و محافظت از دارایی‌های اطلاعاتی کشور است.


@SEYED_BAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2