493

با سلام. در این پست آموزشی یکی از بهترین و کاملترین کتاب های آموزشی سی شارپ به زبان فارسی را جهت دانلود قرار داده ایم. هرچند سابقه این کتاب آموزشی به چند سال پیش برمیگردد ولی بدون شک یکی از بهترین مراجع آموزشی در زمینه زبان برنامه نویسی سی شارپ بشمار می رود. که شامل ۹۵۱ صفحه و نویسنده آن آقای سید محمد هاشمیان می باشد.همچنین تمام سرفصل های کتاب آموزشی C# بصورت کامل در ادامه مطلب موجود می باشد.

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

فصل اول : به ویژوال C# 2005 خوش آمدید.

نصب ویژوال C# 2005

محیط توسعه ویژوال C# 2005

صفحه Profile Setup

منو

نوار ابزار ها

ایجاد یک برنامه ساده

پنجره ها در IDE ویژوال استودیو ۲۰۰۵

امتحان کنید: ساختن پروژه Hello User

جعبه ابزار

نشانه گذاری مجارستانی تغییر یافته

ویرایشگر کد

استفاده از سیستم راهنمای ویژوال استودیو

خلاصه

تمرین

فصل دوم: چارچوب NET ، و ارتباط آن با C#

چارچوب NET چیست؟

چارچوب NET ، از چه اجزایی تشکیل شده است؟

چگونه با استفاده از چارچوب NET برنامه بنویسیم؟

MSIL و JIT

اسمبلی ها

کدهای مدیریت شده

مدیریت حافظه در NET

مراحل اجرای برنامه در NET

لینک دادن

C# چیست؟

چه نوع برنامه هایی را میتوان با استفاده از C# انجام داد؟

ویژوال استودیو ۲۰۰۵

راه حلهای ویژوال استودیو

نتیجه

فصل سوم : نوشتن نرم افزار

داده ها و اطلاعات

الگوریتم ها

یک زبان برنامه نویسی چیست؟

متغییرها

کار با متغییرها

توضیحات و فضاهای خالی

توضیحات

فضاهای خالی

نوع های داده ای

کاکردن با اعداد

عملیات ریاضی معمول روی اعداد صحیح

تند نویسی در عملیات ریاضی

محدودیت کار با اعداد صحیح

اعداد اعشاری

حالتهای دیگر

اعداد اعشاری با دقت معمولی

کار با رشته ها

اتصال رشته ها

استفاده از عملگر اتصال رشته در درون برنامه

عملیات بیشتر روی رشته ها

زیر رشته ها

قالب بندی رشته ها

قالب بندی بومی

جایگزینی زیر نوشته ها

تبدیل نوع های داده ای

استفاده از تاریخها

استفاده از خاصیتهای DataTime

کار با تاریخها

بولین

نگهداری متغییرها

دودویی

بیتها و بایت ها

نمایش مقادیر

متدها

چرا از متدها استفاده می کنیم؟

متدهایی که تاکنون دیده اید:

ایجاد یک متد

انتخاب نام برای متد

محدوده ها

نتیجه

تمرین

تمرین ۱

تمرین ۲

فصل چهارم : کنترل روند اجرای برنامه

تصمیم گیری در برنامه

دستور if

دستور Else

بررسی چند شرط با else if

دستورات if تو در تو

عملگرهای مقایسه ای

استفاده از عملگر مخالف

استفاده از عملگرهای مقایسه ای

عملگرهای And و Or منطقی

استفاده از عملگر And منطقی

مطالب بیشتر در رابطه با عملگرهای And و Or منطقی

مقایسه رشته ها

انتخاب بین حالتها با استفاده از switch

استفاده از switch یا و بدون حساسیت به نوع حروف

انتخابهای چند گانه

دستور default

استفاده از نوع های داده ای گوناگون در دستور switch

حلقه for

شمارش معکوس در حلقه

حلقه های foreach

حلقه های do

حلقه while

شرطهای قابل قبول برای حلقه های do  و while

