تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 9 12345 ... آخرآخر
نمايش نتايج 1 به 10 از 87

نام تاپيک: آموزش گام به گام Vb.net

  1. #1
    پروفشنال anvar.net's Avatar
    تاريخ عضويت
    Apr 2007
    محل سكونت
    IRAN
    پست ها
    648

    پيش فرض آموزش گام به گام Vb.net

    با نام و یاد خدابعد از حدود یک ماهی که من عضو این انجمن هستم, با مجموعه سوال و جوابهای زیادی درگیر بودم که از طرف خودم یا سایر دوستان مطرح میشدند. ارتباط روزمره یا این انجمن مرا بر آن داشت تا با توجه به بضاعت علمی و زمانی خودم شروع به نگارش مجموعه مقالات سلسله واری برای افراد مبتدی کنم. مجموعه یاداشتهایی که بعد از 3 سال کار با Vb.net در اختیار داشتم, نیاز به بازنگریهایی دارد و همین انگیزه مرا واداشت تا تجربیات خودم را برای کسانی که تازه قصد ورود به دنیای برنامه نویسی را دارند به نگارش درآورم. این مقالات اموزشی را با توجه به فرصت آزاد خود به مرور در این تایپیک مطرح میکنم و انتظار دارم دوستان همراهی و همکاری لازم را داشته باشند.در ضمن چون بنده روی vb7 کار میکنم ممکنه تا حدودی برای دوستانی که با vb8 کار میکنند عجیب به نظر برسند در اینجا از همه آنها پوزش میخواهم و امیدوارم خودشون مسائل رو تحلیل کنند...........سرفصلهای مورد بحث در این مقالات :1) - مقدمه ای بر دات نت فریم ورک و ویژوال بیسیک2) - آشنایی با متغییرها و عملگرها3) - کلاس, متد و روال4) - ساختمان داده و آرایه ها 5) - ساختارهای تکرار و انتخاب6) - برنامه نویسی شیء گرا7) - دیباگ و استثناء8) - کار با رشته ها 9) - توابع10) - گرافیک11) - فایل12) - XML 13) - برنامه نویسی بانکهای اطلاعاتیو ..........................................در ضمن هدف طراحی و توسعه برنامه های تحت ویندوز است و از بحث در مورد وب خودداری میکنیم.

  2. این کاربر از anvar.net بخاطر این مطلب مفید تشکر کرده است


  3. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    هی گفتم پست بدم یا نه؟؟؟!!!! تاپیکتان را خراب نمیکند؟؟؟!!! بالاخره گفتم شاید اگر پست را بدهم بدانید که ما هم خوشحالیم و با ذوق و شوق و انگیزه بیشتری به کارتان ادامه دهید!
    دستتان درد نکند و موفق باشید، ولی دیگر بهتر است به جای مقاله بگویید، کتاب!!!

  4. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


  5. #3
    پروفشنال anvar.net's Avatar
    تاريخ عضويت
    Apr 2007
    محل سكونت
    IRAN
    پست ها
    648

    پيش فرض تاریخچه ویژوال بیسیک

    برای شناخت بیشتر ویژوال بیسیک دات نت باید آشنایی مختصری با پدربزرگ آن یعنی Basic داشته باشیم, زبان بیسیک در اوایل دهه 60 میلادی (1963) توسط پروفسور John kemeny یکی از اساتید کالج Dartmouth برای ایجاد بستری مناسب برای آموزش ساده برنامه نویسی برای افراد میتدی طراحی شد و همانطور هم که از نام آن میتوان فهمید, ایتدایی بودن (سادگی) یکی از صفات بارز آن بود.
    در سال 1975 بعد از انقلابی که با ساختن Microchip ایجاد شد, فکر داشتن یک کامپیوتر برای هر شخص در ذهن بیل گیتس ایجاد شد, وی و پل آلن دوست صمیمیش نسخه ای جدید از Basic را برای کامپیوترهای شخصی ایجاد کردند. بیسیک سالهای زیادی را همچنان ساده طی کرد و نسخه های متفاوتی را به خود گرفت تا اینکه در مارچ 1988 Alan Cooper پدر ویژوال بیسیک پوسته اولیه drag-and-drop را طراحی کرد و آنرا که Tripod نامیده میشد به بیل گیتس نشان داد. مایکروسافت برای خرید این مفهوم شروع به مذاکرات کرد و انرا خرید و نام یاقوت سرخ Ruby را به آن داد. در سال 1991 مایکروسافت QBasic و Ruby را با هم تلفیق کرد و نام تندر Thunder را بر آن گذاشت. نتیجه این تلفیق محیطی بود که براحتی میشد برای ویندوز با استفاده از drag-and-drop و کد نویسی برنامه ایجاد کرد این تولد ویژوال بیسیک بود, در سال 1992 نسخه 2 ویژوال بیسیک روانه بازار شد در این نسخه دسترسی سطح 1 برای ODBC , فرمهای MDI و متغیرهای Object به ویژوال بیسیک راه یافتند. در ژوئن سال 1993 نسخه شماره 3 ویژوال بیسیک شروع بکار کرد در این نسخه موتور اکسس (Jet), OLE, DAO و تکنولوژی ایجاد گزارش راه یافتند. در اکتبر 1996 برای اولین بار به کاربر اجازه ساخت Add-ins داده شد در همین نسخه 4 بود که کلاس و OCX راه را به ویژوال بیسیک باز کردند. در آوریل 1997 نسخه 5 روانه بازار شد در این نسخه راه برای نوشتن ActiveX باز شد. یکسال بعد یعنی 1998 نسخه 6 ویژوال بیسیک که کاملا قدرتمند بود وارد دنیای برنامه نویسی شد. این نسخه قابلیت طراحی صفحات وب را همراه خود آورد و در دسترسی به منابع داده راه را هموار نمود. در سال 2002 اولین نسخه ویژوال بیسیک دات نت و در سال بعد دات نت 2003 منتشر شد. 2 سال بعد نسخه نهایی vb.net یعنی 8 وارد بازار شد.
    نگاهی به تاریخچه vb حاکی از آن است که ویژوال بیسیک در طول این 16 سال همواره در پی ایجاد بسترهای جدید و راحتر بوده است بطوریکه شعار vb.net همواره ساده بودن و در عین حال قدرتمند بودن است.

  6. #4
    پروفشنال anvar.net's Avatar
    تاريخ عضويت
    Apr 2007
    محل سكونت
    IRAN
    پست ها
    648

    پيش فرض .NetframeWork چیست؟

    اساسا وظیفه این چهارچوب کاری Framework مدیریت و اجرای برنامه های کاربردی و سرویسهای وب است. دات نت فریم ورک خود از دو قسمت بنیادی به نامهای کتابخانه کلاسها (.Net framework Class Libraries) FCL و هسته اجرایی زبان مشترک (Common Language Runtime) CLR تشکیل شده است.
    کتابخانه کلاسهای دات نت فریم ورک مجموعه بسیار بزرگ از کلاسهای نوشته شده برای زبانهای مختلف و بصورت آماده است که فقط باید کاربر از انها استفاده کند و دیگر نیازی به نوشتن همه آنها ندارد. این موضوع یکی از مزایایی اصلی دات نت نسبت به زبانهای دیگر است. چرا که قبل از ورود دات نت ما مجبور بودیم همه چیز را خودمان بنویسیم. اما در حال حاضر آنها وجود دارند و ما فقط زحمت پیدا کردن و قرار دادن آنها را در جای مناسب می کشیم.
    اما CLR : CLR مسئول اجرای برنامه های دات نت است, وقتی یک برنامه نوشته شده با vb را کامپایل میکنیم, کدهای ما به زبانی واسط که CLR از آن سر در می آورد یعنی زبان بینابینی مایکروسافت MSIL یا اختصارا IL تبدیل میشود. هنگام اجرای برنامه CLR کدهای MSIL به سرعت به زبان ماشین ترجمه و اجرا میشوند. مزیت این روش در این است که اگر روزی مایکروسافت بخواهد برای سیستم عامل دیگری مانند لینوکس یا مک CLR بنویسد برنامه های کامپایل شده vb.net بدون هیچ مشکلی روی آن اجرا میشوند.

    برنامه های کامپایل شده با ابزارهای دیگر برنامه نویسی بجز .net به فرمت باینری در می آیند اما برنامه های ویژوال استدیو به MSIL یا IL کامپایل میشوند تا CLR بتواند آنها را اجرا کند. به همین دلیل به برنامه های کامپایل شده ویژوال ستدیو اسمبلی Assembly گفته میشود.
    اما نتیجه دیگری که دات نت فریم ورک برای کاربران عرضه کرد, سادگی راه برنامه نویسی بود چرا که برنامه های نوشته شده در هر سیستمی که این چهارچوب کاری را داشته باشد قابل اجرا هستند و هیچ گونه تداخلی مابین dll ها دیگر وجود ندارد. و برنامه نیازی به همراه داشتن فایلهای dll ندارد. مشکلی که در نسخه های قبلی به میزان زیاد وجود داشت.

    اسمبلی چیست :

    اسمبلی جایی است که کدهای IL یک برنامه نوشته شده با vb.net در آن قرار دارند. (بلوک های ساختاری برنامه های .net) در واقع CLR اسمبلی را اجرا میکند. در ویرایشهای قبلی vb این فایلهای exe یا dll بودند که اجرا میشدند اما در دات نت همه آنها جای خود را به اسمبلی داده اند. در واقع هنگامیکه vb برنامه ای را به کدهای IL کامپایل میکند آنها را بصورت ماژول در اسمبلی جای میدهد.

    محتویات یک اسمبلی :

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

  7. #5
    پروفشنال anvar.net's Avatar
    تاريخ عضويت
    Apr 2007
    محل سكونت
    IRAN
    پست ها
    648

    پيش فرض متغیر چیست؟

    متغیرهای نامهای سمبلیک برای مقادیر ذخیره شده در حافظه هستند, برای درک بهتر آنها را باکسهایی در حافظه تصور کنید که از بیرون دارای نام و در داخل دارای مقادیر مشخصی هستند. هر متغیر بوسیله 6 خصوصیت تعریف میشود که عبارتند از : نام, آدرس, نوع داده, مقدار, قلمرو و زمان عمر

    برای تعریف متغیرها از کلمه کلیدی Dim (مخفف Dimension به معنی بعد) استفاده میکنیم : Dim Varname As Vartype
    که Varname نام متغیر است که ما آنرا ایجاد میکنیم و Vartype نوع داده متغیر را مشخص میکند و ما آنرا انتخاب میکنیم مانند Integer , Double و String
    در تعریف متغیرها : کاراکتر اول نباید عدد باشد, در بین نام متغیر استفاده از فاصله مجاز نیست, حداکثر طول کارکترهای متغیر نباید بیشتر از 255 کاراکتر باشد.

    Dim myage As Integer
    Dim myfirstname, lastname As String
    Dim myname As String = "anvar.net"
    میتوان چند متغیر را در یک خط اعلان کرد, میتوان در همان خط اعلان به متغیرها مقداردهی کرد. در صورتی که ما این کار را نکنیم خود ویژوال بیسیک مقادیر پیش فرضی با توجه به نوع داده به آن نسبت میدهد. مثلا 0 برای تمام نوع داده عددی, False برای نوع داده بولین و .................

    آدرس هر متغیر در واقع مکانی از حافظه است که مقدار متغیر در آن نگهداری میشود, در مجموع با توجه به عمر متغیر آدرس متغیر در حافظه تغییر میکند. گاها آدرس یک متغیر I-value یک متغیر نیز نامیده میشود.
    نوع داده : نوع داده متغیر, مقادیر احتمالی را که متغیر میگرد, تعیین میکند.
    مقدار متغیر : محتوی مکان حافظه در آدرس یک متغیر است.
    قلمرو : قلمرو یک متغیر نحوه دسترسی به متغیر را فراهم میکند, مثلا اگر یک متغیر در داخل یک روال تعریف شود در سایر روالها قابل دسترسی نیست.
    متغیرها (همچنین ثابتها) دارای دارای یک قلمرو یا حوزه دید هستند. حوزه دید سطح دسترسی به متغیرها را در کدهای برنامه تعیین میکند. سطح دسترسی به یک متغیر در دو سطح تعریف میشود :
    سطح بلوک و سطح روال برای متغیرهای محلی, سطح ماژول و سطح پروژه
    متغیرهای محلی : اگر یک متغیر در داخل یک بلوک کد (بلوک یعنی عبارتی که با End و Loop یا Next به پایان میرسند)تعریف شود این متغیر فقط از داخل همین بلوک قابل دسترسی هست. و خارج از بلوک قابلیت دسترسی ندارد. مثلا
    If X<>10 Then
    Dim rec As Double
    Rec=1/X
    End if
    MsgBox(CStr(rec))
    در این مثال متغیری از نوع عدد صحیح در داخل بلوک If تعریف کرده ایم. اما چون تعریف ما در سطح بلوک است متغیر بعد از عبارت End if دیگر قابل دسترسی نیست.
    در صورتی که متغیر در داخل یک روال اعلان شود سطح دسترسی آن محدود به روال فوق است و فقط در داخل روال قابل دسترسی است.
    به متغیرهایی با سطح دسترسی بلوک یا روال متغیرهای محلی Local میگویند.متغیرهای که بصورت محلی تعریف میشوند میتوانند در سایر روالهای دیگر نیز با همان نام اعلان شوند.
    متغیرهای عمومی : شامل متغیرهایی هستندکه در سطح ماژول یا پروژه تعریف میشوند. در صورتی که در ماژول های استاندارد متغیز=ری را تعریف کنیم میتوان سطح دسترسی ب آن را با کلمات کلیدی Private و Public و Friend تعیین کرد. البته در اینجا اولویت با قلمرو خود ماژول است یعنی اگر یک متغیر Public را در داخل یک ماژول با قلمرو Friend تعریف کنیم, متغیر ما هم قلمرو Friend خواهد داشت نه Public
    دسترسی Private : یا خصوصی , متغیری که در بخش اعلان یک ماژول بصورت Private تعریف میشود فقط از داخل همان ماژول قابل دسترسی هست. در صورتی که یک متغیر در داخل یک ماژول با استفاده از کلمه کلیدی Dim اعلان شود آن متغیر سطح دسترسی ماژول را میگیرد.
    دسترسی Friend یا نامحدود : متغیری که در بخش اعلان یک ماژول استاندارد با سطح دسترسی Friend اعلان میشود در تمام پروژه قابل دسترسی هست و محدودیت ندارد. اما از سایر پروژه ها قابل دسترسی نیست.
    سطح دسترسی Public : متغیری که در قسمت اعلان یک ماژول استاندارد با قلمرو public و بصورت Public تعریف میشود.در کل پروژه و سایر پروژه هایی که به این پروژه دارای ارجاع هستند قابل دسترسی است.مثال :
    در داخل یک ماژول استاندارد با قلمرو Public دو متغیر با سطح دسترسی Public و Friend تعریف میکنیم.
    Public module Module1
    Public myvarpub As integer
    Friend myvarfr As integer
    End Module
    اگر پروژه 2 ما دارای یک ارجاع (Refrence) به پروژه 1 باشد , میتوانیم از داخل پروژه 2 به متغیری که با سطح دسترسی Public در یک ماژول با قلمرو Public که در پروژه 1 قرار دارد دسترسی پیدا کنیم.
    Project1.Module1.myvarpub=1000
    اما از داخل پروژه 2 ما قابلیت دسترسی به متغیرهای پروژه 1 را که بصورت Friend تعریف شده اند نداریم. چرا که این متغیرها (Friend) فقط در داخل همان پروژه دیده میشوند.
    زمان عمر : زمان عمر متغیر مشخص میکند که تا چه زمانی یک متغیر وجود دارد. به مثال زیر دقت کنید : در داخل یک روال یک متغیر محلی تعریف کرده ایم
    Sub proceduA…()
    Dim locvar1 As integer=10
    Call proceduB
    Locvar1=1
    End sub
    متغیر Locvar1 یک متغیر محلی است و مقدار اولیه آن 10 است. هنگامیکه برنامه کد فوق را اجرا میکند و به فراخوانی روال B میپردازد دیگر متغیر Locvar1 خارج از قلمرو روال B است و در داخل روال B قابل دسترسی نیست, گرچه هنوز در روال A معتبر است. به بیانی دیگر روال B میتواند یک متغیر محلی دیگر با همین نام در داخل خود داشته باشد. پس زمان عمر متغیر Locvar1 فقط در زمانی است که برنامه در داخل روال A است, و در صورت حرکت به روالی دیگر عمر خود را از دست میدهد تا زمانیکه دوباره به روال بازگردد.

    انواع داده :

    Boolean : 2 بایت از حافظه را میگیرد و فقط دو مقدار True و False را قبول میکند

    Byte : 1 بایت از حافظه را میگیرد و میتواند عددی بین 0 تا 255 (بدون علامت) بگیرد

    Char : 2 بایت از حافظه را میگیرد و کد کاراکتر از 0 تا 65535 را قبول میکند.

    Date : 8 بایت از حافظه را میگیرد و از 1 , 1 ژانویه تا 31 دسامبر 9999 را قبول میکند.

    Decimal : 12 بایت از حافظه را میگیرد و عددی بین +/-79,228,162,514,264,337,593,543,950,335 بدون ممیز تا -/+ 7.9228162514264337593543950335 با 28 رقم بعد از ممیز را قبول میکند.

    Double : 8 بایت از حافظه را میگیرد و عددی بین -1.79769313486231E308
    تا -4.94065645841247E-324 برای اعداد منفی و عددی بین 4.94065645841247E-324 تا 1.79769313486232E308 برای اعداد مثبت میگیرد.

    Integer : 4 بایت از حافظه را میگیرد و عددی صحیح بین -2,147,483,648
    تا 2,147,483,647 را میگیرد.

    Long : 8 بایت از حافظه را میگیرد و عدد صحیح بین -9,223,372,036,854,775,808
    تا 9,223,372,036,854,775,807 را میگیرد.

    Object : 4 بایت از حافظه را میگیرد و هر نوعی را که بتوان در متغیر object ذخیره کرد میگیرد.

    Short : 2 بایت از حافظه را میگیرد و عددی صحیح بین -32,768 تا 32,767 را میگیرد.

    Single : 4 بایت از حافظه را میگیرد و عددی بین -3.402823E38 تا -1.401298E-45
    برای اعداد منفی و عددی بین 1.401298E-45 تا 3.402823E38 برای اعداد مثبت میگیرد.

    String : 10 بایت + 2 * طول رشته از حافظه را میگیرد و از 0 تا 2 بیلیون کاراکتر یونیکد را میگیرد.

    User-Defined : مقدار فضایی که از حافظه میگیرد متغیر است, محدوده مقدار هر عضو این ساختار را نوع داده آن عضور تعیین میکند.

  8. این کاربر از anvar.net بخاطر این مطلب مفید تشکر کرده است


  9. #6
    کـاربـر بـاسـابـقـه am_merman01's Avatar
    تاريخ عضويت
    May 2006
    محل سكونت
    یه جایی گوشه دهکده جهانی تو یه کانکشن دایال آپ
    پست ها
    893

    پيش فرض

    دوست عزيز كارت خيلي عاليه اگه تداوم داشته باشه معركه ميشه.
    ما آماتورها كه خيلي از ديدن اين تاپيك خوشحال شديم.
    ولي كاشكي مي شد يكم سريع تر از مقدمات بگذري و بري سراغ توابع.
    به هر حال كارت خيلي درسته من كه كلي دعات ميكنم چون فعلاً چيزي بلد نيستم كه بتونم كمكت كنم.

  10. #7
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

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

    Boolean : 2 بایت از حافظه را میگیرد و فقط دو مقدار True و False را قبول میکند
    اینو تو کتابی که دارم میخونم هم دیده بودم فکر کردم شاید مشکل تایپی باشه ! آخه متغییر boolean که فقط 0 یا 1 میشه پس چرا 2 بایت ؟ بایس اشغال کنه ؟ مورد تکنیکی خاصی داره ؟

    Public module Module1
    Public myvarpub As integer
    Friend myvarfr As integer
    End Module
    اگر پروژه 2 ما دارای یک ارجاع (Refrence) به پروژه 1 باشد , میتوانیم از داخل پروژه 2 به متغیری که با سطح دسترسی Public در یک ماژول با قلمرو Public که در پروژه 1 قرار دارد دسترسی پیدا کنیم.
    Project1.Module1.myvarpub=1000
    اما از داخل پروژه 2 ما قابلیت دسترسی به متغیرهای پروژه 1 را که بصورت Friend تعریف شده اند نداریم. چرا که این متغیرها (Friend) فقط در داخل همان پروژه دیده میشوند.
    ببخشید شاید سوالم در این زمینه زیادی ابتدایی باشه ولی چون تازه اومدم تو محیط net. واسم بعضی چیزا یکم تازگی داره ! بگذریم .
    اینجا گفتی که اگه متغییری از نوع Public باشه تو پروژه های دیگه هم قابل دسترسه . تو محیط net. میتونیم 2 تا پروژه رو با هم باز کنیم و از هر دو بعنوان یک پروژه استفاده کنیم ؟ خب اگه کامپایل بشن اونوقت چی ؟ هر دو با هم کامپایل میشه یا بخشی از پروژه 2 هم که در پروژه 1 استفاده شده کام÷ایل میشه ؟

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

  11. #8
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام، با اجازه کاربر anvar.net! گفتم کمکی کرده باشم و شما روی همان اموزش متمرکز بشوید!
    اینو تو کتابی که دارم میخونم هم دیده بودم فکر کردم شاید مشکل تایپی باشه ! آخه متغییر boolean که فقط 0 یا 1 میشه پس چرا 2 بایت ؟ بایس اشغال کنه ؟ مورد تکنیکی خاصی داره ؟
    اقا اصلاً اینطور نیست! من تضمین میدهم که کاربر anvar.net اشتباه کرده اند و Boolean دو بایت نیست و همینجا عاجزانه ملتمسانه و نمی دانم چی چی آنه! در خواست میکنم تصحیحش کنند.اصلاً وحشت برتان ندارد،قول شرف میدهم و حاضر اثبات کنم Boolean دو بایتی نیست، یعنی اگر دو بایتی باشد همه چیز به هم میریزد! متغییر Boolean یک متغییر 4 بایتی است!
    (ونیز در دات نت 2 متغییر Decimal هم 16 بایتی است ولی دوستمان در دات نت 1 گفته اند،البته در اولین پست هم گفته بودند ! ولیBoolean از قدیم 4 بایتی بوده!)
    خوب حالا نمیخواد وحشت کنید! این برای هماهنگی با API های ویندوز است، چون فریم وروک و دیگر زبانهای برنامه نویسی هم در زیرساخت به API های ویندوز وصل میشوند و واحد اصلی انتقال اطلاعات در ویندوز 32 بیتی ، 32 بیت است که میشود 4 بایت!!!! و هر چه کدهایب شما در زمان نقل و اتقال و رد و بدل شدن در API ها نیاز به تبدیلات کمتری داشته باشند این باعث افزایش سرعت میشود. این مسئله فقط در RAM صادق است و در ذخیره سازی اطلاعات در بانکهای اطلاعاتی اینطور نیست!

    ببخشید شاید سوالم در این زمینه زیادی ابتدایی باشه ولی چون تازه اومدم تو محیط net. واسم بعضی چیزا یکم تازگی داره ! بگذریم .
    آقا تبریک میگم! خوش تشریف آوردید!!!
    اینجا گفتی که اگه متغییری از نوع Public باشه تو پروژه های دیگه هم قابل دسترسه . تو محیط net. میتونیم 2 تا پروژه رو با هم باز کنیم و از هر دو بعنوان یک پروژه استفاده کنیم ؟ خب اگه کامپایل بشن اونوقت چی ؟ هر دو با هم کامپایل میشه یا بخشی از پروژه 2 هم که در پروژه 1 استفاده شده کام÷ایل میشه ؟
    شما میتوانید چند EXE در یک Sulotion داشته باشید ولی مجزا خواهند بود، در اصل معنای واقعی Public در پروژه های DLL مشخص میشود که اگر چیزی Public نباشد، شما آن را در خارج از آن DLL (مثلاً EXE یا DLL که آن را Include کرده نخواهید دید!)

    فقط یه سوال محیط net. نقش مفسر رو ایفا میکنه ؟ اگه اینطوره سرعت اجرای برنامه ها افت نمیکنه ؟ یا اینکه برای اولین بار exe مخصوص همون ماشین رو ایجاد میکنه ؟
    اصلاً نقش مفسر ندارد!!!! یک محیط runtime است که برنامه در ان محیط میتواند اجرا شود.
    گرچه زیاد هم درست نیست ولی فعلاً اینطور در نظر بگیرید که دستورات کامپایلی شما در محیط دات نت بیشتر به دستورات jmp و call زبان ماشین برای پرش به جای اصلی اجرا در داخل محیط runtime پاس داده میشوند.
    بای!
    Last edited by _H2_; 30-06-2007 at 10:34. دليل: اضافه کردن Decimal

  12. #9
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    ممنون _h2_ جان کامل و جامع بود ولی وحشت انگیز 4 بایت !!!!

  13. #10
    پروفشنال anvar.net's Avatar
    تاريخ عضويت
    Apr 2007
    محل سكونت
    IRAN
    پست ها
    648

    پيش فرض تشکر و اصلاح

    از تمام دوستان تشکر میکنم. بخصوص از آقای H2 :
    *****************
    اما, مشکل از من نیست(گرچه ما اشتباه میکنیم), در تمام منابعی (بیش از 30 کتاب) که من نگاه کردم داده های Boolean فقط و فقط 2 بایت از حافظه رو اشغال میکنند. در vb6 هم همینطور بود,
    حالا مشکل از چی و کجاست من نمیدونم.

    اصل متن از کتاب : VB.NET language in nutshell , انتشارات O'Reilly , ص 52

    The Boolean is a 16-bit data type that can only represent two values: True and False. The VB keywords
    True and False are used to assign these values to a Boolean variable. When a numeric value is converted to Boolean, any nonzero value is converted to True, and zero is converted to False. In the other direction, False is converted to zero, and True is converted to -1. Incidentally, in C, C#, and C++, True is converted to 1. This change was made in Beta 1 of VB .NET
    to bring it in line with the other languages, but was subsequently changed back in Beta 2.)


صفحه 1 از 9 12345 ... آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

برچسب های این موضوع

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •