نوعدهی قوی و ضعیف: تفاوت میان نسخهها
متن اولیه توضیح کاملا اشتباه بود، می تونید با مقایسه متن قبلی با نسخه انگلیسی همین مقاله در خود ویکی پدیا، به اشتباه و جانبدارانه بودن آن پی ببرید. |
الگوی «سیستم نوع» اضافه شد. |
||
خط ۱: | خط ۱: | ||
{{سیستم نوع}} |
|||
'''وابستگی زیاد به نوع''' {{به انگلیسی|Strongly-typed}} و '''وابستگی کم به نوع''' {{به انگلیسی|Weakly-typed}} به دو نوع [[سیستم انواع]] {{به انگلیسی|Type System}} در زبان های برنامه نویسی اطلاق می شوند. |
'''وابستگی زیاد به نوع''' {{به انگلیسی|Strongly-typed}} و '''وابستگی کم به نوع''' {{به انگلیسی|Weakly-typed}} به دو نوع [[سیستم انواع]] {{به انگلیسی|Type System}} در زبان های برنامه نویسی اطلاق می شوند. |
||
نسخهٔ ۳ فوریهٔ ۲۰۲۰، ساعت ۱۶:۰۵
سیستم نوعها |
---|
مفاهیم کلی |
طبقه های اصلی |
طبقه های جزیی |
جستارهای وابسته |
وابستگی زیاد به نوع (به انگلیسی: Strongly-typed) و وابستگی کم به نوع (به انگلیسی: Weakly-typed) به دو نوع سیستم انواع (به انگلیسی: Type System) در زبان های برنامه نویسی اطلاق می شوند.
تاریخچه
در ۱۹۷۴، لیسکو (به انگلیسی: Liskov) و زایلز (به انگلیسی: Zilles) یک زبان وابسته زیاد به نوع را تعریف کردند به این عنوان که «هر گاه یک شیء از فراخوانی یک تابع به تابع صدا زده شده عبور کرد، نوعش باید سازگار با نوع تعریفشده در تابع صدا زده شده باشد.»[۱] جکسون در اینباره نوشتهاست، «در یک زبان وابسته زیاد به نوع ناحیه هر داده یک نوع متفاوت دارد و هر فرایند الزامات ارتباطش را به شروط این نوعها توضیح میدهد.»[۲]
تعاریف «زیاد» یا «کم»
این بخش نیازمند گسترش است. میتوانید با افزودن به آن کمک کنید. |
تعدادی از تصمیمگیریهای مختلف طراحی زبان به عنوان نشانهای از وابستگی «زیاد» یا «کم» به نوع نسبت داده شدهاست. در حقیقت، بسیاری از اینها دقیقتر وجود یا عدم وجود ایمنی نوع، ایمنی حافظه، بررسی ایستایی نوع، یا بررسی پویایی نوع را درک کردهاند.
جستارهای وابسته
پانویس
- ↑ Liskov, B; Zilles, S (1974). "Programming with abstract data types". ACM Sigplan Notices. CiteSeerX: 10.1.1.136.3043.
- ↑ Jackson, K. (1977). "Parallel processing and modular software construction". Lecture Notes in Computer Science. Lecture Notes in Computer Science. 54: 436–443. doi:10.1007/BFb0021435. ISBN 3-540-08360-X.