حلقه های تو در تو

خروج زود هنگام از حلقه

دستور continue

حلقه های بی نهایت

نتیجه

تمرین

تمرین ۱

تمرین ۲

فصل پنجم: کار کردن با ساختارهای داده ای

مفهوم آرایه

تعریف و استفاده از آرایه ها

استفاده از foreach

انتقال آرایه ها به عنوان پارامتر

مرتب سازی آرایه ها

حرکت به عقب در آرایه ها

مقدار دهی اولیه به آرایه ها

مفهوم شمارنده ها

استفاده از شمارنده ها

تعیین موقیت

مفهوم ثابت ها

استفاده از ثابت ها

ثابتها با نوعهای داده ای گوناگون

ساختارها

ایجاد ساختارها

اضافه کردن خاصیت به ساختارها

کار با لیست های پیوندی

استفاده از لیست های پیوندی

حذف یک عنصر از لیست های پیوندی

نمایش عناصر موجود در لیست پیوندی

ایجاد جداول قابل جستجو با Hashtable ها

استفاده از Hashtable

جلوگیری از وارد شدن عناصر تکراری

نتیجه

تمرین

تمرین۱

فصل ششم : ایجاد برنامه های ویندوزی

پاسخ به رویدادها

تنظیم یک رویداد برای کنترل Button

ایجاد یک برنامه ساده

ایجاد فرم

شمارش کاراکترها

شمارش کلمات

ایجاد برنامه های پیچیده تر

برنامه ویرایشگر متن

ایجاد نوار ابزار

ایجاد نوار وضعیت

ایجاد قسمت ویرایش متن

پاک کردن بخش ویرایشگر متن

پاسخ به رویدادهای نوار ابزار

مفهوم فوکوس

استفاده از چندین فرم در برنامه

فرم About

نتیجه

تمرین

تمرین۱

تمرین ۲

فصل هفتم : نمایش کادرهای محاوره ای

کادر محاوره ای MessageBox

آیکونهای قابل استفاده در یک کادر پیغام

دکمه های موجود برای کادر پیغام

تنظیم دکمه ی پیش فرض

گزینه های مختلف کادر پیغام

حالتهای مختلف استفاده از متد Show

کادرهای پیغام نمونه

کنترل OpenFileDialog

خاصیتهای کنترل OpenFileDialog

متدهای OpenFileDialog

استفاده از کنترل OpenFileDialog

کنترل SavaFileDialog

خاصیتهای کنترل SavaFileDialog

متدهای کنترل SavaFileDialog

استفاده از کنترل SavaFileDialog

کنترل FontDialog

خاصیتهای کنترل FontDialog

متدهای کنترل FontDialog

استفاده از کنترل FontDialog

کنترل ColorDialog

خاصیتهای کنترل ColorDialog

استفاده از کنترل ColorDialog

کنترل PrintDialog

خاصیتهای کنترل PrintDialog

استفاده از کنترل PrintDialog

کلاس PrintDocument

خصوصیات کلاس PrintDocument

چاپ یک سند

کنترل FolderBrowserDialog

خاصیتهای کنترل FolderBrowser

استفاده از کنترل FolderBrowser

نتیجه

تمرین

تمرین ۱

تمرین ۲

فصل هشتم : منوها

درک ویژگیهای یک منو

تصاویر

کلیدهای دسترسی

شورت کات ها

علامت تیک

پنجره Properties

ایجاد منوها

طراحی منوها

اضافه کردن نوار ابزارها و کنترل ها

نوشتن کد برای منوها

کدنویسی منوی View و نوار ابزارها

امتحان برنامه

منوهای فرعی

ایجاد منوهای فرعی

فعال و غیر فعال کردن گزینه های منو و دکمه های نوار ابزار

نتیجه

تمرین

فصل نهم: ساختن اشیا

مفهوم اشیا

کپسولی بودن

متدها و خاصیت ها

رویدادها

قابل رویت بودن

یک کلاس چیست؟

ایجاد کلاسها

