CodeGym /בלוג Java /Random-HE /תוכנת קוד פתוח. מה זה והאם שווה לנסות?
John Squirrels
רָמָה
San Francisco

תוכנת קוד פתוח. מה זה והאם שווה לנסות?

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

מתי הכל התחיל?

אם אתה חושב שקוד פתוח הוא תנועה חדשה יחסית, תופתע. השורשים חוזרים לשנות ה-50 וה-60, כאשר חוקרים החלו לפתח פרוטוקולי אינטרנט ורשתות טלקומוניקציה. טכנולוגיות אלו התבססו על מחקר פתוח ושיתופי, ועיקרון זה הפך מאוחר יותר לבסיס האינטרנט. באשר לתוכנת הקוד הפתוח כפי שאנו מכירים אותה כיום, מקורה ב-1983 כאשר ריצ'רד סטולמן, מתכנת ב-MIT, הפך את קוד המקור לזמין באופן חופשי. הוא האמין שזה צריך להיות נגיש למתכנתים בכל רחבי העולם כדי שיוכלו לשנות ולקדם אותו כרצונם. גישתו תפסה אחיזה והובילה בהדרגה להקמת יוזמת הקוד הפתוח ב-1998.

תוכנת קוד פתוח לעומת סוגים אחרים של תוכנות

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

לִשְׁלוֹט

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

עֲלוּת

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

בִּטָחוֹן

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

לְעַצֵב

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

אַחֲרָיוּת

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

OSS הפופולרי ביותר

  • Mozilla Firefox
  • שרת אינטרנט של אפאצ'י
  • GNU/Linux
  • נגן מדיה VLC
  • SugarCRM
  • VNC
  • GIMP
  • LibreOffice
  • jQuery

איך OSS עובד?

למעשה, רק בכל פעם שאתה צופה בדפי אינטרנט, בודק דוא"ל, מזרים מוזיקה, צופה בסרטון, משחק במשחקי וידאו או צ'אט עם חברים, המחשב האישי, קונסולת המשחקים או המכשיר הנייד שלך מתחבר לרשת גלובלית באמצעות תוכנת קוד פתוח כדי לשדר את הנתונים למכשירים ה"מקומיים". מי עושה את כל זה? המחשבים ה"מרוחקים" שבדרך כלל ממוקמים במקומות רחוקים (המשתמשים אינם רואים אותם ואין להם גישה פיזית אליהם). כלומר, אנשים מסתמכים על מחשבים מרוחקים בביצוע משימות יומיומיות. יש המכנים תהליך זה "מחשוב ענן" מכיוון שהוא כולל פעילויות שונות (אחסון קבצים, שיתוף תמונות, האזנה לרצועות אודיו או צפייה בסרטונים) המשלבות מחשבים מקומיים ורשת עולמית של מחשבים מרוחקים. חלק מאפליקציות הענן, כמו Google Cloud, הן קנייניות. בעוד שאחרים כמו OpenStack או Nextcloud הם קוד פתוח.

היתרונות העיקריים של שימוש ב-OSS

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

מדוע אפילו חברות גדולות משתמשות לעתים קרובות בפתרונות תוכנה בקוד פתוח

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

כיצד להפוך לחלק מתוכנת קוד פתוח

רוצים להיות חלק מהסיפור המרתק הזה? לאחר מכן, תוכל להצטרף בקלות לפרויקט קוד פתוח. כל הכישורים יתקבלו בברכה. לשם כך, אתה יכול להירשם לרשימת התפוצה באתרים הרשמיים או בדפי GitHub (תוכל להגיע לפרויקטים החמים ביותר על ידי לחיצה על הקישור "טרנדים"). מה שמעניין, חדשים לגמרי או אפילו לא מתכנתים יכול להיות מאוד מועיל גם עבור פרויקטי OSS. על ידי כתיבה, עדכון, תרגום תיעוד או סתם מענה לשאלות והדרכת מצטרפים חדשים, כבר תתרום תרומה גדולה. באשר למתחילים ב-Java, הם יכולים לחלק פרויקטים, לבצע שינויים בקוד ולשלוח בקשות משיכה בעת הצורך. סיוע ואבטחה איכותיים תמיד מוערכים!

סיכום

כפי שאתה רואה, פרויקטי תוכנה בקוד פתוח עשויים להביא יתרונות רבים הן למשתתפים והן למשתמשים. לא רק כל ניסיון ב-OSS יהיה נהדר עבור קורות החיים שלך, אלא גם תוכל לחדד מיומנויות על ידי שיתוף פעולה עם אנשים בעלי דעות דומות. ממש win-win!
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION