مفهوم آرایه در برنامه نویسی چیست؟! و چه کاربردی دارد؟!

مفهوم آرایه در برنامه نویسی چیست؟! و چه کاربردی دارد؟!

مفهوم آرایه در برنامه نویسی چیست؟! و چه کاربردی دارد؟!


در برنامه‌نویسی، مفهومی به نام آرایه (array) وجود دارد که از نظر معنای فارسی به کلمات «آرایه، صف، نظم و آرایش (منظور چیزی مثل آرایش نظامی نه آرایش صورت :D)» تعلق می‌گیرد. و به لحاظ مفهومی، به مجموعه‌ای از چیزها گفته می‌شود که در کنارهم و با نظم خاصی قرار دارند! . و درواقع در فرهنگ کامپیوتر نیز این چنین است!

آرایه در برنامه نویسی

وقتی ما متغیری تعریف می‌کنیم، برای مثال یک متغیر عددی، در ادامه مقداری را نیز به آن اختصاص می‌دهیم و در دفعات بعدی برای دسترسی به آن متغیر، از نامی که برایش تعریف کرده‌ایم استفاده می‌کنیم. اما چه می‌شود اگر بتوان یک ساختاری تعریف کرد که در آن مجموعه‌ای از متغیرها در کنارهم قرار داشته باشند؟!

این ساختار در برنامه‌نویسی آرایه نامیده می‌شود و هرعضوی که در آن قرار دارد، شامل یک index (شاخص) منحصر به فردی برای خود می‌باشد و از این index برای دسترسی به آن عضو استفاده می‌شود. و در واقع بهتر است بگوییم آرایه مجموعه‌ای از خانه‌ها را در مموری و به صورت گروهی برای اعظای خود در نظر می‌گیرد.

index آرایه‌ها از 0 شروع می‌شود و هرخانه در آن آرایه شامل index ای برای خود می‌باشد. در واقع اولین عضو آرایه همواره index ای برابر 0 داشته و عضو آخر آن index ای برابر یک واحد کمتر از طول آرایه را خواهد داشت. و در اکثر زبا‌ن‌های برنامه‌نویسی در زمان دسترسی به یک index ناموجود، خطای out of memory رخ می‌دهد.

بنابراین به صورت کلی:

  • آرایه مجموعه‌ای از یک نوع داده است. (مثلا مجموعه‌ای از اعداد)
  • هر عضو این مجموعه شامل یک index است. (که این عدد از 0 شروع می‌شود)

تعریف ویکی‌پدیا
آرایه تعدادی متغیر از یک نوع داده و تحت یک نام می‌باشد. هر یک از متغیرهای درون آرایه با یک شماره که به آن «اندیس» می‌گوییم از یکدیگر متمایز می‌شوند. متغیرهای درون آرایه را «عناصر آرایه» می‌نامند که همگی قابلیت نگهداری فقط یک نوع داده را دارند. عناصر درون آرایه از نظر فیزیکی مکان‌های متوالی در حافظه اصلی رایانه را اشغال می‌کنند. بنابر این تعداد عناصر درون آرایه محدود و ثابت می‌باشد.

تفاوت آرایه‌ها در زبان‌های برنامه‌نویسی مختلف

گرچه مفهوم اصلی آرایه در تمامی زبان‌های برنامه‌نویسی یکسان است، اما با این حال، آرایه‌ها در زبان‌های برنامه‌نویسی مختلف ممکن است با یکدیگر تفاوت‌های بسیار زیادی داشته باشند! برای مثال در PHP نه نیازی به تعریف نوع مقادیری که میتوان در آرایه قرار داد می‌باشد و نه اجباری به نوع index! بنابراین می‌توان هر نوع داده‌ای (از جمله یک آرایه‌ی جدید) را درون یک آرایه قرار داد و همچنین هرنوع index ای از جمله عدد و string را برای خانه‌های آرایه در نظر گرفت! و البته تفاوت‌های دیگر نیز جای خود دارند! اما با این وجود هنوز مفهوم «مجموعه‌ای از داده‌ها و index» در تمامی آن‌ها یکسان است.

البته به کمک آرایه‌‌ها، در زبان‌های برنامه‌نویسی مختلفی که نمیتوان از ایندکس String استفاده کرد نیز کلاس‌هایی ایجاد شده‌اند که امکان انجام اینکار را نیز برایمان فراهم می‌سازند! این کلاس‌ها معمولا به Map معروفند.

آرایه‌های چندبعدی

وقتی یک آرایه داخل آرایه‌ی دیگری قرار گیرد، حالت آرایه دوبعدی به دست می‌آورد و اگر همینطور داخلی‌تر شود، حالت آرایه چندبعدی‌تر می‌شود!

اگرچه در زبان‌هایی مثل PHP و برخی زبان‌های برنامه‌نویسی دیگر می‌توان در یک خانه از یک آرایه، یک آرایه‌ی جدید و در خانه‌‍ی دیگرش مثلا یک عدد یا رشته قرار داد، اما در دیگر زبان‌های برنامه‌نویسی اگر بخواهیم مثلا یک آرایه دوبعدی ایجاد کنیم، بایستی تمام خانه‌های بُعدِ اول آرایه باشند. البته آرایه دوبعدی به آرایه ماتریسی نیز معروف است.

احتمالا بعدا این پست ویراش شده و موارد جدیدی به آن اضافه شود.

 

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

cp-codfk

نظرات ثبت شده ۱ دیدگاه

توضیحات پیشنهادی نظرات اشتراک