הבדל מפתח – תוכנה חינמית לעומת קוד פתוח
ההבדל העיקרי בין תוכנה חופשית לקוד פתוח הוא שלקוד פתוח יש קוד מקור גלוי, תמיכה קהילתית, בסיס תוכניות גדול שמגיע עם פוטנציאל לשיפור ואינו בבעלות אדם. תוכנה חופשית היא בדרך כלל תוכנה קטנה שאינה כרוכה בתשלום אך עשויה להיות מוגבלת על ידי רישיון ואינה ניתנת לשינוי. הבה נסתכל מקרוב על שתי התוכנות ונפענח את ההבדל ביניהן.
מהי תוכנה חינמית?
תוכנה חינמית יכולה להיות מסווגת כתוכנה קניינית שניתן להשתמש בה ללא כל עלות כספית.למרות שניתן להשתמש בתוכנה חינמית ללא כל תשלום, היא עשויה לבוא עם הגבלות. לא ניתן לשנות את התוכנה, לבצע הנדסה לאחור או להפיץ מחדש ללא רשות המחבר. דוגמאות לתוכנות מסוג זה כוללות Adobe Acrobat Reader ו-Skype.
למרות שהתוכנה עשויה להיות מוצעת ללא תשלום, היא עשויה להגיע עם הטבות נסתרות עבור בעליה. זה עשוי לעודד מכירות של גרסת פרימיום יותר של אותה תוכנה חופשית. תכונה טיפוסית של תוכנה חופשית היא חוסר הזמינות של הקוד שלה. תוכנות חינמיות ותוכנות פתוחות מוצעות גם הן ללא תשלום, וייתכן שהקוד שלה יהיה זמין. ניתן להשתמש בתוכנה מסוג זה באופן חופשי, לשנות, להפיץ מחדש. עם זאת, תהיה הגבלה אחת בלבד. כאשר התוכנה מופצת, ייתכן שיהיה צורך להשתמש בה עם התנאים לשימוש חופשי הידועים בשם copyleft.
אין לבלבל בין תוכנה חינמית לבין תוכנה חופשית. תוכנה חופשית היא צורה נפוצה של תוכנה הזמינה להורדה במערכות הפעלה.כפי שהוזכר קודם לכן עקב בעיות בזכויות יוצרים, ייתכן שהקוד לא יהיה זמין למטרות פיתוח. ניתן להפיץ תוכנה חופשית בתשלום, בניגוד לתוכנה חינמית. ניתן לצפות שהתוכנה החינמית תגיע עם יכולות מוגבלות בהשוואה לתוכנה חופשית.
מהו קוד פתוח?
קוד פתוח, באופן כללי, מכונה עיצוב שיש לו גישה ציבורית. ניתן לשנות את העיצוב הזה ולשתף אותו על ידי הציבור. המונח קוד פתוח משמש בהקשר של פיתוח תוכנה. זו הייתה גישה ספציפית ששימשה ביצירת תוכנות מחשב. כעת הקוד הפתוח הפך למפורסם נרחב בפרויקטים ומוצרים המעודדים את תפיסת ההחלפה הפתוחה וידע קשור.יש גם יתרונות כמו שיתוף פעולה בין משתתפים המעורבים בפרויקטים של קוד פתוח, אב טיפוס מהיר, פיתוח מבוסס קהילה ושקיפות.
תוכנות קוד פתוח נבנו גם הן לפי אותם מושגים של קוד פתוח. בתוכנת קוד פתוח ניתן לשנות, לבדוק ולשפר את קוד המקור של התוכנה.
ברוב התוכניות, קוד המקור הוא החלק של תוכנות המחשב שלא ניתן לראות כי הן מוסתרות. זהו הקוד שניתן לתפעל על ידי המתכנת על מנת לשנות את פונקציות התוכנה. אם למתכנת יש גישה לקוד המקור, זה יעזור בהוספת תכונות חדשות ובתיקון באגים.
בתוכנות מסוימות, קוד המקור נגיש רק לאדם או לארגון שיצרו אותו. ליוצרים תהיה שליטה בלעדית רק על תוכנות כאלה. סוג זה של תוכנה ידוע בתור תוכנה קניינית או סגורה. רק מחברי התוכנה המקורית יכולים להעתיק, לשנות או לבדוק את קוד המקור.תוכנות מסוג זה יציגו רישיון שהמשתמש יצטרך להסכים עליו כאשר התוכנה תופעל בפעם הראשונה. המשתמש בתוכנה רשאי לבצע שינויים מסוימים בתוכנה בהתאם להרשאות שניתנו על ידי המחבר. כמה דוגמאות לתוכנות כאלה הן תוכנת Microsoft Office ו-Adobe Photoshop.
תוכנת קוד פתוח שונה מאוד בהשוואה לתוכנה קניינית. קוד המקור זמין ללמידה, שינוי, העתקה ושיתוף. Libre office היא תוכנית כזו. בדומה לתוכנה קניינית, גם תוכנת קוד פתוח דורשת הסכם רישיון, אך מבחינה משפטית היא שונה באופן דרמטי.
רישיון הקוד הפתוח ישפיע על השימוש, הלימוד, השינוי וההפצה של התוכנה. ככלל, ניתן להשתמש בתוכנת קוד פתוח לכל מטרה. מתוך רישיונות הקוד הפתוח, רישיונות copyleft קובעים כי יש לפרסם את קוד המקור המקורי גם כאשר הקוד משתנה ומופץ.רישיון מסוים גם קובע שכאשר תוכנית משתנה ומשתפת, לא ניתן לגבות עמלת רישוי עבור אותה תוכנית מסוימת. יתרון אחד של תוכנת קוד פתוח הוא שהיא מאפשרת שינויים ומשלבת שינויים בפרויקטים אחרים. זה מעודד מתכנתים לשנות, להציג ולשתף קוד מקור.
מה ההבדל בין תוכנה חופשית לקוד פתוח?
מאפיינים של תוכנה חופשית וקוד פתוח:
רישיון:
Freeware: התוכנה החינמית יכולה להיות מוגבלת לשימוש אישי, אקדמי, לא מסחרי או שילוב של שימושים אלה, למרות שהיא ללא עלות. ניתן להעתיק את התוכנית באופן חופשי אך לא ניתן למכור.
קוד פתוח: בקוד פתוח, ניתן לשנות את קוד המקור ולהפיץ אותו מחדש. במהלך הפצה מחדש, ייתכן שיהיה צורך לדבוק ברישיון כלשהו. ייתכן שהמשתמש בתוכנה יצטרך להסכים לתנאים ולהגבלות במהלך התקנת התוכנית.
קוד מקור:
Freeware: ניתן להוריד, להעתיק ולהשתמש בתוכנה חינמית ללא הגבלה. קוד המקור לא יהיה גלוי לצפייה, שינוי ושיתוף.
קוד פתוח: קוד המקור של התוכנית יהיה זמין לצפייה בשינוי ולפעמים להפצה מחדש בתנאים מסוימים. ניתן לתקן באגים עקב יכולות שינוי.
תמיכה וקהילות:
Freeware: תוכנה חינמית היא בחינם אך לא ניתנת לשינוי. המחבר יכול רק לשנות ולשנות את הפונקציונליות שלו. תוכנה חינמית אינה נתמכת על ידי קהילה ואין לה תשתית פיתוח.
קוד פתוח: בדרך כלל, האפליקציה חינמית למשתמש וגם למפתחים. קוד פתוח נתמך על ידי קהילות המשתפות פעולה זו עם זו כדי לפתח אותו עוד יותר.
תלות:
תוכנה חינמית: התוכנה החינמית תלויה במחבר, בארגון או בצוות.
קוד פתוח: קוד פתוח אינו תלוי בארגון אחד.
בעלים:
Freeware: התוכנה החינמית נמצאת בבעלות המפתח.
קוד פתוח: קוד פתוח אינו בבעלות אדם, צוות או ארגון מסוים.
שינויים:
Freeware: ניתן לשנות תוכנה חינמית לגרסה בתשלום אם המפתח רוצה.
קוד פתוח: לא ניתן להפוך קוד פתוח למוצר בתשלום.
שיפור:
Freeware: ייתכן שהתוכנה החינמית לא תשופר.
קוד פתוח: לקוד פתוח יש פוטנציאל להשתפר בעזרת תמיכה בקהילה.
גודל:
Freeware: Freeware היא תוכנית קטנה מאוד
קוד פתוח: קוד פתוח הוא התוכנה החינמית הגדולה בעולם.