نرم افزار

GUI Design Studio ابزاری برای طراحی رابط کاربری برنامه ها

برنامه نویسی یکی از پردرآمدترین مشاغلی می باشد که امروزه بسیاری از افراد به آن مشغول می باشند. برنامه نویسان حرفه ای ماهیانه درآمد مناسبی را برای امورگذران زندگی خود از همین راه کسب می کنند. زبان های برنامه نویسی مختلف همانند C , VisualBasic , Delphi , perl و یا زبان های برنامه نویسی وب مثل PHP و یا ASP.net که مورد استفاده طراحان وب می باشد ، همگی به برنامه نویس توانایی هایی را می دهد که در زمینه کاری برنامه نویسی خود دارای ویژگی هایی می باشد. بسیاری از کاربرانی که قصد دارند تا برنامه نویسی را فرا گیرند بیشتر از زبان های برنامه نویسی شیء گرا همانند VisualBasic استفاده می کنند. بسیاری از وب سایت های موجود در اینترنت نیز با در اختیار قرار دادن سورس کدهای مربوط به زبان های برنامه نویسی مختلف به کاربران مبتدی در این زمینه یاری می رسانند.

در این مطلب نرم افزاری را برای کاربرانی که در سطح مبتدی برنامه نویسی می باشند معرفی می کنیم.

GUI Design Studio نام نرم افزاری می باشد که به کمک آن کاربران قادر به طراحی شکل و فرم برنامه و کدنویسی آسان می باشند. عناصر ساخت برنامه به صورت کاملا گرافیکی در اختیار کاربران می باشد و بدون کدنویسی می توانند بسیاری از امکانات را بر روی برنامه خود قرار دهند. ساخت پروژه ها ، ساخت برنامه های به همراه درج مشخصات آن ها ، چگونگی ساخت روند یک برنامه و مسیر طراحی و برنامه نویسی و … از امکانات این نرم افزار می باشد. با استفاده از این نرم افزار در کنار زبان های برنامه نویسی مختلف برنامه نویسان مبتدی راحتتر قادر به حل مشکلات خود خواهند بود. این نرم افزار محصولی از شرکت Caretta Software می باشد.

سایت سازنده : Ceretta Software

منبع : P30World.com

GUI Design Studio ابزاری برای طراحی رابط کاربری برنامه ها بیشتر بخوانید »

آیا موفقیت زبان‌های برنامه‌نویسی با ریش و سبیل سازنده نسبت دارد؟

این تئوری تامیر خاسون است که در وبلاگش مطرح کرده. بگذارید ما هم نگاهی بیندازیم.

برای شروع باید رفت سراغ فرترن، آدا و سیمولا. نویسنده فرترن (جان باکوس) پارسال درگذشت. نویسنده آدا (جین ایشبیا) سه ماه قبل و نویسنده سیمولا هم کریستین نیگارد بود که در اثر سکته قلبی مرد. حالا نگاهی به ظاهر این افراد بیاندازید.

صورت هر سه سه تیغه و سفید است و زبان هایشان به تاریخ پیوسته. اما بریم سراغ f#. نویسنده این زبان یعنی دکتر دان سیم هم ریش و سبیل نداشت و در نتیجه زبان اختراعی‌اش را کمتر می‌شناسیم.

وضعیت پرولوگ هم همینطور است. زبان خوبی که مخترعش هنوز هم ریش ندارد. وضع صورت آلن کولمرائور مشخص کننده آینده این زبان است.

اما زبان‌های موفق چی؟ مثلا سی! این زبان را سه نفر به وجود آوردند: برایان کرنیقان، دنیس ریچی و کنت تامپسون. وضع اینها بهتر است و هنوز هم ریششان را حفظ کرده‌اند و سی هم هنوز با داشتن ۱۶٪ سهم بازار، یکی از مهمترین زبان‌های کامپیوتری است.

