نمایش نتایج 1 تا 5 از 5

نام تاپیک: طراحی نرم افزار تبدیل کننده واحد

  1. #1

    Question طراحی نرم افزار تبدیل کننده واحد

    سلام،
    من میخوام یک نرم افزار تبدیل کننده واحد بنویسم (تحت جاوا) که از واحد های زیادی پشتیبانی میکنه.

    اما مشکلم اینه که نمیدونم اسکلت نرم افزار رو چطوری پیاده کنم که حالت داینامیک داشته باشه.
    یعنی مثلا هر بار که بخوام یه واحد جدید به نرم افزار اضافه کنم مجبور نباشم تمام متد ها و ... که برای تبدیل به واحد های دیگه نیاز هست رو بهش اضافه کنم.


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


    راه حل چیه؟ با چه pattern ای میشه کار رو ساده تر و معقول تر کرد؟
    ممنون.

  2. #2

    نقل قول: طراحی نرم افزار تبدیل کننده واحد

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

    اما مشکلم اینه که نمیدونم اسکلت نرم افزار رو چطوری پیاده کنم که حالت داینامیک داشته باشه.
    یعنی مثلا هر بار که بخوام یه واحد جدید به نرم افزار اضافه کنم مجبور نباشم تمام متد ها و ... که برای تبدیل به واحد های دیگه نیاز هست رو بهش اضافه کنم.


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


    راه حل چیه؟ با چه pattern ای میشه کار رو ساده تر و معقول تر کرد؟
    ممنون.
    سلام
    کار با فایل و ساختار رو بلد هستید ؟

  3. #3

    نقل قول: طراحی نرم افزار تبدیل کننده واحد

    نقل قول نوشته شده توسط reza_noei مشاهده تاپیک
    سلام
    کار با فایل و ساختار رو بلد هستید ؟
    اگر منظورتون io و nio هست بله کار کردم.
    مورد سوال من در مورد نحوه کلاس بندی هاست.

  4. #4

    نقل قول: طراحی نرم افزار تبدیل کننده واحد

    نقل قول نوشته شده توسط Hatam09 مشاهده تاپیک
    اگر منظورتون io و nio هست بله کار کردم.
    مورد سوال من در مورد نحوه کلاس بندی هاست.
    راستش من شی گرایی رو خوب بلد نیستم اما اگر بخواهم چنین برنامه ای رو بنویسم از لیست پیوندی استفاده میکنم :
    یک بخش تنظیم دستی وجود دارد و یک بخش تبدیل واحد.
    از بخش تنظیم دستی میتونید برای ورود تبدیلات جدید استفاده کنید و از بخش تبدیل واحد برای ورودی گرفتن و خروجی دادن.

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

    منظورتون از pattern رو متوجه نشدم؟
    اگر نیاز به توضیحات بیشتر بود حتما بگید.

  5. #5

    نقل قول: طراحی نرم افزار تبدیل کننده واحد

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

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

    منظورتون از pattern رو متوجه نشدم؟
    اگر نیاز به توضیحات بیشتر بود حتما بگید.
    سلام
    ممنون ایده های خوبی گرفتم. من دنبال design pattern های خاص بودم اما راه های ساده تری هم مثل چیزی که گفتید هست.
    متشکرم.

تاپیک های مشابه

  1. سوال: نرم افزار تبدیل کننده فایل dat به mdb
    نوشته شده توسط nazanin_90 در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: پنج شنبه 13 مهر 1391, 15:53 عصر
  2. طراحی نرم افزار های Real-Time
    نوشته شده توسط سعید قدیری مقدم در بخش برنامه نویسی در 6 VB
    پاسخ: 2
    آخرین پست: جمعه 20 خرداد 1384, 11:01 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •