לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 14-07-2008, 21:45
  hanrok hanrok אינו מחובר  
 
חבר מתאריך: 14.07.08
הודעות: 11
אשכול נבחר C, C++ מה הלאה?

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

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

עכשיו אני לא יודע לאן להמשיך הלאה למישהו יש הצעות??
חשבתי קצת לכיוון של גרפיקה ב-C++ אבל אני לא יודע אם זה טוב כי אולי יש דברים קצת חשובים יותר כמו שימוש בעכבר וניהול קבצים ב-C++ (שזה לא כמו ב-C לפי מה שהבנתי זה שימוש באופרטורים in out).
שמעתי על OpenGL ועל Allegro מישהו מוכן לתת לי איזה שהוא משהו בעברית על הספריות הנ"ל כי לא כל כך הבנתי מה הם עושות ולמה הם משמשות..

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

נערך לאחרונה ע"י hanrok בתאריך 14-07-2008 בשעה 21:47.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #2  
ישן 15-07-2008, 17:29
  sigsig sigsig אינו מחובר  
 
חבר מתאריך: 23.11.07
הודעות: 187
בתגובה להודעה מספר 1 שנכתבה על ידי hanrok שמתחילה ב "C, C++ מה הלאה?"

אם סך הנסיון שלך הוא תרגולים מתוך קלסר לימודי - צר לי, אבל זה לא הרבה. במקרה הטוב עשית מספר תרגילים קטנים ומבודדים. 'נסיון' כמו שמחפשים בתעשייה משיגים מתוך עבודה על מערכות גדולות ודרישות ממשתמשים אמיתיים. ממש לא רוצה לבאס אותך, אבל זה כמו ההבדל בין לדעת לשאול איפה השירותים בשפה מדוברת כלשהיא לניהול שיחה קולחת.
לשאלתך, הייתי עוזב כרגע ספריות חיצוניות ומתמקד בספריות שבאות עם הקומפיילר שלך (לדוגמא, STL). גם ענייני תכנון עם אובייקטים זה עולם ומלואו - לדוגמא, DESIGN PATTERNS. נסה לבנות תוכנה קצת יותר גדולה (סתם רעיון - ניהול בית ספר או אוניברסיטה) ותגלה לבד איזה דברים חסרים לך כדי לגרום לזה לעבוד.

מקווה שעזרתי.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #4  
ישן 16-07-2008, 10:01
  hanrok hanrok אינו מחובר  
 
חבר מתאריך: 14.07.08
הודעות: 11
בתגובה להודעה מספר 3 שנכתבה על ידי hanrok שמתחילה ב "קודם כל אני שמח שבאת מגישה..."

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

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

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

המערכת תתמוך בפעולות שונות לנהול ושמוש נוח בפנקס הטלפונים הממחשב. עיקר הפעולות שהמערכת תומכת בהם הינם הזנה, חיפוש וביטול נתונים מהפנקס (יש פרוט לכל אחד מהם אבל זה יהיה ארוך אם אני אכתוב אותו פה...-4 פעולות אחת הספת אדם שניה חיפוש אדם שלישית ביטול אדם ורביעית הדפסת דו"ח של כל האנשים בפנקס).

התרגיל שהיה לאחר מכן היה להוסיף את הדברים הבאים: (מהשמאפיין OOP שניתן לעדכן בקלות...)
1.נדפיס דוח ממוין של אנשים כלמר נדפיס דו"ח שימון לפי שם האדם במערכת.
2.על הפנקס לטפל ב- 3 סוגי אנשים (במקום אחד):
2.1 קרובי משפחה 2.2 חברים 2.3 חברים זמניים.
3. לכל קרוב משפחה נזין את מידת קרבתו והוא יציג אותה בכל פניה אליו.
4. לכל חבר נזין את המקום בו פגשנו אותו וגם הוא יציג אותה בכ פניה אליו
5. חברם זמניים יבוטלו מן המערכת לאחר חודש שהם בפנים.
לצורך כך נזי בהפעלת המערכת את התאריך הנוכחי נשמוק בכל חבר זמני את תאריך הזנתו, ובכל פעולה נבדוק חברים זמניים (נשמור גם את המקום בו פגשנו אותם).
6. נאשר הדפםסת דו"ח של כל סוג אדם בנפרד כלומר הדפסת כל קרובי המשפחה החברים והחברים זמניים בנפרד.

\*******פה נגמר תרגיל 1 **********\

2) התרגיל הזה כבר ארוך מידי ואן לי כל כך כוח לכתוב אותו.
זה מערכת מעקב בטיפול בדווחי תקלות.
עכשיו זה הרבה יותר גדול מהצעתך לעשות מערכת לנהול בי"ס לפי דעתי כי יש פה הרבה אובייקטים לממש והרב פעולות על כל אחד מהם..
אני מקווה שאני יצליח לעשות את זה טוב...
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #7  
ישן 16-07-2008, 19:13
  sigsig sigsig אינו מחובר  
 
