fekre-bekr,learning,source,سورس,سورس رایگان,آموزش,اخبار,فناوری اطلاعات,mvc,.net,ساری,آموزشگاه,asp.net,c#.net,programing,c++,vb,آموزش برنامه نویسی,دانلود

اشتراک در سایت


مطالب تصادفی
اخبار و مقالات در فکر بکر آموزش ایجاد برنامه نصب (setup) قسمت سوم

در مراحل قبلی نحوه ایجاد فایل configuration و فایل نصب sql server و همچنین ایجاد setup برای نرم افزاری که باید در سیستم مشتری نصب ...


اخبار و مقالات در فکر بکر آموزش استفاده از کلاس SeedData در Asp.net Core

در این بخش به آموزش چگونگی درج رکوردهای پیشفرض درون جداول در هنگام ایجاد دیتابیس با استفاده از روش code first در محیط Asp.net Cor ...


اخبار و مقالات در فکر بکر حل تمرین مسائل برنامه نویسی از بخش کنترل ها (Windows Form) در سی شارپ

جهت مشاهده سوال و دانلود سورس آن لطفا به ادامه مطلب توجه نمایید. ...


اخبار و مقالات در فکر بکر آموزش آپلود چندین فایل بصورت همزمان در Asp.net MVC

در این مقاله به آموزش آپلود چندین فایل بصورت همزمان خواهیم پرداخت جهت مشاهده این آموزش به ادامه مطلب توجه نمایید. ...


اخبار و مقالات در فکر بکر سورس کامپوننت Message box فارسی

با سلام خدمت کاربران فکر بکر – جهت دانلود سورس Message Box فارسی به ادامه مطلب مراجعه بفرمایید. ...


اخبار و مقالات در فکر بکر آموزش ساخت صفحه تماس با ما بصورت Ajax در Asp.net MVC5

در این برنامه می خواهیم به آموزش نحوه ارسال اطلاعات بدون لود یا refresh شدن صفحه به سمت سرور در Asp.net MVC بپردازیم. ...


اخبار و مقالات در فکر بکر آشنایی با Asp.net mvc6 بصورت پروژه عملی #1

با سلام در این مقاله میخواهیم mvc6 را با یک پروژه عملی آموزش دهیم بنابراین بدون مقدمه کار را شروع میکنیم لطفا به ادامه مطلب توجه ...


اخبار و مقالات در فکر بکر آموزش اعتبار سنجی غیر همزمان(AsyncValidation) با استفاده از جاوااسکریپت در Asp.net mvc

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


اخبار و مقالات در فکر بکر آموزش کامل Web Api2 در MVC با عملیات CRUD

با سلام خدمت تمامی کاربران فکر بکر در این مقاله سعی نمودم تا با ارائه مثال عملی به آموزش کامل Web Api بپردازم. قبل از هرچیز باید ...


اخبار و مقالات در فکر بکر آموزش استفاده از Bundler & Minifier در Asp.Net Core

در این آموزش ابتدا چند فایل استاتیک(css-js) به ویوی برنامه ارجاع میدهیم و سپس با استفاده از مفهوم Bundling and Minifying حجم و تر ...


اخبار و مقالات در فکر بکر قالب سایت فروشگاهی

جهت دانلود قالب سایت فروشگاهی به ادامه مطلب توجه نمایید. ...


اخبار و مقالات در فکر بکر سورس برنامه paint (نقاشی) در سی شارپ

جهت دریافت سورس زیبای برنامه paint در C# به ادامه مطلب توجه نمایید ...


اخبار و مقالات در فکر بکر پیاده سازی سیستم احراز هویت کاربران در Asp.net MVC (بخش دوم)

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


اخبار و مقالات در فکر بکر نحوه خواندن اطلاعات از فایل appsetting.json در Asp.net Core

فایل appsetting در نسخه های core معادل فایل webconfig در نسخه های قدیمی تر می باشد که برای پیکر بندی تنظیمات کلی پروژه مانند تنظی ...


پیوندها
5 (2)

Generics یکی از ویژگی های قدرتمند برای بسیاری از زبان های برنامه نویسی از جمله C# است. که به شما امکان می دهد کدی بنویسید که می تواند با چندین نوع داده کار کند بدون اینکه نیازی به نوشتن یک نسخه جداگانه از کد برای هر نوع داده باشد. این باعث می شود کد شما انعطاف پذیرتر و قابل استفاده مجدد باشد ، همچنین حجم کدنویسی را کاهش می دهد.
گروه : c#.net
تاریخ انتشار: 1401/09/20

فکر بکر

Generics یکی از ویژگی های قدرتمند برای  بسیاری از زبان های برنامه نویسی از جمله C# است. که  به شما امکان می دهد کدی بنویسید که می تواند با چندین نوع داده کار کند بدون اینکه نیازی به نوشتن یک نسخه جداگانه از کد برای هر نوع داده باشد. این باعث می شود کد شما انعطاف پذیرتر و قابل استفاده مجدد باشد ، همچنین حجم کدنویسی را کاهش می دهد.

در سی شارپ، جنریک به شما امکان می دهد کلاس یا متدی را تعریف کنید که می تواند با هر نوع داده ای کار کند. این امکان  ،  انعطاف پذیری و قابلیت استفاده مجدد بیشتر از کد را فراهم می کند. با استفاده از جنریک ، می‌توانید کلاس‌ها، اینترفیسها  و متدهایی ایجاد کنید که امکان استفاده از آنها را در برنامه ها  داشته باشید. 
در قطعه کد زیر مثالی از یک کلاس جنریک بای stack را مشاهده میکنید.

 

public class Stack<T>

{

    // The items array is used to store the items in the stack

    private T[] items;

 

