زبان های برنامه نویسی

۲ مطلب با موضوع «هفته‌ی اول» ثبت شده است


زبان های اسکریپتی جزو زبان های 
interpreter ای هستند و کامپایل نمی شوند.از زبان های اسکریپتی برای نوشتن برنامه هایی که می خواهد به طور اتوماتیک یک  سری دستور که باید توسط برنامه نویس به صورت interactive انجام شود را استفاده می شود.

از این زبان ها برای نوشتن صفحات وب، نوشتن shell در سیستم عامل.

این زبان ها از روی زبان های برنامه نویسی نوشته شده اند. در واقع نمونه های کوچکی از زبان های برنامه نویسی هستند. این زبان ها برای نوشتن برنامه ها از صفر طراحی نشده اند و برای ترکیب کردن component  ها استفاده می شوند.


برخی ویژگی های این زبان ها

1-      سادگی syntax :برای استفاده ی راحت  و سریع برنامه نویس از syntax  های ساده ای که خیلی سریع میتوان آنها را فهمید استفاده می شود.

2-      پیاده سازی interface آسان برای ویژگی های سیستم عامل

3-      ساختار نسبتا سست : مثلا نمی توان از زبان جاوا به راحتی برای نوشتن برنامه های اسکریپتی استفاده کرد چون قوانین زیادی برای کلاس ها در نظر گرفته شده ولی زبان های اسکریپتی میتوانند در زمان اجرا به فایل ها مراجعه کنند و یک قطعه برنامه را به برنامه ی خود اضافه کنند.

 انواع زبان های اسکریپتی

1 - اسکریپت های گرافیکی  : این زبان ها با به وجود آمدن interface  های گرافیکی ایجاد شدند.این زبان ها در تعامل با منوهای گرافیکی ویندوز و دکمه های مختلف موجود در ویندوز می باشند،و با کلیک کاربر بر روی یک منو  مثل کاربر عمل میکنند و دستورات را یک به یک اجرا میکنند.بعضی از این زبان ها که عملیات کلیک بر روی یک گزینه را شبیه سازی می کنند ماکرو نامیده می شوند.
این زبان ها به طور کلی می توانند برای  کنترل هر برنامه گرافیکی استفاده شوند، برای این کار هم برنامه باید زبان اسکریپتی را پشتیبانی کند هم سیستم عامل مربوطه.