חבר מתאריך: 23.11.07
הודעות: 187
בתגובה להודעה מספר 6 שנכתבה על ידי hanrok שמתחילה ב "עכשיו שהבנתי שרמת התרגילים..."

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

לדוגמא:
מערכת לניהול בית ספר:
1. רישום תלמידים לכיתות וכיתות בשכבות, כולל חיסורים, תשלומים, משמעת והערות.
2. ניהול ציונים לכל תלמיד - שיעורים, עבודות, מבחנים, מגנים, בגרויות (פנימיות ורגילות). לכל מקצוע יכול להיות אופן חישוב ממוצעים ו/או סטטוס עובר/לא עובר שונה.
3. למורים יש שיעורים וכיתות. מורה רשאי לעדכן ציונים רק במקצוע ובכיתה שהוא מלמד.
4. רכז שכבה יכול לעדכן נתונים רק עבור תלמידים בשכבה שלו. האם רכז שכבה חייב להיות מורה או בעל תפקיד אחר? אתה תחליט.
5. מנהל יכול לשנות הכל. האם מנהל חייב להיות מורה או בעל תפקיד אחר? אתה תחליט.
6. מידע מסוים מוגדר כרגיש. רק מנהל/מחנך/יועצת יכולים לראות ולעדכן מידע זה.
7. תלמידים שלא הגיעו למספר שיעורים מסויים/לא ביצעו מטלות/כל מיני חוקים אחרים לא יכולים להבחן במבחן רגיל/מגן/בגרות. קח בחשבון שלכל בית ספר כזה יש חוקים שונים - איך תכתוב את זה כדי שכל בית ספר (=לקוח) ינהל את זה בעצמו?
8. דוחו'ת על תלמידים - ציונים, חיסורים וכו'. דוחו'ת סטטיסטים - כמה מעל סף ציונים/חיסורים/הערות כלשהוא וכו'. רצוי גם גרפים כדי שיהיה נעים לראות. כל דו'ח כזה צריך גם ליצא לקובץ טקסט, אקסל, וכו'.
9. יש צורך בהתראות - מי לא הגיע ליותר מ-X שיעורים, יותר מ-Y ימים, לא מגיש עבודות, בעל הערות משמעתיות רבות, וכו'. גם כאן - לכל בית ספר יש חוקים משלו.
10. מידע כזה הוא חשוב - צריך אפשרות לגבות ולשחזר אותו.
11. איך מנהלים הרשאות של משתמשים? מי נותן ומסיר אותן? איך מנוהלת ההזדהות של משתמשים מול המערכת? איך מאבטחים את המידע נגד שימוש בלתי מורשה? איך בודקים מי ניגש לאיזה מידע ומתי?

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

