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

با سلام و وقت بخیر . بریم سر حلقه while. حلقه while به for بسیار شبیه است. در مقابل آن شرط حلقه و در بدنه آن کد های حلقه را مینویسیم. فقط فراموش نکنید شمارنده را اضافه کنید وگرنه حلقه تا بی نهایت پیش میرود. اگر for را یاد گرفته باشید، حرفی برای گفتن درمورد while باقی نمیماند. به دو صورت میتوان ساختا...

سلام و وقت بخیر. در این قسمت درمورد حلقه for صحبت خواهیم کرد. شرط یک حلقه for از سه بخش تشکیل میشود و در هر بار تکرار حلقه، کد های درون {} اجرا میشوند. هر بخش شرط با ; از هم جدا میشوند. در بخش اول شرط، شمارنده حلقه تعریف میشود. این شمارنده در بیرون حلقه تعریف میشود. در مثال زیر i = 0 شمارنده حلقه اس...

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

سلام و وقت بخیر. در این بخش، درمورد آرایه ها صحبت میکنیم. آرایه ها دسته ای از data type های یکسان به هم چسبیده هستند. وقتی یک آرایه n تایی تعریف میکنیم، تعداد n خانه حافظه پشت سر هم به این آرایه اختصاص داده میشود. به یاد داشته باشید که اگر مثلا یک آرایه 4 تایی تعریف کردید، خانه های آرایه از 0 شروع ش...

سلام دوستان. در این قسمت درمورد اشاره گر ها صحبت خواهیم کرد. به شکل زیر دقت کنید (با paint کشیدم!!! ). فرض کنید خانه های حافظه از شماره 0x000000 تا 0xFFFFFF نامگذاری شده اند. یک متغیر n با مقدار 25 تعریف میکنیم (خط 4). در جایی از حافظه، این متغیر ذخیره میشود. مثلا در خانه شماره 0x000080 ذخیره میشود....

با سلام مجدد ، در این قسمت به ادامه مبحث Data Types در زبان C میپردازیم. نوع دیگر Data Type ها string است. string (رشته) آرایه ای از کاراکتر ها است. برای بوجود آوردن string، یک آرایه بطول string خود بوجود می آوریم. یک فایل جدید با نام دلخواه با gedit یا vim باز کنید. درون آن محتویات زیر را وارد کنید...

با سلام مجدد خدمت دوستان ، در ادامه مباحث جلسه گذشته این نکته رو اضافه میکنم که هر بار سورس کدتون رو عوض کنید، باید دوباره از دستور gcc استفاده کنید تا کد ها کامپایل شوند. برای edit کردن سورس کد ها میتوانید از ابزار gedit هم استفاده کنید که شبیه notepad در ویندوز است. در این جلسه درمورد data types ص...

با سلام و وقت بخیر. در این مجموعه قصد دارم اصول برنامه نویسی زبان C را در سیستم عامل لینوکس برای شما عزیزان توضیح دهم.اگر فبلا در ویندوز برنامه نویسی کرده باشید میدانید که ما به یک Compiler برای اجرا کردن برنامه های خود نیاز داریم. در ویندوز اغلب از Visual Studio برای زبان های متفاوت استفاده میکنی...

به عنوان آخرین مبحث از سری مباحث مرتبط کار با Thread ها به سراغ نقش CLR ThreadPool می رویم. در قسمت ماهیت Asynchronous در delegate ها گفتیم که بوسیله متد BeginInvoke و EndInvoke می توان یک متد را به صورت Asynchronous فراخوانی کرد، اما نکته ای که اینجا وجود دارد این است که CLR با این کار به صورت مستق...

خیلی وقت ها در برنامه ها نیاز است که کد ما در بازه های زمانی مشخص اجرا شود، برای مثال کدی که باید هر 5 ثانیه یا هر یک دقیقه یکبار اجرا شده و عملیات خاصی را انجام دهد، مانند نمایش تاریخ و ساعت در برنامه و یا بررسی ایمیل ها و مطلع کردن کاربر از ایمیل های جدید. برای شرایطی از این قبیل می توانیم از کلاس...