Obejctive C که توسط برند کوکس نوشته شد موفقیت چندانی نداشت و بعد هم Java+ او شکست خورد. من و شما دلیلش را می‌دانیم:

در مقابل C++ که در حال حاضر حدود ۱۸٪ صنعت را در اختیار دارد زبان بسیار موفقی بود که در حال حاضر در حال عقب نشینی در مقابل زبان‌های جدید است. بگذارید دقیق‌تر نگاه کنیم. این تصویر استراستوپ در روزهایی است که C++ را معرفی کرد:

و این هم عکس این روزهایش:

تاثیر عمیق موی صورت روی موفقیت زبان ها کاملا واضح نیست؟ برایان باید برای حفظ سی پلاس پلاس، تیغش را از پنجره بیرون بیاندازد و این زبان را نجات دهد.

بیسیک زبان بعدی است. توماس ای کورتز مخترع بیسیک است که در آن روزها به عنوان یک زبان ساده و عمومی شهرت داشت که تقریبا همه برنامه نویسان آن را بلد بودند. این هم عکس آن روزها.

و البته این روزها بیسیک دیگر زبان مهمی نیست اما در شاخه‌هایی مثل Visual Basic هنوز زنده است و به همراه سبیل ، به زندگی به عنوان یک زبان ساده ولی ناکارآ ادامه می‌دهد:

حالا که بحث سبیل است، باید از زبان پرل یاد کنیم که با داشتن حدود ۶٪ بازار، یکی از زبان‌های مهم این روزها در سرورها به حساب می‌آید. این هم عکس لری وال، نویسنده آن:

حالا نوبت رابی و پیتون (پایتون) است.یکی دو سال است که این زبان‌ها به مشهورترین زبان‌های دنیا تبدیل شده اند و کلی خبر درباره آن‌ها می‌خوانیم. این مسابقه به خاطر ریش حرفه‌ای وان رسوم (رابی) و یوکیهورو ماتسوموتو (پایتون) است.

ولی وضعیت #C و Java چیست؟ آندره هلسبرگ نه ریش دارد و نه سبیل و به همین دلیل سی شارپ بعد از چهار سال فقط چهاردرصد بازار را در اختیار گرفته و این، در پیک این زبان است و در نتیجه در سال‌های آینده امید چندانی برای این زبان وجود نخواهد داشت. در مقایسه به جیمز گاسلینگ و ریشش نگاه کنید و کشف کنید که چرا جاوا ۱۸٪ بازار را در اختیار گرفته.

دیگر چه؟ فهرستی دارم از زبان‌های جدید و احتمالا ناموفق.

مثلا RubyCLR که توسط سام رمجی ابداع شده و امیدی به مشهور شدن ندارد:

یا اسکات گاتری را ببینید که WPF و Silverlight را نوشته. البته در نوشتن اینها بقیه مایکروسافتی‌ها هم نقش دارند ولی به هر حال در مایکروسافت کسی پشمالو نیست.

شانس JSON در این میان از بقیه بیشتر است. امیدوارم دوگلاس کراکفورد به کار خوبش ادامه دهد.

پیش‌بینی سخت، پیش بینی در مورد زبان‌های جدید و ماجولار مثل Haskell است. در این مورد افرادی مثل سیمون پیتون جیمز، پاول هوداک و فیلیپ والدر همدیگر را خنثی می‌کنند و در نتیجه نمی‌شود در مورد موفقیت یا شکست این زبان پیش‌بینی صحیحی ارائه داد.

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

منبع

آیا موفقیت زبان‌های برنامه‌نویسی با ریش و سبیل سازنده نسبت دارد؟ بیشتر بخوانید »

اگه فلش داری غم نداری!

