نرم افزار لینگو چیست؟ (معایب و مزایا)
نام لینگو در مورد چندین زبان برنامه نویسی نامرتبط به کار برده می شود. رایج ترین نسخه آن زبان اسکریپت نویسی توسعه یافته توسط جان اچ تامپسون است که در نرم افزار Macromedia Director استفاده شده است . HyperTalk احتمالا یکی از موارد الهام بخش برای زبان لینگو بوده است.
سینتکس لینگو ماکرومدیا
هنگامی که Macromedia Lingo به وجود آمد، نحو یا سینتکس آن به منظور تقلید از زبان گفتاری طراحی شد، بنابراین کار با آن برای مبتدیان آسان بود. به طور مثال می توان یک جمله کامل HyperTalk را به این صورت نوشت:
if sprite 5 is visible then go to the frame
توجه داشته باشید که در دستورات “go to” استفاده از “to” اختیاری است. همچنین توجه داشته باشید که برخلاف سایر زبان های برنامه نویسی، عبارات “go” چارچوب های مرجع در Director’s Score هستند، نه خطوط خاص کد.
اگر چه هنوز امکان استفاده از سینتکس قدیمی وجود دارد، اما آخرین نسخه این زبان به طور کامل از نحو نقطه ای پشتیبانی می کند طوری که شبیه کد های استانداردتر زبان های برنامه نویسی مثل جاوا اسکریپت یا C++ به نظر می رسد.
معادل عبارت بالا در سبک اسکریپت نویسی جدید این طور خواهد بود:
if sprite(5).visible then _movie.go( _movie.frame )
این فرمت از عناصر Documents Object Model معرفی شده در Director MX 2044 استفاده می کند. سینتکس در نسخه های قبلی به این صورت است:
if sprite(5).visible then go the frame
کاربرد لینگو ماکرومدیا
Macromedia Lingo در Macromedia Director تعبیه شده است و جزئیات سطح پایین گرافیکی و تعامل سیستم عامل را بر عهده Director می گذارد.
برنامه نویسی شی گرا ( OOP ) هم از نظر تنوع زبانی و هم انجمن دایرکتورها اوضاع خوبی دارد. با این حال کار با زبان های شی گرا تنها راه نیست. این باعث می شود برنامه نویسان دایرکتور سرعت و انعطاف پذیری بیشتری در توسعه برنامه داشته باشند زیرا آن ها هم طبق یک برنامه زمانی و هم یک ساختار برنامه نویسی کار می کنند.
3 نوع اسکریپت در Macromedia Lingo وجود دارد:
- اسکریپت های رفتاری به یک اسپریت ( یا تصاویر دو بعدی ) متصل می شوند تا ویژگی ها و حرکت آن اسپریت را کنترل کنند. آن ها برنامه نویسی را به روشی شی گرا آسان می کنند، زیرا شما می توانید مستقیما رابطه بین برنامه نویسی و آیتمی که به آن متصل شده اند را مشاهده کنید. آن ها همچنین می توانند اسپریت های دیگر را کنترل کرده یا با آن ها تعامل داشته باشند و آن ها را به یک شی واقعی تبدیل کنند.
- اسکریپت های فیلمی به اسپریت ها متصل نیستند و نمی توان آن ها را به عنوان شی نمونه سازی کرد. آن ها در سر تا سر برنامه ( فیلم ) در دسترس هستند و مخصوصا برای نگه داشتن گرداننده های سراسری و مقدار دهی اولیه متغیر های سراسری در ابتدا یا انتهای فیلم به کار می آیند.
- اسکریپت های والد برای ” تولد ” ( تولید نمونه هایی از ) یک شی در یک متغیر با استفاده از دستور ” new ” استفاده می شود. این اشیاء می توانند اسپریت ها و رسانه های دیگر را از راه دور کنترل کنند، بدون این که به یک اسپریت متصل شوند. این اسکریپت ها می توانند برای کنترل داده ها یا سایر موارد نمایش داده نشده؛ استفاده شوند و برای روتین های بازگشتی مثل مسیریابی مفید هستند. از یک اسکریپت والد می توان برای ایجاد یا از بین بردن یک شی در هر زمان استفاده کرد و آن ها را از مرز امتیازی که یک رفتار به آن محدود شده است، آزاد کرد. به خوبی می توان از اسکریپت های رفتاری و والد در برنامه نویسی شی گرا استفاده کرد . اسکریپت های فیلمی شی گرا نیستند. با این حال، هنوز هم میتوان از آن ها برای ساختن گرداننده های “جعبه سیاه” یعنی جایی که اشیاء دیگر بدون این که از عملکرد درونی جعبه اطلاع داشته باشند می توانند داده های خام را وارد و پاسخ ها را دریافت کنند، استفاده کرد. استفاده از نقاط قوت و سهولت استفاده از متدولوژی برنامه نویسی Director در کنار مزایای شی گرایی باعث ایجاد یک محیط برنامه نویسی قدرتمند و سریع می شود.
لینگو از ویژگی ارث بری شی توسط یک سیستم کمی خاص پشتیبانی می کند که یعنی یک اسکریپت می تواند از مشخصه اجداد برخوردار شود که به یک شی دیگر ارجاع دهد ( معمولا به یک اسکریپت هم اشاره می کند، اگر چه اشیاء دیگر مثل اعضای cast هم می توانند در نقش اجداد باشند ). ویژگی ها و متد های اجداد به والد به ارث می رسد. اسکریپت های رفتار هم نوعی اجداد اسپریت ها هستند که به آن ها متصل هستند، زیرا می توان با ارجاع به خود اسپریت به ویژگی ها و روشهای رفتار دسترسی پیدا کرد. در این حالت، ما یک نوع وراثت چندگانه داریم ، زیرا یک اسپریت ممکن است چندین رفتار داشته باشد.
پیشنهاد ما استفاده از گمز که جدیدتر از لینگوست: آموزش صفر تا صد گمز با 12 درس رایگان
تصویر سازی در لینگو ماکروکدیا
بخش بسیار قدرتمند زبان لینگو، تصویر سازی است که زمانی که Director نسخه 8.0 وارد شد، معرفی شد. این قابلیت با دستورات ساده قدرت دستکاری تصویر را به کاربر می دهد. شباهت هایی به عملکرد برنامه های تصویر سازی دارد ( مثل فتوشاپ ) که ایجاد جلوه های بصری را آسان می کند . از آن زمان به بعد تصویر سازی در کنار شی Flash BitmapData هم به زبان اکشن اسکریپت Adobe Flashاضافه شده است. از آن جایی که این یکی شامل دستورات پیچیده تری می شد ، Director هم به روز شد تا امکان تبدیل شی BitmapData و اشیاء Image خودش را فراهم کند.
قابلیت سه بعدی در لینگو ماکرومدیا
در Director 8.5، یک موتور سه بعدی کامل برای اولین بار گنجانده شد . لینگو به طور قابل توجهی برای پشتیبانی از اشیاء سه بعدی جدید به روز شد و حالا شامل مجموعه ای از دستورات سه بعدی ویژه و برجسته است . یک Xtra هم برای فعال کردن بهره برداری از موتور Havok 3D Physics ساخته شد.
زبان های دیگری که لینگو نامیده می شوند
- زبانی که در این لینک [ http://www.lingolanguage.i12.com/ Lingo ] به آن اشاره شده، برای توسعه نرم افزار تحت ویندوز منتشر شد. این نسخه به عنوان یک زبان برنامه نویسی سطح بالای قابل کامپایل طراحی شده است.
- یک زبان برنامه نویسی مبتنی بر Smaltalk که برای پردازنده Rekursiv که توسطLinn Smart Computing دراسکاتلند ، انگلستان توسعه داده شد . این زبان که در این لینکhttp://www.erg.abdn.ac.uk/research/projects/lingo.html Lingo ] در موردش توضیح داده شده، از این جهت اهمیت دارد که سازندگان آن توانستند با موفقیت یک نام تجاری در بریتانیا ثبت کنند.
- لینگو یک زبان برنامه نویسی برای حل مسائل بهینه سازی خطی ، غیرخطی و اعداد صحیح است که اولین بار در سال 1988 توسط زبان اشاره شده در این لینک http://www.lindo.com/products/lingo/lingom.html Lindo Systems Inc. ] توسعه یافت . این زبان هنوز در حال تولید است.
این زبان ها شاید به اندازه زبان ماکرومدیا شناخته شده نباشند. با این حال، ناهنجاری حقوقی که وجود دارد این است که نام تجاری قانونی کلمه ” لینگو ” در بریتانیا متعلق به ماکرومدیا نیست ، بلکه در اختیار Linn است.
کاملا رایگان: آموزش صفر تا صد همه زبانهای برنامه نویسی
2 ویدیو از معرفی نمونه انجام برنامه ریزی خطی در نرم افزار لینگو