ווטסאפ - לינוקס, BSD, קוד פתוח ותוכנה חופשית בעברית. Whatsup - Linux, BSD, open source and free software in Hebrew

 
 
  כניסת חברים · רישום · שכחתי סיסמה  
tux the penguin

quick_linkהטמעת פייתון ביישומי C/C++

published at 04/01/2006 - 12:22 · ‏פורסם mksoft · ‏tags פיתוח · שלח לחברידידותי למדפסת
פיתוח פעמים רבות, כאשר כותבים יישומים גדולים (במיוחד בסביבת *nix) שפות היישום הן C ו-C++. לאחר שהיישום נבנה, הוא די סטטי. פעמים רבות נדרשות יכולות הרחבה מצד משתמשי קצה/צד שלישי, כגון: כתיבת תוספים ע"י המשתמשים, הפעלה קוד מותאם עבור הלקוח באתר (בין אם נכתב ע"י הלקוח או התמיכה) עם התרחשות אירועים שונים וכדו'.

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

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

- הספריות שיש לקשר ליישום
- הטמעת ה-interpreter
- שליטה במבני הנתונים של פייתון מתוך היישום
- הרצת סקריפט מתוך קובץ חיצוני
- הרצת מחרוזות של קוד
- קבלת גישה והפעלת פונקציות פייתון מתוך היישום
- העברת מידע לפונקציות
- המרה בין סוגי המשתנים של C ופייתון


דוגמאות ליכולות שמספק השילוב של פייתון ביישומים ניתן לראות במדריך שכתבתי על הרחבת gimp עם פייתון (חלק א' ו-חלק ב') ובשילוב של פייתון עם Blender.

אם אתם מפתחים ב-C++, אפשרות נוספת (ומועדפת, לפחות מבחינת קלות המימוש, בהירות הקוד ותכונות נתמכות) היא להשתמש ב-Boost.Python (ראו גם מדריך בנושא).
 

קישורים רלוונטיים

· עוד על פיתוח
· חדשות מאת mksoft


הסיפור הנקרא ביותר בנושא פיתוח:
הטבלה המחזורית של האופרטורים

הטמעת פייתון ביישומי C/C++ | כניסה / יצירת מנוי חדש | 0 תגובות
סף חסימה
  
ההערות הינן מטעם כותביהן. אין צוות האתר לוקח אחריות על תוכנן