ABA


"איך להתחיל לכתוב פרויקט קטן? (C#, או כל שפה בעצם.)"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #20197 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 20197
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   10:11   13.09.13   
אל הפורום  
  איך להתחיל לכתוב פרויקט קטן? (C#, או כל שפה בעצם.)  
 
אהלן !

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

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

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

אני רוצה לבנות את המשחק Space Invaders.

תודה !


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  כמה דגשים VeNom  13.09.13 10:27 1
  אולי הייתי כותב את זה ב-javascript last_test 13.09.13 11:52 2
     אני די מתחיל בתחום, נתמקד כרגע בשפה שאני לומד :) Beckham 13.09.13 12:35 3
  העצה הכי טובה שאני יכול לחשוב עליה בשבילך, Zippo  13.09.13 14:29 4
     אני לומד בסלע. Beckham 13.09.13 14:39 5
         אני גם חושב ללכת ללמוד שם.. אתה ממליץ? DrVadik  14.09.13 13:39 8
     פייתון זאת השפה האחרונה שהייתי מציע לו לפתח בה משהו כזה, last_test 13.09.13 15:36 6
         חברה, אני צריך עזרה בתכנון יעיל, השאלה לא הייתה באיזה שפה לכתוב. Beckham 13.09.13 15:46 7
  תתחיל בלבנות את המחלקות inno3D 14.09.13 20:23 9

       
VeNom  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 7.6.02
7922 הודעות, 1 פידבק
   10:27   13.09.13   
אל הפורום  
  1. כמה דגשים  
בתגובה להודעה מספר 0
 
   1. כמה שיותר הפרדה בין קומפוננטות. UI צריך להיות בנפרד. לוגיקה עסקית בנפרד. שכבת לוגיקה שמדברת עם ה DB בנפרד. השכבה שמתקשרת ישירות עם ה DB גם היא בנפרד.

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

2. מה שצריך לשנות, להוציא לקובץ קונפיגורציות.

3. אם הפרוייקט שלך גדול מדי, להכניס סוג של מנהל אורך חיים של אובייקטים(תקרא על Unity אם אנחנו מדברים על דוטנט).

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

5. טיפול בשגיאות - להכניס מגנון שידע לתפוס Exceptions ולרשום אותם ללוג(תקרא על ELMAH או על LOG4NET אם אנחנו מדברים על דוטנט).

6. תתכנן פחות או יותר איך דברים יראו. יהיו לך שינויים במהלך הקידוד כי בד"כ אין תכנון מושלם. אל תמרח עם התכנון בכל אופן.

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
last_test
חבר מתאריך 20.8.13
328 הודעות
   11:52   13.09.13   
אל הפורום  
  2. אולי הייתי כותב את זה ב-javascript  
בתגובה להודעה מספר 0
 
   נראה כמו משחק די פשוט.

אני ממש אוהב את kineticjs

http://kineticjs.com/

נורא טריוויאלית, נורא גמישה.

אם אתה מעוניין במשחק מבוסס 3D אז אתה תמיד יכול לכתוב לכרטיס מסך עם WebGL API שזה אחלה, רק שאני אף פעם לא מבין איך הקוד שאני כותב עושה את מה שהוא עושה שם.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   12:35   13.09.13   
אל הפורום  
  3. אני די מתחיל בתחום, נתמקד כרגע בשפה שאני לומד :)  
בתגובה להודעה מספר 2
 
תודה.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Zippo 
חבר מתאריך 26.5.02
7921 הודעות
   14:29   13.09.13   
אל הפורום  
  4. העצה הכי טובה שאני יכול לחשוב עליה בשבילך,  
בתגובה להודעה מספר 0
 
היא פשוט ללמוד בצורה מסודרת. בקורס.
אני מכיר את הקורס הבא:
https://www.coursera.org/course/interactivepython
מקורסרה, אומנם לא לקחתי אותו אישית, אבל ראיתי תוצאות שעשו אנשים שאני מכיר.
מלמדים אותך בקורס הזה לתכנת מ-0 בפייתון,
והתוצר הסופי הוא משחקון astroid shooter
שנראה ממש טוב.

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   14:39   13.09.13   
אל הפורום  
  5. אני לומד בסלע.  
בתגובה להודעה מספר 4
 
ערכתי לאחרונה בתאריך 13.09.13 בשעה 14:51 בברכה, Beckham
 
אבל בכל מקרה, נרשמתי אליו, ננסה אותו.

תודה.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DrVadik 
חבר מתאריך 6.6.12
378 הודעות
   13:39   14.09.13   
אל הפורום  
  8. אני גם חושב ללכת ללמוד שם.. אתה ממליץ?  
בתגובה להודעה מספר 5
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
last_test
חבר מתאריך 20.8.13
328 הודעות
   15:36   13.09.13   
אל הפורום  
  6. פייתון זאת השפה האחרונה שהייתי מציע לו לפתח בה משהו כזה,  
בתגובה להודעה מספר 4
 
   זה אומנם מאתגר ומסקרן, אבל יש כל מיני shortcuts בפייתון שהוא יגיע לשפות אחרות הוא פשוט לא יבין למה אין את זה שם, מעבר לזה לפתח ב-OOP בפייתון זה לא התהליך הכי טריוואלי בעולם.

המון מושגים כמו metadata/list comprehension... יקשו עליו מעט, אני אישית הייתי מפתח את זה או ב-javascript או בC עם nodejs + node-webkit.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   15:46   13.09.13   
אל הפורום  
  7. חברה, אני צריך עזרה בתכנון יעיל, השאלה לא הייתה באיזה שפה לכתוב.  
בתגובה להודעה מספר 6
 
השאלה היא איך להתחיל לתכנן פרויקט קטן בכללי.
לפני שאני מגיע לשלב הכתיבה.

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

ואת זה אני רוצה לייעל ולתכנן ולדעת מראש מה אני צריך ומה אני רוצה לעשות
(אני מניח שאי אפשר לתכנן מראש ה-כ-ל)

תודה.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
inno3D
חבר מתאריך 21.4.02
4533 הודעות
   20:23   14.09.13   
אל הפורום  
  9. תתחיל בלבנות את המחלקות  
בתגובה להודעה מספר 0
 
   זה משחק ממש פשוט אז אין ממש מה לתכנן
אבל את המחלקות

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net