none
פרויקט צ'אט- ליטושים וכו' - הצילו RRS feed

  • שאלה

  • אני צריך לבנות פרוייקט צ'א בסי שארפ ואני פשוט תקוע אני מצרף קישור עם כל מה שבניתי ועם ההנחיות אני באמת תקוע ולא יודע איך להמשיך ולסיים אותו :-( תודה לכל מי שעוזר
    קישור: http://www.upf.co.il/file/880060256.html
    יום שישי 20 ינואר 2012 10:53

תשובות

  • ליאור ערב טוב (זה ארוך :-) קרא בעיון ולעומק)

    הקדמה:

    היה הרבה יותר טוב אם היית מצליח להגדיר נקודו מסוימות על פי פרוייקטים שיש לך. למשל הנקודה שהעלת לגבי:
    א. למה לא נשלחת הודעה שלוחצים סנד
    ב. איך עושים שתשלח הודעה שמישהו מתחבר או מתנתק

    וכמובן לקשר את זה לפרוייקט המתאים. אחרי הכל אנשים לא צריכים להשקיע זמן מיותר במעבר על כל הפרוייקט :-)

    אני אנסה לעזור מעט על ידי הצגת כמה נדוקות למחשבה/ביצוע ואני מקווה שהן יעזרו. נסה למקד אותנו לגבי בעיות שעדיין עולות בצורה ברורה וכמה שיותר קצר.

    * דרך אגב האפיון שקיבלת יפה מאוד

    נקודות כלליות:

    1. משום מה פתחת פרוייקטים רבים עבור כל טופס. אפליקציה אחת של הלקוח לא אמורה להיות בנויה מ 2 אפליקציות. כל פרוייקט מתורגם בסיום לאפליקציה בדרך כלל.

    שים לב גם לאפיון שיש לך ולהמלצות. האפליקציות שאתה צריך לפי האפיון הן בסך הכל שלושה:
    * תוכנת הלקוח
    * ספריית מחלקות ההודעות
    *תוכנת השרת (אני הייתי מציע על 2 תוכנות בשרת  SERVICE + GUI ראה הסבר בהמשך)

    תעבור על הפרוייקטים שלך ותתחיל לסדר את מה שכתבת בחלוקה נכונה כזו וזה כבר ייתן לך סדר להמשך (אני אעזור בהמשך כמובן אם צריך)

    הערה: ניתן להיסתפק ב 2 פרוייקטים אחד עבור הלקוח ואחד עבור השרת אבל נוח בדרך כלל לבנות פרוייקט נפרד עבור כל המחלקות השונות (וכמו שכתבתי האפיון שנתנו לך טוב וזה ההמלצה שלהם גם)... במקרה זה בשאר הפרוייקטים יש לצרף את הפרוייקט של ספריית המחלקות

    2. אחרי שהפרויקטים ממסודרים בצורה כזו הנקודות הבאות יהיו רלוונטיות

    א. למה לא נשלחת הודעה שלוחצים סנד: כשלוחצים על הכפתור שליחה עלייך להעביר אינפורמציה לתוכנת השרת. לא תוכל לבדוק חלק זה לפני שתוכנת השרת עובדת טוב כי אתה צריך להאזין למה שמגיע לשרת.

    אני  מציע לפני שאתה מפתח את כל התוכנה לבדוק שאתה יודע ומצליח לשלוח הודעה בתוכנת לקוח (תלא הודעה של צאט אלא תכין אפליקציה פשוטה קלה שלקוח עם כפתור אחד ששולח טקסט פשוט לשרת). כמו כן תכין תוכנה שרצה בשרת ויודעת לקבל הודעות שמגיעות אליה. את ההודעות שמקבלת התוכנה של השרת אתה לא מציג! זו תוכנה שעובדת ברקע גם כשאין משתמש רשום לשרת (SERVICE). מכיוון שאין לתוכנה חלון טופס תחשוב איזה פרוייקט בכלל מתאים לך לתוכנת השרת.

    הערה חשובה! באפיון שיש לך יש בעיה קטנה והיא בעיניין הזה. למעשה לפי האפיטון אתה צריך תוכנה אחת לשרת עם GUI אבל אני ממליץ לפתח תוכנת שרת SERVICE ובניפרד תוכנה רגילה עם טופס לניהול מי שרשום. ז"א ה SERVICE מאזין ברקע כל הזמן ובצע את כל הפעולות. ה GUI נועד רק למנהל שנכנס לשרת לבדוק דברים וצריך להפעיל את התוכנה על מנת לבדוק אותם. ההחלטה שלך וניתן לבצע את זה בפרוייקט אחד.

    רק אחרי שתצליח שתוכנה לקוח תדבר עם תוכנת שרת תעבור לפרוייקט עצמו.

    ב. איך עושים שתשלח הודעה שמישהו מתחבר או מתנתק: כאשר מישהו מתחבר צריכה להישלח הודעה בדיוק כמו קודם מתוכנת הלקוח אל תוכנת השרת (זו שעובדת ברקע)

    3. שמירת היסטוריה: על מנת לשמור היסטוריה אפשר ללכת באחד משני כיוונים

    א. שמירה בצורה קשיחה במסד נתונים או בקובץ לוג (נראה לי הדרך המומלצת עבורך כרגע)

    ב. שמירה של הנתונים בזכרון: מכיוון השרישה היא היסטוריה רק מאז שהשרת הופעל אז ניתן לשמור בכל מופע של מחלקה מסוג אוסף כמו LIST את כל הדברים שצריך לשמור בהיסטוריה. אפשר להגדיר פשוט משתנה אפליקציה שמתחיל אוטומטית על ידי הבנאי ברגע שהאפליקציה של השרת (ה SERVICE) עולה ואז מוגדרת הרשימה של ההיסטוריה ובכל פעם שיש הודעה מוסיפה על הרשימה שהוגדרה

    ++++++++++++

    נסה לעבור על הדברים ובעיקר להגיע למצב שסעיף 2 (לפני 1 ) עובד ואתה שולט ביצירת 2 תוכנות אחת בשרת ואחת בלקוח שיודעות לדבר.
    אתה יכול להעזר בקישור הבא:
    http://www.scitechexplained.com/2011/01/c-udp-datagram-client-and-server-on-the-local-computer/

    רק אחרי שאתה שולט בהעברת ההודעות תחזור ותעבור לסעיף 1

    סיים את סעיף 1 (חלוקה נכונה לשלושה פרוייקים) ואז אחרי שסעיף 1+2 מוכנים תנסה להמשיך ותחזור עם שאלות שעולות


    signature
    יום ראשון 22 ינואר 2012 19:13
    מנחה דיון