زمانی که یک Thread جدید در برنامه های دات نت ایجاد می شوند، این Thread ها می توانند به دو صورت Foreground و Background اجرا شوند: Thread های Foreground: زمانی که کی Thread در حالت Foreground اجرا می شود باعث می شود که Thread اصلی برنامه تا زمان کامل شدن اجرای Thread ایجاد شده در حالت اجرا بماند. ...

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

در این نکته قصد دارم نمونه کدی خدمت شما دوستان ITPRO معرفی کنم که قابلیت دانلود فایل با قابلیت Resume را به شما می دهد. نمونه کدی که برای شما قرار می دهم یک متد است که دو پارامتر به عنوان ورودی ایجاد می کند، یکی آدرس فایل دانلودی و دیگری مسیر فایل جهت دانلود: public static void DownloadFile(strin...

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

در این نکته قصد دارم تا نحوه گرفتن عکس از صفحه نمایش را خدمت دوستان آموزش بدم. در حقیقت این مطلب یک نمونه کد آماده است که بوسیله PInvoke و استفاده از توابع Windows به شما امکان تهیه عکس از صفحه نمایش را می دهد. برای اینکار ابتدا کلاسی به صورت زیر تعریف می کنیم: public class API { [DllImport...

در زبان سی شارپ مفهومی وجود دارد به نام Type Casting که به شما اجازه می دهد تا نوع های داده مختلف را به هم تبدیل کنید. یکی از پرکاربرد ترین تبدیل ها، تبدیل رشته به سایر نوع ها است، برای مثال برای تبدیل رشته به عدد صحیح به صورت زیر عمل می کنیم: int num = int.Parse("12"); یا برای تبدیل تاریخ به رشته ...

همانطور که در مطالب قبلی گفتیم، زمانی که کدی در زبان سی شارپ کامپایل می شود، خروجی یگ اسمبلی است که شامل اطلاعاتی مانند کد IL، اطلاعات اسمبلی (Manifest) و اطلاعات Type ها (Metadata) است. به طور کلی، اسمبلی ها در دات نت به دو دسته تقسیم می شوند: Class Library ها: یا فایل های DLL که می توان در سایر...

یکی از قابلیت های زبان سی شارپ، تخصیص حافظه stack به صورت مستقیم برای متغیرهای محلی یا local variable ها است. برای اینکار می بایست از کلمه کلیدی stackalloc استفاده کرد. البته لازمه استفاده از این قابلیت استفاده از Pointer ها است. این قابلیت باعث می شود که متغیر ایجاد شده توسط GC مدیریت نشود. برای مث...

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

یکی از اصول مهم در برنامه نویسی شئ گرا وراثت یا Inheritance است. معمولاً وراثت را با این تعریف می شناسیم: وراثت یا Inheritance اشاره به این قابلیت دارد که یک کلاس می تواند خصوصیات و رفتار های تعریف شده در یک کلاس دیگر را به ارث ببرد. اما در برخی مطالب با دو عبارت Is a و Has a برخورد می کنیم که مربوط...

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

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

خیلی اوقات پیش می آید که بخواهیم در یک برنامه بررسی کنیم که دسترسی به اینترنت وجود دارد یا خیر. یکی از روش ها که شاید خیلی از برنامه نویس ها از آن استفاده می کنند ارسال درخواستی به یک وب سایت اینترنتی است که در صورت دریافت پاسخ، دسترسی به اینترنت وجود خواهد داشت: private static bool IsConnected...

در Update 1 از Visual Studio 2015، پنجره جدیدی به این IDE دوست داشتنی اضافه شده با نام C# Interactive که پنجره ای از نوع REPL که مخفف Read-Eval-Print-Loop است می باشد. در این پنجره شما به راحتی می توانید کدهای سی شارپ را نوشته و خروجی مستقیم بگیرید. امکاناتی مانند تعریف متدها و کلاس ها و همچنین پشتی...

بحث خطایابی و یا اصطلاحاً Debugging کدها یکی از مباحث بسیار مهم در دنیای برنامه نویسی است و هر برنامه نویسی باید در این حوزه تخصص و دانش کافی داشته باشد. علاوه بر تخصص برنامه نویس، IDE هایی که برنامه نویس ها با آن ها کار می کنند می بایست ابزارهای کافی برای اینکار را در اختیار برنامه نویس قرار دهند. ...

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

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

به جرات می توان گفت که Visual Studio یکی از قدرتمندترین IDE های موجود است که امکانات وسیعی را در اختیار برنامه نویسان قرار می دهد. یکی از این قابلیت ها، قابلیت Task List است که می خواهیم در این مطلب با آن آشنا شویم. برای استفاده از این قابلیت ابتدا می بایست پنجره Task List را باز کنید، برای باز کردن...

در زبان سی شارپ، می توان بوسیله کلاس Directory با پوشه ها کار کرد. همانند کلاس File، کلاس Directory یکسری متدهای static دارد که به اجازه انجام عملیات های مختلف بر روی پوشه ها را می دهد. در این مطلب به بررسی مهمترین متدهای این کلاس خواهیم پرداخت: ایجاد پوشه بوسیله متد CreateDirectory می توان پ...

کامپیوترها برای اجرای کدهای نوشته شده در زبان های برنامه نویسی مختلف، باید کدها را تبدیل به زبان ماشین کنند. زبان کامپیوتر زبان دو دو یی است، یعنی کامپیوتر تنها اعداد 0 و 1 را می شناسد. یکی از مفاهیمی که بهتر است قبل از شروع برنامه نویسی با آن آشنا شویم مبناهای عددی مختلف است که در این قسمت به این م...

در قسمت اول گفتیم که هر برنامه کامپیوتری برای اجرا باید به زبان ماشین تبدیل شود، زیرا کامپیوتر تنها زبانی که متوجه می شود زبان ماشین است، یعنی زبان 0 و 1. در حقیقت کامپیوتر شما از حافظه های مختلفی تشکیل شده، مانند حافظه اصلی (RAM)، رجیسترهای CPU که حافظه های بسیار محدودی هستند، حافظه های جانبی مثل ه...

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

کلاس File در زبان سی شارپ، علاوه بر اینکه قابلیت نوشتن و خواندن از فایل ها را در اختیار ما قرار می دهد، شامل یکسری ویژگی های دیگر نیز است که در این مطلب قصد داریم برخی از آن ها را بررسی کنیم: کپی کردن فایل ها بوسیله متد Copy در کلاس File می توان فایل ها را کپی کرد، برای اینکار کافیست به صورت ...

خیلی وقت ها، زمانی که قصد داریم از فایلی در زبان سی شارپ استفاده کنیم، به دلیل باز بودن فایل در برنامه دیگر و یا اصطلاحاً Lock بودن فایل توسط سایر Process ها با پیغام خطا مواجه می شویم، اما راهکاری وجود دارد که می توانیم ابتدا بررسی کنیم که فایل قابل دسترس هست یا نه. برای اینکار ابتدا یک Extension M...

خیلی وقت ها، اشیاء ای که ایجاد می کنیم می بایست قابلیت مرتب سازی داشته باشند. برای مثال، کلاس List~T، متدی دارد به نام Sort که لیست را مرتب می کند. این متد بر اساس مکانیزم مرتب سازی تعریف شده برای نوع T انتخاب شده اقدام به مرتب سازی لیست می کند، همچنین امکان مشخص کردن مکانیزم مرتب سازی برای لیست نیز...

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

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

با سلام به همه دوستان و همراهان عزیز itpro. در مطلب قبل درباره ی multi-threading یا چندنخی در جاوا صحبت کردیم و گفتیم که با استفاده از اینترفیس Runnable می توان از این قابلیت استفاده کرد. در این مطلب قصد داریم که راه دیگری را برای استفاده از قابلیت تردها در زبان جاوا را بیان کنیم. این روش استفاده از...

با سلام به همه دوستان و همراهان عزیز Itpro. در مطلب قبل درباره ی مفاهیم Thread ها و Multi-threading صحبت کردیم. در این مطلب قصد داریم تا یکی از راه های پیاده سازی تردها در جاوا را توضیح دهیم. اولین راه ساختن ترد پیاده سازی اینترفیس Runnable می باشد. اگر شما قصد داریم که کلاسی که تعریف کرده اید توسط ...

با سلام به همه دوستان و همراهان عزیز itpro. یکی از قابلیت های جدید که به زبان برنامه نویسی جاوا اضافه شده است lambda expression است و این قابلیت به عنوان یکی از بهترین قابلیت های جاوا شناخته می شود. Lambda expression برنامه نویسی تابعی را آسان تر می کند و باعث می شود که روند برنامه نویسی ساده تر و س...

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

با سلام به همه دوستان و همراهان عزیز itpro. داده ساختاری که در این مطلب قصد معرفی آن را داریم Hashtable می باشد. کلاس Hashtable مکانیزمی را فراهم می کند که داده ها بر اساس کلید هایی که از طرف کاربر تعریف شده است مرتب شوند. برای مثال در یک Hashtable که آدرس ها را ذخیره می کند شما می توانید آدرس ها ر...

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

با سلام به همه دوستان و همراهان عزیز Itpro. یکی از داده ساختار هایی که در نرم افزار ها و همه سیستم عامل ها مورد استفاده قرار می دهند داده ساختار پشته است. پشته مکانیزم last in first out یا (LIFO) را پیاده سازی می کند. به این شکل که پشته فقط یک راه ورود و خروج برای داده ها دارد. پس آخرین داده ای که و...

زمانی که شما بوسیله ADO.NET در برنامه های خود قصد ارتباط با یک بانک اطلاعاتی را دارید، می بایست برای ارتباط با بانک مورد نظر از connection string استفاده کنید. connection string رشته ایست که نحوه ارتباط و پارامترهای مورد نیاز برای ارتباط با بانک اطلاعاتی را مشخص میکند. ساختار کلی یک connectio string...

با سلام به همه دوستان و همراهان Itpro . در این مطلب نیز قصد دارم یکی دیگر از داده ساختارهای موجود در زبان قدرتمند جاوا را شرح دهم. داده ساختاری که قصد دارم توضیح دهم BitSet نام دارد. BitSet کلاس BitSet یک گروه از بیت ها و فلگ ها را تعریف می کند که می تواند یک مجموعه باشد. این کلاس زمانی که می خواه...

با سلام به شما دوستان و همراهان Itpro. تا به این قسمت از مطالب به مفاهیم زبان جاوا و مفاهیم شئ گرایی در جاوا در Itpro پرداختیم. ولی باید بگم که مطالبی که تا کنون توضیح دادیم مطالب پایه و اساسی زبان جاوا بودند. حال از این به بعد به بررسی مفاهیم پیشرفته تر در جاوا می پردازیم که هنگام تولید و ساختن یک ...

همانطور که می دانید، ایجاد کردن اشیاء در زمان اجرا باعث اشغال حافظه Heap می شود. شاید برای تعداد اشیاء کم این موضوع چندان به چشم نیاید، اما فرض کنید می خواهید 10 هزار شئ از روی یک کلاس ایجاد کنید. بزارید با یک مثال این موضوع رو توضیح بدم، کلاسی داریم که در سازنده اون حدود 10 هزار شئ ساخته میشه و جای...

در برنامه هایی که مبتنی بر .NET نوشته می شوند، هر برنامه نوشته شده بعد از Compile شدن، تبدیل به یک فایل dll یا exe می شود. به این فایل های خروجی اصطلاحاً Assembly می گویند. در حقیقت Assembly ها، Package هایی هستند که شامل اطلاعات مربوط به کدهای نوشته شده برای برنامه هستند. هر اسمبلی به صورت پیش فرض ...

در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....