נגישות       נגישות
שינוי גודל טקסט:
א א א
שינוי צבעי האתר:
? מקשי קיצור:

לחיצה חוזרת ונשנית על המקש Tab תעביר אתכם בין הקישורים והאזורים השונים בעמוד.

הפעלת מקשי הקיצור תלויה בדפדפן שבו אתם משתמשים.

Internet Explorer, Chrome ובגרסאות ישנות של Firefox: לחצו על מקש Alt ועל מקש המספר או האות על-פי הרשימה. ב Firefox 3 ומעלה: לחצו על המקשים Alt + Shift + המספר או האות.

S - עבור לתוכן הדף
L - חיפוש
1- עמוד הבית
2 - פרוייקטים
3 - מדריכים
4 - אודות
5 - צרו קשר
6 - הצהרת נגישות
 

סקירת הספר: Laravel design patterns and best practices

מחבר:
בתאריך:

בחרתי לקרוא את הספרון Laravel design patterns and best practices (קצת יותר מ-100 ע"מ) בגלל השילוב בין תחומים כל-כך חשובים למפתח PHP מודרני: Laravel , מצד אחד ו- design patterns , מצד שני. לרוול, למי שעדיין לא מכיר, הוא פריימוורק PHP מודרני, בדומה ל -code igniter, zend framework ו-cake php, הוותיקים יותר. ב- design patterns נתקלים בד"כ כשמתחילים לשאול שאלות כדוגמת כיצד ניתן לשפר את הקוד כדי שיהיה קריא יותר, ונוח יותר לשינויים ולהרחבה? או האם יש שיטה מבוססת ובדוקה לכתוב את הקוד?

השילוב בין לרוול ו-design patterns הוא מהותי להבנה של לרוול, מפני שלרוול מבוסס על יישום של design patterns.

בראש ובראשונה, לרוול מיישם את דפוס ה- MVC, שהוא הדפוס החשוב ביותר למפתחי PHP, בזכות העובדה שהוא מאלץ את המפתחים להתאפק מלערבב את הלוגיקה בתוך התצוגה. יישום מלא של הדפוס בלרוול, גורם להפרדת האפליקציה לשלוש שכבות : מודל, שאחראי לאינטראקציה עם מסד הנתונים, View שמציג את המידע למשתמשים, ושכבת קונטרולר דומיננטית שמקשרת בין שתי השכבות האחרות.

דוגמה בולטת לשימוש ב-design patterns בלרוול, הוא השימוש הנרחב ב-Facades בכל האפליקציות שמרכיבות את הפריימוורק. ה-Facade, מסתיר הרבה מהקוד מאחורי מתודות שנראות פשוטות, ועושות הרבה מהעבודה בלי להטריח את המתכנת. לדוגמה, אם אנחנו רוצים למשוך את תוכנו של session, אנחנו רק צריכים לכתוב פקודה קומפקטית, שנראית כמו מתודה סטטית:

$foo = Session::get('foo');

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

עטיפת הספר Laravel design patterns and best practices

הספר מכיל 6 פרקים, שמסבירים את היישום של design patterns בלרוול:

הפרק הראשון מסביר מהם design patterns, וסוקר את הקבוצות השונות של design patterns תוך אבחנה בין דפוסים יוצרים (Creational patterns), דפוסים מבניים (Structural) ודפוסים התנהגותיים (Behavioral).

שלושת הפרקים הבאים מוקדשים ליישום דפוס ה- MVC בלרוול, פרק לכל שכבה. במודל, שהוא החלק שמטפל במסד הנתונים, מוסבר כיצד ניתן לכתוב שאילתות רגילות באמצעות ה-query builder, או עדיף באמצעות ה-ORM של לרוול ששמו Eloquent, שמבצע אינטגרציה חלקה של מסד הנתונים עם המודלים שמטפלים בו (מודל לכל טבלה, יחסים בין הטבלאות השונות, ו-version control, וזה רק חלק קטן מהיופי שארוז בשכבת המודל בלרוול). הפרק על שכבת ה-view מרחיב מסביר את מבנה קבצי התבנית ועל מנוע התבנית (template engine), שיכול לשמש לכתיבת ה-HTML. ולבסוף, הפרק אודות ה-controller, מסביר על השכבה שקושרת את כל האפליקציה, ובין השאר אחראית על קבלת הבקשות מה-url, וניתובם למתודות שמטפלות בהם.

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

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

Kılıçdağı, A & Yilmaz, HI 2014, Laravel design patterns and best practices, Packt, Birmingham, Mumbai.

קישור לספר:

https://www.packtpub.com/

הוסף תגובה חדשה

 

= 6 + 5