قابلیت استفاده مجدد

طراحی یک شیئی

حالت

رفتار

نگهداری حالت

خاصیت های فقط – خواندنی

خاصیتهای خوندنی – نوشتنی

متد IsMoving

امتحان کنید: اضافه کردن متد IsMoving

متدهای سازنده

ایجاد یک متد سازنده

وراثت

اضافه کردن متدها و خاصیت های جدید

اضافه کردن متد  GetPower ToWeightRatio

تغییر دادن پیش فرض ها

چند شکلی بودن » کلمه ای ترسناک، مفهومی ساده

Override کردن متدهای بیشتر

به ارث بردن از کلاس  Object

اشیا و ساختارها

کلاسهای چارچوب NET

فضای نام

راهنمای using

وراثت در چارچوب NET

نتیجه

فصل دهم : مباحث پیشرفته برنامه نویسی شیئی گرا

سربار گذاری متدها

استفاده از خاصیت ها و متدهای Static

استفاده از خاصیت های Static

استفاده از متدهای Static

سربار گذاری عملگرها

درک عملگرها

چگونگی سربار گذاری عملگرها

کلاسهای Abstract

کلاسهای sealed

Interface ها

ایجاد یک برنامه ی کاربردی

شورت کات های اینترنتی و Favorites ها

استفاده از کلاسها

پیدا کردن گزینه های Favorites

مشاهده لینک ها

ایجاد نمونه ای دیگر از برنامه ی Favorite Viewer

ایجاد برنامه ی Favorites Tray

نمایش گزینه های Favorites

نتیجه

فصل یازدهم : اشکال زدایی و کنترل خطا در برنامه

انواع مختلف خطاها

خطاهای دستوری

خطاهای اجرایی

خطاهای منطقی

اشکال زدایی

ایجاد یک برنامه نمونه

کنترل اجرای برنامه با استفاده از Breakpoint ها

گزینه های پر کاربرد در نوار ابزار Debug

پنجره ی Breakpoints

کنترل استثنا ها در برنامه

چگونگی یافتن بلاک Catch برای یک استثنا

کلاس Exception

دستور throw

دستورات try و catch

ایجاد بلاک های catch اختصاصی

خاصیت ها و متدهای کلاس Exception

نتیجه

فصل دوازدهم : ایجاد کتابخانه های کلاس

مفهوم کتابخانه های کلاس

ایجاد یک کتابخانه ی کلاس

ایجاد یک کتاخانه ی کلاس برای Favorites Viewer

برنامه های چند لایه

استفاده از نامگذاری قوی

امضا کردن اسمبلی ها

نسخه های یک اسمبلی

ثبت کردن یک اسمبلی

ابزار GacUtil

طراحی کتابخانه های کلاس

استفاده از یک کتابخانه ی کلاس شخص ثالث

استفاده از Object Browser

نتیجه

تمرین

فصل سیزدهم: ایجاد کنترلهای سفارشی

کنترلهای ویندوزی

ایجاد و تست کردن کنترل های سفارشی

ایجاد کردن خاصیت برای کنترل های سفارشی

اضافه کردن خاصیت ها

اضافه کردن متد به کنترل های سفارشی

اضافه کردن رویداد به کنترل

زمان اجرا یا زمان طراحی

ایجاد یک کتابخانه ی فرم

ایجاد یک کتابخانه ی فرم حاوی فرم ورود

استفاده از کتابخانه ی فرم ایجاد شده

استفاده از رویدادهای موجود در کتابخانه ی فرم

نتیجه

تمرین

فصل چهاردهم: ایجاد برنامه های گرافیکی

ایجاد یک برنامه ی Paint ساده

ایجاد یک پروژه همراه با کنترل های سفارشی

برنامه های گرافیکی چگونه کار می کنند؟

ترسیم بیت مپی

ترسیم برداری

ایجاد کلاس GraphicsItem

مختصات صفحه و مختصات برنامه

بررسی حرکات ماوس و رسم اشیای GraphicsCircle