این بار قصد دارم تا یه ابزار رایگان مفید و کار راه انداز تحت عنوان PortableApps.com Suite رو به شما دوستان معرفی کنم. اما قبل از اون اجازه بدین تا نرم افزارهای Portable ( قابل حمل) رو به اختصار توصیف کنم. کلا به زبان عامیانه به نرم افزارهایی که نیاز به نصب ندارن و مستقلا اجرا میشن Portable گفته میشه که مزایای متعددی دارن که مهمترینش همون قابل حمل بودن اونهاس. به ترتیبی که در هر مکانی که دسترسی به کامپیوتر برای ما مهیا شد میتونیم USB Flash خودمون رو به سیستم وصل کنیم و از برنامه قابل حمل مد نظرمون استفاده کنیم.

این روزا با توجه به رشد استفاده از USB Flash ها و نیاز به استفاده از ابزارهای کاربردی، برنامه های کلاسیک در نسخه های قابل حمل هم عرضه میشن تا جاییکه Photoshop قابل حمل هم ارائه شده. بنابراین خیلی راحت میشه یه مجموعه ابزار مورد نیاز رو همیشه توی USB Flash همراه خودمون داشته باشیم. اما با این حال به مرور زمان احساس می کنیم که ای کاش یه چیزی بود که باهاش می تونستیم ابزارهای رو فلش دیسک و داده های مربوطه رو سریعتر و بهتر مدیریت کنیم تا مثلا موقعی تعدد برنامه ها زیاد میشه بتونیم سریع و راحت به هدف برسیم و یا نخوایم همه ی کارها رو دستی انجام بدیم. اما این نیاز ما از قبل توسط برنامه PortableApps.com Suite پاسخ داده شده! با استفاده از این ابزار تمامی کارهایی که ازش یاد کردم به راحتی امکان پذیره. بهتر از اون این هست که این ابزار به همراه یک مجموعه از نرم افزارهای مفید قابل حمل مثل مرورگر فایرفاکس و یا OpenOffice در سه نسخه متفاوت عرضه شده که تفاوت عمدشون در تعداد برنامه هایی هست که به صورت پیشفرض ارائه می کنن. البته به راحتی می تونیم ابزارهای دیگه خودمون رو بهش اضاف کنیم.

شاخصه ی دیگه این ابزار که قابل توجه هست این هست که مجموعه ای از ابزارهای مفید و مورد نیاز در اغلب زمینه ها که از قبل پیکربندی هم شدن برای کاربران گرد آوری شده که زحمت یافتن و تنظیم رو از دوش کاربراش برمیداره که این خیلی دلپذیر هست. اگر یه سر به سایت سازندش بزنین با لیستی از برنامه های قابل حمل مفید مواجه خواهید شد که می تونین در صورت لزوم دریافتشون کنین.

این مجموعه در سه ویرایش Lite، Basic و Standard عرضه شده که همون طور که گفتم تفاوتشون در تعداد برنامه های ارائه شده هست. این برنامه که خیلی به درد من میخوره ، امیدوارم که شما هم ازش استفاده کنید و لذت ببرید.

جهت دریافت برنامه PortableApps.com Suite کلیک کنید.

اگه فلش داری غم نداری! بیشتر بخوانید »

آشنایی با Plug-In ها در نرم افزار MMB

پلاگین چيست؟


اكثر برنامه هاي امروزي اين قابليت را فراهم مي كنند تا كاربر بتواند از Plug-Inها استفاده نمايد. براي مدت هاي مديدي اين امكان فراهم نبود تا يك كاربر بتواند تعدادي توابع اضافه بر سازمان برنامه در اختيار داشته باشد و مي بايست تا نسخه بعدي برنامه صبر مي كرد. اما پس از چندي اشخاصي اين قاعده را شكستند و اين آرزوي كاربران را برآورده ساختند. پس از آن با تدوين استانداردها برنامه نويسان و توسعه دهندگان اجازه يافتند تا براساس ضوابطي توابع دلخواه خود را در صورت امكان به بدنه برنامه اصلي اضاف نمايند. به همين دليل اين امكانات و توابع اضافه نام plug-in را به خود گرفت. امروزه ميتوانيم ردپاي plug-In را در اكثر برنامه ها از قبيل برنامه هاي طراحي و ويرايشي و … ببينيم. اما حال ببينيم plug-In ها دقيقاً چه هستند و چگونه كار ميكند؟