2 - زبان های اسکریپتی برای برنامه های خاص منظوره: این زبان ها متناسب با یک  برنامه خاص که دارای ویژگی منحصر به فرد هستند استفاده می شود. به  طور مثال خیلی از بازی های کامپیوتر زبان اسکریپتی مخصوص به خود را دارند. یکی از این زبان ها Emacs Lisp است که ویژگی های زبان Lisp را دارد و برای(Emacs (text editor  طراحی شده است.


3-زبان هایی برای پردازش در متن : پردازش رکورد های متنی یکی از قدیمی ترین استفاده های زبان های اسکریپتی است. اسکریپت هایی که برای tool هایی UNIX نوشته شده (AWK,sed) و برای grep که با فایل های متنی در ارتباط است.

4-زبان های پویای همه منظوره: این زبان ها در ابتدا به صورت زبان های اسکریپتی همه منظوره بودند ولی بعدها به سمت  کنترل زبان هایی رفتند که داینامیک بودند و در زمان اجرا امکان ایجاد تغییر در آنها وجود داشت. 

5- زبان های افزونگی / توکار: می توان با استفاده از این زبان ها اسکریپت ها را در هر زبان برنامه نویسی و هر برنامه ی نرم افزاری تعبیه کرد. به طور مثال برنامه نویس های زبان C از "hook" برای اینکه کنترل را به زبان اسکریپتی بدهد استفاده می کنند. برنامه هایی مثل Adobe Flash   اجازه ی استفاده از اسکریپت هایی که از استاندارد ECMAScript  را می دهند .

lمثال هایی از زبان های اسکریپتی که در قسمت های بعد توضیح داده می شوند عبارتند از: PhP - java script - Python  Perl


۱۹ نظر موافقین ۰ مخالفین ۰ ۰۴ آذر ۹۱ ، ۱۷:۰۶
فهیمه هاجری

در این جا من مختصرا به بررسی تارخچه‌ی زبان‌های اسکریپتی می‌پردازم.


روزهای اولیه: JCL

در حدود سال‌های ۱۹۶۴، برنامه‌نویسان با این واقعیت مواجه شدند که انجام همه‌ی اعمال با کمک برنامه‌نویسی کاری بسیار خسته کننده است. بنابراین IBM زبانی با نام JCL را پیاده‌سازی کرد که امکان انجام بسیاری از کارها را به صورت ساده‌تر می‌داد. مثلا امکان کپی کردن فایل‌ها تنها با ۹ خط کد وجود داشت که انجام همین عمل با کمک فرترن دارای پیچیدگی‌های بیش‌تری است.


مفسرهای خط فرمان اسکریپتی

پس از آن، مفسرهای خط فرمان مشهوری مانند DG، DEC، و DCL نه تنها اجازه‌ی اجرای اعمال پیچیده با کمک دستورهای ساده را می‌دادند، بلکه این امکان را نیز در اختیار کاربر قرار می‌دادند که این دستورات ساده را درون فایل‌هایی قرار دهد و سپس همه‌ی آن‌ها را با یکدیگر انجام دهد. DG به این فایل‌ها «ماکرو»، DEC به آن‌ها «فایل دستور» و یونیکس به آن‌ها «Shell Script» می‌گویند.


Perl

بعد از گذشت چند سال، لری وال تصمیم  گرفت تا کاری اساسی در این مورد انجام دهد. بنابراین او زبان Perl را ابداع کرد. این زبان، هم امکانات زبان‌های شل اسکریپتینگ را داشت، هم امکانات زبان‌های قوی دیگری مانند C به آن اضافه شد. از جمله ویژگی‌های این زبان می‌توان به این موارد اشاره کرد: استفاده‌ی ساده از عبارات منظم و لیست‌ها، امکان استفاده از هر متغیری به عنوان رشته، عدم نیاز به ساختاربندی شدید، مدیریت منابع اتوماتیک و امکانی برای «اجرای» یک رشته که شامل عبارت محاسباتی است. 

هم‌چنین به این زبان امکان شی‌گرایی افزوده شد. البته در بسیاری از زبان‌ها افزودن شی‌گرایی، باعث افزایش پیچیدگی در پروژه‌های ساده می‌شود. در حالی که در این زبان، شی‌گرایی به گونه‌ای اضافه شد که باعث به وجود آمدن این پیچیدگی نشد.


پایتون

پایتون در دهه‌ی ۱۹۸۰ توسط Guido van Russom طراحی شد. در این زبان، بسیاری از امکانات و انعطاف‌پذیری‌های کد، از کاربر گرفته شده است. برای مثال در این زبان، گزاره‌های گروهی، به جای قرار گرفتن در میان آکولادها، با indentation مشخص می‌شوند. و یا به جایی قرار دادن semi-colon در انتهای دستورات، از یک خط جدید باید استفاده کرد. از طرف دیگر، پایتون الگوی برنامه نویسی را به برنامه‌نویس تحمیل نمی‌کند. بنابراین، برنامه‌نویسی با الگوهای شی‌گرا، وجه‌گرا(aspect-oriented)‌ و ... امکان‌پذیر است.

هم چنین پایتون امکان duck typing را در اختیار برنامه‌نویس قرار می‌دهد که در آینده به آن بیش‌تر پرداخته خواهد شد و الان بیش از این به آن نمی‌پردازیم.


Ruby

روبی آخرین زبانی است که اکنون به آن می‌پردازم. روبی به گونه‌ای طراحی شده است که از مفهوم TIMTOWTDI(There is More Than One Way To Do It) تبعیت می‌کند. هم‌چنین Ruby به صورت کامل شی‌گراست. با این وجود نیازی نیست که شما به صورت صریح از کلاس‌ها استفاده کنید، مگر این که بخواهید.(مقایسه کنید با جاوا که تمامی کد‌های آن در درون یک کلاس قرار می‌گیرند!)

روبی نیز مانند پایتون از Duck Typing تبعیت می‌کند. هم‌چنین روبی امکان بازکردن مجدد هر کلاس و تغییر آن را مهیا می‌کند که در آینده بیش‌تر به این امکان افزوده خواهد شد.


در نهایت باید ذکر کرد که زبان‌های بسیار دیگری نیز وجود دارند که امکان ذکر همه‌ی آن‌ها در اینجا ممکن نیست. بنابراین این کار را به زمان بهتری واگذار می‌کنیم.

۰ نظر موافقین ۰ مخالفین ۰ ۲۴ آبان ۹۱ ، ۲۳:۳۸
نیما حمیدی