פרק 10: תרבות וסביבה

[הקודם : עברית בפרל][חזרה לתוכן העניינים][הבא : מידע נוסף ועזרה]

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

10.1 מלחמות דת

מלחמות דת (Religious Wars) הם וויכוחים עקרים שבד"כ מבוססים על העדפות אישיות. איזה עורך אתה מעדיף? vi או emacs? איזו שפה טובה יותר? C++ או Java?
לדעתי זו תופעה סוציולוגית מרתקת, שעדיין לא היה לי הזמן והכוח לרדת לפשרה. אנשים מתקוטטים על שטויות, על שאלות חסרות תשובה ועל העדפות אישיות כאילו אין מחר. למרבה המזל, תכנתי פרל בד"כ לא נכנסים לויכוחים אלו, כיוון שפרל זו השפה בה הם מתכנתים, ולא המזבח לו הם סוגדים. מצד אחד זה טוב, (הסביבה שקטה יותר והשכנים לא צועקים) מצד שני זה רע, כי המתכנת לא יגן על פרל ולא יפיץ את הבשורה ברבים. זה מה יש.

10.2 גישה

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

10.3 שיתוף ורשיונות

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

10.4 גרסאות של פרל

השפה מתפתחת במשך השנים. כיום, היא נמצאת בגרסא 5, ולא נדבר על גרסאות קודמות, כי זה ישן ודפוק מדי. אבל גם בתוך גרסא 5 יש גרסאות שונות. ואלו הן:
גרסא 5.004: הגרסא הראשונה בסדרה של 5. תמצא אותה בעיקר במחשבי יוניקס ישנים, עם מערכת הפעלה שלא שודרגה כבר הרבה זמן.
גרסא 5.6: רוב המבנים המודרנים של השפה כבר קיימים. זוהי הגרסא המינימלית לשימוש בפרל כיום, אך גם התמיכה בגרסא הזאת הולכת ונעלמת.
גרסא 5.8: פרל מודרנית. כוללת תמיכה ביוניקוד, ב-Threads.
גרסא 5.10: בגרסא זאת הכיוון הוא שיפור נוחות השימוש בשפה. הוסיפו פקודות שמחליפות פקודות בעיתיות ישנות, הוסיפו כמה אופרטורים שעושים את החיים קלים יותר וכו'.
גרסא 6: פרויקט עתידי ושאפתני, בו מנסים לכתוב את השפה עצמה מחדש, להיפטר מכל מיני ירושות שפרל סוחבת מימי קדם ולהכניס תמיכה מסודרת באובייקטים. מעורבים בפרויקט הרבה שמות גדולים בעולם הפרל. (כמו לארי וול (Larry Wall), ההוא שכתב את פרל מלכתחילה)

[הקודם : עברית בפרל][חזרה לתוכן העניינים][הבא : מידע נוסף ועזרה]

נכתב ע"י שמואל פומברג, כל הזכויות שמורות © ראה פרק 1.5 לתנאי רשיון