ایستگاه فضایی مطمئناً همه ي شما ايستگاههاي فضايي را ديدهايد كه حول زمين در حال چرخش هستيد. حالا تصور كنيد كه MMB ساختار مركزي اين ايستگاه فضايي است. (شكل اول)

البته شايد شكل روبرو شبيه يك ايستگاه فضايي كامل نباشد چرا كه سلولهاي خورشيدي ندارد، اما به هر حال با تصوري كه از شكل بالا پيدا كرديد فرض كنيد كه ميتوانيد در اين ايستگاه فضايي به ادامه حيات و فعاليت بپردازيد. اما پس از مدتي احساس خواهيد كرد كه به امكاناتي اضافه احتياج داريد امكاناتي از قبيل اسباب راحتي و… اما نگران نباشيد اين احساس نياز از قبل پيشبيني شده و تنها كافيست كه وسايل را تهيه و با اتصال آنها به ايستگاه فضايمان را گسترش دهيم. حالا با استفاده از قابليت توسعه توانستيد فضايتان وقدرتان را بهبود بخشيد اما اگر بخواهيم به واقعيت نزديكتر شويم و قدرتمان را در MMB افزايش دهيم دقيقاً بايد چه كنيم؟
لازم نيست نگران باشيد تنها كافيست برنامه MMB و plug-In هاي مورد نظر را در اختيار داشته باشيد.اما حتماً از خود ميپرسيد plug-In هاي MMB چگونه هستند؟ بله plug-In هاي MMB تنها فايلي ساده با پسوند DLL هستند كه امكان دارد در حالت عادي پنهان شده (Hidden) باشند. ( ميتوانيد از قسمت Folder option ويندوز آنها را درصورت مخفي بودن نمايان سازيد. همچنين ميتوانيد در حين اجراي يك برنامه حاوي plug-In، plug-In آن را از شاخه temp ويندوزبيابيد). براي مثال فايلهاي posxy.dll, tweak.dll, misc.dll يكسري از plug-In هاي موجود هستند. اما اين plug-In ها را از كجا بايد تهيه كنيم؟ پاسخ ساده است شما ميتوانيد با استفاده از سايتهاي زير اقدام به تهيه آنها نماييد:

http://www.mmbforums.com

http://forum.majidonline.com/forumdisplay.php?&f=83

بسيار خب پس از اينكه plug-In هاي مورد نياز را جمع آوري كرديد وقت استفاده از آنهاست. ابتدا قبل از هركاري بايستي يك پنجره در صفحه پروژه براي plug-inبكشيم تا در ادامه اين پنجره به عنوان نگهدارنده فايل plug-In ما باشد. از منوي Object با انتخاب قسمت plug-In پنجره مورد نظر را ميكشيم .
برخي از plug-In ها هستند كه به صورت بصري عمل ميكنند.به عنوان مثال plug-In هايي كه جلوههايي نظير بارش برف و باران و حركت ستارگان را ايجاد ميكنند. بنابراين اين plug-Inها نياز به پنجرهاي مناسب و قابل ديد دارند، اما دركنار همين plug-In هاي بصري تعداد ديگري plug-In هم هستند كه بصري نيستند و نياز به پنجرهاي بزرگ و قابل ديد ندارند بلكه فقط وجود پنجرهاي كوچك در هر جايي براي آنها كافيست. پس از اينكه پنجره را ايجاد كرديد بر روي آن 2 بار كليك نماييد تا پنجرهاي همانند شكل ظاهر شود. (عكس دوم)

