تبلیغات
آکنده
آکنده ،،،،
در اندیشه پرواز هم نباش، پرنده هم مردنی است

مقدمه ای بر برنامه نویسی همروند[توسعه نرم‏افزار , ]

Concurrent Programming

 

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

گذشته : برنامه نویسی همروند بدلیل عدم پشتیبانی زبانهای برنامه نویسی چندان مورد توجه قرار نگرفته و فقط زبان جاوا بعضی امکانات مثل متودهای async را ارائه میکند. (من با توجه به مطالبی که میدانم این بخش را نوشته ام و با توجه به چیزهایی که نمیدانم میتوانید این مطالب را زیر سوال ببرید.)

حال : در حال حاضر امکانات Multi Threading بصورت کتابخانه های مستقل از زبان برنامه نویسی موجود است و برای مثال شما میتوانید در .Net بسادگی قسمتهایی از برنامه را بصورت موازی اجرا کنید و اجرای همزمان را مدیریت کنید.

آینده : امکانات برنامه نویسی همروند بطور درون-ساخت در زبانهای برنامه نویسی فراهم میشود و دیگر برنامه نویس با مفاهیمی مثل thread بطور مستقیم درگیر نخواهد بود. در سی شارپ 3 مایکروسافت برنامه نویسی همروند معرفی میشود که مایکروسافت با پروژه های تحقیقاتی مثل Concurrent C# و سی امگا طراحی زبان سی شارپ 3 را به وجهی عالی انجام داده است(من برای انتشار نسخه 3 سی شارپ لحظه شماری میکنم چون علاوه بر برنامه نویسی همروند تغییرات اساسی دیگری در فرایندهای برنامه نویسی ایجاد میکند که فوق العاده جذاب هستند.)

دو ویژگی مهم :

  • مدل اختصاصی طراحی و برنامه نویسی
    برنامه نویسی همروند مدل برنامه نویسی خاص خود را دارد و دقیقاً در نقطه مقابل برنامه نویسی ترتیبی(Sequential) قرار دارد.(توجه داشته باشید که برنامه نویس شیگرایی فعلی نیز نوعاً ترتیبی است چون در هر لحظه کنترل اجرای برنامه در اختیار یک شی قرار دارد.)
    با توجه به این نکته اشیا متودهای همدیگر را صدا نمیزنند، بلکه نحوه عملکرد(اجرا) اشیای دیگر را با تغییری که در محیط اطراف خود ایجاد میکنند تغییر میدهند.
  • تاثیر بر مفاهیم شیگرایی
    من از دیرباز اشیا را به سه دسته جامد، زنده، هوشمند تقسیم بندی میکنم، با استفاده از برنامه نویسی همروند امکان تعریف اشیا زنده وجود دارد، چون همانطور که از تعریف این اشیا بر می آید شی زنده شئی است که بطور مداوم فعال است و اجرا میشود و شی هوشمند نیز شئی زنده است که در حین فعالیت(اجرای مداوم) در ساختار خود تغییر ایجاد میکند.
    در مورد این مقوله در اولین پستی که راجع به شی گرایی بفرستم بیشتر صحبت میکنم.
تاریخ فرستادن:شنبه 9 مهر 1384، نویسنده: فرشید کزازی (همیشه همینه)
تعداد بازخوردها: ، شما هم دیدگاه خود را ارائه کنید

 

درباره فرشیدکزازی

 
 

هیچ چیز قابل گفتنی درباره خودم وجود نداره.
کاری داشتید به farshidkazazi@gmail.com پیام بفرستید.

 

 

درباره آکنده

 
 

این وبنوشت دربردارنده دیدگاهها و گفتنیها و نوشتینهای من است و من هرچی که دلم بخواهد میام و اینجا مینویسم و چون فعلاً نرم افزار کار میکنم، زمینه تخصصی آن بیشتر به آن گرایش دارد.

** اسم وبنوشت هیچ معنای خاصی ندارد، اولین کلمه ای بود که موقع ثبت نام به ذهنم رسید.

دسته بندی نگاره ها:
عمومی (7)
توسعه نرم‏افزار (13)

 

 

وبنوشتهای دیگر

 
  زیر چتر باران
واژگان مدیریت دانش
 

 

ابزارها

 
 
جستجو در بلاگ


برای دریافت نگاره ها از طریق email با وارد کردن آدرس email نام‏ نویسی کنید:
بایگانی گذشته
مرداد 1385 (2)
تیر 1385 (3)
اردیبهشت 1385 (1)
بهمن 1384 (4)
آذر 1384 (1)
آبان 1384 (4)
مهر 1384 (5)