Lua Cheatsheet-CodeExplore.pdf
900.8 KB
برگه تقلب Lua که اولش به 5 تا قدم برای یادگیری هر زبان برنامه نویسی اشاره میکنه و برای هر شخصی که علاقه داره یاد بگیره هم مفیده👌
#lua #cheatsheet
☕️Telegram | Website | Discord
#lua #cheatsheet
☕️Telegram | Website | Discord
🔥7😍3❤🔥1
بریم یکم راجب زبانی حرف بزنیم که بهش کم توجهی شده
زبان برنامهنویسی (لوا👩💻 Lua)
برای نصب و استفاده هم کافیه برید توی سایت رسمی خود زبان لوا یعنی
توی سایت خود لوا که برید برای تازه کار ها شاید یکم عجب باشه و دنبال فایل نصبی و یا باینریش بگردن برای ویندوز. ولی باید بگم که اونجوری نیست و فقط سورس زبان توی سایت در دسترسه و باید اون رو با زبان سی بیلد کنید و تبدیل به باینری کنید تا بتونید استفاده کنید چون هیچ نصب کننده ای و یا رابط گرافیکی مثل پایتون براش وجود نداره ولی میتونید از گیتهاب و سایت های مختلف اخرین نسخه بیلد شده و اماده رو دانلود کنید
ولی بر خلافش توی لینوکس راحته و توی ترمینال با دستور
#lua #article
☕️ Telegram | Website | Discord
زبان برنامهنویسی (لوا
یکی از شاهکارهای دنیای نرمافزار که با هدف سادگی، سرعت زیاد و حجم بسیار کم طراحی شده این زبان در سال 1993 توسط تیمی از دانشمندان دانشگاه کاتولیک ریو دو ژانیرو در برزیل متولد شد.
نام لوا در زبان پرتغالی به معنای ماه (🌕 ) است. این زبان به صورت کاملاً مستقل اجرا نمیشود بلکه به عنوان یک زبان اسکریپتنویسی تزریقی طراحی شده است تا درون برنامههای بزرگتر قرار بگیرد و به کاربران اجازه شخصیسازی و کنترل محیط برنامه را بدهد.
موفقیت بزرگ لوا در دنیای بازیسازی رقم خورد جایی که به عنوان موتور اصلی اسکریپتنویسی بازیهای معروفی مثل Roblox و دنیای وارکرفت انتخاب شد
و حتی Nginx هم توی خودش از زبان لوا استفاده کرده
مدیریت حافظه در لوا کاملا خودکاره و برنامهنویس نیازی به آزادسازی دستی حافظه نداره این زبان از یک سیستم جمعآوری زباله بسیار پیشرفته و مرحلهای استفاده میکنه که در پسزمینه اجرا میشه و اشیایی رو که دیگه در کد استفاده نمیشه، از حافظه پاک میکنه تا از کند شدن برنامه جلوگیری کنه
ساختار داده ها توی لوا در اوج سادگیه؛ این زبان تنها یک ساختار داده همهفنحریف به نام Tabel دارد که میتواند به عنوان آرایه، لیست، دیکشنری و حتی برای شبیهسازی برنامهنویسی شیگرا استفاده بشه
یعنی ما توی زبان لوا شی گرایی نداریم ولی همون کار شی گرایی و حتی ارث بری رو میتونیم با همون تیبل ها شبیه سازی کنیم و استفاده کنیم
تمام هسته اصلی کامپایلر و مفسر لوا با زبان برنامهنویسی (👩💻 ) نوشته شده انتخاب زبان سی به این دلیل بود که لوا بتونه روی هر دستگاهی، از ابر رایانهها گرفته تا ساعتهای هوشمند و روترهای شبکه، بدون هیچ مشکلی اجرا بشه کل حجم مفسر لوا تنها چندصد کیلوبایته که نشون میده بهینهسازی فوقالعاده کدهای سی در ساختارشه
وقتی شما یک خط کد در لوا مینویسید، این کد بلافاصله به زبان ماشین تبدیل نمیشه بلکه یک فرآیند چندمرحلهای را پشت سر میگذارد
در مرحله اول، تحلیلگر متنی کد شما را میخواند و ساختار متنی را به نشانهها یا توکنها تبدیل میکند.
در مرحله دوم، این توکنها به یک درخت ساختار درختی یا همان درخت نحو انتزاعی تبدیل میشوند تا منطق برنامه بررسی شود.
در مرحله سوم، کامپایلر داخلی لوا این درخت را به یک زبان میانی بسیار بهینه به نام بایتکد تبدیل میکند. بایتکدها دستورالعملهای فشردهای هستند که برای پردازندههای واقعی نیستند، بلکه برای یک پردازنده فرضی ساخته شدهاند.
در مرحله چهارم، ماشین مجازی لوا که بر پایه ثباتها طراحی شده است، این بایتکدها را برداشته و یکی پس از دیگری به دستورات بومی پردازنده یا همان کد ماشین تبدیل و اجرا میکند.
این معماری مبتنی بر ثبات باعث شده که لوا نسبت به زبانهایی مثل پایتون که از معماری پشته استفاده میکنند، سرعت اجرای بسیار بالاتری داشته باشد.
اگر از نسخههای پیشرفتهتر مثل Lua JIT استفاده کنید، مرحله بایتکد مستقیماً در زمان اجرا به کد ماشین کامپایل میشود که سرعتی نزدیک به زبان سی رو میده
برای نصب و استفاده هم کافیه برید توی سایت رسمی خود زبان لوا یعنی
https://www.lua.org
توی سایت خود لوا که برید برای تازه کار ها شاید یکم عجب باشه و دنبال فایل نصبی و یا باینریش بگردن برای ویندوز. ولی باید بگم که اونجوری نیست و فقط سورس زبان توی سایت در دسترسه و باید اون رو با زبان سی بیلد کنید و تبدیل به باینری کنید تا بتونید استفاده کنید چون هیچ نصب کننده ای و یا رابط گرافیکی مثل پایتون براش وجود نداره ولی میتونید از گیتهاب و سایت های مختلف اخرین نسخه بیلد شده و اماده رو دانلود کنید
ولی بر خلافش توی لینوکس راحته و توی ترمینال با دستور
sudo apt install lua نسخه باینری و قابل استفاده لوا براتون نصب میشه و در مک هم قضیه همینطوره#lua #article
☕️ Telegram | Website | Discord
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥12⚡4🔥3😁1