איך זה שהפלוס דולף ?

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

המצב מאוד בעייתי, לכן יצרו frameworks שלמים לעבוד עם השפה (למשל Boost ו Qt) אשר כיום כבר רבים מתייחסים ל Boost כאילו היה חלק מהשפה עצמה. זה לא תוספת לשפה, אלא זה ממש מקנה את היכולת לתכנת בשפה בקלות ובנוחות יותר.

אבל זה לא הכל. לוקח בממוצע, בסביבות 5-8 שנים להתמקצע בשפה עצמה ובניואנסים האמיתיים שלה. אבל יש מעט מאוד אנשים שבאמת מגיעים לזה. רוב מתכנתי ++C הם בינוניים מטה, וזה לא בגלל חוסר היכולת שלהם לתכנת, אלא בגלל הקשיים שהשפה מציבה.

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

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

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

הבעיה העיקרית של C ו ++C היא שהן גורמות בשל התחביר, וכן התפיסה שלהן לבעיות אבטחת מידע רבות בעולם המיחשוב. במידה והיו משתמשים באלטרנטיבה שאני מציג,3/4 מהבעיות האלו היו נעלמות, ולמעשה כמות הבאגים שמגיעות בגלל התפיסה והתחביר לא היו מתקיימות בכלל, מה שהיה משאיר סוגים אחרים לגמרי של באגים להתמודד איתם, אשר גם ב C וגם ++C עדיין "נדרשים לתת עליהם את הדין".

אבל כל הטריגר של הפוסט הזה, הוא בכך שלאחרונה רוב תוכנות המבוססות ++C בלינוקס שיוצא לי לעבוד איתם, או זולגות זיכרון כאילו אין מחר, או קורסות לתוך עצמן. זה כבר מרגיש כאילו סוג של פיטצ'ר שמגיע עם השפה, ולא באג. אולי זו הסיבה שחלק מתוכנות ה ++C לאחרונה לא מצליחות לרוץ אצלי. פשוט הקרנל מתלונן על buffer overflow ומיד מחסל את ריצת התוכנה.

טוב אפסיק את הפוסט לפני שיהיה לי עוד segfault

7 מחשבות על “איך זה שהפלוס דולף ?

  1. artyom

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

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

    ———————

    להמשיך😉

    תראה, עידו, בבקשה, עד שלא תלמד C++‎, ותפסיק לערבב C ו־C++‎ באותו משפט (כי אתה לא תמיד מבין את ההבדל התהומי ביניהם) אל תכתוב על C++‎ או על C.

    סתם…

    עידו, מה אתה מנסה לומר בפוסט שלך? שאתה לא אוהב C++‎? כולנו יודעים את זה, ש־C++‎ היא שפה גרועה? תצטרך להביא טיעונים "קצת יותר משכנעים

  2. nadavvin

    artyom: ראסט נראת שפה מגניבה בהתחשב בעובדה שהיא מקומפלת. יש סיבה שאתה לא משתמש בה או יש לה חסרונות מיוחדים שבגללם אתה לא משתמש בה?

    1. ארתיום

      תראה…

      בואו ניצור עוד שפה חדשה ומגניבה תעשה לנו הכל… אבל השפה באמת לא עד כדי כך משנה (טוב לא בדיוק). כתבתי על זה בעבר:

      http://artyom.cppcms.com/post/300

      כמה ש־Rust לא תהיה מגניבה, עד שיהיה לה אוסף ספריות מסודר היא חסרת תועלת. זאת הסיבה אגב, שאני די מתלהב מ־Vala.

      בנוסף, אני לא הייתי שם את הכסף של על השפה שבקושי הומצאה לפני שנתיים.

כתיבת תגובה

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

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת / לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת / לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת / לשנות )

תמונת גוגל פלוס

אתה מגיב באמצעות חשבון Google+ שלך. לצאת מהמערכת / לשנות )

מתחבר ל-%s