نوع داده: دستهبندی اطلاعات در برنامهنویسی
انواع دادهها و ویژگیهای هرکدام
در برنامهنویسی، دادهها را بر اساس نوعشان دستهبندی میکنیم تا بدانیم چه عملیاتی میتوان روی آنها انجام داد. مهمترین انواع داده که در برنامهنویسی مقدماتی با آنها روبرو میشوید، عبارتند از عدد صحیح، عدد اعشاری، رشته (متن) و مقدار منطقی. هرکدام از این انواع، کاربرد خاص خود را دارند و نمیتوانیم به جای یکدیگر از آنها استفاده کنیم.
نوع داده، به برنامه میگوید که یک مقدار چه ماهیتی دارد. برای مثال، عدد ۱۵ با نوشتهی «۱۵» تفاوت دارد. اولی یک عدد است و میتوانیم روی آن جمع و تفریق انجام دهیم، اما دومی یک رشته است و فقط میتوانیم آن را با رشتههای دیگر ترکیب کنیم. به همین دلیل، شناخت نوع داده برای نوشتن برنامههای درست و بدون خطا بسیار مهم است.
| نام نوع | مثال | عملیاتهای مجاز |
|---|---|---|
| عدد صحیح | ۲۵- , ۰ , ۷ | جمع، تفریق، ضرب، تقسیم |
| عدد اعشاری | ۳.۱۴- , ۰.۰ , ۲.۵ | جمع، تفریق، ضرب، تقسیم |
| رشته | "سلام" , "۱۳" , "علی" | اتصال، شمارش حروف، جستجو |
| منطقی | درست یا غلط | تصمیمگیری در شرطها |
چرا تشخیص نوع داده مهم است؟
تشخیص نوع داده برای جلوگیری از خطاهای برنامه بسیار حیاتی است. اگر برنامهای بنویسید که انتظار یک عدد دارد، اما کاربر یک نوشته وارد کند، برنامه متوقف میشود و پیام خطا نشان میدهد. بنابراین باید همیشه بدانید که هر متغیر چه نوع دادهای را ذخیره میکند و عملیاتهای مناسب با آن نوع را روی آن انجام دهید.
انتخاب نوع دادهی مناسب به بهینهتر شدن برنامه نیز کمک میکند. برای مثال، اگر میخواهید سن یک فرد را ذخیره کنید، از نوع عدد صحیح استفاده کنید چون سن همیشه یک عدد کامل است. اما اگر میخواهید وزن یا قیمت را ذخیره کنید، از عدد اعشاری استفاده کنید تا دقت بیشتری داشته باشید. برای ذخیرهی نام، آدرس یا توضیحات، از رشته استفاده میکنید و برای پاسخهای بله/خیر یا وضعیتهای روشن/خاموش، از نوع منطقی.
در برنامهنویسی، گاهی لازم است نوع دادهها را به یکدیگر تبدیل کنیم. مثلاً عدد را به رشته تبدیل کنیم تا بتوانیم آن را در یک پیام نمایش دهیم، یا رشتهای که شامل عدد است را به عدد تبدیل کنیم تا روی آن محاسبه انجام دهیم. این تبدیلها با استفاده از تابعهایی مانند int، float و str انجام میشوند و به ما اجازه میدهند که بین انواع مختلف داده جابهجا شویم.
پرسشهای کلیدی دربارهی نوع داده
چطور بفهمیم یک داده چه نوعی است؟
در اکثر زبانهای برنامهنویسی، تابعی وجود دارد که نوع دادهی یک متغیر را نشان میدهد. همچنین با دقت به نحوهی نوشتن مقدار میتوانید نوع آن را تشخیص دهید. اگر داخل نقلقول باشد، رشته است. اگر عدد باشد و اعشار داشته باشد، عدد اعشاری است. اگر فقط رقم داشته باشد، عدد صحیح است. و اگر فقط دو مقدار درست یا غلط داشته باشد، نوع منطقی است.
آیا یک متغیر میتواند نوع خود را تغییر دهد؟
بله، در بسیاری از زبانها، یک متغیر میتواند در طول اجرای برنامه، نوع خود را تغییر دهد. مثلاً ابتدا یک عدد را ذخیره کند و بعداً یک رشته را. اما این کار معمولاً توصیه نمیشود چون باعث گیجکننده شدن کد و ایجاد خطاهای سختیاب میشود.
اگر نوع داده را اشتباه انتخاب کنیم، چه اتفاقی میافتد؟
اگر نوع داده را اشتباه انتخاب کنید، برنامه ممکن است خطا بدهد یا رفتار غیرمنتظرهای داشته باشد. مثلاً اگر عدد را به عنوان رشته ذخیره کنید و بخواهید آن را با عدد دیگری جمع کنید، برنامه به جای جمع کردن، دو رشته را به هم میچسباند. یا اگر از یک رشته انتظار داشته باشید که روی آن عملیات ریاضی انجام دهید، برنامه با خطا متوقف میشود.