همانند ساير پنجره هاي خصوصيت براي اشياء ديگر گزينه هايLock position و Hide عمل مشابهي را انجام ميدهند و label ( برچسب) هم نام شيء Plug-In را مشخص مينمايد كه بايد اين نام را به خاطر بسپاريد. دروسط اين پنجره كادر ورودي هست كه كنار آن دكمهاي قرار گرفته كه توسط اين دكمه كادري تبادلي جهت مسيردهي فايل plug-In ظاهر ميشود. خب پس چرا منتظريد؟! دكمه را فشار دهيد… اگر هيچ plug-In اي را جهت مسير دهي نداريد به زيرشاخه plug-In از پوشه نصب برنامه MMB برويد و در آنجا يك Plug-In بصري به نام Tenblobs.dll راكه همراه برنامه MMB ارائه شده است را خواهيد يافت. بلافاصله پس ازاينكه Plug-In را برگزيديد ، پيغامي مبني براينكه آيا ميخواهيد Plug-In را الحاق نماييد؟ ظاهر ميشود. به آن پاسخ مثبت بدهيد.ديگر احتياجي نيست كه نگران اين فايل پس از اتمام پروژهاتان باشيد زيرا MMB تمام فايلهاي الحاق شده را به همراه فايل نهايي بستهبندي ميكند. پس از الحاق يك Plug-In پنجره خصوصيت به صورت شكل درميآيد.

باتوجه به شكل مسير منتهي به فايل Plug-In داراي ماكروي <Embedded> است كه پيشتر درباره اين ماكــــرو بحث كرديم. درزيـــر اين كادرمسـير، قسمتي است كه حـاوي اطلاعاتي از قبيل نام مؤلف Plug-In ،پست الكتريكي ، سايت و … مؤلف ميباشد.
اكنون دكمه ي ok را فشار دهيد تا عمل نصب Plug-In تمام شود. در اينجاست كه پس ازيكبار اجراي برنامه احساس ميكنيد كه چيزي كم است،بله درست فهميديد بر اساس ساير Plug-In هاي برنامههاي ديگر شما به اين تصور رسيدهايد. اما اگر Plug-In شما بصري باشد در كادر خصوصيت Plug-In قسمتي در بالا سمت راست كه درشكل نشان داده شده فعال ميشود كه ميتوانيد به آنجا برويد و تنظيمات موجود را تغييردهيد.

اما خصوصيات و كنترل Plug-In هاي غير بصري را چگونه ميتوان در دست گرفت؟ در اينجاست كه فرامين به كمك ما ميآيند. فراميني كه در دل اسكريپتهاي MMB جا خوش كرده اند.اما اجازه دهيد كه ببينيم در پشت پرده چه خبرست؟ همانطور كه گفتيم فايلهاي Plug-In برنامه MMB ،DLL هستند كه DLL مخفف عبارت Dynamic link library ( كتابخانه اتصال پويا ) است به اين معنا كه DLLها مجموعهاي از توابع و فرامين هستند.پس با اين تفاسير ارتباطي پويابين MMB و Plug-In ها برقرار است.اين ارتباط ميتواند به 3 صورت زير باشد:

1- تنظيم متغير در MMB و دريافت متغير عددي توسط Plug-In
2- تنظيم متغير در MMB ودريافت متغير رشتهاي توسط Plug-In
3- اجراي فرماني خاص كه ممكن است اين فرمان خروجي به همراه داشته باشد.


براي استفاده از Plug-In ها بايستي با مفاهيم متغيرها و نحوه استفاده از آنها آشنا باشيد.چنانچه اين گونه نيست از ادامه خواندن اين قسمت تا زمانيكه مفاهيم متغيرها را فراگيريد پرهيز نماييد. خب گذشته از اينها صورت پيشرفتهتر 3 حالت قبل به صورت زيردر مي آيد:

1- تنظيم پارامترها براساس متغيرها ( هميشه لازم نيست)
2- اجراي فرامين Plug-In براساس پارامترها
3- دريافت متغيرهاي خروجي پس از اجراي فرامين ( هميشه اينطور نيست)
3 حالت گفته شده زيربناي درك عملكرد Plug-In ها ميباشند. همانطور كه قبلاً گفته شد Plug-In هاي MMB بر 2 نوع هستند:

