السلام عليكم ....
هذا اول نظره لتحليل برنامج الرسم البسيط اللي قررنا أن نقوم بتطويره في القسم، وتتم برمجته بشكل جماعي ......
كأول اقتراح للبدأ في العمل سوف نقوم بتحليل بسيط للبرنامج للنتاقش فيه سويا، الكل مرحب به للأدلاء برأيه، هذا النقاش سيكون بمثابه مسوده نكتب فيه الأفكار الأولية، بعد ذلك سيتم وضع نسخة نهاية من التحليل .... لنبدأ بالأستناد عليها في مرحلة التصميم للبرنامج، حيث سيتم التناقش حول تراكيب البيانات التي سنستخدمها و الخوارزميات للعمليات (الوظائف) الخاصة بالبرنامج.
الجميع مرحب به في المشاركة، سواء عملية تطوير (كتابة كود و تصميم) او رسم ايقونات او كتابة مستندات مساعده او حتى اختبار له عند الانتهاء منه.
بالنسبه للبداية في عملية تكليف العمل لكل شخص ستتم إن شاء الله عند الإنتهاء من مرحلة تصميم البرنامج بشكل نتفق عليه جميعا.
أولا: التحليل
التحليل هو المرحلة التي يتم فيه تحديد متطلبات و وظائف البرنامج، و تكون نتيجته تقرير نقرير نستد عليه في مرحلة التصميم. هذا التقرير لا يحتوي على اية تفاصيل فنية (برمجية) بل يكون نص ستطيع قرأئته و فهمه اي شخص، بمعني اخر يجب ان يستطيع اي مستخدم للكمبيوتر End User قرائته و فهمه.
الوظائف:
البرنامج بالتأكيد سيحتوي على وظائف رئيسية، مثل:
1- فتح ملف.
2- حفظ ملف.
3- مطالعة الصورة قبل الطباعة و طباعتها.
4- نسخ .
5- لصق.
6- قص .
إي وظائف اخرى تود إظافتها ..... فهي محل الترحيب.
التعامل مع الملفات:
سيكون امتداد الملفات التي يكتبها البرنامج atd من كلمة "Arab team drawing Program" من لديه اقتراح افضل فليتفضل، هذه الملف سيحتوي على البيانات التي تسمح للمستخدم إرجاع منطقة العمل للمشروع الذي كان يعمل معه، بالتأكيد هذا الملف سيكون ضخم بحيث انه يسحفظ جميع البيانات الخاصة بمشروعه. بالطبع في نهاية المطاف سيحتاج المستخدم تحويل عمله إلى أحد تركيبات الصور المعروفة كال gif, jpeg, png، و يوجب توفير الوظيفة التي تمكنة من القيام بهذا التحويل. على اية حال دعم جميع هذه التركيبات يتطلب الكثير من الجهد، على الرغم من توفر الكثير من المكتبات المجانية المفتوحة المصدر التي تمكنك من إجراء تحويل تركيب الصورة من تركيبة إلى أخرى، اقتراحي الشخصي ان نقوم بدعم صيغة ال png فقط في البرنامج. و ندع التركيبات الأخرى في نسخ مستقبلية لتسهيل المشروع، و الأخيار لكم في النهاية.
لوحة الأدوات :
لوحة الأدوات هي اللوحة التي سيستخدمها المستخدم لأختيار الأداة التي سيرسم بها على لوحة الرسم، القائمة التالية تعرض الأدوات التي ممكن أن نوفرها و خواص كل اداة:
1- أداة اختيار Selection Tool: هذه الأداة تستخدم لتحديد جزء معين من لوحة الرسم لكي تنفيذ جميع العمليات عليه مثل النسخ و القص و تعبئة اللون و المسح .... الخ، و عزل اي جزء خارجة.
هذه الأداة ممكن ان توفر الكثير المرونة للمستخدم، بحيث تعطيه الأمكانية برسم جزء على شكل مستطيل أو دائرة أو حتى تركيبة منهم.
احد النقاط المهمة التي يجب ان نتناقش فيها الان حول هذه الاداة هي العمليات التي ستتأثر بهذه الأداة، على سبيل المثال عملية النسخ، و التي ستقوم بنسخ هذا الجزء فقط إلى الذاكرة.
2- بخاخ لون AirBrush: عمل هذه الأداة هي بخ لون على شكل فرشة.
3- فرشاة Brush.
4- قلم Pencil.
5- مستطيل Rectangle.
6- شكل بيضاوي و دائري Ellipse & Circle.
7- مساحة Eraser
8- منحنى Curve .
9- خط مستقيم Line.
10- متعدد الأضلاع Polygon .
11- Rounded Rectangle .
12- Pick Color.
13- أداة التعبئة Filler Tool.
14- كتابة نص Text.
15- Zoom Tool: يتوفر هذه الأداة الإمكانية للمستخدم تكبير نقطة الرؤية للوحة الرسم Canvs بحيث يستطيع ان يتعامل مع لوحة الرسم بأكثر دقة.
لوحة عرض الأوان:
في هذه اللوحة سيتم عرض الأوان التي يستطيع المستخدم اختيارها للتحديد اللون التي سيتم الرسم به، في هذه اللوحة سيتم تحديد لون جزئين:
1- لون القلم (لون الحدود) التي سيتم رسم الشكل به.
2- لون التعبئة: اللون الذي سيتم تعبئة الجزئ الداخلي للشكل الهندسي.
طريقة عرض لوحة الرسمCanvs:
1- توفير شبكة Grid.
2- توفير مسطرة Ruler.
نظرية الطباقات Layers:
سيوفر البرنامج امكانية للمستخدم ان يقوم بعزل الأشكال المرسومة على لوحة رسم منطقيا في طبقات Layers، بحيث تسهل عليه العمل و تقلل من الأرباك و الخطأ عند الرسم.
في النهاية أود ان اقول ان كل من الوظائف و الامكانيات التي ذكرتها هي فقط لنتناقش حولها، و دعمها أو عدم دعمها في البرنامج تعتمد على اراء الفريق الذي سيشارك في التطوير، حيث سيتم البت فيها عند إنتهائنا من النقاش و كتابة التحليل النهائي.
تحياتي .....