פיתוח Web Applications באמצעות פייתון

python fullstack development course
ניתן להשתמש בשפת התכנות Python למטרות רבות. ניתן להשתמש ב-Python גם בפיתוח Web Applications. האם זהו תחום שכדאי ללמוד?

שתפו פוסט זה

שפת התכנות Python משמשת לצרכים רבים, והיא פופולרית בעיקר בתחום האוטומציה, הסייבר, ומדעי הנתונים לרבות למידת מכונה. השימוש בשפת התכנות Python בפיתוח Web Applications, נכון לעת הזו, נדיר למדי. האם מצב זה עתיד להשתנות? את הפיתוח של Web Application ניתן, בדרך כלל, לחלק לפיתוח צד הלקוח (הקוד שרץ בדפדפן) ולפיתוח צד השרת (הקוד שרץ בצד השרת ואחראי לעבודה עם בסיס הנתונים שבצד השרת)

פיתוח צד הלקוח

פיתוח צד הלקוח נעשה כיום בעיקר באמצעות שפת התכנות JavaScript. לעיתים משתמשים בשפת תכנות אחרת, כגון TypeScript, אשר מאפשרת לנו לכתוב קוד ולאחר מכן לתרגם אותו ל-JavaScript. האפשרות לכתוב קוד ב-Python ולתרגם אותו ל-JavaScript קיימת. ניתן לעשות זאת באמצעות מספר ספריות, לרבות Python.js, Brython ו-PyJS. כיוון שצד הלקוח מפותח כיום בדרך כלל באמצעות framework כגון Angular או Vue.js או באמצעות הספריה React (בצירוף ספריות נוספות), וכיוון שהשימוש ב-frameworks אלה באמצעות Python איננו straight forward (איננו פשוט), נכון לעת הזו, במידה שנבחר (נתעקש) לפתח את צד הלקוח ב-Python אנחנו נתקשה להשתמש ב-Angular או ב-Vue.js או ב-React. נכון לעת הזו, הספריות שמאפשרות לנו לכתוב קוד ב-Python ולתרגם אותו ל-JavaScript עשויות להיות רלוונטיות רק באותם מקרים שבהם כבר קיים קוד ב-Python אשר היינו רוצים לשלב בקוד שרץ בדפדפן. כך למשל, דמיינו מקרה שבו קיים אלגוריתם מורכב שכבר מומש ב-Python וכעת נוכל פשוט לתרגם את הקוד שכבר כתוב ל-JavaScript. 

פיתוח צד השרת

את צד השרת ניתן לפתח באמצעות שפות תכנות רבות. כמעט בכל שפת תכנות ניתן למצוא ספריה או framework מתאימים אשר יאפשרו לנו לפתח את צד השרת במהירות וביעילות. כך גם ב-Python. ה-frameworks הבולטים כוללים את Django ו-FastAPI. במערכות צד שרת אשר מפותחות כאוסף שלMicro Services עושים לעיתים שימו בשפות תכנות שונות בפיתוח של כל אחד מה-Micro Services. בכל Micro Service בוחרים להשתמש בשפת התכנות המתאימה ביותר, וכך קורה לעיתים שצד השרת מפותח ביותר משפת תכנות אחת. במערכות שבהן צד השרת מהווה Monolithic Application האפשרות לפתח אותו ב-Python קיימת כבר שנים רבות. יחד עם זאת, הפופולריות שלה נותרה נמוכה למדי. בין אם מדובר בפיתוח השרת כאוסף של Micro Services או כ-Monolithic Application הפופולריות של Python בתחום זה נותרה עדיין נמוכה למדי. קרוב לוודאי, שבדומה לשימוש ב-Python בפיתוח צד הלקוח, גם בצד השרת היינו ממליצים לשקול את האפשרות להשתמש ב-Python רק באותם מקרים שבהם למפתחים כבר יש ידע ב-Python או באותם מקרים שבהם יש צורך להשתמש בספריה מסויימת שקיימת ב-Python. 

הנושאים שנלמדים בקורס

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

נכון לעת הזו, בכל הנוגע לשימוש ב-Python בפיתוח צד הלקוח של Web Applications עדיף להימנע מכך. התחום בעת הזו עדיין לא בשל. בכל הנוגע לשימוש ב-Python בפיתוח צד השרת, למרות שהאפשרות לכך קיימת מהבחינה הטכנית, האפשרות הזו עדיין לא פופולרית, וקרוב לוודאי שהיינו ממליצים לשקול אותה רק באותם מקרים שבהם יש לכך הצדקה כגון מקרים שבהם המפתחים כבר יודעים לפתח ב-Python או מקרים שבהם יש בצד השרת צורך להשתמש בספריות מאד מסויימות שפותחו ב-Python. כיוון שכדי לפתח את צד הלקוח יש במילא צורך לדעת JavaScript קרוב לוודאי שיהיה כבר קל יותר לפתח את צד השרת באמצעות JavaScript (באמצעות Node.js למשל). בכל הנוגע למפתחי תוכנה בתחילת דרכם אנו ממליצים באופן חד משמעי להימנע מלכוון לפיתוח Web Applications (ידוע גם בשם Fullstack Development) באמצעות Python. מציאת מקום העבודה הראשון איננו קל. כדי למצוא את מקום העבודה הראשון בפיתוח Web Applications באמצעות Python יהיה צורך להגיע לרמה מקצועית גבוהה גם ב-Python, גם בתחום ה-Front End וגם בפיתוח צד השרת. מדובר בשלושה תחומים מאד גדולים. כך למשל, התהליך לכך יהיה קשה משמעותית בהשוואה למציאת מקום עבודה ראשון בתחום האוטומציה (כדי למצוא את מקום העבודה הראשון בתחום האוטומציה די בכך שנדע Python ברמה גבוהה, ובנוסף נדע להשתמש בספריות הרלוונטיות באותה משרה שאליה מכוונים). 

הרשמו לניוזלטר שלנו

התעדכנו בחידושים טכנולוגיים בפיתוח תוכנה

פוסטים נוספים שעשויים לעניין אתכם

קבוצה מקצועית למפתחי פייתון life michael שירותי הדרכה למפתחי תוכנה

האם תרצו להזניק את הקריירה שלכם?

נשמח להיות עימכם קשר!

Update cookies preferences