به نام خدا
سلام.امروز قصد داریم در جلسه دوم " آموزش پروژه محور برنامه نمایش عکس در جاوا " ،یاد بگیریم چطور مفاهیم جاوا را از صورت مسئله مون استخراج کنیم.
خب مسئله پروژه برنامه نویسی جاوای ما بصورت زیر است:
صورت مسئله:برنامه ای گرافیکی به زبان برنامه نویسی جاوا بنویسید که تعدادی عکس را از محلی از کامپیوتر بخواند و آن را نمایش دهد.
ویژگی های برنامه:
✔ برنامه قابلیت عقب یا جلو بردن عکس را داشته باشد به گونه ای که وقتی روی دکمه بعدی کلیک میکنیم ،عکس بعد نمایش داده شود یا وقتی روی دکمه قبلی کلیک میکنیم عکس قبل نمایش داده شود.
✔ وقتی به آخرین عکس میرسیم با زدن دکمه بعدی دوباره به ابتدای تصاویر برگردیم و اولین عکس را نمایش دهیم.
✔ همه تصاویر را با اندازه و سایز مشخصی در فریم برنامه نمایش دهیم. ممکن است تصاویر ما با اندازه های مختلف یا خیلی بزرگ تر از فریم برنامه باشد که در این صورت از فریم برنامه بیرون میزند. به عبارتی کاری کنیم همه تصاویر در چارچوب فریم مون قابل نمایش باشد.
✔ برنامه منویی با نام open داشته باشد که بتوان از طریق آن عکس های خود را از کامپیوتر پیدا کرده و بخوانیم و در برنامه نمایش بدهیم.
استخراج مفاهیم درون مسئله یک پروژه جاوا:
همان طور که برای ساخت یک خانه نیاز به نقشه داریم برای ساخت یک برنامه نیز نیاز به یک الگو و نقشه ای داریم که از روی آن به راحتی تشخیص بدهیم باید از کجا شروع کنیم و به چه مفاهیمی برای پیاده سازی برنامه نیازمندیم.
اولین گام:
ابتدا برای حل یک مسئله برنامه نویسی جاوا نیازمند استخراج مفاهیم جاوا نظیر کلاس ها،متغیرها،متدها،اشیا،کلیدهای کنترلی نظیر کیبورد،فریم ها ،پنل ها،دکمه ها،لیبل ها ،کار با انواع فایل ها و سایر مفاهیم جاوایی که در مسئله به آن اشاره شده است.
دومین گام:
بعد از تشخیص این که به چه مفاهیمی از جاوا برای حل مسئله نیاز داریم به سراغ راه های پیاده سازی و کدنویسی مسئله میرویم. همان طور که میدانید حل یک مسئله برنامه نویسی برای هر فرد متفاوت است به عبارتی هر کس به شیوه خود یک پروژه برنامه نویسی جاوا را میتواند حل کند،پس اگر راه حل شما برای نوشتن یک پروژه برنامه نویسی با دوستان تان فرق داشت هیچ اشکالی ندارد.
در گام دوم ممکن است با برخی از مفاهیم جاوا که برای حل یک پروژه برنامه نویسی نیازمند است آشنایی نداشته باشید که در این صورت نیز هیچ خبری نیست :-) چرا که با سرچ کردن، تحقیق کردن و سوال پرسیدن میتوانید اون مفهوم ناآشنایی که بهش نیاز دارید را یاد بگیرید.کلا خاصیت یک پروژه برنامه نویسی همین است که شما را به چالش بکشد و با حل چالش مفاهیم جدیدی که در هیچ کتاب آموزش برنامه نویسی آموزش نمیدهند را یاد بگیرید.این برای همه برنامه نویس ها صادق است و هیچ کس نمیتواند ادعایی کند که برای حل یک پروژه برنامه نویسی دست به دامن سرچ و تحقیق نیفتاده است :-)
نکته: ممکن است بعد از استخراج مفاهیم برنامه نویسی جاوا و پیدا کردن الگوریتم و شیوه مناسب حل پروژه جاوای خود در حین کدزنی متوجه بشید که به مفاهیمی دیگری نیز نیاز دارید که از قبل در پروژه استخرج نکردید که باز اشکالی ندارد، مهم این است که مفاهیم کلی و شیوه حل مسئله را پیدا کنید و شروع به کدزنی کنید حالا در این میان اگر به مفاهیمی نیاز پیدا کردید که از قبل از مسئله استخراج نکردید هیچ مشکلی ندارد چرا که مهم این است که فهمیدید که به فلان مفهوم برای پیش بردن پروژه جاوای خود نیاز دارید.
استخراج مفاهیم پروژه برنامه نمایش عکس در جاوا:
صورت مسئله: برنامه ای گرافیکی به زبان برنامه نویسی جاوا بنویسید که تعدادی عکس را از محلی از کامپیوتر بخواند و آن را نمایش دهد.
توضیحات صورت مسئله:
💡 در صورت مسئله گفته برنامه ای گرافیکی به زبان جاوا، پس باید سریعا ذهنمون به سمت کتابخانه های گرافیکی جاوا نظیر Swing و javafx برود.البته در این آموزش، برنامه های گرافیکی خود را از طریق کتابخانه Swing پیاده سازی میکنیم.
💡 یک برنامه گرافیکی در جاوا از فریم ها،پنل ها،لیبل ها،دکمه ها،جدول ها،فیلدها و... تشکیل شده است.
💡 اشاره به خواندن تعدادی عکس از محلی از کامپوتر کرده است،از آنجایی که عکس ها نیز در گروه فایل ها قرار میگیرند و به عبارتی یک عکس نوعی فایل با فرمت مشخص حساب میشود.پس نیاز به مفاهیم کار با فایل ها بخصوص کار با فایل های تصویری در جاوا داریم.
💡 همچنین گفته شده از محلی از کامپیوتر عکس ها را پیدا کرده و بخوانیم،پس باید از سازوکار و مفهومی در جاوا استفاده کنیم که بتوانیم از طریق آن به مکان های مختلف کامپیوتر دسرسی پیدا کنیم و فایل های تصویری خود را انتخاب کنیم.
💡 بعد گفته عکس ها را نمایش بدهیم،حالا باید بررسی کنیم چه دستور و مفهومی در جاوا قابلیت نمایش یک عکس را در خود دارد.
ویژگی های برنامه:
✔ برنامه قابلیت عقب یا جلو بردن عکس را داشته باشد به گونه ای که وقتی روی دکمه بعدی کلیک میکنیم ،عکس بعد نمایش داده شود یا وقتی روی دکمه قبلی کلیک میکنیم عکس قبل نمایش داده شود.
✔ وقتی به آخرین عکس میرسیم با زدن دکمه بعدی دوباره به ابتدای تصاویر برگردیم و اولین عکس را نمایش دهیم.
✔ همه تصاویر را با اندازه و سایز مشخصی در فریم برنامه نمایش دهیم. ممکن است تصاویر ما با اندازه های مختلف یا خیلی بزرگ تر از فریم برنامه باشد که در این صورت از فریم برنامه بیرون میزند. به عبارتی کاری کنیم همه تصاویر در چارچوب فریم مون قابل نمایش باشد.
✔ برنامه منویی با نام open داشته باشد که بتوان از طریق آن عکس های خود را از کامپیوتر پیدا کرده و بخوانیم و در برنامه نمایش بدهیم.
توضیحات ویژگی های برنامه:
💡 گفته شده برنامه دکمه هایی دارد که از طریق آن میتوانید عکس ها را به جلو یا عقب ببرید.پس باید ذهنمون بره سراغ دکه های گرافیکی در جاوا و حالا دستوراتی که باعث عوض شدن عکس ها یا به عبارتی حرکت به سمت عکس بعدی یا قبلی هنگام نمایش میشوند.
💡 دوباره به ابتدای تصاویر برگردیم: خب باید دستورات و راه حلی پیدا کنیم که بعد از رسیدن به آخرین عکس با زدن دکمه بعدی دوباره به عکس اول برگردیم به عبارتی یک نوع چرخش دایره ای در نمایش تصویر داشته باشیم.
💡 همه تصاویر را با اندازه و سایز مشخصی در فریم برنامه نمایش دهیم: باید از دستورات و مفاهیمی در جاوا استفاده کنیم که اندازه و سایز عکس را تنظیم میکند.مثلا اگر عکس ما 500 در 500 پیکسل بود و صفحه نمایش عکس ما 200 در 200 پیکسل بود، اندازه عکس ما را از 500 در 500 پیکسل به 200 در 200 پیکسل تغییر دهد.
💡 برنامه منویی با نام open داشته باشد: همه ما با منوی open کم و بیش در برنامه های کامپیوتری اشنایی داریم. منویی که کارش خواندن فایل هایی با فرمت خاص از محلی از کامپیوتر است. در جاوا دستورات مشخصی وجود دارد که کار منوی open را برای ما انجام میدهد.
نکته: فعلا بنابر تشخیص بنده از صورت مسئله در کنار مفاهیم بالایی که از مسئله استخراج کردیم ما به دو کلاس یکی برای عکس ها که ویژگی ها و متدهای های خاص خودش را خواهد داشت و دیگری یک کلاس اصلی که متد main ،پنل ها و فریم برنامه و سایر ویژگی ها و دستورات برنامه در آن قرار میگیرد.البته ممکن است در حین پیاده سازی به مفاهیمی برخورد کنیم و نیاز پیدا کنیم که ابتدا آن را هنگام استخراج مفاهیم پروژه تشخیص نداده بوده ایم مثل پیاده سازی کلاس های بیشتر یا برخی از دستورات جاوا.
سوااال: چرا برای عکس ها کلاس درنظر گرفتیم؟میتونستیم یک کلاس تعریف کنیم و همه مفاهیم رو از تصاویر تا سایر دستورات را در درونش پیاده سازی کنیم.
پاسخ:خب ما با شی گرایی با جاوا آشنایی داریم و این را میدانیم که شی گرایی کدنویسی را برای ما ساده تر و کوتاه تر کرده است چطوری؟ خب ما در جلسه نهم آموزش مفاهیم پایه و شی گرایی جاوا به مبحث اشیا و کلاس ها پرداخته ایم که میتوانید آن را مطالعه کنید. در کل بهتر است هر مفهومی از یک مسئله که میتواند نقش کلاس را بازی کند را استخراج کنیم و ویژگی ها و رفتارهای مربوط به ان را پیاده سازی کنیم.
عکس به دلیل این که میتواند ویژگی هایی نظیر اندازه،تعداد،لیست عکس و... و همچنین متدهای خاص خودش رو داشته باشه را میتوان به عنوان یک کلاس درنظر بگیریم.پس هر مفهومی که دارای ویژگی ها و رفتار خاص خودش است را میتوان به عنوان یک کلاس درنظر گرفت.
خب ما در این جلسه آموزشی با استخراج مفاهیم کلی مسئله " پروژه برنامه نمایش عکس در جاوا " آشنا شدیم. ان شاالله در جلسات آینده شروع به کدنویسی و پیاده سازی این پروژه به زبان جاوا خواهیم کرد.
دوست من آرزوی سعادت و کامیابی رو برات دارم،خدانگهدار
این جلسه آموزشی را میتوانید بصورت کتاب الکترونیکی (PDF شده) در لینک زیر دریافت کنید.
این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)
نشر این مطلب با ذکر منبع (لینک سایت) بلامانع است.
برای با خبر شدن از جدیدترین مطالب آموزشی جاوا عضو کانال تلگرام ما شوید.
بستن *نام و نام خانوادگی * پست الکترونیک * متن پیام |
دوره های آموزشی برنامه نویسی
انجام پروژه های برنامه نویسی
تدریس خصوصی برنامه نویسی
بیش از 7 سال از فعالیت جاواپرو میگذرد
جاواپرو دارای مجوز نشر دیجیتال از وزارت فرهنگ و ارشاد اسلامی است
جهت ارتباط مستقیم با جاواپرو در واتساپ و تلگرام :
09301904690
بستن دیگر باز نشو! |