1- نوع غيربصري و قابل كنترل توسط فرامين 2- نوع بصري

غالب Plug-In هاي MMB (نزديك به 98%) ازنوع اول هستند كه محدوده فعاليت آنها در قسمت پنجره تعبيه شده است. باقي فعاليتها توسط فرامين داخل Plug-In صورت ميگيرد كه يا منجر به تغيير حالت Plug-In يا ارسال خروجي به متغيرها مي شود. اين نكته حائز اهميت است كه Plug-In هاي ازنوع اول تقريباً مستقل از MMB عمل ميكند و بر ساير اشياء حاضر در پروژه هيچ تاثير مستقيمي اعمال نميكنند. عدم تعامل با ساير اشياء ضعفي براي MMB شناخته ميشود كه شايد در نسخههاي بعدي برطرف گردد.نكتهي ديگري كه در خصوص نوع اول بايد گفت اينست كه نميتوان از يك Plug-In در 2 پنجره استفاده كرد در مفــهومي عامتر نــمي توان آنها را به اشـــتراك گذاشت. راهحل اين نقيصه استفاده از 2 Plug-In مشابه اما با نامهاي مختلف است.
همانطوركه شكل بالا نشان ميدهد دو Plug-In مشابه با نامهاي مختلف داريم كه اين نامها در جاي خود مهم است، چرا كه در ادامه توسط همين نامها و به مدد از فرامين از Plug-In ها استفاده ميكنيم. اما نوع دوم بصري هستند كه قبلاً راجع به آنها صحبت كرديم.شكل زير يك نمونه از PlugInهاي بصري است.

بگذاريد پس از شرح قسمتهاي مهم قبل به جمعبندي مطالبي كه تا كنون آموختيم بپردازيم:
– Plug-In ها همه جا هستند.
– قسمتهايي اضاف بر سازمان هستند.
– هدف Plug-In ها افزايش قابليت برنامههاست.
خب ديگر تئوري بس است.به جاست كه تمرين را شروع كنيم. گفتيم كه تنظيم خصوصيات Plug-In هاي نوع 1 توسط اسكريپت نويسي انجام ميشود. در زبان اسكريپتنويسي MMB، 3 فرمان مرتبط با Plug-In ها وجود دارد كه شما از آنها جهت ايجاد ارتباط بين MMB و Plug-In استفاده ميكنيد. اين فرامين به ترتيب در لیست زير بحث شده اند.

  • PlugInSet

اين فرمان جهت تنظيم پارامتر براي فرامين Plug-In ميباشد. اين فرمان پارامترها را كه همان متغيرهاي عددي و رشتهاي هستند را به فايل Plug-In ارسال ميكند و Plug-In آنها را ذخيره و بررسي ميكند .هر بار استفاده از اين دستور با يك متغير كه محتوايش تغيير كرده سبب جايگزيني محتوي جديد در فايل Plug-In مي شود.

  • PlugInRun

اين فرمان توابع و فرامين تعبيه شده در فايل Plug-In را براساس پارامترهاي تنظيم شده اجرا ميكند. چنانچه بخواهيد نام فرامين موجود در Plug-In را بدانيد به راهنماي همراه Plug-In مراجعه كنيد. البته هميشه Plug-In ها احتياج به پارامتر ورودي ندارند و يا در حالاتي هيچ مقدار خروجي توليد نميكنند و تنها سبب تغيير حالت Plug-In و انجام ساير فعاليتها ميشود.

  • PlugInGet

اين فرمان وظيفه دريافت مقدار خروجي كه با استفاده از فرمان PlugInRun توليد شده است را برعهده دارد.پس طبيعتاً اين فرمان پس از دستور PlugInRun استفاده ميشود.

مثال
اكنون 3 فرمان گفته شده را در كنار هم ميآوريم تا بتوانيم از Plug-In استفاده كنيم.