נערך לאחרונה ע"י sigsig בתאריך 16-07-2008 בשעה 19:16.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #8  
ישן 17-07-2008, 09:05
  hanrok hanrok אינו מחובר  
 
חבר מתאריך: 14.07.08
הודעות: 11
בתגובה להודעה מספר 7 שנכתבה על ידי sigsig שמתחילה ב "אם הייתי חושב שאתה משגע לי את..."

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

דרך אגב לגבי סעיף 10 לא למדתי איך שומרים ב-C++ על קבצים בינאריים\טקסט, היה רשום שם שזה שונה ביחס ל-C ב-C++ זה ע"H האופרטורים ובC ע"י פעולות אז בינתיים אני לא אממש את החלק הזה למרות שזה חלק מעוד חשוב לתפעול התכנית...
אם יהיה לך זמן תשים פה לינק על קבצים בCpp.
אני חושב שזה ייקח לי מעט ימים לאחר מכן אני יעלה לינק לתוכנה
תודה!..
שחף אני עוד לא בבר אילן חחח
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #12  
ישן 22-07-2008, 11:07
  hanrok hanrok אינו מחובר  
 
חבר מתאריך: 14.07.08
הודעות: 11
בתגובה להודעה מספר 11 שנכתבה על ידי שחף דרור שמתחילה ב "ממליצה לך לנסות לבנות את..."

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

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

מקווה שאחרי שאני יילמד אני יפתיע פה עם תוכנה לניהול בי"ס רצינית אפילו יותר ממה שנתת פה (שאיפה זה טוב נכון? ).
בכל מקרה תודה על תגובותכם!!..
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #13  
ישן 22-07-2008, 11:31
צלמית המשתמש של stoned
  stoned stoned אינו מחובר  
 
חבר מתאריך: 03.11.02
הודעות: 21,199
זו אכן אחת הבעיות של תיכנות לסביבת CONSOLE
בתגובה להודעה מספר 12 שנכתבה על ידי hanrok שמתחילה ב "לבסוף (אחרי שלושה ימים)..."

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

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

ממליץ לך גם לכתוב CLASS שכזה, זה גם תרגול חביב וגם שמושי למדי, במיוחד למערכות סטייל "ניהול בית ספר".

אם אתה רוצה לפנות למערכות חלונאיות, אני ממליץ לך ללמוד JAVA או #C, כל נושא הטיפול בפקדים (חלונות, תיבות טקסט, כפתורים, וכו') הוא מאוד פשוט ונשאר לך הרבה משאבים להשקיע בלוגיקה של התוכנית עצמה.

כמו שהמליצו לך כבר, ברגע שתהיה בטוח בעצמך בכל נושא ה-OOP, מומלץ מאוד ללמוד DESIGN PATTERNS. אלו מעין "שבלונות" של פתרונות לבעיות ידועות שיכולים לעזור לך ברגע שתנסה לתכנת מערכות מורכבות יותר.
על קצה המזלג אתה יכול למצוא את הרעיון של סינגלטון (מחלקה שניתן ליצור ממנה רק ובייקט אחד שיהיה משותף לכל התוכנית), מפעל אובייקטים, בנאים ועוד.
תוכל לקרוא על כך בויקיפדיה (כולל דוגמאות קוד במספר שפות תכנות):
http://en.wikipedia.org/wiki/Design_pattern_(computer_science)
_____________________________________
חברי כנסת ישרים

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #17  
ישן 22-07-2008, 18:26
צלמית המשתמש של המממ
  המממ המממ אינו מחובר  
 
חבר מתאריך: 30.10.01
הודעות: 8,699
Follow me...
ידע בסיסי בשפות תכנות זה טוב
בתגובה להודעה מספר 1 שנכתבה על ידי hanrok שמתחילה ב "C, C++ מה הלאה?"

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

מה הלאה?

1. לדעת להשתמש נכון בשפה. ( למשל DESIGN PATTERNS כמו שציינו כאן הם פתרונות כלליים לבעיות נפוצות)

