ورود

View Full Version : سوال: کمک در درک مفهوم دات نت



qazwsx
یک شنبه 24 شهریور 1387, 22:37 عصر
من تا حالا تموم برنامه های که مینوشتم
win32
بوده و علاقه ای هم به دات نتنداشتم ولی
حالا میخوام با دات نت کار کنم ولی اصلا مفهوم اونو نمی دونم مثلا من یه دفترچه تلفن
دارم با بانک مای سکیول حالا اونو میخوام با دات نت بنویسم چه طوری میشه آیا تحت وب میشه مثلا با مرورگر وب اجرا میشه یا نه آیا برای داتنت باید ای اس پی رو یاد گرفت ممنون

Nima NT
یک شنبه 24 شهریور 1387, 23:40 عصر
برنامه هایی که تحت زبان های برنامه نویسی دات نت طراحی و پیاده سازی میشن هم مثل همه فایل های اجرایی پسوند exe دارن و هیچ فرقی با همزادشون ندارن.
فرق عمده برنامه های دات نت با برنامه های Win32 در کلامی ساده در این هست که برنامه های win32 کاملا" قابلیت جابه جایی دارند ولی برنامه های دات ت خیر ، برنامه های دات نت برای اجرا یه یک سری فایل DLL که سیستم dotNET Framework رو تشکیل میدن نیاز دارن. این فایل ها در واقع وظیفه ترجمه کد های برنامه کامپایل شده رو به زبان ماشین دارن.
همون طوری که میدونید برنامه های نوشته شده با دلفی ( win 32 ) بعد از اجرا اول به زبان اسمبلی و سپس به کد ماشین تبدیل میشن ، بر خلاف این امر برنامه های دات نت بعد از اجرا به کد های IL تبدیل شده و سپس به کد های ماشین بر گردونده میشن ، این فرق عمده برنامه های دات نت با وین 32 هست.
برنامه های دات نت معمولا" از سرعت کمتری نسبت به برنامه های وین 32 برخوردار هستن ولی از لحاظ قدرت و کارائی تفاوتی وجود نداره ، ساختار فایل اجرایی کامپایل شده تحت دات نت از ساختاری کاملا" متفاوت نسبت به وین 32 برخورداره .
برنامه نویسی تحت دات نت خیلی ساده تر از برنامه نوسی تحت وین 32 هست ، دات نت فریم ورک یک کتابخانه عظیم هست که تمامی توابع مورد نیاز یک برنامه نویس رو برای کارهای ساده و پیشرفته رو در بر میگیره تا برنامه نویس بدون کوچکترین نگرانی و بدون استفاده از کامپوننت های اضافی که گاهی کارائی برنامه رو پائین میارن به برنامه نویسی بپردازه و این یعنی راحتی ... !

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

vcldeveloper
دوشنبه 25 شهریور 1387, 01:25 صبح
همون طوری که میدونید برنامه های نوشته شده با دلفی ( win 32 ) بعد از اجرا اول به زبان اسمبلی و سپس به کد ماشین تبدیل میشن
کدهای Native به اسمبلی و سپس به کد ماشین تبدیل نمیشند. اصلا فرقی بین کد اسمبلی و کد ماشین نیست. پس کد مستقیما به کد ماشین تبدیل میشه، البته معمولا مستقیم مستقیم هم نیست و کامپایلر این کار را در چند مرحله انجام میده. ولی این تصور که کد اسمبلی موجودیتی مستقل از کد ماشین هست، تصور اشتباهی هست.

Nima NT
دوشنبه 25 شهریور 1387, 01:33 صبح
من نگفتم موجودیتی جدا داره ، بنده فقط برای اینکه درک IL ساده تر بشه این طوری مثال زدم.

vcldeveloper
دوشنبه 25 شهریور 1387, 01:49 صبح
حالا میخوام با دات نت کار کنم ولی اصلا مفهوم اونو نمی دونم
این لینک ها کمک تان میکنه:
http://barnamenevis.org/forum/showthread.php?t=55454

و...
http://en.wikipedia.org/wiki/Microsoft_.NET#Microsoft_.NET
http://delphi.about.com/od/delphifornet/Learn_Delphi_8_2005_2006_2007_for_NET.htm

xxxxx_xxxxx
دوشنبه 25 شهریور 1387, 03:16 صبح
اصلا فرقی بین کد اسمبلی و کد ماشین نیست.

هیچ فرقی ندارن؟؟؟

vcldeveloper
دوشنبه 25 شهریور 1387, 03:42 صبح
هیچ فرقی ندارن؟؟؟
نه؛ یک نسبت یک-به-یک بینشان برقرار هست. هر دستور اسمبلی معادل یک دستور زبان ماشین هست، فقط چون کار با اعداد هگز سخت و طاقت فرسا بود، این اسم ها (مثل mov, add, jmp, و...) را روی دستورات گذاشتند. همین نسبت یک-به-یک بین اسمبلی و زبان ماشین هست که باعث میشه هر معماری خاصی که برای CPU در نظر گرفته میشه، مجموعه دستورات اسمبلی خاص خودش را داشته باشه.

qazwsx
چهارشنبه 27 شهریور 1387, 23:33 عصر
قسمتهای آخر سوالم رو جواب ندادید

vcldeveloper
پنج شنبه 28 شهریور 1387, 00:41 صبح
قسمتهای آخر سوالم رو جواب ندادید
چون اونش دیگه مربوط به درک مفهوم دات نت نیست، یک سوال خاص درباره نوشتن دفترچه تلفن هست که باید در یک تاپیک جداگانه پرسیده بشه.

qazwsx
پنج شنبه 28 شهریور 1387, 01:20 صبح
باشه یه تاپیک جدا میزنم ممنون