var$ = “text”
PlugInSet(“Plug-In” , “ var$”)
PlugInRun(“Plug-In” , “uppercase”)
PlugInGet(“Plug-In” , “var$”)
Message(“Output is:”,”var$”)

در بلوك كد بالا ابتدا محتوي متغير var$ توسط فرمان PlugInSet به Plug-In ارسال ميشود.سپس دستور PlugInRun بر اساس متغير دريافتي دستور مربوطه (uppercase) را اجرا ميكند ويك خروجي توليد مينمايد. در ادامه دستور PlugInGet مقدار خروجي را دريافت كرده و به MMB انتقال ميدهد.كه درآخر ميتوان از اين مقدار با استفاده از ساير فرامين سود جست. حالت گفته شده گونهاي بود كه Plug-In خروجي توليد كرد اما حالتي پديد ميآيد كه هيچ خروجي توليد نميشود،يعني اينكه احتياجي به استفاده از فرمان PlugInGet نيست.اين حالت براي مثال ممكن است براي مواقعي كه ميخواهيم اندازه يك فونت را تغيير دهيم پديد آيد. چيزهايي كه نياز است ،يكي اندازه نهايي فونت و فرماني جهت اجراي آن است و هيچ نيازي به خروجي نميباشد.اين گونه از ارتباط همانند مثال زير ميباشد.

مثال:

fontsize= 16
PlugInSet(“Plug-In” , “ fontsize”)
PlugInRun(“Plug-In” ,”Set fonts size”)

توجه كنيد كه فعلاً تمام اين Plug-In ها فرضي و مجازي هستند.

ممكن است گونههاي مختلفي در استفاده از فرامين MMB براي ارتباط با Plug-In ها پديد آيد و اين بستگي به نوع فرمان Plug-In دارد كه ميتوان از طريق راهنماي Plug-In آن را مشخص ساخت.
بگذاريد چون صحبت درباره راهنماي Plug-In شد،قدري راجع به آن صحبت كنيم. همانند ساير راهنماها، راهنماي Plug-In ها هم بسته به نياز حاوي تعدادي مثال هستند كه اين مثالها هدف اصلي هر دستور را نشان ميدهد و هميشه نميتوان با كپي و چسابدن آنها از راهنما به ويرايشگر اسكريپت انتظار عملكرد صحيح را از آنها داشت.گاهي اوقات لازم است كه با توجه به خطوط قبلي كد برنامه و براساس نيازمان كد اين مثالها را تغيير دهيم و نهايتاً از آنها استفاده كنيم. نكتهي ديگري را كه بايد يادآور شد اين است كه در غالب راهنماها بر چسب Plug-In ، PlugIn در نظر گرفته ميشود كه چنانچه بخواهيم نام ديگري داشته باشيم بايد در فرامين مرتبط با Plug-In اين برچسبها را تغيير دهيم.
اما در رابطه با حالتهاي به كارگيري 3 دستور قبل صحبت ميكرديم.حالتهاي ديگري هم كه ممكن است پديد آيد به صورت زير است:
الف) استفاده از يك دستور بدون هيچ ورودي و خروجي
ب) استفاده از يك دستور بدون مقدار ورودي
حالت الف ممكن است مواقعي پيش بيايد كه فرمان ما تنها عملي را بايستي انجام دهد براي مثال ويندوز را Shutdown كند.
حالت ب ممكن است مواقعي پيش بيايد كه فرمان Plug-In مستقلاً عمل كرده و مقدار خروجي توليد كند. مثلا هنگامي كه بخواهيم ساعت و تاريخ را دريافت كنيم.اگر پا را فراتر ازاين حالات بگذاريم حالتهاي ديگري به وجود ميآيد كه خود از تركيب چند حالت قبل پديد مي آيد،همانند مثال زير:
بلوك 1

کد:
var$ = “My computer is P4”
PlugInSet(“Plug-In” , “var$”)
PlugInRun(“Plug-In“ , “upper case”)
PlugInGet(“Plug-In” , “text$”)