    // The Push method adds an item to the top of the stack

    public void Push(T item)

    {

        // Code to add the item to the stack

    }

 

    // The Pop method removes and returns the top item from the stack

    public T Pop()

    {

        // Code to remove and return the top item from the stack

    }

}

در مثال بالا کلاس stack بصورت جنریک با نوع نگهدارنده ی T تعریف شده است. T  بدان معناست که  هنگام استفاده از نمونه های این کلاس ، می تواند هر نوع داده ای باشد.
متدهای Push و Pop از کلاس Stack برای کار با داده‌های نوع T تعریف شده‌اند. به این معنی که می‌توان آنها را با هر نوع داده‌ای استفاده کرد، تا زمانی که نوع آن در هنگام استفاده از کلاس مشخص شده باشد.
برای استفاده از این کلاس Stack، نوع داده ای T  را که کلاس stack  باید در هنگام ایجاد یک نمونه جدید نگه دارد، مشخص کنید. مانند قطعه کد زیر :

Stack<int> stackOfInts = new Stack<int>(); 

این یک شی Stack جدید ایجاد می کند که می تواند اعداد صحیح را نگه دارد. سپس می توانید از متد های Push و Pop برای افزودن و حذف موارد از پشته برای نوع داده ای int  استفاده کنید.
همچنین می‌توانید از generic  در متد ها استفاده کنید. به مثال زیر توجه کنید.

public void Swap<T>(T[] array, int index1, int index2)

{

    T temp = array[index1];

    array[index1] = array[index2];

    array[index2] = temp;

}

 

این متد را می توان با هر نوع داده ای استفاده کرد، نوع آن در زمان فراخوانی متد مشخص مکی شود. با توجه به مثال زیر:

int[] arrayOfInts = { 1, 2, 3, 4, 5 };

Swap<int>(arrayOfInts, 0, 1);

 

 

مزیت جنریک( generic ) ها این است که به شما اجازه می دهند تا کد های شما حالت safe داشته باشند، به این معنی که نوع داده ای که یک کلاس یا متد می تواند با آن کار کند در زمان کامپایل بررسی می شود. که می تواند به جلوگیری از خطاهای زمان اجرا کمک کند و همچنین  کد شما را قابل اعتمادتر و اشکال زدایی را آسان تر می کند.

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

شما اولین نفری باشید که نظر میدهید

U2EKOX

آموزش کار با کوکی ها (Cookie) در Asp.net core -------- آموزش رمزنگاری فایلها در asp.net core -------- مقایسه واحدهای اندازه گیری rem و em در css -------- آشنایی با مفهوم Generic در C#.net -------- نحوه خواندن اطلاعات از فایل appsetting.json در Asp.net Core -------- آموزش استفاده از CQRS و Mediator در Asp.Net Core -------- نحوه ایجاد image checkbox در html css -------- عملیات crud و WebApi در Asp.net 6 -------- آموزش ایجاد custom model binder در Asp.net core -------- آموزش استفاده از Log4net در Asp.net 5 -------- آموزش پیاده سازی UnitOfWork در Asp.net Core قسمت اول -------- پیاده سازی Repository Pattern بصورت Generic Class -------- وارد کردن فقط حروف فارسی و جلوگیری از ورود حروف فارسی در تکست باکس با استفاده از JQuery -------- سورس استفاده از کامپوننت Roxy File manager در Asp.net core -------- آموزش ساخت صفحه Page Not Found (404) در Aspnet core -------- آموزش ایجاد Tag Helper سفارشی در Asp.net core -------- آموزش نحوه ایجاد Model برای دیتابیس موجود در Entity Framework Core -------- آموزش نحوه Upload و Download در Asp.net core 2 -------- آموزش dependency injection در Asp.net core 2 -------- آموزش تحت شبکه کردن برنامه های مبتنی بر c# در sql server -------- آموزش استفاده از Bundler & Minifier در Asp.Net Core -------- مروری بر Identity در Asp.net core2.1 (بخش دوم) -------- مروری بر Identity در Asp.net core2.1 (بخش اول) -------- آموزش مبحث Single Responsibility Principle (SRP) از بخش اصول طراحی شی گرا (SOLID) -------- آموزش publish کردن برنامه های Asp.net core بر روی سرور iis -------- پیاده سازی مسیریابی با استفاده از الگوریتم پیمایش اول سطح یا جستجوی اول سطح (BFS) در سی شارپ -------- آشنایی با SignalR در Asp.net core -------- آموزش استفاده از کلاس SeedData در Asp.net Core -------- قالب سایت فروشگاهی -------- آموزش ایجاد برنامه نصب (setup) قسمت سوم -------- آموزش ایجاد برنامه نصب (setup) قسمت دوم -------- آموزش ایجاد برنامه نصب (setup) قسمت اول -------- آموزش عملیات CRUD با استفاده از Ragor Pages در Asp.net Core2.0 -------- آموزش ثبت تصویر توسط دوربین در برنامه نویسی اندروید به زبان c#.net -------- حل مساله n وزیر با استفاده از الگوریتم ژنتیک و بصورت گرافیکی -------- آموزش نمایش تصویر loading در سمت client جهت بارگزاری صفحات با حجم زیاد از سرور در asp.net mvc -------- آموزش اعتبار سنجی غیر همزمان(AsyncValidation) با استفاده از جاوااسکریپت در Asp.net mvc -------- آموزش ایجاد breadcrumb با استفاده از sitemap در MVC -------- آموزش ایجاد برنامه چت دوطرفه با استفاده از Socket در سی شارپ -------- آموزش ارسال و دریافت فایل در برنامه تحت شبکه با استفاده ار سوکت (Socket) --------

ابتدای صفحه