Borna66
07-25-2010, 11:12 PM
وظیفه یک برنامه نویس، حل مسائل کاری به وسیله طراحی برنامه های کامپیوتری است. علیرغم تفاوت در نوع و پیچیدگی مسائل، همگی به حل مسائل به یک روش گرایش داریم، شکستن مسئله به قسمت های قابل مدیریت. این کار را آنقدر ادامه می دهیم تا به جایی برسیم که هر قسمت در کوچکترین اندازه ممکن برای فهم و مدیریت باشد. سپس مراحل مورد نیاز برای حل مسئله را تعیین می کنیم. این مراحل معمولا دارای یک ترتیب هستند و وقتی در ترتیب درست اجرا شوند به نتیجه مورد انتظار منتهی میشوند. در مدل های برنامه نویسی گذشته (تا قبل از پیدایش گردش کار)، مراحل تعیین شده به وسیله زبان انتخابی برنامه نویس به صورت کد در می آمدند. کد تولید شده اینکه چه کاری باید انجام شود (دستورات اجرایی) و ترتیب اجرای دستورات (کنترل جریان) را مشخص میکرد. همچنین کد شامل تصمیم گیری ها (قوانین) بر اساس مقدار متغیر ها، دریافت رویدادها و حالت کنونی برنامه بود. یعنی تمام این موارد همراه هم و با هم به صورت یک جا به صورت کد در می آمد.
یک گردش کار، به طور ساده، یک سری از مراحل مرتب شده است که به یک سری اهداف مشخص بر اساس یک مجموعه قوانین می رسد. ممکن است تماما در کد مشخص شود، ولی کمامان یک گردش کار است. ما هر روز در طراحی های خود از گردش کار استفاده می کنیم(حتی قبل از پیدایش گردش کار)، حتی اگر به استفاده از کلمه گردش کار فکر نکنیم، از مفاهیم آن استفاده می کنیم.
در تکنولوژی جدید، مایکروسافت برای توسعه دهندگان یک مدل برنامه سازی جدید را ارائه میدهد. در این مدل یک محیط بصری (Visual) برای طراحی و مدلسازی فعالیت ها و کنترل جریان در نظر گرفته شده است. از آنجا که فعالیت ها میتوانند مصور باشند، امکان تغییر، توسعه و سفارشی سازی آنها نیز وجود دارد. در این مدل برنامه سازی بین چه چیز را انجام دادن و چگونه انجام دادن آن یک جدایی مشخص قابل مشاهده است. این جدایی به ما این امکان را میدهد که چه موقع را تغییر دهیم بدون اینکه مجبور به تغییر چه چیز باشیم. در واقع ما منطق و روند اجرای برنامه را به صورت گرافیکی طراحی میکنیم و قسمت های اجرایی را به صورت کد در می آوریم.
زبان های برنامه نویسی عمومی مانند #C یا VB میتوانند برای حل مشکلات استفاده شوند. ولی مدل برنامه سازی گردش کار این اجازه را به ما میدهد که قوانین کار را با استفاده از اصطلاحات عمومی که در حوزه یک مسئله مشخص قرار دارد تعیین کنیم. متخصصان در آن حوزه کاری قادر به مشاهده گردش کار هستند و به سادگی آن را میفهمند.
به عنوان مثال، فرض کنید حوزه کاری شما بانکداری است، ممکن است از اصطلاحاتی مانند حساب، چک، مشتری و اعتبار استفاده کنید. ولی اگر مسئله درباره یک رستوران باشد، این موجودیت ها بی معنی خواهند بود. در عوض از اصطلاحاتی مانند منو، آدرس و شماره تلفن ها استفاده می کنیم.
و اما شرکت مایکروسافت نیز این ساختار را تهیه کرده تا به توسعه برنامه های شما کمک و آن را ساده کند. ولی این ساختار به تنهایی یک برنامه نیست. یک ساختار نرم افزاری است که برای فراهم کردن گردش کار در برنامه ها طراحی شده است. صرفنظر از نوع برنامه ای که در حال توسعه هستید، همیشه چیزی در گردش کار وجود دارد که بتوانیم از آن استفاده کنیم.
اگر در حال توسعه برنامه های مبتنی بر انجام خطی یک سری فعالیت ها هستید، میتوانید از WF برای هماهنگ کردن قوانین کاری استفاده کنید. اگر برنامه شما از یک سری فعل و انفعالات انسانی تشکیل شده، می توانید برای اجرای منطقی که به آن فعالیت ها عکس العمل نشان دهد از ماشین حالت WF استفاده کنید. اگر واقعا به یک برنامه قابل سفارشی سازی نیاز دارید، برای جداسازی منطق کاری از گردش اجرا میتوانید از طبیعت اعلانی(نمایشی) گردش کاری WF استفاده کنید. این به شما اجازه سفارشی سازی گردش کنترل را بدون تاثیر در منطق کاری زیرین میدهد.
دلایل خوبی برای استفاده از WF وجود دارد، که در زیر تعدادی از آنها آمده است :
· یک چارچوب قابل انعطاف و قدرتمند را برای توسعه گردش کار فراهم میکند.
· یک روش قوی را برای توسعه برنامه هایتان ارائه میدهد. یک گردش کار بسیار شبیه گردش کار دیگر است. این پایداری در مدل برنامه سازی و ابزار بهره وری شما را به هنگام تولید برنامه های جدید و نگهداری از برنامه های موجود بالا میبرد.
· از گردش کار های ترتیبی و ماشین حالت پشتیبانی میکند. گردش کار های ترتیبی عموما برای فعل و انفعالات سیستمی استفاده میشوند. گردش کار های ماشین حالت برای حل مسائلی که بر روی فعل و انفعالات انسان تمرکز دارند مناسب است.
· از ماندگاری گردش کار حمایت میکند. توانایی ذخیره و دوباره بارگذاری حالت گردش کار در حال اجرا مخصوصا زمانی که فعل و انفعالات انسان را مدل میکنیم بسیار مهم است.
يک سیستم گردش کاری کامل را ارائه میکند. علاوه بر خود گردش کار زمان اجرا، مایکروسافت همچنین یک مجموعه از فعالیت های مناسب، نگهداری گردش کار، نظارت و دنبال کردن گردش کار و یک محیط طراحی گردش کار را که با ویژوال استودیو ارائه شده است را فراهم کرده است.
یک گردش کار، به طور ساده، یک سری از مراحل مرتب شده است که به یک سری اهداف مشخص بر اساس یک مجموعه قوانین می رسد. ممکن است تماما در کد مشخص شود، ولی کمامان یک گردش کار است. ما هر روز در طراحی های خود از گردش کار استفاده می کنیم(حتی قبل از پیدایش گردش کار)، حتی اگر به استفاده از کلمه گردش کار فکر نکنیم، از مفاهیم آن استفاده می کنیم.
در تکنولوژی جدید، مایکروسافت برای توسعه دهندگان یک مدل برنامه سازی جدید را ارائه میدهد. در این مدل یک محیط بصری (Visual) برای طراحی و مدلسازی فعالیت ها و کنترل جریان در نظر گرفته شده است. از آنجا که فعالیت ها میتوانند مصور باشند، امکان تغییر، توسعه و سفارشی سازی آنها نیز وجود دارد. در این مدل برنامه سازی بین چه چیز را انجام دادن و چگونه انجام دادن آن یک جدایی مشخص قابل مشاهده است. این جدایی به ما این امکان را میدهد که چه موقع را تغییر دهیم بدون اینکه مجبور به تغییر چه چیز باشیم. در واقع ما منطق و روند اجرای برنامه را به صورت گرافیکی طراحی میکنیم و قسمت های اجرایی را به صورت کد در می آوریم.
زبان های برنامه نویسی عمومی مانند #C یا VB میتوانند برای حل مشکلات استفاده شوند. ولی مدل برنامه سازی گردش کار این اجازه را به ما میدهد که قوانین کار را با استفاده از اصطلاحات عمومی که در حوزه یک مسئله مشخص قرار دارد تعیین کنیم. متخصصان در آن حوزه کاری قادر به مشاهده گردش کار هستند و به سادگی آن را میفهمند.
به عنوان مثال، فرض کنید حوزه کاری شما بانکداری است، ممکن است از اصطلاحاتی مانند حساب، چک، مشتری و اعتبار استفاده کنید. ولی اگر مسئله درباره یک رستوران باشد، این موجودیت ها بی معنی خواهند بود. در عوض از اصطلاحاتی مانند منو، آدرس و شماره تلفن ها استفاده می کنیم.
و اما شرکت مایکروسافت نیز این ساختار را تهیه کرده تا به توسعه برنامه های شما کمک و آن را ساده کند. ولی این ساختار به تنهایی یک برنامه نیست. یک ساختار نرم افزاری است که برای فراهم کردن گردش کار در برنامه ها طراحی شده است. صرفنظر از نوع برنامه ای که در حال توسعه هستید، همیشه چیزی در گردش کار وجود دارد که بتوانیم از آن استفاده کنیم.
اگر در حال توسعه برنامه های مبتنی بر انجام خطی یک سری فعالیت ها هستید، میتوانید از WF برای هماهنگ کردن قوانین کاری استفاده کنید. اگر برنامه شما از یک سری فعل و انفعالات انسانی تشکیل شده، می توانید برای اجرای منطقی که به آن فعالیت ها عکس العمل نشان دهد از ماشین حالت WF استفاده کنید. اگر واقعا به یک برنامه قابل سفارشی سازی نیاز دارید، برای جداسازی منطق کاری از گردش اجرا میتوانید از طبیعت اعلانی(نمایشی) گردش کاری WF استفاده کنید. این به شما اجازه سفارشی سازی گردش کنترل را بدون تاثیر در منطق کاری زیرین میدهد.
دلایل خوبی برای استفاده از WF وجود دارد، که در زیر تعدادی از آنها آمده است :
· یک چارچوب قابل انعطاف و قدرتمند را برای توسعه گردش کار فراهم میکند.
· یک روش قوی را برای توسعه برنامه هایتان ارائه میدهد. یک گردش کار بسیار شبیه گردش کار دیگر است. این پایداری در مدل برنامه سازی و ابزار بهره وری شما را به هنگام تولید برنامه های جدید و نگهداری از برنامه های موجود بالا میبرد.
· از گردش کار های ترتیبی و ماشین حالت پشتیبانی میکند. گردش کار های ترتیبی عموما برای فعل و انفعالات سیستمی استفاده میشوند. گردش کار های ماشین حالت برای حل مسائلی که بر روی فعل و انفعالات انسان تمرکز دارند مناسب است.
· از ماندگاری گردش کار حمایت میکند. توانایی ذخیره و دوباره بارگذاری حالت گردش کار در حال اجرا مخصوصا زمانی که فعل و انفعالات انسان را مدل میکنیم بسیار مهم است.
يک سیستم گردش کاری کامل را ارائه میکند. علاوه بر خود گردش کار زمان اجرا، مایکروسافت همچنین یک مجموعه از فعالیت های مناسب، نگهداری گردش کار، نظارت و دنبال کردن گردش کار و یک محیط طراحی گردش کار را که با ویژوال استودیو ارائه شده است را فراهم کرده است.