Atriya.com
486 subscribers
25 photos
2 videos
1 file
7 links
مرجع تخصصی طراحی و برنامه نویسی، هر آن چیزی که برای برنامه نویس شدن نیاز دارید.
🔷️ مطالب کانال:
🔹️اطلاع رسانی آپدیت دوره های آموزشی موسسه
🔹️معرفی کتاب های مفید برنامه نویسی
🔹️اطلاع رسانی رویدادها و تخفیف ها
🔹️ و ...

ارتباط با مدیر
@MohammadRamshini
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
لپ‌ تاپ جدید و جالب لنوو
📢 فصل ۴۶ ام دوره آموزش سی شارپ آپلود شد.

در این فصل که بخش اول از پروژه عملی (طراحی برنامه مدیریت کتابخانه در قالب معماری تمیز یا Clean Architecture است) مباحث زیر آموزش داده شده است:

🔸 Introducing Clean Architecture

🔸 Create Domain Layer

🔸 Design Domain Model

🔸 Create Application Layer

🔸 Design Use Cases

🔸 Introducing Repository Pattern

🔸 Generic Repository

🔸 ...
❤2
📢 فصل ۴۷ ام دوره آموزش سی شارپ آپلود شد.

در این فصل که بخش دوم از پروژه عملی (طراحی برنامه مدیریت کتابخانه در قالب معماری تمیز یا Clean Architecture است) مباحث زیر آموزش داده شده است:

🔸 ایجاد کلاس Context

🔸 پیاده سازی Generic Repository

🔸 رجیستر کردن سرویس ها (WireUp)

🔸 ایجاد دیتابیس

🔸 طراحی فرم اصلی و فرم مدیریت کتاب

🔸 ثبت، ویرایش و حذف کتاب
خالق فریمورک لاراول کیست؟
مطالعه زندگی افراد بزرگ و موفق می تواند الهام بخش زندگی کاری ما باشد و ما را برای انجام کارهای بزرگ ترغیب کند.
تیلور اتول (Taylor Otwell) خالق لاراول و یک برنامه نویس موفق در جهان است.
تیلور از کودکی علاقه زیادی به کامپیوتر داشت. او پس از دبیرستان، وارد کالج فناوری آرکانزاس آمریکا شد. پس از فارغ التحصیلی، برای گذراندن دوره کارآموزی به شرکت باربری ABF رفت. او این دوره را بسیار مفید می داند و می گوید در آن زمان با برنامه نویس های خوبی بودم و در مورد برنامه نویسی، طراحی نرم افزار و ... چیزهای زیادی یاد گرفتم.
تیلور در اوقات فراغت خود به فکر راه اندازی یک تجارت شخصی بود. به همین دلیل او شب ها روی پروژه PHP خود کار می کرد. تیلور در آن زمان از CodeIgniter استفاده می کرد و معتقد بود که این فریمورک می تواند بهتر باشد. بنابراین هسته آن را دستکاری کرد و چیزهای جدیدی به آن اضافه کرد.
تیلور سعی کرد فریمورکی ارائه دهد که پیشرفته تر و بهتر از CodeIgniter باشد و در نهایت در سال ۲۰۱۱ لاراول را برای زبان PHP معرفی کرد. او لاراول را در مدت ۶ ماه نوشت و به مدت ۱۰ سال هر روز این فریمورک را توسعه بخشید.
🆒3
80% مهندسان نرم افزار باید در عصر هوش مصنوعی مهارت های خود را ارتقا دهند.
فیلیپ والش ( Philip Walsh) تحلیلگر ارشد گارتنر، معتقد است:
" هوش مصنوعی نقش آینده مهندسان نرم افزار را تغییر خواهد داد اما تخصص و خلاقیت انسانی همیشه برای ارائه نرم افزارهای پیچیده و نوآورانه ضروری است."
گارتنر تاثیر هوش مصنوعی را در سه مرحله توضیح می دهد: کوتاه مدت، بازه میانی و بلند مدت.
ابتده انتظار می رود ابزارهای هوش مصنوعی به مهندسان در کارهای کارآمدتر کمک کنند. مشابه روشی که برنامه نویسان فعلا از ChatGPT استفاده می کنند.
پس از آن در بازه میانی، پیش بینی می شود هوش مصنوعی مجموعه وسیع تری از کارهای برنامه نویسان را خودکار کند. در این دوره نقش اصلی توسعه دهندگان دیگر کد نویسی نیست. بلکه هدایت هوش مصنوعی خواهد بود. به عبارتی، مهندسی پرامیت مهارتی بسیار مهم خواهد شد.
گارتنر پیش بینی می کند در بلند مدت شغل جدیدی ایجاد شود با عنوان مهندسی هوش مصنوعی که ترکیبی از مهارت های مهندسی نرم افزار، علم داده و یادگیری ماشین خواهد بود.
👍10
📢 فرصت شغلی

