بایگانی برچسب: s

یک فنجان قهوه با طعم جاوا اسکریپت و روبی لطفا!

در این پست، قصد دارم تا در مورد کافی اسکریپت بنویسم. کافی اسکریپت، یک پیاده سازی از جاوااسکریپت در روبی است. در واقع، شما کدتون رو در یک سینتکس بسیار نزدیک به روبی مینویسید، و با اجرای یک دستور، کدی که دریافت میکنید، جاوااسکریپت خواهد بود. یکی از بزرگترین مزایای کافی‌اسکریپت، اینه که این زبان، بر خلاف جاوااسکریپت سینتکس پیچیده ای نداره، چرا که سینتکس مشابه روبی هست و فقط بعضی جاها، تفاوت های اندکی داره. بهرحال، در عصری زندگی میکنیم که زندگی بدون زبانهایی همچون جاوااسکریپت سخته، ولی اگر حال و حوصله جاوااسکریپت ندارید، بهتون توصیه میکنم همین کافی اسکریپت رو یاد بگیرید. در اینجا چند قطعه کدش رو آوردم :

سلام دنیا

قطعا این کد، ساده ترین و اولین کدی هست که در هر زبان برنامه نویسی ای، یاد میگیریم. این کد در کافی اسکریپت به این شکل هست :

کد   
alert "Hello, World!"

این کد، یک پنجره پیام باز میکنه و پیام Hello World رو به کاربر نشون میده. بعد از اجرای دستور :

coffee --compile ./path/to/coffee/file

کد رو به این تبدیل میکنه :

کد   
alert("Hello, World!");

حالا قطعه کد پیچیده تری رو بررسی میکنیم.

تابع فاکتوریل

این تابع، یک تابع بازگشتی هست که عمدتا در آموزش همه زبان های برنامه نویسی، ازش استفاده میکنیم. این تابع در کافی اسکریپت به این شکل هست :

کد   
a = (x) -> 
    if(x == 0)
       return 1
    else
       return x * a(x-1)

و این کد، همین تابع در جاوااسکریپت :

کد   
var a;
 
a = function(x) {
  if (x === 0) {
    return 1;
  } else {
    return x * a(x - 1);
  }
};

اجرای دو کد، با یک عدد خاص (مثلا ۴) ، یک نتیجه رو به ما بر میگردونه، چرا که کافی صرفا یک رابط نوشته شده با روبی برای جاوااسکریپت به حساب میاد.

در این پست، سعی کردم خیلی خلاصه و مختصر و مفید، در مورد زبان کافی اسکریپت توضیح بدم. امیدوارم وقت و مشغله این اجازه رو بهم بده که بعدا بیشتر در موردش (چه در خود وبلاگ، چه در پایگاه توسعه دهندگان روبی) بنویسم.

موفق و پیروز باشید.

Share

ملاقات با سی شارپ

قبل تر، خیلی خیلی در مقابل یادگیری سی شارپ، مقاومت میکردم. یکی از مشکلاتی که اکثر کتابهای سی شارپ موجود داشتند، این بود که برنامه نویسی رو با نقاشی اشتباه گرفته بودند . در واقع، این که بیایم در یک کتابی که مدعی حرفه ای بودن سطح آموزش هست، از اینکه چطور یک Button رو در محیط گرافیکی به کمک ماوس بکشیم، حرف بزنیم، نشون میده میخوایم یک حیطه خیلی خاص رو به کاربر یاد بدیم. عمده این کتابها هم طوری هستن که کاربر خیلی خیلی زود، ازش دلزده میشه (یکیش خودم 🙂 ). خب اولین باری که تلاش کردم سی شارپ رو یاد بگیرم اول دبیرستان بودم. دقیقا ۴ سال پیش همین موقع ها! و خب کتابی که تهیه کردم همونطور بود و با نوشتن دو سه تا برنامه ساده چقدر ذوق زده شدم و فلان و بهمان. از این حرف ها بگذریم، الان که ترم دوم دانشگاه هستم، توفیق اجباری شده تا در سی شارپ رو یاد بگیرم (لفظ توفیق به کار برده شد تا بگم که یادگیری همیشه خوبه، حتی اگر چیزی که داری یاد میگیری، بی کاربرد یا حتی مزخرف باشه) و خب با سینتکس سی شارپ آشنا شدم. امروز تصمیم گرفتم چندین خط کد بزنم. پس بیاید در این کد زدن ها با من همسفر بشید.