بلوك 2

کد:
PlugInSet(“Plug-In” , “text$”)
PlugInRun (“Plug-In” , “Show message box”)

در مثال قبل ابتدا رشته در بلوك 1 به حالت بزرگ تبديل شده و به بلوك 2 ارسال ميشود تا در كادر پيغام نشان داده شود.
رابطهاي Plug-In و متغير تنها به يك انتساب ساده ازقبيل var$=myname منتهي نميشود.بلكه گاهي اوقات پيش ميآيد كه اين رشتهها توسط كاراكتري از هم جدا ميشوند مثلاً براي تعيين مقدار رنگ:
color$ = “220,150,105”
اين گونهها بر اساس تعاريفي كه از پيش در Plug-In به وسيلهي مؤلف آن آمده است پردازش و تجزيه ميشود.حالتهاي ديگري از اين قبيل انتسابها هم وجود دارند.

مثال:

Regkey $ = ‘softwareprogramsectionkeyname’
Flag$ = ‘con|yes no cancel|caption’
كنترل رويداد (Event Handing)

وقايع (Event): اتفاقات و توسعههايي هستند كه در Plug-In رخ ميدهند و به برنامه شما اطلاع داده مي شوند.
كنترل كننده رويداد: شيءهاي اسكريپت MMB هستند كه همانند نوعي شبكه وقايع را دريافت ميكند.
همانطور كه قبلاً خوانديد بعضي از فرامين مقادير خروجي توليد مي كنند اما برخي از Plug-In ها بلافاصله پس از دستور PlugInRun مقدار خروجي توليد نمي كنند. وظايفي از قبيل پردازش دادهها ، وقفههاي طولاني، رويدادهاي دورهاي و … سبب بروز چنين حالتي مي شوند. خب در اين صورت سؤال اينجاست كه Plug-In برنامه MMB چگونه در اين حالت با MMB به تعامل ميپردازد؟ جواب اينجاست كه خود Plug-In فشردن كليد يا كليدهايي را جهت ارسال اطلاعات به MMB شبيهسازي مي كند.

آشنایی با Plug-In ها در نرم افزار MMB بیشتر بخوانید »

Foldy PlugIn – جهت کار با پوشه ها در نرم افزار MMB

با توجه به نیاز دوستان و درخواست بعضی از دوستان طی مدت اخیر بنده یک پلاگ این به نام Foldy برای نرم افزار MMB ساختم که فعلا دارای قابلیت های زیر هست:

– کپی محتویات یک پوشه به یک پوشه دیگر به همراه تعیین فیلتر جهت کپی کردن یک سری خاص از فایل ها ( مثلا zip.* )
– بدست آوردن لیست پوشه ها و فایل های درون یک پوشه ( یا مسیر)
– تغییر نام یک پوشه
– حذف یک پوشه به همراه محتویات آن به همراه تعیین فیلتر جهت پاک کردن یک سری خاص از فایل ها
– حذف فایل های دارای ویژگی Read Only
– گرفتن پوشه Home که حاوی زیر پوشه های کاربری هست که به سیستم وارد شده.
– گرفتن اندازه یک پوشه
– گرفتن تعداد محتویات ( فایل ها) یک پوشه

– تبدیل نام های بلند به فرم کوتاه شبیه حالتی که در داس میبینیم.
– کپی کردن فایل ها و پوشه ها به همراه نشان دادن پیشرفت کار (همانند شکل).
– انتقال فایل ها و پوشه ها به همراه نشان دادن پیشرفت کار.
– حذف (ارسال به سطل آشغال) فایل ها و پوشه ها به همراه نشان دادن پیشرفت کار.
– خالی کردن سطل آشغال ویندوز که به نوعی دستوری مکمل دستور بالایی هست.

Download Foldy Plug-In Here

Foldy PlugIn – جهت کار با پوشه ها در نرم افزار MMB بیشتر بخوانید »