שלום אורח התחבר

הבלוג של ינון פרק

טיפים קצרים וחדשות למתכנתים

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

סיור מהיר בשפת Ruby

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

חדש באתר: קהילת מתכנתים

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

פערי תרבויות בין שפות

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

ריילס שוב ניצחה. הפעם עם פיצ'ר בדיקות מערכת שעובד פשוט מעולה.

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

השוואת התחביר לפונקציות מקוננות בין השפות perl, python ו ruby

ההשוואה בין פרל, פייתון ורובי מעניינת כי מצד אחד השפות מאוד דומות ובעלות השפעה הדדית רבה, ומצד שני להרבה בעיות כל שפה לקחה כיוון קצת שונה. כך הדוגמא של הגדרת פונקציה בתוך פונקציה.

מהו ולמה צריך Rack Middleware ביישומי Rails

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

הסיבה שאנשים לא אהבו פרל

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

מה דעתכם, רובי או ++C?

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

דייט ראשון עם רובי

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

איך להגדיר Closures ברובי

כבר בדקות הראשונות שתכתבו קוד רובי תגיעו לבעיה הראשונה של השפה: היעדר אופרטור ++. אחרי שתתגברו על זה נוכל להתחיל לדבר על פונקציות בשפה ועל המגוון הגדול מדי של דרכים להגדיר ולהפעיל אותן.