سی شارپ در لینوکس

زیاد روده درازی نمی کنم، قصد اسکرین شات گذاشتنم ندارم (:D) ، ولی خب برای استفاده از این زبان در لینوکس کد زیر رو اجرا کنید :

sudo apt-get install monodevelop

بعد از نصب میتونید monodevelop رو اجرا کنید و از کد زدن با سی شارپ لذت ببرید 🙂

اولین برنامه من

در اولین برنامه سعی کردم به چاپ یک رشته احمقانه (مثل Hello World و …) بسنده نکنم. هر کانسپتی از C و ++C داشتم رو پیاده کردم. توی این کد هم کلاس ایجاد کردم، هم تابع نوشتم، هم از کاربر ورودی گرفتم، هم از حلقه تکرار استفاده کردم و … ! در واقع هرچه میدانستم پیاده کردم بدون هیچ مشکلی هم کار کرد (البته ناگفته نماند که خیلی جاهاش رو هم کمک گرفتم!) . این کد من بعد از یکی دو ساعت کار با سی شارپ :

using System;

namespace HelloWorld
{
	class Test
	{
		public static int Method(int a){
			return a;
		}
	}

	class MainClass
	{
		public static void Message(){
			Console.WriteLine ("Welcome to My Program!");
		}
		public static int SimpleFunction(int a){
			return a;
		}
		public static void Main (string[] args)
		{
			Message (); 
			Console.Write ("Enter a value: ");
			int j = Convert.ToInt32 (Console.ReadLine ());
			int i;
			for (i = 0; i<= j; i++) {
				Console.WriteLine (i);
			}
			Console.WriteLine (Test.Method(i));
		}
	}
}

جمع بندی و نکات حائز اهمیت

اگر زبانهایی مثل C یا ++C رو بلدید، دنبال سی شارپ هم بیاید، ضرر نمی کنید. فقط یک زبان C-like که تا حد زیادی با جاوا ترکیب شده رو تجربه میکنید. تجربه سی شارپ با مونو هم تجربه جالبیه! اما خب حس قشنگی نیست که فایل exe روی لینوکس اجرا بشه (مثل شتر سواری روی سطح اقیانوس میمونه یه جورایی!) ، ولی خب یادگیری هیچوقت بد نیست. بخصوص اگر مجبور باشید و درسی مثل برنامه سازی پیشرفتتون، در گرو این زبان باشه ((((: .

Share

منابعی برای یادگیری زبان Ruby

زبان Ruby هم یکی از زبان های مورد علاقه من هست، و بیشتر علاقه من به دلیل وجود ابزارهایی مثل RubyOnRails هست. در این پست، چند تا رفرنس رو معرفی میکنم تا با استفاده از اون، بتونید روبی رو سریع یاد بگیرید. لازمه بگم که روبی یک زبان بسیار سطح بالا و اسکریپتی هست، و اگر یک بکگراند از برنامه نویسی داشته باشید، میتونید با یک روز وقت گذاشتن، درست و حسابی یادش بگیرید!

  1. روبی را امتحان کنید
  2. روبی در بیست دقیقه
  3. یادگیری روبی

این سه رفرنس، مراجع خودم هم بودن و به سادگی تونستم با استفاده از اونها، روبی رو تا حد زیادی یاد بگیرم، و سعی میکنم اگر رفرنس دیگری هم یافتم، معرفی کنم 🙂

Share