نا معتبر سازی

بهینه سازی کردن رسم

انتخاب رنگ

ایجاد کنترل ColorPalette

پاسخ دادن به کلیک ها

استفاده از دو رنگ در برنامه

مشخص کردن رنگهای مورد استفاده

استفاده از رنگهای بیشتر در برنامه

استفاده از کادر Color

استفاده از رنگهای سیستمی

استفاده از ابزارهای متفاوت

استفاده از دایره های توخالی

کار با عکسها

نمایش تصاویر

تغییر اندازه ی تصاویر

متدهای دیگر کلاس Graphics

نتیجه

فصل پانزدهم: استفاده از بانکهای اطلاعاتی

بانک اطلاعاتی چیست؟

اشیای موجود در Access

جدولها

پرس و جوها

دستور SELECT در زبان SQL

پرس و جو ها در Access

ایجاد یه پرس و جو

کامپونتهای دسترسی اطلاعات

DataSet

DataGrid View

BindingSource

BindingNavigator

TableAdapter

اتصال داده ها

نتیجه

تمرین

تمرین ۱

تمرین ۲

فصل شانزدهم: برنامه نویسی بانک اطلاعاتی با ADO.NET ,SQL Server

ADO.NET

فضای نام Data

کلاس SqlCommand

خاصیت Connection

خاصیت CommandTaxt

خاصیت Parameters

متد ExecuteNonQuery

کلاس SqlDataAdapter

خاصیت SelectCommand

استفاده از Command Builder برای ایجاد دستورات SQL دیگر

متد Fill

کلاس DataSet

کلاس Data View

خاصیت Sort

خاصیت RowFilter

متد Find

استفاده از کلاسهای ADO . NET در عمل

کاربرد dATAsET در برنامه

اتصال داده ها

CurrencyManager , BindingContext

اتصال کنترل ها

مثال ایجاد اتصال

نتیجه

تمرین

تمرین ۱

فصل هفدهم: برنامه های مبتنی بر وب

معماری برنامه های تحت وب

برنامه های تحت وب در مقایسه یا برنامه های تحت ویندوز

مزایای برنامه های تحت ویندوز

برنامه های تحت وب

اجزای اصلی برنامه های تحت وب

سرور وب

مرورگر

HTML

JavaScript , VBScript

CSS

ASP

مزایا

فایلهای خاص در یک برنامه ی تحت وب

فایل Global.asax

فایل web.config

استفاده از محیط ویژوال استودیو

کنترلهای موجود در جعبه ابزار

ایجاد برنامه ها تحت وب

ایجاد یک فرم وب برای پردازش سمت سرور و سمت کلاینت

دریافت اطلاعات و اعتبار سنجی آنها

طراحی ظاهر سایت

استفاده از کنترل GridView برای نمایش داده ها در فرم وب

محل قرارگیری یک برنامه ی تحت وب در ویژوال استودیو

نتیجه

تمرین

فصل هجدهم: تشخیص هویت در برنامه های تحت وب

تشخیص هویت در یک سایت وب

تشخیص هویت با استفاده از ویندوز

تشخیص هویت با استفاده از فرمهای وب

ابزار مدیریت سایت وب (WAT)

کنترلهای Login

نتیجه

تمرین

تمرین۱

فصل نوزدهم: XML و ویژوال C# 2005

درک XML

XML شبیه به پیست؟

XML برای افراد مبتدی

پروژه ی دفتر تلفن

ایجاد پروژه

کلاس SerializableData

دریافت داده ها از یک فایل XML

تغییر در داده ها

فرستادن ایمیل

ایجاد لیستی از آدرسها

در نظر نگرفتن اعضا

استخراج رکوردها از فایل XML

اضافه کردن رکوردهای جدید

حرکت در بین داده ها

حذف کردن داده ها از برنامه

بررسی لبه ها

ایجاد یکپارچگی بین برنامه ی دفتر تلفن و دیگر برنامه ها

توضیح اصول یکپارچه سازی

