الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مساعده في تصميم برنامج لمشاركة الملفات

بدأه java_seeker في 17 نوفمبر 2008 · 11 رد · 938 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه

انا الآن اعمل على تطوير برنامج بسيط يقوم بمشاركة الملفات بين المستخدمين باستخدام نظام عميل/خادم

وفي الحقيقة انا عندي مشكلتين ،

اولا: انا محتار باختيار التقنية التي يجب ان استخدمها اما --> (جافا سوكتس) او ( ار ام آي ) فممكن تساعدوني في اختيار احدهما

ثانيا : كيفية تحليل وتصميمم البرنامج ----> اذا ممكن احد قد صمم مثل هالنوع من البرامج يزودني بالسيناريو الله يجزاه خير وانا احاول اصمم النمذجه له.

شاكرا وقدرا تجاوبكم معي مقدما

#2

اهلا

بالبدية انا افضل ذا لم تكن لك خبرة مسبقة في التعامل مع اي تقنية في التطبيقات الموزعة بالجافا مثل RMI ان تبتعد قليلا

وان تستخدم socket

بالنسبة لموضوع تصميم وتحليل البرنامج

فهناك عدة فئات classes نستطيع ان نستخدمها لعمل الفكرة التي تفضل بها

لكن على حسب ما قدمت من شروحات ولا ادري كيف سيكون برنامجك

هناك صنف يسمى URL يوجد فيه عدة method تستطيع ان تمرر له بال URL بدل HTTP مثلا file :///c:/myfile.txt

اما بالنسبة للــmethod فهناك على ما اذكر getfile التي تجلي اسم الملف او الملف نفسه مع لاحقته

سنتعامل بشكل رئيسي مع channels من مكتبة nio فهي اسرع

على كل حال قم بتوضح الفكرة اكثر لنحاول المساعدة

نسيت امر قد يفيدك .هناك موضوع لوجدي عصام فيه الكثير قد يفيدك

ابحث عنه

بالتوفيق

الله معك..

#3

السلام عليكــم ورحمـة الله وبركاتـه

مشكور على ردك اخوي @ انا في الحقيقة فعلا مبتديء لذلك راح امشي على نصيحتك وراح اصمم البرنامج باستخدام السوكتس وبعد منتهي ممكن استخدم الآر ام اي

طبعا هذا مثال او محاوله لتحليل النظام

post-172044-1226945215_thumb.jpg

عندي كم سؤال اذا ممكن؟؟؟؟

اولا: ماهي العمليات او الميثود او الكلاسات التي احتاجها لادارة السيرفر

ثانيا : log File هل استخدم Random access File لتخزين البيانات او كلاس آخر؟؟؟؟؟

ومشكورين مقدما

#4

السلام عليكم أخي

حقيقة اخي بالأمكان استخدام , اي تقنية , لان المشروع بالإمكان انجازه بكلا التقنيتين , لكن ربما RMI أسهل .

اين ستكون مخزنة الملفات التي ستكون مشتركة ,,, هل ستكون مخزنة على السيرفر أم على الكلاينت ؟؟

#5

مشكور اخي MKSoft على ردك،

في الحقيقة، لم تتضح الصوره لدي هل ستكون الملفات المشتركه على الكلاينت ام على السيرفر؟؟؟؟

لكن مبدئيا ، راح تكون على الكلاينت ، الا اذا كان لدى الأخوه رأي آخر!!!!

سلام...............

#6

بالتأكيد أن تكون الملفات موجودة على أجهزة العملاء

تخلصك من مشاكل عنق الزجاجة

وتخفف الضعط على الخادم

لكنها تفتفقد إلى التواجدية availability

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#7

السلام عليكم ،،،،

مشكور اخوي صلاح على ردك،،،

الحمدلله تمكنت من انهاء الخطوه الأولى بالنظام، حيث client يستطيع الاتصال بالسيرفر والعكس صحيح،،،

لكن السؤال كيف استطيع ان اجعل الكلاينت يتصل بكلاينت الآخر عن طريق السيرفر؟؟؟؟؟....

انا افكر بعمل HashMap في السيرفر تقوم بتخزين اسم Client كمفتاح ConnectionHandler كقيمه... وبعد مايتصل الكلاينت بالسيرفر سيقوم السيرفر بارسال ماهي الكلاينتس المتصله حاليا والملفات المتاحه لكل كلاينت..........> هل محاولتي هذه صحيحه؟؟؟؟

سؤال آخر: بالنسبه لـ LogFile هل اقوم بعمله كملف عادي واي اتصال او قطع اتصال سيقوم الكلاينت بكتابة هذه الاحداث بالملف؟؟؟

ارائكم شباب جدا تساعدني ،،، شكرا مقدما......

تم تعديل هذه المشاركة بواسطة java_seeker في 21 نوفمبر 2008 في 19:34

#8

في RMI

هناك ما يسمى بـ callBack

ابحث عنها ربما تفيدك

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#9

شكرا اخي علاء على ردك،،، المشكله اني استخدم الـ Socket ....

توصلت الى اني استطيع الآن ان ارسل رساله String من Client الى Client .......

سؤالي: كيف استطيع ارسال ملف مثلا اسمه "a.txt" من Client A الى Client B عن طريق السيرفر طبعاً و باستخدام Socket؟؟؟؟؟؟

انا استخدم ObjectInputStream و ObjectOutputStream هل انا بالطريق الصحيح ؟؟؟؟

واذا احد عنده مثال او كود ،، فضلا لا أمرا يشاركنا فيه....

تحياتي

#10

السلام عليكم أخي :

إقرأ المشاركة التالية من مشاركات الأخ وجدي , وستسفيد منها كثيرا , حيث انها طويلة نوعا ما , لكن في نهاية المقالة , يوضح كيفية ارسال ملفات عبر الشبكة .

رابط الدرس

تم تعديل هذه المشاركة بواسطة MKSoft في 24 نوفمبر 2008 في 10:37

#11

مشكور اخي MKSoft الدرس فعلا مفيد ومغطي جوانب كثيره في كيفية برمجة الشبكات ....

الف شكر مجددا والشكر موصول لأستاذ وجدي ايضا.......

#12

اعتقد لو انت تريد نقل ملفات من جهه لاخري فعليك استخدام java sockets

اما لو اردت ان تعمل remote control او ما شابه ف RMI مناسبه جدا

بالتوفيق

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…