חדש באתר: קהילת מתכנתים
אחרי הרבה זמן של התלבטויות ובחינה של כל מיני טכנולוגיות הצלחתי לחבר פורום. הבקצרה זה שמעכשיו אם יש לכם משתמש באתר אתם יכולים ללחוץ למעלה על הקישור "פורום" ולהגיע לפורום שלנו, לפרסם שם שאלות ולשתף דברים שמעניינים אתכם.
טיפים קצרים וחדשות למתכנתים
אחרי הרבה זמן של התלבטויות ובחינה של כל מיני טכנולוגיות הצלחתי לחבר פורום. הבקצרה זה שמעכשיו אם יש לכם משתמש באתר אתם יכולים ללחוץ למעלה על הקישור "פורום" ולהגיע לפורום שלנו, לפרסם שם שאלות ולשתף דברים שמעניינים אתכם.
את ruby ו python למדתי באותו הזמן, אחרי שנים של עבודה עם perl. מטבע הדברים תקופה ארוכה הרגשתי הרבה יותר בבית ב ruby, אבל לקח לי זמן להסביר לעצמי ולעולם למה. פוסט זה הוא ניסיון לשים את האצבע על פערי התרבויות בין השפות ruby ו python וההשלכות שלהן על מבנה השפה.
בדיקות מערכת הן בדיקות המורכבות מגישה אוטומטית לאתר מתוך דפדפן אמיתי לצורך ביצוע פעולות ובדיקה בדף התוצאה או בבסיס הנתונים שהתוצאה הצפויה התרחשה. לריילס היו מספר כלים לכתיבת בדיקות כאלו, אבל בכל אחד היו את הבעיות שלו. כעת גירסא 5.1 הוסיפה מנגנון בדיקות שבא עם הפריימוורק, והוא עובד פשוט מעולה. קבלו דוגמא.
ההשוואה בין פרל, פייתון ורובי מעניינת כי מצד אחד השפות מאוד דומות ובעלות השפעה הדדית רבה, ומצד שני להרבה בעיות כל שפה לקחה כיוון קצת שונה. כך הדוגמא של הגדרת פונקציה בתוך פונקציה.
הספריה המרכזית בריילס לאימות משתמשים נקראת Devise. היא עובדת בגדול עד שמנסים לעשות דברים ש Devise לא אוהבת ואז היא נשברת כמו דומינו. קבלו סיפור קצר עם קוד שממחיש שלפעמים צריך לצאת מהקופסא בשביל להגיע לפתרון הפשוט.
במבט ראשון פרל היא שפה מאוד קלה ללמידה, במיוחד למי שמגיע עם רקע ב C וביוניקס. תקופה ארוכה זה היה סוד הכח שלה ומה שהביא מתכנתים רבים (כולל אותי) ללמוד פרל. הבעיה היתה שמהר מאוד מתכנתים נתקלו בבעיות שלא הבינו, ובמקום לפתור אותן הדביקו קטעי קוד שלא הבינו מהאינטרנט. את הסלט שיצא אף אחד לא רצה לטעום. הנה מקרה כזה לדוגמא.
מזמן לא עשינו כאן תחרות יופי בין שתי שפות, והמתח רק גדל כשמדובר על שפות כל כך שונות. יש הרבה מה ללמוד מההשוואה וכשמתחילים לשים לב מגלים גם שיש הרבה השפעות הדדיות. בשביל לשמור על הפוקוס ניקח פונקציית דוגמא קצרה ונראה איך בונים אותה בשתי השפות ומה ההבדלים המרכזיים.
רובי (Ruby) היא השפה הכי מדליקה שאתם לא כותבים בה. היא תופסת מקום טוב בנישה בין perl ל Python ומציעה חווית פיתוח טובה בפרדיגמת פיתוח מונחה עצמים ואוסף עצום של ספריות הרחבה לכל משימה שאפשר לדמיין.
כבר בדקות הראשונות שתכתבו קוד רובי תגיעו לבעיה הראשונה של השפה: היעדר אופרטור ++
. אחרי שתתגברו על זה נוכל להתחיל לדבר על פונקציות בשפה ועל המגוון הגדול מדי של דרכים להגדיר ולהפעיל אותן.
השדרוג לריילס5 עבר יחסית חלק, ואם אתם קוראים את זה דרך האתר מוזמנים לראות שהכל די עובד. שלושה דברים כן נשברו בתהליך אז הנה הסיפורים והתיקונים, בתקווה שיעזור גם לכם.