איך לכתוב את התוכנית הראשונה שלך ב-Ruby

הקדמה

התוכנית "שלום, עולם!" היא מסורת קלאסית וכבודה בתכנות למחשב. זו תוכנית ראשונה קטנה ומלאה עבור מתחילים, וזו דרך טובה לוודא שהסביבה שלך מוגדרת כראוי.

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

Output
Please enter your name. Sammy Hello, Sammy! I'm Ruby!

דרישות מוקדמות

עליך להקים סביבת פיתוח Ruby מקומית במחשב שלך. קדם זה באמצעות מעקב אחד מהמדריכים הבאים:

שלב 1 — כתיבת תוכנית "שלום, עולם!" הבסיסית

כדי לכתוב את התוכנית "שלום, עולם!", פתחו עורך טקסט בשורת פקודה כמו nano וצרו קובץ חדש:

  1. nano hello.rb

כשהקובץ הטקסט נפתח בחלון הטרמינל, תכתבו את התוכנית שלכם:

hello.rb
puts "Hello, World!"

בואו נפרט את הרכיבים השונים של הקוד.

puts הוא שיטת Ruby method שאומרת למחשב להדפיס מלל למסך.

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

כמה שיטות, כמו השיטה puts, כלולות ברובי כברירת מחדל. כל השיטות המובנות אלו תמיד זמינות כאשר אתה יוצר תוכניות ברובי. תוכל גם להגדיר שיטות משלך.

שמור וצא מ־nano על ידי הקלדת המקשים CONTROL ו־X, וכאשר תתבקש לשמור את הקובץ, לחץ על y ואז הקש ENTER.

בוא ננסה את התוכנית שלך.

שלב 2 — הרצת תוכנית Ruby

עם התוכנית "שלום, עולם!" שכתבת, אתה מוכן להריץ את התוכנית. תשתמש בפקודת ruby, ואחריה שם הקובץ שברקע יצרת עכשיו.

  1. ruby hello.rb

התוכנית תוריד ותציג את הפלט הזה:

Output
Hello, World!

בוא נחקור מה קרה בפועל.

הרצת הפקודה ruby השיגרה את מפענח ה־Ruby. מפענח ה־Ruby קרא את הקובץ שצוין והעריך את התוכן שלו. הוא ביצע את השורה puts "Hello, World!" על ידי קריאה לפונקציה puts. הערך המחרוזתי של Hello, World! הועבר לפונקציה.

בדוגמה זו, המחרוזת Hello, World! נקראת גם פרמטר מאחר והיא ערך שמועבר לשיטה.

הציטוטים שנמצאים משני הצידים של Hello, World! לא הודפסו למסך מכיוון שהם משמשים להודיע ל־Ruby שהם מכילים מחרוזת. סימן הציטוט מסמן את תחילת וסופה של המחרוזת.

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

שלב 3 — בקשת קלט

כל פעם שתפעילו את התוכנית שלכם, היא תציג את אותו הפלט. בואו נבקש מהאדם שמפעיל את התוכנית שלכם את שמו. אז תוכלו להשתמש בשם הזה בפלט.

במקום לשנות את התוכנית הקיימת שלכם, תיצרו תוכנית חדשה בשם greeting.rb בעורך nano:

  1. nano greeting.rb

ראשית, הוסיפו את השורה הזו, שמבקשת מהמשתמש להזין את שמו:

greeting.rb
puts "Please enter your name."

שוב, תשתמשו בשיטת puts כדי להדפיס טקסט למסך.

עכשיו הוסיפו את השורה הזו כדי לתפוס את קלט המשתמש:

greeting.rb
puts "Please enter your name."
name = gets

השורה הבאה קצת יותר מעטפת. בואו נפרק אותה לחלקים.

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

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

לבסוף, הוסף את השורה הזו להדפסת הפלט:

greeting.rb
puts "Please enter your name."
name = gets
puts "Hi, #{name}! I'm Ruby!"

אתה משתמש בשיטת puts שוב, אך הפעם אתה משתמש בתכונה של Ruby הנקראת אינטרפולציית מחרוזת, שמאפשרת לך לקחת את הערך שהוקצה למשתנה ולשים אותו בתוך מחרוזת. במקום המילה name, תקבל את הערך ששמרת במשתנה name, שצריך להיות שם המשתמש.

שמור וצא מ-nano על ידי לחיצה על CTRL+X, ולחיצה על y כאשר מתבקש לשמור את הקובץ, ואז לחץ על ENTER.

כעת הרץ את התוכנית באמצעות הפקודה הזו:

  1. ruby greeting.rb

תתבקש להזין את שמך, אז הזן אותו ולחץ על ENTER. הפלט יכול שלא יהיה בדיוק מה שציפית:

Output
Please enter your name. Sammy Hi, Sammy ! I'm Ruby!

במקום היי, סמי! אני Ruby!, יש שורת שבירה ישירות אחרי השם.

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

פתח את קובץ greeting.rb בעורך שלך:

  1. nano greeting.rb

איתר שורה זו בתוכנית שלך:

greeting.rb
name = gets

greeting.rb
name = gets.chop

זה משתמש בשיטת chop של Ruby על המחרוזת שלפנינו באמצעות gets. שיטת chop מסירה את התו האחרון מהמחרוזת. במקרה זה, היא מסירה את תו השורה החדשה בסוף המחרוזת שנוצרה כשלחצנו על ENTER.

שמור וצא מ-nano. לחץ על CTRL+X, ואז לחץ על y כאשר מתבקש לשמור את הקובץ.

הפעל את התוכנית שוב:

  1. ruby greeting.rb

הפעם, לאחר שתקליד את שמך ולוחץ על ENTER, תקבל את הפלט שציפית:

Output
Please enter your name. Sammy Hi, Sammy! I'm Ruby!

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

סיכום

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

Source:
https://www.digitalocean.com/community/tutorials/how-to-write-your-first-ruby-program