עזרה :)

MMMM51

New member
עזרה :)

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

BravoMan

Active member
קצת סדר:

אין קורס אחד שמלמד "תכנות".

זה אכן תחום רחב, אבל גם אחרי שמתמקדים בחלק מסוים שלו יש הרבה דברים ללמוד, ואי אפשר לדחוף את כולם לקורס אחד.

מה שכן, לא חייבים ידע מוקדם. אפשר גם להתחיל ללמוד מ-0.

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

עיצוב האתר דורש ידע HTML ו-CSS וגם כישורים גרפיים.
זה החלק שאחראי על הצורה בה נראה אתרם מסוים.

תכנות "צד לקוח" דורש בנוסף (לידע של HTML ו-CSS) ידע של JavaScript (שלמרות שמו כלל אינו קשור ל-Java ושונה מאוד ממנה).

זה החלק שאחראי על הדברים ה-"פעילים" באתר, כמו למשל פתיחה וסגירה של הודעות בעמוד תפוז.

ולבסוף יש את החלק של תכנות "צד שרת" שדורש ידע בשפות כמו PHP, ASP, Perl, Ruby או Python (לא חייבים את כולם, אחת מספיקה) וידע בבסיסי נתונים כולל שפת SQL.

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

תוכלי לקבל עוד מידע בעניין בפורום בוני אתרים:
http://www.tapuz.co.il/Forums2008/forumPage.aspx?forumId=156

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

דרישה אחת חשובה מאוד היא אנגלית ברמה טובה.
בגלל ההתקדמות המהירה של התחום, מקורות מידע בעברית לרוב דלים ומיושנים.

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

בכל מקרה, בהצלחה!
 

MMMM51

New member
בהמשך לתשובתך

קודם כל תודה רבה על התשובה
עכשו אני אנסה לעשות קצת סדר לעצמי כשלמדתי VBA לאקסל שמתי לב שזה מאוד מעניין אותי והייתי רוצה להרחיב וללמוד את זה
לא בהקשר לאקסל אלה בצורה נרחבת יותר(מחשבים) עכשו מפה אני תקועה כי אני לא יודעת מה ללמוד איזה סוג שפה ,מה אני אלמד לעשות במחשב אם אני אלמד שפה כמו C#,JAVA או VB
כמו שאתה יכול לראות באמת הידע שלי דל ואני ממש אודה לך לעזרתך
 

MMMM51

New member
.....

יכול להיות שלא הייתי ברורה התכוונתי יותר לתחום של תכנות לתוכנות וכאלה מה שדומה לVBA אקסל :)
אם אתה מצליח להבין אותי
 

BravoMan

Active member
לכנות VBA "שפת תכנו" זה די נדיב


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

שפות כמו Java ו-#C (תשכחי מ-VB, זו שפה מתה) הן שפות תכנות מלאות, שמאפשרות לך ליצור תוכנות משלך, אפילו תוכנות כמו Excel עצמו. (כמובן שזו תוכנה מאוד גדולה שכתבו הרבה אנשים במשך הרבה זמן)

לרוב, ממליצים להתחיל ללמוד תכנות מ-Java כי היא נחשבת שפה קלה, ואף הרבה קורסים התחלתיים באוניברסיטאות משתמשים בה.

אבל, העדפת שפה היא עניין אינדיבידואלי בקרב מתכנתים, ולפעמים הוויכוחים על "איזו שפה טובה יותר" מגיעים למלחמת דת אמתית


שפת #C דומה מאוד ל-Java אבל עם הבדל משמעותי אחד: היא מוגבלת ליצירת תוכנות ל-Windows בעוד שב-java אפשר ליצור תוכנות להרבה פלטפורמות.

אני אישית, חושב שכדאי להתחיל ללמוד תכנות משפת C.
לוקח יותר מאמץ ליצור תוכנה רצינית בשפה הזו, אבל היא יותר קרובה ל-"ברזלים" של המחשב, כך שתוך כדי הלימוד שלה לומדים גם על הצורה שבה המחשב עצמו עובד, וזה משהו שחשוב למתכנת לדעת ולא משנה באיזו שפה הוא משתמש.

אז זו ההמלצה שלי: קחי ספר טוב ב-Java או C ותתחילי ללמוד.
ניתן להוריד כלים חופשיים לבניית תוכנות בשתי השפות האלה: Dev++ או Codeblocks עבור C ו-Eclipse, Netbeans או אפילו BlueJ (שמותאם במיוחד ללימוד השפה), עבור Java ולהתחיל לתרגל.

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

בהצלחה!
 

MMMM51

New member
וואו

ממש תודה! עשית לי קצת סדר בבאלגן
אני רק רוצה להגיד לך מאיפה זה בא לי בכלל כל הרעיון אני בעלת תואר בכלכלה אחד מקורסי הכלכלה היה התמחות במערכות מידע שכלל לימוד תכנות VBA (ומערכות כמו BI I SAP )
שפתאום מכל הקורסים החשבונאיים(המשעממים) מצאתי משהו שיש לי בו עניין ומפה הגיעה התעניינות ללמוד תכנות (תוכנה) וכדומה .המטרה שלי היא להכנס לעבוד במחלקת מערכות המידע בחברה בה אני עובדת (השקעות ) וכדי שיהיה לי איזשהו ידע מינימלי החלטתי ללכת בכיוון של..תכנות גם כי נראה שזה מאוד מעניין אותי.
ברגע שאני אלמד שפה ככמו JAVA או C מה לדעתך יהיו אפשרויות התעסוקה שלי (אני יודעת שזה לא הפורום פשוט נראה לי שאתה מבין עניין) האם אני אדע להכין תוכנה וכדומה...
תודה :)
 

MMMM51

New member
בעיה בהורדה

Codeblocks כשהורדתי את התוכנה היא נמצאת במצב קריאה מצד ימין (עברית)
איך אני פותחת את התוכנה בצורה רגילה (אנגלית) ?
 

BravoMan

Active member
תעסוקה זה כבר עניין שונה.

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

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

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

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

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

עכשיו את בטח שואלת: אז מה צריך חוץ משפת תוכנה?

אובכן, זה תלוי מה בדיוק רוצים לבנות.

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

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

כדי לכתוב תוכנות יעילות צריך ידע באלגוריתמיקה, ותמיד מומלץ הכרות עם "תבניות עיצוב" (Design Patterns).

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

נ.ב.:
אני לא משתמש ב-Windows אז אני לא בטוח איך מסדרים את הבעיה עם Codeblocks. אבל אם תחטטי בהגדרות, בטח יש שם משהו שקשור לשפת ממשק.
 
למעלה