האם DSL עוזר לתכנת ?

כמתכנת רובי, אני מוצא עצמי המון מול ספריות המשתמשות ב DSL.
במילים אחרות, הספריות יוצרות תחביר כלשהו המתבסס על העולם שהם מנסים לפתור.

כך שORM מכיל תחביר אשר מתאים להתמודדות עם מסדי נתונים (לרוב רלציונים).
מערכת לפיתוח תשתית web משתמשת בתחביר המתאים לעולם הweb, כאשר אני יוצר בדיקות, אני משתמש בשפת בדיקות וכיוב' …

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

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

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

2 מחשבות על “האם DSL עוזר לתכנת ?

  1. Ynon Perek

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

כתיבת תגובה

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

הלוגו של WordPress.com

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

תמונת Twitter

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

תמונת Facebook

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

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

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

מתחבר ל-%s