עבור לתוכן

בקשת הסבר בשפה פשוטה וקצרה על מטרות שפות התכנות השונות

Featured Replies

פורסם

שלום לכולם, יש לי מספר שאלות לגבי שפות התכנות השונות והמטרה שלהן, אשמח אם אוכל לקבל תשובה קצרה ופשוטה בשביל להבין את הבסיס. את שפות התכנות ה"רגילות" אני מכיר - ג'אווה, C\++\#, VB וכו'. אבל אני מתקשה להבין בעניין שפות התכנות האינטרנטיות - PHP,HTML,JAVA Script, CSS, WordPress, Jython ועוד. ברשימה הזאת ברור לי שהכנסתי כמה שמות שאינם שייכים לשם, אבל הבלבול רב, ואני לא כל כך יודע מה כל מהם אמור לעשות. האם לכולן אותה מטרה רק עם יכולות שונות (כמו בשפות התכנות הרגילות)? מה הכוונה שאומרים תוכנת צד שרת, ותוכנת צד לקוח (בשביל מה צריך צד לקוח? הרי האתר מגיע מהשרת)? ואיזה משפות התכנות דלעיל מתאימות לשרת ואיזה ללקוח? איפה נכנס כל העניין של asp .net. אשמח אם מישהו יוכל לעשות קצת סדר. אני לא מחפש הסברי עומק, רק הסבר שטחי של מה אומר כל דבר, כדי לקבל מושג יותר טוב כשאני נכנס לתחום הזה.

פורסם

אכן בלבלת קצת (רוב הדברים שציינת אינם שפות תכנות). אני אנסה להסביר:

Jython היא לא שפת תכנות בפני עצמה, אלא פשוט מימוש של שפת התכנות Python באמצעות Java (כלומר ה"מנוע" שמריץ את הקוד שלך כתוב בג'אווה, בניגוד למימוש הסטנדרטי של פייתון שנקרא CPython, וכתוב ב-C). אין פה קשר לפיתוח אתרי אינטרנט.

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

CSS היא שפה לעיצוב של דפי אינטרנט, שהולכת יד ביד עם HTML. באמצעות CSS אתה מגדיר בעצם איך יראו האלמנטים ששמת בדף ה-HTML.

JavaScript היא שפת תכנות (אין קשר לשפת Java). ניתן להטביע אותה בתוך דפי HTML (באמצעות תגית script) וככה בעצם להפוך את הדף שלך לדינמי בצד הלקוח, כלומר שהדפדפן משנה דברים בדף. בתכל'ס זו שפת התכנות היחידה בצד הלקוח (יש עוד שפות כמו vbscript אבל אף אחד לא משתמש בהן).

PHP היא שפת תכנות בצד שרת. היא מאפשרת לך ליצור דפים באופן דינמי. ASP.NET היא גם סוג של שפת צד שרת (ליתר דיוק, זה שם של טכנולוגיית צד שרת, כשהשפה היא #C). עוד דוגמאות לטכנלוגיות צד שרת: JSP, Django, Ruby on Rails.

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

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

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

נערך על-ידי שניצל

פורסם
  • מחבר

תודה רבה על התגובה הזריזה והעניינית. אז בעצם HTML נותן את התבנית של הדף (ביחד עם CSS שנותן את העיצוב של התבנית. עכשיו כאשר מפתח ב.net או בPHP כותב אתר, הוא חייב קודם לעצב אותו בHTML, ורק אח"כ את החישובים ושמירת המידע או הדפסה של מידע הוא מבצע דרך PHP או .net? ועוד שאלה, אז למה JYTHON טובה? מדוע אי אפשר היה להסתפק בPYTHON?

פורסם

אם תקרא מדריך php ומדריך html, תראה שבעצם דף php הוא דף html שמכיל כל מיני תגיות מיוחדות כמו <php?>. התגיות האלה מכילות קוד שהשרת מבצע לפני שהוא שולח את הדף אל הלקוח, כשמה שמחוץ לתגיות נשלח כמו שהוא (אלא אם הקוד עצמו משנה אותו). asp.net עובדת באופן דומה.

אופציה שנייה היא שכל הדף ייוצר באמצעות קוד (כלומר, במקום שהוא יכיל בחלקו html סטטי ובחלקו קוד, הוא כולו כתוב בקוד). לדוגמה, כשאתה ניגש לפתוח attachment שמצורף להודעה כלשהי בפורום, הכתובת של ה-attachment היא דף php, אבל במקום להחזיר דף html הוא מחזיר לך את הקובץ. זה מתבצע באמצעות קוד שיושב בדף ה-php, בלי שום html.

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

פורסם
  • מחבר

אוקיי, אבל בשביל להעלות דף שלם של האתר אתה תהיה חייב להשתמש בHTML. ז"א האופציה השנייה שציינת היא בשביל דברים שאינם צריכים הצגה. הבנתי נכון? עכשיו יש לי עוד 2 שאלות (אני מתנצל על הבלגאן בכתיבה, פשוט אני לא מצליח לרדת שורה) : אם אני רוצה להתחיל להתעסק בכתיבת אתר אינטרנט איך מומלץ להתחיל? ואיך להמשיך אח"כ? ורציתי לשאול לגבי GUI בJAVA יש כמה וכמה שיטות SWT,AWT, ועוד. רציתי לדעת קצת מה ההבדל ביניהן, אילו מהן נמצאות לרוב בשימוש, וכנגזרת באיזו מהן כדאי להתחיל?

פורסם

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

א. HTML (לפני הכל)

ב. שפת צד שרת כלשהי (לדוגמה PHP)

ג. CSS

ד. JavaScript

בהמשך תלמד איך לשלב את הדברים האלה בצורה מתקדמת.

לגבי ה-GUI בג'אווה, לא מדובר ב"שיטות" שונות, אלא בחבילות GUI שונות. לכל אחת יש יתרונות וחסרונות משלה, אבל אני די בטוח ש-SWT היא החבילה השימושית ביותר כיום.

נערך על-ידי שניצל

פורסם

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

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

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

תתחיל כאן

http://webmaster.org.il

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים