EbiPenMan
سه شنبه 30 آذر 1389, 01:46 صبح
سلام به همگی
معرفی برنامه :
من می خوام یه برنامه طراحی مدارهای منطقی ساده بنویسیم. که کاملا شی گرا باشه.
قرار نیست این برنامه خیلی پیچیده باشه. فقط قراره چنتا گیت های منطقی کامل مثل AND , OR , NOT , XOR و مثلا یه LED و یه کلید و یه منبع تغذیه داشته باشه.
خوب حالا بریم سر اصل مطلب:
میخوام به من برای طراحی و چگونگی استفاده از مفاهیم شی گرایی در این برنامه کمک کنید.
اول بگم من چیکارا کردم:
## من هر کدوم از گیت ها رو با استفاده از User Controls پیاده سازی کردم.
## یه User Control والد دارم که تمام دیگر UC ها از اون ارث می برن.
فعلا کارای UC والدم اینا هست که همه UC ها اینا رو دارن:
## با نگه داشتن کلید چپ موس روی UC ، اون رو میتونه تو فرم جا به جا کنه
## با نگه داشتن کلید راست موس روی UC ، اندازه اون رو میتونه تغییر بده
** فعلا دیگه کارای مشترک دیگه ای رو نمی دونم که همه ازش ارث ببرن.
حالا نکاتی که با کمک شما حل میشه (ایشالا) :
## هر گیت بالاخره n تا ورودی و m تا خروجی دارن. حالا :
؟؟ به نظر شما چطور میشه ورودی و خروجی های هر گیت رو متغییر و تغییر تعدادشون و توسط کاربر گذاشت
** مثلا گیت NOT فقط یه ورودی و یه خروجی داره. ولی گیت OR یا AND میتونه چند ورودی و یه خروجی داشته باشه.
؟؟ شما چی میگید؟ اگه پیاده سازی متغییر بودن تعداد ورودی خروجی ها، سخت و پیچیده هست، اندازه شون و ثابت بزارم؟ ( میخوام ببینم اگه زیاد سخت نیست بزارم، واسه با حال تر شدن برنامه)
مشکل و سوال اصلی :
؟؟ مشکل من روی لینک دادن یه خروجی به یه ورودی هست.
؟؟ اصلا لینک و چطوری بدم؟
؟؟ وقتی لینک داده میشه چی ست بشه؟
این عکس گیت not هست : http://load.hostphotofree.com/c7a0507a81ca941714a8618b96578375/1.gif
موس که میره روش کادرش مشخص میشه. اینکه تابلو هست.
## اگه دقت کنید می بینید که ورودی و خروجی ها رو radioButton گذاشتم.
## اینطوری فکر کردم که کاربر با انتخاب یه RB خروجی و بعد انتخاب یه RB ورودی این دو بهم با یه خط که رو فرم رسم میشه (نقاشی) وصل بشه.
## واسه برنامه نویسی و گرفتن مقدار هم میشه واسه هر خروجی هر گیت یه متغییر ارتباط ( که مشخص کنه کدوم ورودی به کدوم گیت وصل شده) و یه متغییر که مقدار اون لینک رو نشون میده.
حالا شما منو راهنمایی کنید.
؟؟ واسه رسم ارتباط بین دو گیت استفاده از نقاشی و رسم خط رو فرم خوبه؟
؟؟ آیا میشه یه کنترل ساخت که خط بین دو لینک خودش کنترل باشه؟
؟؟ واسه فهمیدن اینکه کدوم خروجی گیت به کدوم ورودی وصل شده استفاده از متغییر ها مناسب هست؟
؟؟ کجا و چطور میشه از interface ها تو برنامه استفاده کرد؟
مهم تر از همه :
؟؟ برنامه باید توانایی ذخیره کردن و باز کردن دوباره مدار طراحی شده رو داشته باشه. چه روشی رو پیاده کنم؟
معرفی برنامه :
من می خوام یه برنامه طراحی مدارهای منطقی ساده بنویسیم. که کاملا شی گرا باشه.
قرار نیست این برنامه خیلی پیچیده باشه. فقط قراره چنتا گیت های منطقی کامل مثل AND , OR , NOT , XOR و مثلا یه LED و یه کلید و یه منبع تغذیه داشته باشه.
خوب حالا بریم سر اصل مطلب:
میخوام به من برای طراحی و چگونگی استفاده از مفاهیم شی گرایی در این برنامه کمک کنید.
اول بگم من چیکارا کردم:
## من هر کدوم از گیت ها رو با استفاده از User Controls پیاده سازی کردم.
## یه User Control والد دارم که تمام دیگر UC ها از اون ارث می برن.
فعلا کارای UC والدم اینا هست که همه UC ها اینا رو دارن:
## با نگه داشتن کلید چپ موس روی UC ، اون رو میتونه تو فرم جا به جا کنه
## با نگه داشتن کلید راست موس روی UC ، اندازه اون رو میتونه تغییر بده
** فعلا دیگه کارای مشترک دیگه ای رو نمی دونم که همه ازش ارث ببرن.
حالا نکاتی که با کمک شما حل میشه (ایشالا) :
## هر گیت بالاخره n تا ورودی و m تا خروجی دارن. حالا :
؟؟ به نظر شما چطور میشه ورودی و خروجی های هر گیت رو متغییر و تغییر تعدادشون و توسط کاربر گذاشت
** مثلا گیت NOT فقط یه ورودی و یه خروجی داره. ولی گیت OR یا AND میتونه چند ورودی و یه خروجی داشته باشه.
؟؟ شما چی میگید؟ اگه پیاده سازی متغییر بودن تعداد ورودی خروجی ها، سخت و پیچیده هست، اندازه شون و ثابت بزارم؟ ( میخوام ببینم اگه زیاد سخت نیست بزارم، واسه با حال تر شدن برنامه)
مشکل و سوال اصلی :
؟؟ مشکل من روی لینک دادن یه خروجی به یه ورودی هست.
؟؟ اصلا لینک و چطوری بدم؟
؟؟ وقتی لینک داده میشه چی ست بشه؟
این عکس گیت not هست : http://load.hostphotofree.com/c7a0507a81ca941714a8618b96578375/1.gif
موس که میره روش کادرش مشخص میشه. اینکه تابلو هست.
## اگه دقت کنید می بینید که ورودی و خروجی ها رو radioButton گذاشتم.
## اینطوری فکر کردم که کاربر با انتخاب یه RB خروجی و بعد انتخاب یه RB ورودی این دو بهم با یه خط که رو فرم رسم میشه (نقاشی) وصل بشه.
## واسه برنامه نویسی و گرفتن مقدار هم میشه واسه هر خروجی هر گیت یه متغییر ارتباط ( که مشخص کنه کدوم ورودی به کدوم گیت وصل شده) و یه متغییر که مقدار اون لینک رو نشون میده.
حالا شما منو راهنمایی کنید.
؟؟ واسه رسم ارتباط بین دو گیت استفاده از نقاشی و رسم خط رو فرم خوبه؟
؟؟ آیا میشه یه کنترل ساخت که خط بین دو لینک خودش کنترل باشه؟
؟؟ واسه فهمیدن اینکه کدوم خروجی گیت به کدوم ورودی وصل شده استفاده از متغییر ها مناسب هست؟
؟؟ کجا و چطور میشه از interface ها تو برنامه استفاده کرد؟
مهم تر از همه :
؟؟ برنامه باید توانایی ذخیره کردن و باز کردن دوباره مدار طراحی شده رو داشته باشه. چه روشی رو پیاده کنم؟