شرکت تعاونی اعتبار ایران خودرو برای توسعه نرم افزارهای مالی و بانکی این مجموعه در تلاش است تا تیم فنی و برنامه نویس خود را گسترش و تکمیل نماید.

نیازمندی های فنی:
1- آشنایی با پایگاه داده SQL Server
2- تسلط به زبان سی شارپ
3- تسلط به فریمورک ASP.Net Core

شایان ذکر است به لحاظ موارد امنیتی و بانکی امکان فعالیت به صورت دورکار و نیمه وقت ممکن نیست.

آدرس شرکت: تهران، کیلومتر 10 بزرگراه لشگری

تلفن : 48942164-021

آدرس سایت: www.ikcu.com

حقوق و مزایا: بازه حقوق پرداختی برای کارشناس فناوری اطلاعات در این مجموعه بین 20 تا 30 میلیون تومان پایه حقوق می باشد که علاوه برآن مبلغ های دیگری در قالب پاداش، هزینه های سفر، کارانه، بن های نقدی و غیر نقدی، پک های ماهیانه ارزاق و پروتئین و ... به عنوان آیتم های مزایای حقوق پرداخت و ارائه می شود.

علاقمندان به همکاری می توانند رزومه خود را به آدرس ایمیل : maleki@ikcu.com ارسال نمایند.

جهت کسب اطلاعات بیشتر به بخش فرصت های شغلی سایت آتریا مراجعه فرمایید.
👍4🔥3
در سال های آینده، من مشتاقانه منتظر پر فروش ترین کتاب ها با عنوان "اشکال زدایی پایگاه های کد تولید شده با هوش مصنوعی" و کتاب همراه آن "بازسازی سیستم های هوش مصنوعی قدیمی" هستم.
👍7🆒4
📢 سلام و ارادت خدمت تک تک همراهان آتریا

با توجه به درخواست های دوستان ضبط دوره آموزش Web API در سال جدید شروع شد و ۴ فصل اول این دوره آموزشی بر روی سایت قرار گرفت.
❤14👏5👍4
🏷 آشنایی با Multi-Tenant Database

پایگاه داده چند مستاجری یکی از الگوهای رایج در طراحی معماری نرم افزارهای SaaS (Software as a Sevice)  است. در این الگو یک نمونه از پایگاه داده به صورت مشترک بین چند مشتری (tenant) استفاده می شود، اما مدل پایگاه داده به گونه ای طراحی می شود که هر مشتری فقط به داده های خود دسترسی دارد و داده های هر مشتری از بقیه ایزوله و محافظت شده است.

🔸 روش پیاده سازی :
▪︎ هر ردیف از جدول، دارای یک ستون به نام TenantID است.
▪︎ داده ها با این شناسه از هم جدا می شوند.
▪︎کوئری ها همیشه باید این شرط را درنظر بگیرند :
'where TenanatID = xyz'

🔸 مزایای Multi-Tenant :

▪︎ کاهش هزینه نگهداری و منابع زیرساخت
▪︎ به روزرسانی آسان نرم افزار (یک بار برای همه مشتریان)
▪︎ مقیاس پذیری بیشتر نسبت به مدل های Single-Tenant

🔸 مثال ساده از جدول Multi-Tenant :

Create Table Invoices (
   InvoiceID int primary key,
   TenantID varchar(50),
   Amount  decimal(10,2),
   DateCreated datetime
);
دریافت فاکتورهای فقط یک Tenant خاص :

Select * from Invoices where TenantID = companyA ;

@institute_atriya
👍12
⏱ قانون 20 ، 20 ، 20

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

مراقب سلامتی چشماتون باشید !

@institute_atriya
❤18🙏7
جک‌دورسی (صاحب قبلی توییتر) پیام‌رسان جدیدی بدون نیاز به اینترنت به اسم bitchat را معرفی کرده است. هدف دورسی این هست که اینترنت کشوری قطع شد هنوز بتوان پیام داد، این پیام رسان بر پایه بلوتوث یک شبکه مِش می‌سازد و پیام‌ها را بین دستگاه‌ها پخش می‌کند تا به مقصد برسند.

پیام‌ها End-to-End هست، هیچ شناسه و حتی ثبت‌نام نمی خواهد.
میتواند تا محدوده ۳۰۰ متری را پوشش بدهد، قرار هست در نسخه‌های بعدی از WIFI هم استفاده کنند.

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