כל התגובות

  • המלצה:

    תאר מה הרעיון שאותו ניסית לממש, מה הצלחת לעשות ואיפה בדיוק אתה תקוע. לכולם כאן יהיה הרבה יותר קל לעזור לך.


    בהצלחה, ואם עזרתי, לחץ על 'סמן כתשובה', וסמן את התשובה כמועילה.
    יום שישי 20 ינואר 2012 11:35
  • ניסיתי וניסיתי אבל אני תקוע לא יודע איך להמשיך אשמח אם תיתן לי כיוון והסבר קצר ותודה מראש

    אני לא יודע אם המסג' ליב טוב ואיך להשתמש בו

    אני לא יודע מתי להוסיף גם קליינט לקולקשיין וגם לא איך להוסיף את מי שהתחבר לפורם שמציג את ההיסטוריה

    ולמה לא נשלחת הודעה שלוחצים סנד ואיך עושים שתשלח הודעה שמישהו מתחבר או מתנתק ומאיפה

    אשמח לעזרה כי אני תקוע מספר ימים

    יום ראשון 22 ינואר 2012 08:46
  • ליאור ערב טוב (זה ארוך :-) קרא בעיון ולעומק)

    הקדמה:

    היה הרבה יותר טוב אם היית מצליח להגדיר נקודו מסוימות על פי פרוייקטים שיש לך. למשל הנקודה שהעלת לגבי:
    א. למה לא נשלחת הודעה שלוחצים סנד
    ב. איך עושים שתשלח הודעה שמישהו מתחבר או מתנתק

    וכמובן לקשר את זה לפרוייקט המתאים. אחרי הכל אנשים לא צריכים להשקיע זמן מיותר במעבר על כל הפרוייקט :-)

    אני אנסה לעזור מעט על ידי הצגת כמה נדוקות למחשבה/ביצוע ואני מקווה שהן יעזרו. נסה למקד אותנו לגבי בעיות שעדיין עולות בצורה ברורה וכמה שיותר קצר.

    * דרך אגב האפיון שקיבלת יפה מאוד

    נקודות כלליות:

    1. משום מה פתחת פרוייקטים רבים עבור כל טופס. אפליקציה אחת של הלקוח לא אמורה להיות בנויה מ 2 אפליקציות. כל פרוייקט מתורגם בסיום לאפליקציה בדרך כלל.

    שים לב גם לאפיון שיש לך ולהמלצות. האפליקציות שאתה צריך לפי האפיון הן בסך הכל שלושה:
    * תוכנת הלקוח
    * ספריית מחלקות ההודעות
    *תוכנת השרת (אני הייתי מציע על 2 תוכנות בשרת  SERVICE + GUI ראה הסבר בהמשך)

    תעבור על הפרוייקטים שלך ותתחיל לסדר את מה שכתבת בחלוקה נכונה כזו וזה כבר ייתן לך סדר להמשך (אני אעזור בהמשך כמובן אם צריך)

    הערה: ניתן להיסתפק ב 2 פרוייקטים אחד עבור הלקוח ואחד עבור השרת אבל נוח בדרך כלל לבנות פרוייקט נפרד עבור כל המחלקות השונות (וכמו שכתבתי האפיון שנתנו לך טוב וזה ההמלצה שלהם גם)... במקרה זה בשאר הפרוייקטים יש לצרף את הפרוייקט של ספריית המחלקות

    2. אחרי שהפרויקטים ממסודרים בצורה כזו הנקודות הבאות יהיו רלוונטיות

    א. למה לא נשלחת הודעה שלוחצים סנד: כשלוחצים על הכפתור שליחה עלייך להעביר אינפורמציה לתוכנת השרת. לא תוכל לבדוק חלק זה לפני שתוכנת השרת עובדת טוב כי אתה צריך להאזין למה שמגיע לשרת.

    אני  מציע לפני שאתה מפתח את כל התוכנה לבדוק שאתה יודע ומצליח לשלוח הודעה בתוכנת לקוח (תלא הודעה של צאט אלא תכין אפליקציה פשוטה קלה שלקוח עם כפתור אחד ששולח טקסט פשוט לשרת). כמו כן תכין תוכנה שרצה בשרת ויודעת לקבל הודעות שמגיעות אליה. את ההודעות שמקבלת התוכנה של השרת אתה לא מציג! זו תוכנה שעובדת ברקע גם כשאין משתמש רשום לשרת (SERVICE). מכיוון שאין לתוכנה חלון טופס תחשוב איזה פרוייקט בכלל מתאים לך לתוכנת השרת.

    הערה חשובה! באפיון שיש לך יש בעיה קטנה והיא בעיניין הזה. למעשה לפי האפיטון אתה צריך תוכנה אחת לשרת עם GUI אבל אני ממליץ לפתח תוכנת שרת SERVICE ובניפרד תוכנה רגילה עם טופס לניהול מי שרשום. ז"א ה SERVICE מאזין ברקע כל הזמן ובצע את כל הפעולות. ה GUI נועד רק למנהל שנכנס לשרת לבדוק דברים וצריך להפעיל את התוכנה על מנת לבדוק אותם. ההחלטה שלך וניתן לבצע את זה בפרוייקט אחד.

    רק אחרי שתצליח שתוכנה לקוח תדבר עם תוכנת שרת תעבור לפרוייקט עצמו.

    ב. איך עושים שתשלח הודעה שמישהו מתחבר או מתנתק: כאשר מישהו מתחבר צריכה להישלח הודעה בדיוק כמו קודם מתוכנת הלקוח אל תוכנת השרת (זו שעובדת ברקע)

    3. שמירת היסטוריה: על מנת לשמור היסטוריה אפשר ללכת באחד משני כיוונים

    א. שמירה בצורה קשיחה במסד נתונים או בקובץ לוג (נראה לי הדרך המומלצת עבורך כרגע)

    ב. שמירה של הנתונים בזכרון: מכיוון השרישה היא היסטוריה רק מאז שהשרת הופעל אז ניתן לשמור בכל מופע של מחלקה מסוג אוסף כמו LIST את כל הדברים שצריך לשמור בהיסטוריה. אפשר להגדיר פשוט משתנה אפליקציה שמתחיל אוטומטית על ידי הבנאי ברגע שהאפליקציה של השרת (ה SERVICE) עולה ואז מוגדרת הרשימה של ההיסטוריה ובכל פעם שיש הודעה מוסיפה על הרשימה שהוגדרה

    ++++++++++++

    נסה לעבור על הדברים ובעיקר להגיע למצב שסעיף 2 (לפני 1 ) עובד ואתה שולט ביצירת 2 תוכנות אחת בשרת ואחת בלקוח שיודעות לדבר.
    אתה יכול להעזר בקישור הבא:
    http://www.scitechexplained.com/2011/01/c-udp-datagram-client-and-server-on-the-local-computer/

    רק אחרי שאתה שולט בהעברת ההודעות תחזור ותעבור לסעיף 1

    סיים את סעיף 1 (חלוקה נכונה לשלושה פרוייקים) ואז אחרי שסעיף 1+2 מוכנים תנסה להמשיך ותחזור עם שאלות שעולות


    signature
    יום ראשון 22 ינואר 2012 19:13
    מנחה דיון