ראשי תיבות נפוצים בהייטק - מה הם באמת אומרים¶
מישהו בעבודה זרק "צריך לחשוף API חדש, אז תבנו CRUD מלא עם ORM, ותוודאו שה-CI/CD רץ לפני שעולים ל-PaaS". ואם אתם מהנהנים בראש בלי להבין מילה, אתם לא לבד. עולם ההייטק אוהב לדבר בראשי תיבות בלי לעצור אף פעם ולהסביר מה הם אומרים, כאילו כולם נולדו עם המילון הזה בראש. אז בואו נעצור, ונעבור על ראשי התיבות הכי נפוצים שתפגשו, אחד אחד, בעברית פשוטה.
פיתוח וכלים¶
API - Application Programming Interface. זו בעצם השפה שבה שני תוכנות מדברות ביניהן. כשאפליקציית מזג האוויר בטלפון שלכם מציגה תחזית, היא לא ממציאה אותה - היא פונה ל-API של שירות חיצוני ומבקשת את המידע.
SDK - Software Development Kit. חבילת כלים מוכנה שחברה נותנת למפתחים כדי לבנות דברים על הפלטפורמה שלה. אם אתם רוצים לבנות אפליקציה לאייפון, אפל נותנת לכם SDK עם כל הכלים והספריות שצריך.
CLI - Command Line Interface. ממשק שבו מפעילים תוכנה על ידי הקלדת פקודות טקסט, בלי כפתורים או עכבר. מפתחים אוהבים CLI כי הוא מהיר וקל לאוטומציה.
GUI - Graphical User Interface. ההפך מ-CLI - ממשק גרפי עם חלונות, כפתורים ותפריטים שרוב האנשים מכירים כ"מחשב רגיל".
IDE - Integrated Development Environment. סביבת עבודה אחת שמרכזת בתוכה עורך קוד, כלי בדיקה, דיבאגר ועוד, כדי שמפתחים לא יצטרכו לקפוץ בין עשרה כלים נפרדים. דוגמאות מוכרות הן VS Code או IntelliJ.
ארכיטקטורת תוכנה¶
ORM - Object-Relational Mapping. שכבת תוכנה שמתרגמת בין אובייקטים בקוד שלכם לבין טבלאות במסד נתונים, כדי שלא תצטרכו לכתוב שאילתות SQL ידנית כל הזמן. במקום לכתוב שאילתה, אתם פשוט אומרים "תביא לי את המשתמש" והכלי מתרגם את זה בעצמו.
CRUD - Create, Read, Update, Delete. ארבע הפעולות הבסיסיות שכל מערכת שמנהלת מידע צריכה לתמוך בהן - ליצור רשומה, לקרוא אותה, לעדכן אותה, ולמחוק אותה. כמעט כל אתר או אפליקציה בנויים סביב הרעיון הזה בבסיסם.
MVC - Model-View-Controller. תבנית ארכיטקטורה שמפרידה בין שלושה חלקים - המידע (Model), מה שהמשתמש רואה (View), והלוגיקה שמחברת ביניהם (Controller). ההפרדה הזאת עוזרת לשמור על קוד מסודר ולא מבולגן כשהפרויקט גדל.
REST - Representational State Transfer. סגנון תכנון נפוץ מאוד ל-API-ים, שמבוסס על כתובות URL ברורות ופעולות HTTP סטנדרטיות כמו GET ו-POST. כשאומרים "REST API" הכוונה היא לממשק שמתקשר בדרך המוסכמת והפשוטה הזאת.
JSON - JavaScript Object Notation. פורמט טקסט פשוט להעברת מידע בין מערכות, בנוי מזוגות של מפתח וערך. זה הפורמט שרוב ה-API-ים בעולם משתמשים בו היום כדי לשלוח ולקבל מידע.
נתונים ותשתיות¶
SQL - Structured Query Language. השפה שמשתמשים בה כדי לדבר עם מסדי נתונים יחסיים, כאלה שמאורגנים בטבלאות עם שורות ועמודות, כמו MySQL או PostgreSQL.
NoSQL - Not Only SQL. קטגוריה של מסדי נתונים שלא מאורגנים בטבלאות קשיחות, אלא בצורה גמישה יותר כמו מסמכים או זוגות מפתח-ערך. הם נוחים כשהמידע שלכם לא נכנס בקלות למבנה טבלאות קבוע, או כשצריך לגדול מהר בהיקפים גדולים.
SaaS - Software as a Service. תוכנה שרצה בענן ואתם פשוט משתמשים בה דרך הדפדפן, בלי להתקין כלום, בדרך כלל בתשלום חודשי. Gmail, Netflix ו-Slack הם כולם SaaS.
PaaS - Platform as a Service. שירות ענן שנותן למפתחים סביבה מוכנה להריץ עליה קוד, בלי לדאוג לשרתים, מערכת הפעלה או תשתית. אתם רק מעלים את הקוד, והפלטפורמה דואגת לשאר.
IaaS - Infrastructure as a Service. שכבה נמוכה יותר מ-PaaS - כאן אתם מקבלים שרתים וירטואליים, אחסון ורשת גולמיים מהענן, ואתם אלה שמתקינים ומנהלים עליהם הכל. AWS EC2 הוא דוגמה קלאסית.
שיטות עבודה ופיתוח נכון¶
CI/CD - Continuous Integration / Continuous Deployment. תהליך אוטומטי שבודק ומריץ בדיקות על כל שינוי בקוד (CI), ולעיתים גם מעלה אותו אוטומטית לייצור (CD). זה מה שמאפשר לצוותים לשחרר עדכונים בתדירות גבוהה בלי לפחד שהם שוברים דברים.
OOP - Object-Oriented Programming. גישת תכנות שמארגנת קוד סביב "אובייקטים" שמייצגים דברים מהעולם האמיתי, עם תכונות ופעולות משלהם. זו אחת הגישות הנפוצות ביותר בשפות כמו Java, Python ו-C#.
DRY - Don't Repeat Yourself. עיקרון בסיסי שאומר שאם אתם מוצאים את עצמכם מעתיקים אותו קוד פעמיים, כנראה שכדאי להוציא אותו לפונקציה אחת משותפת. פחות כפילויות אומר פחות מקומות לתקן כשמשהו משתנה.
KISS - Keep It Simple, Stupid. תזכורת לא לסבך פתרונות מעבר לצורך. הפתרון הפשוט שעובד תמיד עדיף על פתרון מורכב ומרשים שאף אחד לא באמת מבין אחרי חצי שנה.
MVP - Minimum Viable Product. הגרסה הכי בסיסית של מוצר שעדיין נותנת ערך אמיתי למשתמש, בלי כל הפיצ'רים הנחמדים שאפשר להוסיף אחר כך. הרעיון הוא לבדוק אם הכיוון נכון לפני שמשקיעים חודשים בפיתוח.
POC - Proof of Concept. ניסוי קטן ומהיר שנועד לבדוק אם רעיון טכני בכלל אפשרי, לפני שמשקיעים בו זמן רציני. POC לא צריך להיות יפה או שלם, רק להוכיח שהרעיון עובד.
QA - Quality Assurance. הצוות או התהליך שאחראים לוודא שהמוצר עובד כמו שצריך לפני שהוא מגיע למשתמשים, על ידי בדיקות ידניות ואוטומטיות. QA טוב תופס באגים לפני שהלקוחות תופסים אותם.
UX/UI - User Experience / User Interface. UI הוא איך המוצר נראה - הצבעים, הכפתורים, הפריסה. UX הוא איך המוצר מרגיש להשתמש בו - כמה קל למצוא מה שמחפשים וכמה הכל הגיוני. אפשר שיהיה UI יפה עם UX גרוע, ואז המוצר עדיין מתסכל להשתמש בו.
עכשיו זה כבר לא ג'יבריש¶
זהו, עברתם על עשרים ושלושה ראשי תיבות שכל מפתח שומע כל יום. זה לא קסם ולא סוד שמור - זה פשוט מינוח שמצטבר עם הזמן, וברגע שהוא ברור, כל שיחה טכנית נהיית הרבה יותר נגישה. אם אתם רוצים להתחיל להשתמש במושגים האלה בעצמכם ולא רק להבין אותם, זה בדיוק הזמן להציץ בקורס התכנות הבסיסי החינמי שלנו ולהתחיל לכתוב קוד בעצמכם.
יש לכם ראשי תיבות שעדיין מבלבלים אתכם ולא היו ברשימה? תשאלו אותנו, ותקבלו תשובה בלי התנשאות.