از نظر فنی دستگاه‌هایی که به هم نزدیک هستن (در محدوده حدود ۳۰ متری) یک خوشه محلی تشکیل می‌دهند. اگه دو تا خوشه در محدوده همپوشانی هم قرار بگیرند، دستگاه‌های مشترک که بهشون Bridge node گفته می شود، این دو خوشه را به هم وصل می‌کنند. پیام‌ها از یک دستگاه به دستگاه دیگر منتقل می شوند تا به گیرنده‌های دورتر برسند.

این پروتکل اجازه می‌دهد پیام‌ها از طریق چند دستگاه دست به دست شوند و به گیرنده‌ هایی برسند که خارج از محدوده مستقیم بلوتوث هستند.
❤15
🔸 به درخواست دانشجویان عزیز آموزش اصول SOLID
به دوره آموزش سی شارپ اضافه شد.
👏22👍4👌3❤2
🎉 ویژوال استادیو ۲۰۲۶ توسط مایکروسافت منتشر شد

ویژگی های جدید این IDE :
🔸 ادغام با هوش مصنوعی
🔸 افزایش سرعت و کارایی
🔸 بهبود تجربه کاربری
🔸 پشتیبانی از سی شارپ 14 و NET 10.
🔸 بهبود هات ری لود در asp.net و blazor
🔸 بهبود سرعت build و اجرای پروژه ها
🔸 انجام آپدیت ها به صورت ماهانه

@institute_atriya
🙏12👏4❤2🆒2
🔸 وایب کدینگ (Vibe Coding)
شیوه ای از توسعه نرم افزار که برای تولید کد استفاده می شود. در این روش به جای نوشتن دستی کد، فرد هدف و ایده را در زبان طبیعی مطرح می کند و ابزار هوش مصنوعی کد را تولید می کند.

تا قبل از سال ۲۰۲۵ و رایج شدن «وایب کدینگ»، ایده‌ اکثر برنامه‌نویس‌ها این بود که «کد می‌زنم، سرچ می‌کنم، تلاش می‌کنم و از دانش خودم برای توسعه سیستم استفاده می‌کنم» ‌.

اما بعد از رایج شدن وایب‌کدینگ و راحت‌طلب شدن برنامه نویس های تازه‌کار، یک زنگ خطر جدی به صدا درآمد.
درست است که این روش، ظاهراً باعث سرعت و بهره‌وری می شود اما در واقعیت چه اتفاقی می افتد؟ در واقع این روش، یادگیری عمیق و کسب تجربه عملی را از بین می‌برد و بیشتر copy و paste را رواج می دهد.

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

وایب‌کدینگ در ظاهر ایده جذابی هست؛ تو فقط می‌گویی «برام یه لاگین بنویس با JWT و role-based access» و در چند ثانیه یک کد تحویل می‌ گیری. اما واقعیت این است که آن کد را نفهمیدی. نمی‌دانی sessionها به چه شکل مدیریت می‌شوند، توکن کجا ذخیره می شود، یا امنیت این کد در چه سطحی است.

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

در نهایت وایب کدینگ برای افراد حرفه ای تر ممکن است بد نباشد ولی برای افراد تازه کار یک خطر بسیار جدی محسوب می شود.

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

@institute_atriya
👌19👍8👏3
🔸 هوش مصنوعی به هر قیمت

به نظر می‌رسد در ماه‌های اخیر، با شتابی قابل توجه وارد فاز «هوش مصنوعی به هر قیمت» شده‌ایم.

شکل‌های مختلفی از ایده‌های نخ‌نما و آبکی مثل «به سیستم Ticketing فعلی، یه Chatbot اضافه کنیم»، «رابط کاربری فعلی رو تبدیل کنیم به natural language»، «خودمون یه مدل داخلی داشته باشیم». عصاهای جادویی‌ برای تبدیل سیستم‌های از کار افتاده و پوسیده به سیستم‌های هوشمند.
پروژه‌هایی که معمولا با سوال «کجا می‌توانیم یک برچسب AI بچسبانیم؟» شروع می‌شوند، با منطق «حالا که اینقدر انرژی گذاشتیم بگذارید ببینیم چه می‌شود» ادامه پیدا می‌کنند و در نهایت با جمله‌ آشنای «هوش مصنوعی هم جواب نداد» به پایان می‌رسند.
همان الگوی تکراری سال‌های قبل. نه مسئله روشن است، نه ظرفیتی وجود دارد و نه حتی بعضا تصمیم‌گیرنده می‌داند که به‌دنبال چیست. با این حال، مطمئن‌ است که باید سراغ هوش مصنوعی برود.

