פיתוח תוכנה: סקירה היסטורית עד ימינו
פיתוח תוכנה (SD) אופיין באופן ייחודי מראשיתו ועד ימינו. מראשיתו, עולם פיתוח התוכנה חולק לשניים: פיתוח תוכנה חופשית וקוד פתוח ופיתוח תוכנה קנייני וקוד סגור.
וכל זה, בתורו, הצית מרוץ בכל עולם של מערכת הפעלה (DS) לייצר סוגים דומים של תוכנה, מה שהוביל בסופו של דבר לסוגים מגוונים של יישומים. לפיכך, DS הולידה את תוכנת המערכת (SS) הראשונה ועדיין קיימת, לאחר מכן את תוכנת התכנות (SP), ולבסוף את תוכנת היישומים (AS). ויישומים אלה, בתורם, נעו בין יישומים מקוריים מסורתיים - כלומר, ניתנים להתקנה וספציפיים לכל מערכת הפעלה (OS) - לבין יישומים מבוזרים חדשניים הפועלים דרך האינטרנט על גבי בלוקצ'יין.

תוכנה
כמעט באותו הזמן בו נולדו ה-SS, שהיו בעצם מערכת ההפעלה עצמה , וכללו מנהלי התקנים, כלי עזר למערכת וכל הכלים המשמשים לשליטה ספציפית במאפייני המחשב, כלומר, כל התוכנות שאפשרו את ניהול רכיבי החומרה (HW), כגון: זיכרון, דיסקים, יציאות, התקנים וציוד היקפי, נולדו גם ה-SP וה-SA.
חבילות תוכנה (SPs) כללו מוצרי תוכנה המשמשים מתכנתים לפיתוח תוכנות מחשב אחרות באמצעות שפות תכנות ו/או מסדי נתונים שונים. SPs כוללים בדרך כלל עורכי טקסט, מהדרים, מפרשים, מקשרים וניפוי באגים. הם כוללים גם סביבות פיתוח משולבות (IDEs), שהן חבילות תוכנה המאגדות את כל הכלים הדרושים, שהוזכרו לעיל, לסביבה אחת (בדרך כלל ממשק משתמש גרפי, או GUI) כדי לכסות את מחזור חיי פיתוח התוכנית המלא.
וקטגוריית SA כוללת את התוכנה בה משתמשים (משתמשי קצה) לביצוע משימה. SA כוללת בדרך כלל חבילות משרדיות, תוכנות עיצוב גרפי או מולטימדיה, תוכנות חשבונאיות או ניהוליות, כדי לציין רק חלק קטן מכל קטגוריות היישומים שאנו יכולים למצוא בקטגוריה זו. לכן, SA, או פשוט יישום, הוא בערך
כל תוכנית המאפשרת למשתמש קצה לבצע משימות שונות במחשב, מחשב נייד, טאבלט, טלפון נייד או סוגים אחרים של ציוד או פלטפורמות טכנולוגיות.

יישומים
יישומים (Apps) בימי המחשוב הראשונים התאפיינו בדרישה החיונית להתקנה לשימוש, ורק בתוך מערכת הפעלה אחת, ספציפית ומקורית. עם זאת, עם הזמן והתקדמות מדעי המחשב והטכנולוגיה, אפליקציות התפתחו, וצברו תכונות כגון ניידות, תאימות חוצת פלטפורמות, מודולריות ומדרגיות. לפיכך, כיום יש לנו סוגים רבים של אפליקציות, החל מאפליקציות מקוריות מסורתיות ועד אפליקציות מבוזרות חדשניות.
ייזום
יישומים מקוריים, אלו שפותחו במיוחד עבור מערכת הפעלה מסוימת, בדרך כלל באמצעות ערכת פיתוח תוכנה (SDK), היו הראשונים שנוצרו. המאפיין המרכזי של יישומים אלה הוא האינטגרציה המלאה שלהם עם הפונקציונליות והתכונות של המכשיר או הפלטפורמה, וכתוצאה מכך חוויית משתמש טובה יותר. לכן, הם נוטים להיראות ולבצע ביצועים טובים יותר בסביבה המקורית שלהם, כמו גם לפעול בצורה חלקה ואמינה יותר. עם זאת, לעתים קרובות יש להם עלות פיתוח גבוהה יותר אם נדרשת אפליקציה חדשה עבור כל גרסה של מערכת ההפעלה המקורית.
עם התקדמות הטכנולוגיה, צצו גם יישומי אינטרנט, הידועים גם בשם WebApps . אלו יישומים הפועלים מוטמעים בתוך דף אינטרנט או אתר אינטרנט דרך דפדפן אינטרנט. לכן, הם יכולים לפעול כמעט בכל דפדפן אינטרנט ובכל סוג של מחשב, מכשיר או פלטפורמה. כמעט כל מה שניתן לעשות בפורמט האינטרנט שלהם ניתן לעשות בפורמט היישום המקורי הניתן להתקנה.
יישומים היברידיים צמחו משילוב של שתי הגישות הקודמות. אלו הן אפליקציות שפותחו באמצעות שפות אופייניות ל-WebApps, המאפשרות את השימוש בהן בפלטפורמות שונות , אך עם היכולת של אפליקציות Native לגשת לחלק גדול מתכונות החומרה של המחשב, המכשיר או הפלטפורמה שבהן הן פועלות. במילים אחרות, הן מנצלות באופן מלא את הרבגוניות של פיתוח אתרים ואת יכולת ההסתגלות החומרתית של אפליקציות Native.
להציג
כיום, מפותחות אפליקציות אינטרנט מתקדמות (PWAs). אלו הן למעשה דפי אינטרנט המשתמשים ב-Service Workers ובטכנולוגיות אחרות, ומתנהגים יותר כמו אפליקציות Native ופחות כמו Web Apps. בעוד ש-Service Workers וטכנולוגיות אחרות פועלות ברקע, האפליקציה עצמה פועלת בתוך דפדפן האינטרנט.
לבסוף, אפליקציות קיימות עוברות לפורמט של יישומים מבוזרים, הידועים גם בשם יישומים מבוזרים (DApps). אלו הן אפליקציות מבוזרות המשתמשות בפלטפורמת בלוקצ'יין כדי לאפשר למשתמשים לקיים אינטראקציה ישירה ולבצע עסקאות (הסכמים) ללא תיווך של ישות מרכזית המנהלת את השירות. כתוצאה מכך, ב-DApp, כל משתמש הוא צומת ברשת מבוזרת שבה כל הצמתים פועלים יחד כנוטריון גלובלי של כל עסקה שבוצעה בפלטפורמה.
מסקנה
עולם פיתוח התוכנה, השוכן בלב המדע והטכנולוגיה, מתפתח ומתקדם ללא הרף. וכך, מתוך תוכנה הניתנת להתקנה (אפליקציות מקוריות), צצו צורות רבות אחרות של יישומים (אינטרנט, היברידי, פרוגרסיבי, מבוזר).
צורות שבוודאי יפנו בקרוב את מקומן לצורות חדשות וחדשניות של אפליקציות, אשר יושפעו משימוש בטכנולוגיות עכשוויות ומשתנות , כגון ביג דאטה, למידה עמוקה, בינה מלאכותית וטכנולוגיות שעדיין משתנות כמו מחשוב ענן ובלוקצ'יין.