الموضـوعات :
 دروس عامة
 التعامل مع قواعد البيانات
 الحماية
 لغة VB.NET
 الكتب
 البرامج


العنوان الدرس الكاتب

أضف درس أو تعليق

عدد الزوار : 150485
 أنواع البيانات في VB.NET

يعرف المتغير الجديد في Visual Basic .NET بإستخدام جملة Dim . على سبيل المثال, الجملة التالية تقوم بتعريف متغير إسمه (myvar) :

Dim myVar
عندما تعرف متغيّر بدون تحديد نوع المتغيّر, كما فعلنا في المثال السابق, فإن المتغير يمثّل عنصر (Object) . وهذا العنصر يمكن أن يمثّل أيّ نوع من أنواع البيانات في بيئة ال.NET سواء نوع الحروف (String) أو الأعداد الصحيحة (Integer) أو أي أنواع معقدة من الفئات الأخرى.
لإستخدام أفضل , يفضل ذكر نوع البيانات عند تعريف أي متغير وعدم تعريفه مبهما كما في المثال السابق لأن هذا يسبب بطأ في عملية تنفيذ البرنامج. عندما تستخدم المتغيّر من غير ذكر نوعة فإن النوع المناسب يتحدد في وقت تنفيذ البرنامج (run-time). لذلك من الضروري جدا ذكر نوع المتغير الذي تستخدمة.

عندما نقوم بتعريف متغير فإننا نقوم بتحديد نوعة بإستخدام الكلمة (As). على سبيل المثال, نقوم بتعريف المتغير الذي سوف يستخدم ليمثل قيمة حرفية (string) بالشكل التالي :

Dim myVar As String

تدعم بيئة ال.NET أنواع البيانات التّالية :

  • Boolean - يستخدم لتمثيل القيمتين : صحيحة (True) , خاطئة (False)
  • Date - يمثل التاريخ والوقت ( يمثل التاريخ من January 1, 0001 الى December 31, 9999 )
  • Byte - يمثل عدد بين 0 و 255  ( قيم موجبة فقط )
  • Decimal - يمثل الأرقام العشرية ( 16-byte وهي من 0 الى موجب أو سالب 79,228,162,514,264,337,593,543,950,335 )
  • Integer - يمثل عدد صحيح (4-byte وهي من -2,147,483,648 الى 2,147,483,647 )
  • Long - يمثل عدد صحيح (8-byte وهي من -9,223,372,036,854,775,808 الى 9,223,372,036,854,775,807 )
  • Short - يمثل عدد صحيح (2-byte وهي من -32,768 الى 32,767 )
  • Single - يمثل عدد غير صحيح بخانة واحدة بعد الفاصلة.
  • Double - يمثل عدد غير صحيح .
  • Char - يمثل حرف واحد فقط.
  • String - يمثل قيمة حرفية تتسع الى 2 بليون حرف.

هناك خمسة فقط من هذة الأنواع هي التي سوف تستخدمها كثيرا وهي : Boolean, Date, Decimal, Integer, String.

من الممكن أنك لاحظت أنه لايوجد نوع بيانات للعملة أو قيمة المال (Currency) . بدلاً من ذلك, تمثّل نوع العملة بإستخدام القيمة العشريّة (Decimal).

استخدام خيار Explicit
كقاعدة, قبل أن تتمكن من إستخدام أي متغيّر, يجب عليك أن تعرفه أولا . لكنّ, يمكن أن تغيّر هذة القاعدة وتتمكن من إستخدام المتغير بدون أن تعرفة بإستخدام جملة (Explicit) . على سبيل المثال, الصّفحة التالية تقوم بإلغاء طلب تعريف المتغيرات بوضع Explicit تساوي OFF ولذلك يمكن إستخدام أي متغير بدون تعريفه .

<%@ Explicit="False" %>
<%
myVar = "Hello World!"
Response.Write( myVar )
%>

ليست فكرة جيّدة أن تلغي طلب تعريف المتغيرات لسببين . أولا: له تأثير سلبي على أداء البرنامج لأنه يقوم بتعريف كلّ المتغيّرات على شكل عناصر غير معروفة النوع (Object) وبعد ذلك يقوم البرنامج بتحديد نوعهم وقت التنفيذ (run-time) .  ثانيا: يجعل من الصعب تصحيح الكود. فمثلا لو كتبت إسم المتغير بشكل خاطيء فإنه من الصعب أن تجد الخطأ .

استخدام خيار Strict
كقاعدة, (خيار Strict يساوي False) وهذا يعني أنه يمكنك التحويل بين أنواع البيانات حتى لو كان تحديد نوع البيانات عند التعريف متغير (مثلا يمكنك التحويل من عدد (integer) الى قيمة حرفية(string) ) أما لو غيرنا هذا الخيار كما في المثال التالي فإنه سوف يظهر خطأ في البرنامج ولن يسمح بالتحويل من عدد الى قيمة حرفية (هذا المثال سوف يظهر خطأ عند التنفيذ).

<%@ Strict="True" %>
<%

Dim myInt As Integer
Dim myString As String
myInt = 23
myString = myInt
%>

بصفة عامّة, الخيار Strict يمنعك من العمل الذي يضيّق البيانات عند التّحويلات . يحدث تضييق في البيانات عندما تحوّل متغيّر من نوع بيانات كبير إلى نوع بيانات أصغر مثل تحويل من نوع عشريّ (Decimal) إلى نوع عدد صحيح (Integer) .

بالإضافة إلى ذلك, متى تم تفعيل خيار Strict وجعلة يساوي True, فإن كلّ أنواع المتغيرات يجب أن تحدد قبل تنفيذ البرنامج ( الخيار Strict يلغي تحديد نوع البيانات عند تنفيذ البرنامج كما شرحنا في الأعلى ) . على سبيل المثال, الكود التالي يولّد خطأ بسبب تفعيل خيار Strict وعدم تحديد نوع البيانات عند تعريف المتغير:

<%@ Strict="True" %>
<%
Dim myVar
myVar = "Hello World!"
%>
 

بما أن خيار Strict يمنع تحديد نوع البيانات عند تنفيذ البرنامج, فإنه يجعل خيار Explicit تلقائيا يأخذ القيمة صحيح (True) .

من الأفضل ومن أسلوب البرمجة الصحيح أن تفعل خيار Strict بوضعه يساوي صحيح (True) لأن ذلك يوفر أداء أسرع للبرنامج .

تمت إضافة هذا الدرس بواسطة : المميز بتاريخ : 10/28/2002 3:40:51 PM
عدد زوار هذا الدرس : 6118 وهناك 115 رشحوا هذا الدرس بمعدل ترشيح 3.49 من 5
رشح هذا الدرس :