|
הרשם | ![]() |
שאלות ותשובות | ![]() |
רשימת חברים | ![]() |
לוח שנה | ![]() |
הודעות מהיום | ![]() |
חיפוש | ![]() |
|
![]() |
![]() |
|
כלים לאשכול | תצורת הצגה |
![]() |
# 1 |
חבר בקהילה
|
פרסום| משחק שבניתי - איקס עיגול - C#
שלום.
בניתי משחק בסיסי בC#, המשחק הוא מול המחשב, המחשב יודע להגן על עצמו, ולנצח. אשמח להצעות לשיפור וייעול הקוד. http://pastebin.com/5g2j7zei ביקורות בונות יתקבלו בשמחה (אבל בונות באמת..). אשמח גם לרעיונות לאיפה להמשיך עכשיו. תודה
__________________
,Ron Biton
.Web Developer |
![]() |
![]() |
# 2 |
א.פורום תוכנה
עסק רשום |
לא ראיתי פה שימוש בOOP.
מתוך עניין, מה הייתה מטרת כתיבת המשחק? לימוד? או סתם לכיף? ולמה השתמשת בstatic בכל המתודות? |
![]() |
![]() |
# 3 | |
חבר בקהילה
|
ציטוט:
2. לימוד, אני בתחילת דרכי בC#. 3. האמת שאין לי מושג, התחלתי ככה וככה זה המשיך, תוכל להגיד לי למה לא? תודה על התגובה ![]()
__________________
,Ron Biton
.Web Developer |
|
![]() |
![]() |
# 4 |
א.פורום תוכנה
עסק רשום |
C# היא שפת תכנות מונחית עצמים.
לתכנת בה ״סקריפטאית״ זה אמנם יחסית נח אבל לא נכון. לצורך העניין היית יכול ליצור class של המשחק, שירוץ על שרת למשל. כשאתה משתמש בstatic הנתונים עבור כל המופעים (instances) של אותו קלאס נשמרים באותו מקום בזיכרון (במקרה הזה מתןדות), כך שבשימוש בstatic השרת שלך יעבוד מול מקום יחיד בזיכרון ולא תוכל להשתמש בקלאס במספר מופעים בלי שיהיו לך התנגשויות. אם תוריד מכולם את הstatic (לא עברתי על הקוד לעומק אבל לא נראה לי שיש מניעה), תוכל לספק ללקוח משחק ״מולטי פלייר״, כאשר עבור כל שחקן כל מה שתצטרך לעשות זה Tictactoe tc = new Tictactor() וזהו. בהצלחה! |
![]() |
![]() |
# 5 | |
חבר בקהילה
|
ציטוט:
תודה ![]()
__________________
,Ron Biton
.Web Developer |
|
![]() |
![]() |
# 6 |
עסק רשום [?]
|
מה הקשר?
הוא השתמש בstatic בגלל שמדובר בקוד שנעשה בסביבות Console Application, כל הפונקציות שרצות שמה - חייבות להיות פונקציות סטטיות, כיוון שהן נוצרות עם הפעלת הקוד. חבל שעשית את זה בConsole Application, היית יכול לעשות משהו נחמד יותר ומגניב יותר בסביבת WINFORMS. לקוד עצמו - נחמד מאוד בכללי, רואים שהשקעת, בין אם זה מחשבה לבין אם זה ידע, אבל יש הרבה דברים שיכולת לקצר ולייעל את הפונקציות שיישמת, למשל: public static int getWinner(string[,] var) מרפרוף אני רואה שיכולת לשלוח int כלשהו בנוסף ולבדוק איזה INT חוזר וככה לראות מי המנצח בדרך שתחצה את הקוד בפנים ל-2 (במקום לבדוק 2 מקרים תבדוק 1) יפה, נחמד מאוד. תבנה דמקה אם משעמם לך ובהצלחה ![]() |
![]() |
![]() |
# 7 | |
א.פורום תוכנה
עסק רשום |
ציטוט:
קונסול יודע להריץ קלאסים לא סטטיים, ולכן כל מה שאמרתי רלוונטי גם לדימוי של ה "MULTI PLAYER".... |
|
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|