اشاره:
هماکنون زبانهاي برنامهنویسی زیادی در دنیای برنامهنویسان وجود دارد.#C++ ، C يا سي شارپ ، جاوا و... که هر کدام مزایا و معایبی دارند، البته منظور از معایب اشکال نیست، بلکه ضعفها یا دشواريهايي است که ممکن است در کار با آن زبانها برای برنامهنویسان مشکل ایجاد کند.در هر حال، هم اکنون زبانهاي گوناگونی وجود دارند که ميتوان با استفاده از آن برنامهنویسی کرد.
هماکنون زبانهاي برنامهنویسی زیادی در دنیای برنامهنویسان وجود دارد.#C++ ، C يا سي شارپ ، جاوا و... که هر کدام مزایا و معایبی دارند، البته منظور از معایب اشکال نیست، بلکه ضعفها یا دشواريهايي است که ممکن است در کار با آن زبانها برای برنامهنویسان مشکل ایجاد کند.در هر حال، هم اکنون زبانهاي گوناگونی وجود دارند که ميتوان با استفاده از آن برنامهنویسی کرد. از سطح بسیار مقدماتی تا سطوح بسیار پیچیده و پیشرفته. زبانهایی که حتی برای مبتدیان و نوجوانان وجود دارد مانند Phrogram، Karel و حتی StageCast. اما زبانی نیز وجود دارد که از همه زبانها زیباتر است! نام این زبان، زیبا (Nice) است.
زبان Nice یکی از پیشرفتهترین زبانهاي شیء گرايی است که وجود دارد. یک سیستم Type قوی دارد که ميتواند از بروز اشکالات و باگهاي سیستم جلوگیری کند، به نحوی که از بروز Null Pointer و تبدیل فرمتهاي اشتباه (Cast) جلوگیری ميکند. در این زبان بیشتر Safety مورد نظر واقع شده و هدف اصلی طراحان این زبان، طراحی زبانی پیشرفته بوده که علاوه بر در اختیار قرار دادن قابلیتهاي گسترده در مقایسه با زبانهاي قویی مانند ML یا Haskell دارای قابلیت Type Safty قدرتمندتری نیز باشد. اصولاً برخی از اشکالاتی که در برنامهنویسی با آن مواجه ميشویم، اشکالاتی است که به درک ما از سیستم مرتبط است، اما اغلب اشکالات اشتباهات کوچکی هستند که در کدهای برنامه به وجود ميآید. حقیقت در این نکته پنهان شده که انسان ميتواند به صورت خلاصه در مورد یک موضوع تفکر کند و نمیتواند جزئیات موضوع را تک به تک بررسي كند، اما برعکس انسان، کامپیوتر نمیتواند فکر کند، اما این قابلیت را دارد که جزئیات مسئله را محاسبه و اشکالیابی کند. در نتیجه، زبانهاي برنامهنویسی باید به نحوی به برنامهنویسان کمک کنند تا بتوانند مطمئن باشند که برنامه آنها در حالت کارکرد و Runtime به اشکال برنمیخورد (این اصل در زبان برنامهنویسی به Static Safety مشهور است) زبان Nice یکی از زبانهاي قوی در برنامهنویسی شیءگرا است که از برنامهنویسی ماجولار و Static Type Safety پشتیبانی ميکند. این زبان به صورت رایگان و تحت مجوز GPL قابل دسترسی است.
Class Magazine
}
String MagazineName;
}
Void testCode()
{
Magazine Shabakehmag = new Magazine(MagazineName : " Shabakeh");
}
علاوهبر این، از قابلیتهاي زبانهاي برنامهنویسی تابعي (Functional) نیز بهره جسته است. در زمینه امنیت تایپ و جلوگیری از اشکالاتی که در زمان اجرای برنامه رخ ميدهد، Nice سعی ميکند تمام اشکالات را در زمان کامپایل کردن کد کشف كرده و به اطلاع برنامهنویس برساند.علاوه بر این زبان Nice ماجولار است به نحوی که حتی ميتوان بدون تغییر در سورس کد کلاس برنامهای که از آن به ارث ميبریم، متد یا روشهاي جدید تعریف کنیم و با آنها به آسانی کار کنیم. پس دیگر نیازی نیست که کلاس را دوباره نوشته و کامپایل کنیم و متد مورد نیازمان را در آن قرار دهیم. کافی است که متد مورد نظر خود را در زبان Nice نوشته و آن را به کلاس مربوطه اضافه کنیم. زبان Nice هم اکنون تحت محیط جاوا کار ميکند و حتی به ما امکان ميدهد که بدون استفاده از جاوا و تنها از طریق این زبان به تمام توابع کتابخانهای جاوا دسترسی داشته باشیم و از آن استفاده کنیم. نكته جالب توجه اين که ميتوانیم از توابع این زبان در جاوا نیز استفاده کنیم. این قابلیت به دلیل این است که کامپایلکننده Nice آن را به بایتكدهاي جاوا تبدیل ميکند و همچنين مهمترین قابلیت زبانهاي برنامهنویسی را که عدم وابستگی به پلتفرم خاص است، در خود دارد.
یکی از قابلیتهاي جالب توجه این زبان این است که هر متد ميتواند چندین مقدار در خروجی داشته شد. به این قابلیت در زبان Nice، Tuples ميگویند. در این زبان مانند ML، فانکشنها ميتوانند به صورت First-Class Expressions تولید و استفاده شوند. مانند جاوا، اما پیشرفتهتر از آن پارامترها مقدار اولیه ميگیرند و دیگر نیازی نیست چند نسخه از متد را برای چند پارامتر متفاوت آماده کنیم. اما قابلیت بارزی را که ميتوان در زبان Nice مشاهده کرد، این است که Contractها ميتوانند به صورت مستقیم به متد متصل شوند و قابلیتها و جزئیات آن متدها را تشریح کنند. حتی این Contarctها ميتوانند به صورت غیرفعال درآيند و باعث کندی سیستم نشوند. كد بالاي صفحه تعریف يك كلاس در زبان Nice و استفاده از آن کلاس است.
منبع:shabakeh-mag.com
+
نوشته شده در سه شنبه بیست و ششم بهمن ۱۳۸۹ساعت 18:14 توسط رادیو 110
|