متأسفانه روند فعلی نشان می‌دهد به‌زودی با انبوهی از سیستم‌های نیمه‌کاره روبه‌رو خواهیم بود که باید هزینه‌ تصمیم‌های امروز را بدهند. موج فعلی AI در ایران، بیشتر برای اهالی رپورتاژ و روایت، شکارچیان بودجه‌ تحولات صوری و کسب‌وکارهای وام‌محور و تسهیلات‌دوست، «تحول» است.
برای ما بیشتر شبیه یک دور دیگر از همان الگوست: هیجان، سرمایه‌گذاری، پیچیدگی، عواقب پیش‌بینی‌نشده، شکست، انصراف.

@institute_atriya
👍23❤2
Atriya.com pinned Deleted message
📢 ضبط دوره آموزشی ASP.Net Core Mastery 1 شروع شد و فصل اول و دوم آن بر روی سایت قرار گرفت.

🔶 این سری دوره ها با هدف آموزش عمیق، اصولی و پروژه محور فریمورک ASP.Net Core طراحی شده اند و تمرکز اصلی این دوره ها آماده سازی توسعه دهندگان برای ورود حرفه ای به پروژه های واقعی و بازار کار است.

🔶 این دوره اولین دوره از سری دوره های آموزشی ASP.Net Core Mastery است و به عنوان نقطه شروع این مسیر آموزشی، به مفاهیم پایه، معماری و زیرساخت های ASP.Net Core می پردازد. مفاهیمی که در بسیاری از آموزش های رایج یا به صورت سطحی مطرح می شوند یا نادیده گرفته می شوند، اما نقش کلیدی در موفقیت پروژه های واقعی دارند.

@institute_atriya
❤9👏8
🔸 بازیابی سورس پروژه NET Core. از روی فایل Build شده

اگر سورس کد پروژه NET Core. شما یا مشتری پاک شده یا به هر دلیلی در دسترس نیست، هنوز می توانید با استفاده از ابزارهای Decompiler .NET بخش زیادی از کد را با استفاده از یک سری از ابزارهای کاربردی بازیابی کنید.

▪️ ابزار ILSpy : رایگان و متن باز با امکان Export پروژه NET.

▪️ ابزار dotPeek(JetBrains) : خروجی تمیزتر و مناسب ویژوال استادیو

✅ روش کار:

🔹 فایل های خروجی پروژه (bin/Release یا bin/Debug) را پیدا کنید.

🔹 فایل های DLL و EXE را با یکی از این ابزارهای Decompiler باز کنید.

🔹 کد #C را مشاهده و استخراج کنید و به پروژه جدید منتقل کنید.

🔹 در نهایت Nuget Packae ها را مجدد نصب کنید.

درنظر داشته باشید که کامنت ها برنمی گردد، نام دقیق متغیرها ممکن است تغییر کرده باشد و همینطور ممکن است نیاز به اصلاح دستی کد باشد.

⭐️ هیچ پروژه واقعی بدون Version Control نباید توسعه داده شود.
@institute_atriya
👍8🆒2❤1
🤖 من دانشجوی ترم پنجم مهندسی نرم افزار هستم، آیا هوش مصنوعی بازار کار برنامه‌نویس‌ها را از بین می‌برد؟

این سؤال را یکی از دانشجویان مطرح کرد و سؤالی است که بارها و بارها توسط عزیزان دیگر پرسیده می شود و دغدغه خیلی از دانشجویان و برنامه‌نویس‌های امروز است.

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

البته من معتقدم هوش مصنوعی بازار کار برنامه‌نویسی را از بین نمی‌برد، اما بازار کار برنامه‌نویسی را به‌شدت تغییر می‌دهد. تولید کدهای ساده، عملیات CRUD معمولی، تبدیل یک طرح به HTML/CSS، نوشتن بعضی تست‌ها، مستندسازی و بسیاری از کارهای روتین، نمونه‌هایی از این موارد هستند

بنابراین اگر کسی هدفش این باشد که صرفاً «کدنویس» شود، نگرانی او کاملاً منطقی است. اما Software Engineering خیلی بزرگ‌تر از Code Writing است. یک مهندس نرم‌افزار باید بتواند:
▪مسئله را درست تحلیل کند
▪نیازمندی‌ها را بفهمد
▪معماری مناسب طراحی کند
▪بین راه‌حل‌های مختلف تصمیم بگیرد
▪مباحث Database و Performance را درک کند
▪امنیت را در نظر بگیرد
▪سیستم را تست و Debug کند
▪کد تولید شده توسط AI را بررسی و ارزیابی کند
▪و در نهایت مسئولیت تصمیم‌های فنی خود را بپذیرد.
این‌ها همان بخش‌هایی هستند که صرفاً با «تولید کد» حل نمی‌شوند. به عبارتی این بخش‌ها به این سادگی قابل جایگزینی نیستند.