2. לדעת ליישם את השפה במקרים של העולם האמיתי (למשל מערכת Client-server הבנויה מרכיבים המתקשרים זה עם זה דרך הרשת)

3. לדעת ליישם את השפה באופן יעיל (למשל, שימוש ב Threads לעבודה יעילה על מערכות מרובות ליבות מעבד, כמו הרבה מהמעבדים הביתיים החדשים היום)

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

5. לדעת לתעד (תיעוד של הקוד ושל הפרויקט כולו)

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



רוצה ללמוד קצת:
כנס נא לאתר פיתוח של תוכנה חופשית ופתוחה, למשל Firefox, עיין בקוד, בקבוצות הדיון של המפתחים ושים לב לבעיות ולפתרונות שלהם.
קישור: http://wiki.mozilla.org/Firefox3

רוצה פרוייקט קטן:
הגדר וממש מערכת המורידה קבצים מהרשת בפרוטוקול Bit Torrent
היא לא חייבת להיות בעלת ממשק גראפי
אתה יכול להציץ בתיעוד של µTorrent למשל כדי לקבל מושג לגבי ההיקף:
http://www.utorrent.com/guides.php
_____________________________________
_________________________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
אזהרה: משרד הבריאות קובע כי העישון מזיק לבריאות !
תראו, אפילו החייזר נהיה ירוק מזה


נערך לאחרונה ע"י המממ בתאריך 22-07-2008 בשעה 18:40. סיבה: כמה תוספות
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #20  
ישן 27-07-2008, 13:42
צלמית המשתמש של המממ
  המממ המממ אינו מחובר  
 
חבר מתאריך: 30.10.01
הודעות: 8,699
Follow me...
חלונות
בתגובה להודעה מספר 19 שנכתבה על ידי hanrok שמתחילה ב "המממ שאתה מדבר על MDSN אני לא..."

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

אם אתה מפתח על פלטפורמה אחרת, נסה את מאגרי המידע שלה.
ביוניקס אתה תמיד יכול לעשות man על פקודה ב C או ++C ולקבל מידע עליה.

לגבי שימוש בעכבר בC++, לא ברור לי הצורך בעכבר ב TEXT MODE, אבל לפני שנים כתבתי מערכת כזו שמשתמשת בעכבר ומימשתי את העבודה איתו באסמבלי (פונקצית ASM ב C)

לגבי מדריכים:

הנה למשל תוצאת החיפוש הבאה:
http://www.google.com/search?q=C%2B...lient=firefox-a

שים לב שסוקטים הם שירות של מערכת ההפעלה, לכן אתה צריך למצוא מידע שמתאים למערכת ההפעלה שלך.
הנה מדריך ללינוקס:
http://www.linuxhowtos.org/C_C++/socket.htm

וזה אחד לחלונות:
http://www.adp-gmbh.ch/win/misc/sockets.html

והנה דף של חבילת תקשורת מוכנה לשימוש:
http://www.alhem.net/Sockets/tutorial/
(כדאי לך להכיר חבילות כאלה, אנשים עשו כבר הרבה עבודה שחבל לעשות שוב, למשל ACE)


ולסיום, שים לב שהפרוייקט שהצעתי (BitTorrent) לא דורש גרפיקה בכלל.
ממשק המשתמש יכול להיות שורת פקודה שתצביע על קובץ torrent ועל תיקיית יעד להורדה.
(אני מניח שתזדקק למקביליות כדי לטפל במספר חלקי קבצים בו-זמנית)
_____________________________________
_________________________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
אזהרה: משרד הבריאות קובע כי העישון מזיק לבריאות !
תראו, אפילו החייזר נהיה ירוק מזה


נערך לאחרונה ע"י המממ בתאריך 27-07-2008 בשעה 13:50.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 01:42

הדף נוצר ב 0.06 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר