ארכיון יומי: 29 יולי, 2008

לשטוף את הסבון

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

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

אחת התכונות העיקריות של .net היא השימוש בטכנולוגיית SOAP גם כאשר ממש לא צריך. למי שאינו יודע, השם הלא מתאים של SOAP אומר Simple Access Object Protocol. הטכנולוגיה כל כך פשוטה, עד שהיא דורשת מבנה מיוחד של ראשי HTTP, מעטפות, קבצי סכמות/הוראות (קובץ wsdl) וכו' בשביל לשלוח נתונים באמצעות פורמט XML בסופו של דבר.

יש אמנם שימושים לSOAP, מעטים אבל הם קיימים (למשל RPC מסובך יתר על המידה שבו צריך להעביר מידע על אובייקטים). הבעיה היא שבעולם ה .net גם כאשר אין צורך בכלל להשתמש ב XML, שלא לדבר שלא צריך להשתמש ב SOAP, עדין יותר פשוט בכלים שמיקרוסופט מספקת להשתמש בSOAP, מאשר משהו חליפי כדוגמת פעולת HTTP GET פשוטה בה מקבלים תשובה ממש פשוטה (בדיוק המקרה שקיים אצלי כרגע), XML-RPC ועוד טכנולוגיות רבות טובות ופשוטות יותר.

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

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