اتفاقاً یک نکته جالبی که در آمارهای فعلی وجود دارد، طبق پیش‌بینی اداره آمار کار آمریکا (BLS)، برای سال‌های ۲۰۲۴ تا ۲۰۳۴ اشتغال Software Developer حدود ۱۵.۸ درصد، Data Scientist حدود ۳۳.۵ درصد و Information Security Analyst حدود ۲۸.۵ درصد رشد خواهد کرد. یعنی در حال حاضر شواهد نشان نمی‌دهد که «نرم‌افزار در حال نابودی است». بلکه نشان می‌دهد نوع مهارتی که بازار از متخصص نرم‌افزار می‌خواهد در حال تغییر است.

🔥 اتفاق مهمی در حال رخ دادن است. AI احتمالاً ارزش یک برنامه نویس Junior معمولی را کاهش می‌دهد، ولی ارزش یک Engineer قوی که می‌تواند AI را به ‌درستی هدایت و کنترل کند افزایش می‌دهد. ممکن است در آینده یک مهندس نرم‌افزار با کمک AI کاری را انجام دهد که قبلاً سه نفر انجام می‌دادند. پس احتمالاً برای انجام بعضی کارها نیروی انسانی کمتری نیاز خواهد بود.
اما از طرف دیگر، نیاز به افرادی که بتوانند:
▪سیستم‌های پیچیده طراحی کنند
▪هوش مصنوعی را در محصولات واقعی به کار بگیرند
▪خروجی AI را ارزیابی کنند
▪امنیت و زیرساخت را مدیریت کنند و مسائل پیچیده را حل کنند، بیشتر خواهد شد.

🎯 اگر امروز من دانشجوی مهندسی کامپیوتر بودم، به خاطر AI نرم‌افزار را کنار نمی‌گذاشتم، برعکس، نرم‌افزار را عمیق‌تر یاد می‌گرفتم. اما هدفم فقط یادگیری یک زبان برنامه‌نویسی و چند Framework نبود. روی این موارد سرمایه‌گذاری می‌کردم:
🔸 Data Structures & Algorithms
🔸 Database
🔸 OOP & Software Design Principles
🔸 Software Architecture
🔸 System Design
🔸 Cloud & DevOps
🔸 Testing & Security
و البته استفاده حرفه‌ای از ابزارهای AI . چون تکنولوژی‌ها تغییر می‌کنند، اما توانایی حل مسئله و مهندسی سیستم ارزش خودش را حفظ می‌کند.

🚀 چه حوزه‌هایی را باید جدی گرفت؟
اگر بخواهیم درباره حوزه‌هایی صحبت کنیم که ارزش بیشتری دارند، می‌توان به این موارد فکر کرد:
🤖 AI / Machine Learning
🔐 Cybersecurity
☁️ Cloud & DevOps
⚙️ Backend & DistributedSystems
📊 Data Engineering
🦾 Robotics
💻 Embedded Systems
🏗️ Software Architecture & System Design

اما این اشتباه بزرگ را انجام ندهید که بخواهید همه این‌ موارد را یاد بگیرید! اینکه هم زمان سراغ همه این موارد و ده‌ها تکنولوژی دیگر برویم، معمولاً نتیجه خوبی ندارد. بهتر است یک حوزه اصلی را انتخاب کنید و چند مهارت مکمل را در کنار آن دنبال کنید. مثلاً:
▪Backend + Cloud + AI
▪Software Engineering +Cybersecurity + AI
▪DataEngineering + AI
▪EmbeddedSystems + AI

نکته ای که وجود دارد، در دنیای AI، مهارت‌هایی مثل: حل مسئله، تفکر منطقی، تحلیل، ارتباط مؤثر، زبان انگلیسی و توانایی یادگیری مداوم اهمیت بسیار بیشتری پیدا می‌کنند. چون ممکن است تکنولوژی‌ که امروز یاد می‌گیریم، چند سال دیگر کاملاً تغییر کرده باشد. اما کسی که یادگیری و حل مسئله را بلد است، می‌تواند تکنولوژی جدید را هم یاد بگیرد.

@institute_atriya
❤11👍11