خواندن اطلاعات برنامه ی دفتر تلفن در یک برنامه ی دیگر

نتیجه

تمرین

تمرین ۱

تمرین ۲

فصل بیستم

: وب سرویس ها و NET Remoting

وب سرویس چیست؟

نحوه ی عملکرد وی سرویس ها

SOAP

ایجاد یک وب سرویس

ایجاد یک وب سرویس ساده

اضافه کردن متدهای دیگر

ایجاد سرور پروژه ی Picture Service

ایجاد پروژه

برگرداندن آرایه ها به عنوان نتیجه ی متد

برگرداندن یک ساختار به عنوان نتیجه ی یک متد در وب سرویس

ایجاد برنامه ی کلاینت

WSDL

ایجاد برنامه ی کلاینت

اضافه کردن یک وب سرویس به برنامه

نمایش لیست فولدرها در برنامه

نمایش لیست فایلهای موجود و انتخاب آنها

NET Remoting

ایجاد پروکسی

نتیجه

تمرین

تمرین ۱

تمرین ۲

فصل بیست و یکم : توزیع برنامه های کاربردی

منظور از توزیع برنامه چیست؟

توزیع برنامه با استفاده از روش ClickOnce

توزیع برنامه با استفاده از روش XCOPY

ایجاد یک برنامه ی نصب با استفاده از ویژوال استودیو ۲۰۰۵

ایجاد یک برنامه ی نصب کننده

ویرایشگر رابط کاربری برنامه ی نصب

توزیع راه حلهای گوناگون

اسمبلی های خصوصی

اسمبلی های عمومی

توزیع برنامه های مبتنی بر وب

توزیع وب سرویس ها

ابزارهای مفید

نتیجه

تمرین

تمرین۱

تمرین۲

فصل بیست و دوم : ایجاد برنامه های موبایل

درک محیط

Common Language Runtime

ActiveSync

نوع های داده ای در CF

کلاسهای موجود در Compact Framework

ایجاد یک بازی برای Pocket PC

نتیجه

تمرین

ضمیمه ی ۱: ادامه ی مسیر

منابع آنلاین

منابع مایکروسافت

منابع دیگر

ضمیمه۲: برنامه نویسی تجاری و چند لایه در NET

چرا NET ؟

مشکلات تجاری رفع شده توسط NET

کارایی و مقیاس پذیری

مزایای NET

پذیرش استانداردهای همگانی

سرویس های وب

ویژگی های محیط توسعه Visual Stadio .NET

Common Language Runtime

زبان های برنامه نویسی NET

Intermediate Language

تکامل برنامه نویسی لایه ای

تعریف

مدیریت متمرکز

محاسابات توزیع شده

کارایی

مقیاس پذیری

قواعد و دستورات تجاری

راحتی کاربر

برنامه های دو لایه

مدیریت کد در برنامه های دو لایه

کارایی

دسترسی داده ها

قواعد تجاری

برنامه های سه لایه

سرویس های کاربران

سرویس های تجاری

سرویس های اطلاعاتی

مدیریت کد

مقیاس پذیری

قواعد تجاری

برنامه نویسی چند لایه

کلاس خارجی

کلاس اصلی تجاری

کلاسهای دسترسی اطلاعات

سرویس های وب

مدل لایه وب سرویس ها

چرا وب سرویس ها؟

ضمیمه ی ۳: معماری پلت فرم NET Framework

کامپایل سورس کد به ماژول های مدیریت شده

ترکیب ماژول های مدیریت شده در اسمبلی ها

بارگذاری Common Language Runtime

اجرای کدهای مدیریت شده

مجموعه کتابخانه کلاس NET Framework

سیستم نوع داده ای عمومی

خصوصیات عمومی زبانهای برنامه نویسی

ضمیمه ۴: مدیریت حافظه در NET

درک مبانی کار Garbage Collector

الگوریتم Garbage Collection

ارجاع های ضعیف

نسلها

دیگر نتایج کارایی Garbage Collector

اشیای بزرگ