>> בסדר.
ברוכים הבאים למדעי מחשב 164.
אז לפני שאנחנו צוללים בעם סקירה
של מה שכמובן יהיה על הסמסטר הזה וקצת
חומר ביום הראשון הזה, חשבתי שאני רוצה לתת לך תחושה
איך בילינו אתמול בלילה.
זה לא כל כך הרבה כמו אתגר בצד השרת שעמדנו בפנינו
אבל אחד בצד הלקוח.
אז יש למישהו מכם גילה האתר הספציפי הזה עדיין
או בד שכמה הרווארד קורסים עוברים כעת?
אז iSites עומד למות איטי מוות אם אתה כבר gotten מצורף
לזה, סביר להניח ל להיות מוחלף עם בד.
ואז חשבנו שאנו לקפוץ על סיפון ולהיות חלק
בדיקת בטא זה באמצעות בד וזה כלי קוד פתוח.
זה בחסות חברה בשם Instructure.
אז יש חברה גיבוי מאחוריה.
אבל על פי רוב אנחנו משתמשים בו בדרך זו.
אבל אתמול בלילה כש אנחנו מנסים
כדי לקבל את אתר האינטרנט של הקורסים סופי, נתקלנו בהרבה
תסכולים בגלל זה היא מערכת ניהול למידה
מה שאומר שזה פיסת התוכנה
שבה אתה יכול לנהל תוכן
באמצעות ממשק מבוסס אינטרנט.
אתה לא צריך להשתמש קבצי תצורה מסתוריים.
אתה לא צריך לדעת משהו על מאגרי מידע,
זה פחות או יותר נקודה ו לחץ בדרך אתרי גוגל
או משהו כזה יכול להיות.
אבל כתוצאה מכך שזה היה ממש קשה כדי לעשות משהו פשוט כמו -
בואו נלך לאתר קורסים.
עכשיו, רק לשים את אפשרויות תפריט בצד שמאל זה.
דוגמה לכך, אין שום דבר יש ממש עכשיו
בגלל האופן שבו התוכנה נועד הוא שאם אתה רוצה
כדי להתקין דברים ב בתפריט הימני שלך,
יש לך בעצם התקנת מודולים אלה
או יישומים בתוכנה.
ואנחנו לא רוצים לעשות את זה.
אנחנו רק רצינו קישור לאהוב את הלימודים.
רצינו קישור לצוות.
רצינו קישור ל קטעי וידאו וכדומה.
אז אם אתה היה מתמודד עם אתרי האינטרנט,
זה מהאתר האינטרנט של צד השלישי
אבל אין לך שליטה על קוד המקור.
אין לך גישה ל שרת, אתה לא יכול SSH,
אתה יכול SFTP, כל מה שאתה יכול להשתמש הוא ממשק האינטרנט המקומי
ואתה רוצה להתחיל לשנות
או לשנות את המשתמש ממשק באמצעים אחרים.
מה עלול ראשון אינסטינקט להיות?
מה שאלות שאתה יכול לשאול של Instructure במקרה זה,
החברה, כך אתה סוג של יכול לעבוד
סביב מגבלות אלה כמו שעשינו?
אנחנו רוצים להוסיף אפשרויות תפריט
אבל אנחנו לא יכולים לשנות קוד השרת שלהם.
אז מה פתרון אולי שרמז כי?
כן.
[הערה לא נשמע]
על אישור.
[הערה לא נשמע]
כן. כדי שנוכל לשקול משהו
כמו סיומת Chrome.
אם לא מכיר, Chrome סיומת היא למעשה חתיכה
של תוכנה מהכרום דפדפן, בדרך כלל בכתב
ב-JavaScript.
וזה רק בדרך של הזרקה קוד בדרך כלל JavaScript אולי
כמה CSS לאינטרנט דף שאתה מבקר.
לפי סיומת Chrome היא רק במעקב שוטף אחר מה
אתרים בם אתה מבקר ומנסה לזהות.
אה אם ​​אתה facebook.com לעשות את זה.
אה אם ​​אתה ב isites.harvard.edu לעשות את זה.
אז אולי שאלו מכם השתמשתי בתוספת 2x של CS50
בכך שמאפשר לך להאיץ עד קטעי וידאו הוא בדיוק את זה.
אז זה מעניין וזה סוג של על המסלול הנכון.
כי אם אין לך גישה לשרת, אתה רק רוצה
לשנות איכשהו DOM עץ שהמשתמש רואה,
אתה יכול פחות או יותר רק לעשות את זה בצד לקוח.
עכשיו כמובן שמלכוד ברור
של שימוש בכרום סיומת היא מה?
נכון. אז לא כולם משתמשים כרום ואם מרגיש סוג של צולע
אם אתה סוג של יש לי מנדט שכל
של המשתמשים שלך יכול רק להשתמש באתר
ותראה את אפשרויות תפריט אם יש להם כרום.
אז מה עוד שהיינו אולי אנחנו רוצים לשאול Instructure?
>> אז דבר אחד אני מניח כנראה שאתה יכול להוסיף טקסט
באתר, נכון?
>> אישור.
>> גלה אם אתה יכול ממש לשים את ה-HTML בטקסט.
>> אישור. טוב.
כדי שנוכל לשאול אותם אם נוכל לשים את ה-HTML בטקסט עצמו.
אז במקום לפרסם טקסטואלית הודעה, נוכל להוסיף קישורים?
האם אנחנו יכולים להוסיף תמונות?
האם אנחנו יכולים להוסיף כדורים?
כל דבר שאנחנו יכולים רוצה לעשות מבחינה אסתטית.
והתשובה הקצרה היא כן.
אכן יש סוג של WYSIWG,
מה שאתה רואה הוא מה שאתה קבל עורך שמגיע
עם זה בפרט פיסת התוכנה
המאפשר לך לערוך.
דברים כמו בדף הבית עם השם שלי ורוב של
וטים וכן הלאה.
וכי יש לנו חלק בדרך לשם.
לרוע המזל שלא תן לנו לשים שום דבר כאן
למשל.
שלא מאפשרים לנו לשים שום דבר כאן כי אנחנו מוגבלים
לפי מה שמקורי מחברים רוצים שנעשו.
אז אנחנו צעד אחד קרוב יותר.
מה עוד שהיינו לשאול את החברה?
מה הם אחרים בפתרונות עוקפים דרך אולי?
זה חייב להיות פתיר.
מה עוד אתה יכול לעשות?
אז אתה היה בצד הימין מסלול עם הרעיון הזה
של צד הלקוח JavaScript הזרקה.
אחרת, איך ייתכן שאנחנו מקבלים JavaScript לאתר אולי, נכון?
כי ברגע שיש לך JavaScript,
אתה יכול פחות או יותר לעשות כל דבר גם אם חוויתי
עם JavaScript מוגבל ל50 או ניסיון קודם אחר,
מכיר אותך, כי אתה יכול לעבור על העץ
שהוא דף אינטרנט, ה-DOM.
אתה בטח זוכר שאתה ניתן להוסיף או להסיר צמתים צמתים.
אתה יכול להזריק דברים לדף אינטרנט.
למעשה זה בדיוק מה 2x CS50 לחבר עושה.
זה קורע את iSites ' נגן וידאו ומעמיד
בשונה כולם יחד.
אז מה אם החברה Instructure אפשר לך
להזריק JavaScript לאתר הקורס שלך?
במילים אחרות, מה אם הם מותר לך באמצעות הממשק הגרפי שלהם,
ממשק WYSIWG הדבק את כתובת האתר של קובץ JS
ואולי אפילו קובץ css. ואז הם לקחו את הטיפול
בתהליך של הכנסתו בחלקו העליון של כל דף.
אז אכן, זה היה הדרך היחידה היינו יכול
כדי להשיג זאת.
אם אני רואה את מקור הדף כאן - ותן לי להתקרב ולחפש
לcs164.net שהוא תחום אנו כמובן משלו.
שים לב שבאמצעות כמה סדרה של צעדים, זה לקח זמן להבין
עם התיעוד שלהם.
אנחנו אנחנו יכולים לומר, על גבי כל דף האינטרנט מה בד פלטים
לקורס זה, פלט. קובץ CSS.
ואם אנחנו עושים פקודה אחרת f ולחפש עוד קצת,
אתם תראו את זה כאן למטה,
מקונן עם בחלק JavaScript קוד יש גם להזכיר
של URL זה כאן.
אז במילים אחרות, אנחנו סוג של שרימה אותם
להזרקה מה CSS,
כל מה שאנחנו JavaScript רוצה לאתר.
כך שלאחר מכן מעלה את שאלה, מה הוא עושה?
ובכן, בואו נלך קדימה ו פשוט לתפוס מקור זה,
להדביק את זה כאן.
זה אסור משום כדי לדמות את זה,
אני chmoded הכל [הפונטי].
אז תן לי לתת את זה בחזרה.
גישה לקריאה וכעת לטעון מחדש.
אז מה עשינו?
אז, אתה תקבל יותר טוב בשלב זה במיוחד באמצע סמסטר
כאשר אנו מבלים הרבה הזמן שלנו על JavaScript.
אבל מה עושה את זה נראה שעושה?
אז אחד בחלקו העליון של זה קובץ JS ששוב כלול
בכל דף אינטרנט ש כמובן שעכשיו פועל באתר.
אנחנו בדקנו אם הסוג של jQuery לא מוגדר.
אז בטווח של ההדיוט מה זה אומר?
מה זה אומר אם jQuery היא מוגדרת?
ובכן, האם יש לך JavaScript טעון.
אתה לא צריך jQuery טעון.
אז אנחנו רק מקווים Instructure ש,
החברה היא למעשה באמצעות jQuery עצמם.
אחרת, היינו צריך הדבק את ספריית jQuery על גבי
בקובץ זה כדי כדי לקבל גישה אליו.
וזה לא בגלל שאני פשוט רוצה לקבל גישה לדברים
כמו סימון סימן הדולר ואחר מבחינה תפקודית
שמגיע עם jQuery.
אם אתה זוכר את זה ספרייה ואם לא מוכר
או אם זה היה בזמן, כל שאר סמוך ובטוח שנגיע לזה
עם בעוד כמה שבועות.
אז מה הם הדברים אנחנו עושים כאן?
אז למי שאולי זוכרים, מה תחביר זה כאן זה אומר?
כאשר אתה רק עובר בעילום שם פונקציה או פונקציה למבדה?
בCS51 לדבר פונקציה כזאת jQuery.
מתי את הקוד הזה הולך לקבל להורג?
כן.
[הערה לא נשמע]
בדיוק. אז את הקוד הזה על ידי הטבע
של קריאה לפונקציה זו כברירת מחדל הוא רק הולך לקבל להורג
כאשר DOM כך לדבר טעון במלואו.
כל החלק העליון של HTML לתחתית, שמאל או ימין כבר לקרוא
לזיכרון ויש כמה מבנה עץ בתוך הזיכרון.
עכשיו זה טוב, כי אם אני רוצה להתחיל לשחק
עם זה ולשנות את אפשרויות תפריט, הסרת דברים,
הוספת דברים, הייתי טוב יותר לחכות
לפחות עד ברירת המחדל DOM נמצא במקום.
אז זה סטנדרטי פשוט התחביר של jQuery.
זה שווה ערך לאמירה כאשר DOM מוכן.
ועכשיו זה באמת רק שילוב
תחביר של jQuery וקצת HTML.
כך למשל, החלטתי כי זה פשוט מציק לי.
אף אחד לא בקמפוס אומר, אה, אתם לוקחים את Comp Sci 164,
או Comp Sci מה, אתה אומר CS164 או CS לא משנה מה.
מטרד קטן כל כך קל, אנחנו רוצים לשנות את זה,
אז איך אנחנו יכולים לעשות את זה עם משהו כמו JavaScript?
ובכן, הודעה מוקדמת, אם אני לעבור לדף כאן
ועל גבי הדף, היה בעבר CS164.
אם אני פותח את הכרום, אשר הוא דפדפן שימושי
לעשות בדיקות DOM ולך להתקרב לכאן.
שים לב שבתוך ה-HTML של זה היה אלמנט שהיה מזהה
פירורי לחם ו זיהוי שעושה מה?
זה מזהה באופן ייחודי אחד מאותם צמתים בעץ
וברגע שיש לי מזהה ייחודי עבור חלק מהנתח
של ה-HTML בDOM, עכשיו אני יכול לעשות מה שאני רוצה
לדף אינטרנט זה.
אני יכול למחוק את כל צומת DOM.
כל תג HTML מהעמוד ולשים את כל מה שאני רוצה
אבל הצרכים אנחנו די צנועים.
אני פשוט רציתי ל קטע קוד כאן.
אני רוצה קודם כל למצוא כותרת כרטיסיות סעיף
שהיה אחד מההורים אלמנטים בדיוק מעל זה.
ואני רוצה ללכת קדימה ושינוי -
רציתי ולא שינוי התוכן
של שבאמצעות HMTL זה לתפקד לקישור לCS164
ולאחר מכן אני רוצה לשנות את ה-CSS על זה
יש משקל גופן מודגש.
ואנחנו לא נכנסנו לגדולים פירוט על שאר זה כאן.
אבל שים לב הקו הזה כאן.
אני לא נחליף גלובלי בכל מקום.
בעיקרו של דבר אומר, בכל מקום אתה רואה את תוחלת
שיש לו בכיתה קרא ellipsible,
זה לא דבר רגיל,
זה בדיוק מה שהבד תוכנה קוראת קבוצות מסוימות.
אם הוא מכיל את המפתח COMPSCI164 ביטוי קדימה
ולהחליף את ה-HTML בתוך בפרק זמן דומה רק עם CS164.
ושאר זה די הגיב היטב.
אבל בתוצאה הסופית, מה אני עושה הוא ידני עם Chrome
או כל דפדפן להבין מה הם מזהה הייחודי
צמתים שונים בDOM עץ ומוטציתם
בדרך שאני רוצה.
ואת התוצאה הסופית, עכשיו אנו chmoded דברים בצורה נכונה הוא
כי עכשיו אני יכול לשים שרירותי נתח של HTML לכאן.
אני יכול לקרוע את דברים כמו תחתונה.
אני יכול לקרוע את ה-HTML לכאן ו אני צריך לנופף ויתור ענק.
זה גרזן מלא
להיות יישום אתר כזה.
אבל זה סוג של מדבר לתהליך החשיבה
כי במקרה שכיוון אמצע הסמסטר,
במיוחד כאשר אנו מבלים זמן על JavaScript לגרום לך לחשוב
על איך אתה יכול לפתור שונים בעיות בתקווה טובה יותר
מאשר בדרך זו.
אבל המרכיבים לפתרון בעיה
ככה באמת רק מצטמצם לכמה עקרונות בסיסיים.
להיפתח למשהו כמו המפקח של הכרום
והבנה מה הוא עץ DOM.
ידיעה מה בוררי CSS הם
לתעודות זהות או ייחודיות לשמות בכיתה.
לדעת כמה תחביר אם זה ב-JavaScript טהור
או בjQuery הספרייה כדי לשנות באמת DOM.
ובסופו של היום, אנחנו פחות או יותר הצלחנו
לכופף את התוכנה לרצון שלנו.
אבל יש כנראה לתפוס.
מה המחיר שאנחנו כנראה משלם על גרזן השלם הזה?
מהו הסיכון?
כן.
[הערה לא נשמע]
בדיוק. אם Instructure ישנה אחד השיעורים שלהם
או משנה את השם אחת מתעודות הזהות שלהם או רק מארגן מחדש HTML שלהם
אשר לחלוטין זכותם,
כל זה יכול לשבור ו אז אחד מאיתנו הולך להיות
לשם לב לזה או אחד מכם החבר 'ה שתצטרך לדווח
ואנחנו הולכים לי לחשוב על זה שוב.
אז אולי לא ענק להתמודד, אבל עדיין איום.
מה עוד יכול לקרות?
מה עוד רע על גישה זו?
זה פחות נפוץ בימים אלה.
כן. זה קצת איטי יותר שב--
ולא רק לקבל מקור מהשרת.
אתה עכשיו עושה נוסף שינויים בצד לקוח.
ואכן, אם היו לנו כל כך חיבור אינטרנט איטי בהרבה,
אתה באמת היה רואה רוב כמה הבזקים סביר
על המסך כDOM בלוטות משתנות.
אנחנו פשוט יקרו לי יש להם קשר,
מחשב די מהר וכל כך זה די חמקמק למשתמש.
אבל מה אם יש להם JavaScript מושבת?
עכשיו זה הוא קיצוני מקרה פינה בימים אלה.
רוב האנשים הם - הרוב כאשר הם עוזבים JavaScript ב.
אבל אם זה את מה שקורה?
אנחנו לא רואים שום מכלל זה.
אז בקיצור, בהסתמך על JavaScript למשהו
ככה עושה את העבודה
אבל טייק האווים היא איך הלכנו על דונג זה.
ואתה יכול לראות בעצמך רק על ידי הצגת המקור
ואז מחטט בכל שתי כתובות על cs164.net.
איך אנחנו באמת עשינו את זה?
אבל המחשה של איך אתה יכול להתחיל לבנות יותר
DOMS המעניין ואפילו במקרה
אתרים של מונעים באופן דינמי כמו יישום פייסבוק,
או Gchat או כמו שהם כל הזמן מושך בנתונים נוספים,
איך בעצם אתה יכול לשנות את הממשק הזה.
אבל עכשיו, בואו נסתכל על דרך נכונה להתחיל לעשות דברים.
אז השנה, כמובן, שלא כמו לפני שנתיים
כאשר אתם בעיקר ב-PHP עבור המחצית הראשונה
ו-JavaScript לאחרון מחצית ואילו לפני כשנתיים,
שלנו להתמקד יותר בסלולרי עם קצת PHP, השנה,
החלטנו לשנות דברים להתמקד יותר
על יישומים מבוססי אינטרנט.
יושם לא ב זוגות של אנשים
אבל בצוותים במיוחד צוותי של ארבעה
והמוטיבציות היה כמה.
אבל ביניהם היו כי,
עם צוות של ארבעה יש רק הרבה יותר חלקים שאתה יכול לנשוך
כמקבוצה.
עושה התפתחויות אינטרנט נוטה לנחות עצמו להיבטים שונים
של הפרויקט שאתה יכול אז להאציל בקרב צוות שלך.
לדוגמא, סביר להניח שאנו יש אחד או שניים שלך
בצוות נתון עובד על מול הסוף, קוד JavaScript,
CSS, האסתטיקה.
באותו פרויקט אחר אחד או שתיים ממך יתמקדו
בקצה האחורי, מסד הנתונים עיצוב סכימה, האימות
של נתונים, כתיבת API כי אנשי הקצה הקדמיים יעבדו.
ולכן אנחנו פשוט יש הרבה עוד נשימה של הזדמנויות
לאנשים לשתף פעולה.
ואז אתה תמצא אם עשית פרויקטים
עם רק אחד מבני זוג בעבר,
כי עם ארבעה זה יהיה קצת יותר מאתגר,
יותר מעניין, אבל הרבה יותר חזק כדי לקבל את כל
שלכם בשיתוף פעולה יחד.
במונחים של התנאים המוקדמים, אנו צפויים לדבוק באלה
לקטלוג ארבעה קורסי CS קודמים.
וזה מבוסס על ניסיון.
לפני כמה שנים כ רמזתי לך קודם לכן,
אנחנו פחות או יותר אפשרו כל מי שלקח רק 50
או אולי כמה ברמה גבוהה בית הספר לקחת את הקורס
אבל לא היה רק ​​פער כזה של יכולות ורמות נוחות.
הוא עשה את זה קשה לי שיחות מסוימות והרבה
תלמידים ב כיתה נאבקה.
אז חשב שזה ככה,
אנחנו יכולים לעשות כל סוג של טובה ביחד.
אז לזכור את זה.
במונחים של גודל הקבוצה, ארבעה יהיו ברירת המחדל
אם יש לך שלושה חברים שאיתם אתה הייתי
כמו לשותף, זה בסדר לגמרי.
אנחנו לא יהיו מנדט צוותי מיוחדים בשבילך.
אם אין לך חברים או שותפים בחשבון לכיתה,
לא עניין גדול, אנחנו נשמור כי המוח כמו גם ונסה
כדי להקל על אלה סוגים של שותפויות.
במונחים של המבנה בכיתה, זה מאוד חריג.
כמובן לא יהיה מובנה ברוב המקרים
סביב הרצאות ו לא מובנה
סביבך החבר 'ה שישבה שם ובוהה בדרך זו
ואותי מדבר ככה.
במקום זאת רוב מפגשי כיתה יהיו
בצורה של ישיבות צוות.
כך או צוות שלך יהיה לאסוף כאן או במקום אחר בקמפוס
במשך כמה שעות ביום שני בשעות אחר הצהריים או לזוג
של שעות ביום רביעי בשעות אחר הצהריים.
בשבועות הקרובים, אנו להבין איזה יום
ושבו זמן בכל אנשים יהיו.
אם צריך להיות, אנחנו יכולים לצבוט פעמים, אבל שנראה מבוסס
על סקר שאתם כל סופו של דבר למלא.
מה קורה בפגישות האלה?
אז המפגשים שבועיים הוא
שבו לכם בראש ובראשונה להציג את ההתקדמות
על פרויקטים שונים, יותר על אלה ברגע.
אז בישיבות צוות אלה, אחד מסגל ההוראה ו
או את עצמי יהיה נוכח והמטרה תהיה עבור כל
של ארבעה אנשים ב צוות לדווח על אבני הדרך
שיש לך או לא השיג.
איפה אבן הדרך יוגדר
כלחקור משהו, יישום משהו,
עיצוב משהו, חושב על משהו או משהו הדומה,
הגנה על החלטות עיצוב.
אז שלמענם - אנחנו אמורים המעמד הזה
במיוחד לקריטי או מאתגר.
אז לא שלה רק הולך ניתן לדבר על היום שלך
ואיך בעצם אתה בחרת ליישם את זה, אבל אני ורוב
וטים שיפגשו בקצת יהיה שם לאתגר אותך.
כך שאם קבל החלטה
וזה לא בהכרח הכי טוב זה בסדר.
אם באמת יש לך חזק דעה בקשר למה שאתה עשית את זה.
ובתשובה של צורה, ובכן, זה עובד
אבל אני לא ממש בטוח הוא לא מה שבאמת צפוי
בפגישות אלה.
אז זה באמת אמור להיות שיחה דו כיוונית
שבו אתה להגן עליך החלטות וגם לשכנע אותנו
כי הנתיב שיש לך נלקח באופן אידיאלי הוא הטוב ביותר
או שזה הזדמנות בשבילך כדי לבקש משוב מאיתנו
ואפילו השותפים שלך
לגבי מה שאפשר לעשות בצורה שונה.
ולאחר מכן בפרט אלה יהיו הזדמנויות
לבדיקת קוד.
אז אתם יהיו לכתוב קוד JavaScript קוד ו-PHP
וטכני אחרים היבטים של כל פרויקט
והמטרה תהיה ב מול מסך טלוויזיה גדול,
מסביב לשולחן כזה לאחד מכם לעמוד
בתקופה שכל מי שיש לו כבר עושה את רוב העבודה
בהיבט כלשהו של הפרויקט הניח
ולהציג את הקוד.
ולתת לנו סיור מילולי של קוד ולתת לנו הזדמנות
לומר למה יש לך שש לולאות מקוננות יישום
משהו כזה?
או למה אין לך אינדקסים
בטבלה במסד הנתונים שלך שונים נושאים שנחקור
במהלך הסמסטר.
אז מדי פעם אנחנו יהיו יש שיחות טכניות או
בצורה של אלה ב מפגשים בסגנון אדם
בו כולנו מתכנסים יחד או באמצעות וידאו
לעשות דברים אסינכרוני הקטן
למען עליה של הנוחות נושאים במיוחד טכניים
וכלים שנשתמש במהלך הסמסטר הזה.
חלק JavaScript הפופולרי ספריות
למשל הם Backbone.js וBookshelf.js וExpress.js.
כל אלה הם כלים עם שבו אתה יכול לעשות מבוסס אינטרנט
יישומים באמצעות JavaScript.
לא בצד הלקוח אם כי
אבל בצד השרת באמצעות מסגרת נקראת Node.js
אשר מהווה חלופה באמצעות משהו כמו אפצ'י
או IIS של מיקרוסופט או אחר תוכנת שרת האינטרנט.
אז אנחנו באמת נכתוב ב קוד JavaScript בכיתה,
הן בצד הלקוח כמו גם בצד השרת.
נדבר על כלים שבאמצעותם כמה
מכם כבר מכיר.
דברים כמו Git.
אנחנו לצלול עמוק יותר לדברים כמו SQL ואילוצים
ועסקות והרבה מהפרטים שבהחלט
בכיתה כמו 50, אנחנו סוג של לנופף בידות שלנו עד לשם פעמים
אבל חשובים לנצח
כאשר למעשה יישום פרויקט שהולך להיות בשימוש
על ידי בפועל ובתקווה מספר גדול של משתמשים
שבו ביצועים הולכים תתחיל לעשות את הבדל.
בעולם PHP, אנו נשתמש מסגרת נקראת Laravel.
זוהי ארכיטקטורת MVC.
אם יודעים או זוכר שראשי התיבות.
וזה פשוט חבורה של קוד PHP כדי לעשות הרבה
מקומות עבודה קל יותר ו כדי לעשות את זה קל יותר
לכתוב יותר מורכב תוכנה במיוחד פרויקטים
כי הם יישמו על ידי מספר רב של אנשים.
לבדיקה, אנו נשתמש בכלים כמו לעג ביחידות PHP
ואנו מקבלים את הרגל של לא רק כתיבת קוד וסוג
של דופק עליו ואנקדוטות מנסה מנסה להבין,
זה עובד כפי שהתכוונת.
אלא עושה את זה לעבור בדיקות מסוימות.
אז זה במיוחד אם חבר שלך
בשינויי הקבוצה שלך קצת קוד, אתה יכול להיות בטוח
כי כאן יש לא שהיא נשבר משהו פשוט
על ידי rerunning הבדיקות
כי יש לך כבר נכתב לקוד זה.
כך שאין לי רגרסיות למרכבת מצבים של תוכנה.
בנוסף, הפרויקטים הוא
שבו אנחנו מבלים את רוב זמננו.
כך שאין שום בחינות.
הוא מונע על ידי כל פרויקטים במחלקה זו
ובאמת יש פשוט להיות שתיים לכל קבוצה.
בעיקרו של דבר המחצית הראשונה הסמסטר יתמקד
באתרי אינטרנט המבוסס על PHP אחד
שיהיה לי משתמש קצה קדמי ממשקים הן לשולחן עבודה
ובמידת ניידת.
אז זו תהיה הזדמנות, אם כי משיק לכיתה
בעצם לעשות משהו כזה ממשק סלולרי מבוסס אינטרנט
או אם אתה באמת נחוש, אנדרואיד
או iOS יהיה בסדר גמור.
פשוט מבין ש עקומת למידה שם
אם לא מוכר היית להיות קצת יותר גבוה.
אבל זה היה משחק מאוד יפה עם החזון
של גם שיש כל פרויקט יש לי כמה API הסוף חזרה.
כך שאתה יכול להיות הפרדה,
הפשטה בין מה שאתה עושים ומה אליס ובוב
וצ'רלי בך קבוצה הן גם וגם.
אז שכל אחד מהקצוות הקדמיים שלך
או אחורה קצוות יכולים איכשהו תקשורת הדדית ביניהם.
במונחים של הפרטים, למסגרת,
אנחנו מסתמכים על Laravel ו רהוט שהוא ORM,
Mapper יחסי אובייקט אשר רק שכבה של תוכנה,
כי כתובות M בMVC, הדגם.
זה עושה את זה קצת יותר קל במיוחד לפרויקטים גדולים
נתוני שאילתה מ מאגרי מידע ונתונים כדי לכתוב
ולייצג את העולם אמיתי גופים מבלי
לכתוב קוד SQL גלם.
בעולם של JavaScript, אנחנו שוב נשתמש אקספרס
מדף הספרים ובי הם אנלוגים
בעולם-JavaScript.
אבל באמצעות במקום אפצ'י באמצעות Node.js
שהוא פופולרי יותר ויותר ומאפשר במיוחד
עבור יישומים הכוללים אינטראקציות בזמן אמת,
חדרי תרשים וכדומה.
הצומת היא הרבה יותר טובה מ אפצ'י בעת שימוש -
בעת יישום פרויקטים כאלה
כי אתה יכול לשלוח הודעות תוך שימוש במודלים כמו פאב ומשנה,
לפרסם ולהירשם, אם מכיר את הביטויים האלה.
אז עוד על כך בכיוון אמצע הסמסטר.
במונחים של ציפיות, אלה הם אותם לקורס.
להשתתף או לצפות מדי פעם הבאות שיחות, שיחות טכניות.
לוח הזמנים לאשר סופו של דבר לשים את
באתר האינטרנט של הקורסים.
להשתתף בכל של הפגישות.
אז נוכחות נדרשת ב כל אחד מהסיבה של ישיבות צוות
אחרי הכל זה מקום שבי ביותר ההוראה של הקורס
ומשוב ו אינטראקציות יקרה.
אבן דרך שבועית, אנו נשתמש כלי שאני אעשה את האזכור
של ברגע לכלל להקצות לך מאחד או שתיים
של אנשי צוות לכל אחד ארבעת אנשים בקבוצה.
דברים לעשות ואלה הדברים יבואו בצורה
מדוע אתה לא וטרינר ללכת באפשרות זו.
למה אתה לא הולך לוטרינר זה אופציה ולהבין אילו
משני אלה יישום אפשרויות הן טובות יותר
בין עכשיו ואומרים בשבוע הבא.
למה אתה לא הולך ליישם את זה?
או שאתה מעצב אלה טבלאות מסד נתונים.
וזאת בלוח הזמנים קצר בקורס הוא הולך
להיות די אורגני בהתאם לפרויקטים
שכל אחד מתמודד עם צוות בהתאם על מה הם הממצאים שלך
כאשר בדיקה בטחונית מסוים יישום אופציה ובהתאם פוטנציאל
בסופו של דבר מה שמשתמשי הקצה רוצה לעשות הפרויקט.
וכך לקראת הסוף, כי יש אין מועדים קבועים לכל אומר.
פחות או יותר יהיה במשימה מתגלגלת
של מועדים כל כמה ימים, המבוסס כל שבוע
בשיחות ש יש לך עם אחד או שתיים
של אנשי צוות ליד השולחן שלך.
סופו של דבר, אם כי מה עקב היא ההגשה
של שני פרויקטים האחרונים אלה.
במונחים של מה פרויקטים יהיו,
הפרויקטים ניתן גם הציע
ונבחר על ידי חבר 'ה.
למעשה, בטופס הלוטו למשל תתבקש
על מה הוא פרויקט אחד או יותר במיוחד שאיכשהו להתייחס
לקמפוס שאתה חושב שהיית עושה להיות משכנע ליישום.
מאז אחת התקוות לקורס הוא
שכל מה שעושים פרויקטים באו
מתוך הקורס הזה לשרוד סוף הסמסטר.
וכך במיוחד אם הם נושאי קמפוס,
אם אם זה עוד קטלוג כמובן, כלי קניות
או אירועים בלוח שנה או שירות הסעות או כל מספר
פרויקטים אחרונים הפופולריים.
התקווה לאחר תום של הסמסטר הזה הוא
כי כל פרויקט כזה לחיות.
ואכן לקראת הסוף כי,
מה שחשבנו שאנחנו עושים הוא לעשות את זה קצת מעניין.
וגם סוג של הזדמנויות תובנה
לדיונים לפיה ל ביותר בכל פרויקט שאנו
כתובענה להתמודד עם הסמסטר הזה,
יהיו שני צוותי שהוקצה לאותו פרויקט.
להיות הרעיון הכללי ש הם לא באמת אמורים
לדבר עליהם החלטות עיצוב שונות,
במקומו אמור להיות יותר של תחרות כאל
שסופו של דבר יכול לייצר העיצוב הטוב ביותר, יישום.
כך שבסופו של סמסטר, הגיע במאי, אנו שולחים אחד
ולא את שניהם של פתרונות אלה.
ואנחנו ככמובן ניקח אכפת לי של האירוח וכן הלאה
כך שחייהם המורשת שלך בסוף האביב.
מה היישומים הללו עושים?
יכול להיות כל דבר, משהו למחלקה,
משהו עבור קבוצת תלמידים,
משהו לתלמידים יותר בדרך כלל זה יהיה חלק
השיחה בשבוע הקרוב
ראש הצלילה ראשון עד
לאחר קטיף קומץ של פרויקטים מסוג זה.
במונחים של צוות, בואו לי להציג את טים ​​ורוב
מי רוצה לומר שלום.
וזה החבר 'ה האלה, שעבור אחד מהפרויקטים יהיה -
עבור שני הפרויקטים יהיה היועץ הראשי שלך.
בעיקרו של דבר לאחד פרויקטים, רוב יהיה איסוף
איתך שבועי לשיחות אלה.
לאחד הפרויקטים, טים יהיה איסוף איתך
לשיחות אלה ואנחנו יהיו להחליף בערך באמצע סמסטר
כפי שאנו המעבר פרויקטים.
אם אתה רוצה רק לדבר קרוב למיקרופון הזה.
>> היי, אני רוב.
אני סיימתי את הלימודים בחודש מאי האחרון מ[ לא ברור].
אני מורה בCS כאן עכשיו.
נרגש לקורס.
>> ואני טים ואני בעצם לגמרי חדש לאזור.
אני במקור מ פילדלפיה אז אני פשוט התחלתי
עד כאן כמה שבועות לפני ואני באמת
לתוכנות קוד פתוח.
אני לעזור עם השמירה פרויקט Backbone.js בו חלק
שלך יכול להיות מוכר עם
ואני גם יצרתי Bookshelf.js פרויקט
כי דוד היה להזכיר.
לכן, אני מתרגש לראות את הפרויקטים.
>> ואכן.
לקבלת מידע נוסף על טים לפחות אם אתה הולך
לדף הבית של הקורס ו לחץ על השם שלו זה יוביל
למאגר GitHub שלו אם אתה רוצה להסתכל על כמה
של הקוד הפתוח שלו כלים ופרויקטים.
אז במונחים של ציונים, רק בגלל זה הוא גם שאלות נפוצות
אם סוג של משיק ל חזון גדול של כיתה,
איך ציונים הסופיים תיקבע?
אז מה אנחנו סופו של דבר יהיו להיות די סובייקטיבית מבוסס
על האינטראקציות שאנו שלך במשך -
עם מעל הקורס שלך הסמסטר מבוסס
על התרומות שלך גם למאגרי קוד
ולשיחות שיש לנו.
ובקליפת אגוז, זה יהיה מבוסס
על התרומות שלך לפרויקטים.
הדלתא בין הראשון שבוע והשבוע שעבר.
אז לא לדאוג אם אתה יש רק ארבעה קורסים
מתחת לחגורה שלך ואילו חלק מתלמידים אחרים
בכיתה שאולי יש לי שמונה,
אנחנו בהחלט נשמור זה בחשבון.
היקפו, נכונותו, העיצוב וסגנון של הפרויקט שלך,
כך צירים מוכרים אלה.
המידה שבה אתה להתכונן לפגישה.
אז זה באמת נועד להיות הזדמנות עבורנו
לאסוף שבועי ויש לי אינטליגנטי ומהנה ומין
דיונים של באופן אידיאלי רגשיים.
בזמנים שבו אתם עושים להציע איך אתה יכול לפתור
משהו ולאחר מכן להגן על מה אתה יכול לעשות והתפקיד של טים
והתפקיד שלי והתפקיד של רוב יהיה להיות לאתגר אותך בתקווה.
אז זה או שאתה יכול להשתכנע ללכת
בחלק יישום אחר כיוון או יכול להיות בטוח
ומרגיש די טוב על העובדה כי, כן,
אתה חושב שיש לך את הטוב ביותר יישום אפשרי
לזה.
במיוחד וככל שתהיה עבודה צוות אחרת
באותו פרויקט מ הזווית האישית שלהם.
במונחים של הכלים, אז זה יהיה אולי של כל שעות נוספות
ואתה מוזמן להשתמש כל מה שהוא עניין
לצוות הפנימי שלכם.
אבל על פי רוב חלק, אנחנו נעשה שימוש
של כלי חינמי בשם Asana לניהול משימות.
אתם תראו עוד על כך באמצעות דואר אלקטרוני בימים הקרובים
וזה בעצם כלי שבאמצעותו אתה יכול לעבוד חללים
ופרויקטים לצוות.
אז אם הפרויקט שלך הוא ליישם [פונטיקה] מלאה.
ארבעת חברי צוות שלך להיות בתוך הפרויקט הזה,
בתיקייה שאפשר לומר כך.
ואתה ואנחנו יהיו מסוגלים להקצות לאבני דרך ולעשות את של
ותאריכים והערות.
וזה נחמד כי זה זה משולב עם דואר אלקטרוני.
אז אתה יכול או לא יכול לבקר את אתר זה לגמרי תלוי בך.
ואתה יכול גם לקבל תחושה מצטברת
ממה שהם אנשים עבודה ולקבל תחושה
של מה שקורה מעבר בועה מסוימת משלך
אם הראש שלך יורד לאחר תוך התמקדות
על דבר אחד מסוים.
לGitHub מדי, אם לא מוכר, GitHub הוא אחד
הפופולריים ביותר, אם לא המאגר הפופולרי ביותר
בחוץ למקור קוד בימים אלה.
אנחנו נשתמש בזה כמרכזי מאגר לכל צוות של ארבעה
כך שאתה ארבעה ולאחר מכן יש לנו שלוש גישה ל
ויכול להגיב בצורה
ביקורות קוד באמצעות הממשק של GitHub.
אבל אנחנו נכיר לך את זה
אם לא מוכר כאשר מגיע הזמן.
וזה רק מהיר הצצה Asana.
הצצה מהירה בGitHub ועכשיו תן לי לעצור לכל שאלות.
כן.
[לא ברור שאלה]
שאלה טובה מה שאנחנו חושבים מסגרות פייתון או רובי?
הם יכולים להשיג אותן מטרות בפרט.
אנחנו יקרו להשתמש PHP ב164 כי הרבה
של האינטרנט לפניהם של אנשים חוויות שיוצאות מ50
אשר משתמש PHP עכשיו.
אבל בהחלט, יכול כל אחד לעשות פרויקטים אלה ברובי,
פייתון, גם Java או אחר מסגרות, Node.js בהחלט.
אבל אנחנו יקרו להשתמש PHP ואנחנו יקרו להשתמש Node.js
ואנחנו רוצים לתקנן אלה עבור שני הפרויקטים
כך שזה הרבה קל יותר כתובענה
יש דומה מאוד שיחות
ולא צריך יותר מדי תפוחים ותפוזים בכיתה.
למרות שלא יהיו שיקול דעת כשמדובר
לתוספות מסוימות ב ספריות שיהיה אפשר להשתמש
עבור כל אחד מאותם סביבות.
לכן, כל טענה שאחד הוא בעיקר טוב יותר
יותר מאשר אחר.
וPHP יש סוג של מכוער היסטוריה אבל זה קיבל הרבה,
הרבה יותר טוב בשנים האחרונות.
אז מה שלפנינו?
אין שיעורי בית או כל כגון דברים הלילה אחרים
מאשר לבקר בכתובת זו אם אכן עניין.
אנחנו מתכוונים לכתוב על הקישור באתר האינטרנט של
אם אתה שוכח איפה זה.
המועד האחרון לזה הולך להיות 06:00 ביום רביעי
כך שרוב וטים ואני יכול לשבת באותו הערב
ולסקור את ההגשות ולהבין איך הכי טוב
כדי לייעל את הקבוצות וכן הלאה.
אנחנו נודיע לך עד יום חמישי או אם לא היו לנו
להגרלה ואם יש לנו מקום
כך שאתם יכולים לקבל כרטיסי מחקר חתמו על דמות
את מה שאתה רוצה לעשות.
ובינתיים, אם יש לך שאלות,
עבור לאתר האינטרנט של הקורס.
צוות דוא"ל בcs164.net.
כאשר אנו חוזרים ביום רביעי, זה עדיין יהיה בפורמט זה.
אבל סביר להניח שמתחיל בשבוע שאמצע השבוע הבא או
לאחר שבו אנחנו מחלקים את לקבוצות קטנות בהרבה
עם רק ארבעה מכם פגישה בזמן איתי
ואו טים ואו רוב.
תודה רבה ל צוות בגב היום.
אנחנו אראה אותך ביום רביעי.