תוכנות שכתבתי

חוץ ממה שאני כותב בעבודה, אני גם כותב כמה תוכנות שמעניינות אותי באופן אישי, או משתתף בכתיבתן.

MozillaTranslator

MozillaTranslator הוא כלי שכתוב בג'אווה/Swing, ומיועד למכן את התרגום של תוכנות מוזילה, ותוכנות אחרות מבוססות XUL. כשעוד תירגמתי את Mozilla Suite ואחריו SeaMonkey, שיפרתי קצת את הכלי הזה על ידי שיפור ממשק המשתמש לעריכת תמונות הנכללות בתרגום, והגדלת מיחזור הקוד בתוכנה, במקום שיכפולו בכמה מקומות. הכלי נכתב במקור על ידי מתרגם אחר של מוזילה, הנריק לינגאארד.

mozip.NET

mozip היה כלי שורת פקודה שנכתב בשפת C, שנועד לאפשר יצירת קבצי התקנה של Mozilla עם תרגום מוכן, כך שהמשתמש לא יצטרך להוריד את הגרסה האנגלית של התוכנה ואז להתקין עליה חבילת שפה כדי להוסיף את התרגום לעברית. בעזרת פונקציות של ה-API של Windows NT, התוכנה איפשרה להוציא מקובץ ההתקנה את הקבצים של התרגום האנגלי, ולהוסיף את הקבצים של התרגום העברי, וכן לעדכן את קובץ הקונפיגורציה של תוכנית ההתקנה, כדי להורות לה להשתמש בקבצים החדשים. מכיוון שאני לא אוהב כלי שורת פקודה, כתבתי כלי מקביל ב-C#, ששיחזר את הפונקציונליות של mozip, בממשק משתמש חלונאי נוח הדומה לממשק של תוכנות דחיסת קבצים. לכלי קראתי mozip.NET.

Bugzilla

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

לבאגזילה יש Web Service בשיטת XML-RPC, המאפשר לעשות את הפעולות הנפוצות על באגים, אם כי הוא לא מכסה את כל הפונקציונליות הזמינה בממשק ה-web הרגיל. אחד הדברים שהיה חסר בו הוא אפשרות להוסיף הערה לדוח באג, אחת הפעולות הנפוצות ביותר בעבודה עם המערכת. פונקציה כזאת גם היתה מאפשרת אינטגרציה עם מערכות אחרות, כמו מערכות ניהול גרסאות – זה מאפשר להוסיף הערה לבאג כאשר נעשה בקוד שינוי הקשור לבאג. לכן לקחתי קוד שמישהו התחיל לעשות כדי להוסיף את הפונקציה הזאת, והשלמתי אותו עד שהפונקציה הושלמה, וכיום ניתן להוסיף הערות לבאגים באמצעות XML-RPC.

LibYMail

ל-Yahoo! Mail יש Web Service מפורט מאוד, בתקן SOAP או JSON-RPC לבחירתך, המאפשר גישה אל כל היכולות של השירות הזה. כמובן, הם לא מאפשרים לעקוף בעזרתו את ההגבלות על חשבונות החינם, ולכן פעולות שניתן לעשות רק בחשבון בתשלום (כמו גישה ב-POP3) זמינות רק למשתמשים בתשלום. עם זאת, זו רשימה ארוכה של פונקציות, שכדי להשתמש בה צריך לנהל מעקב מתיש אחר מספרי זיהוי של תיקיות, של הודעות ושל קבצים מצורפים, והיא אינה אינטואיטיבית למתכנתים המורגלים בתכנות מוכוון אובייקטים.

לכן כתבתי ספריה ב-NET., המכמיסה את הפונקציות לתוך מחלקות – מחלקת חשבון, מחלקת תיקייה, מחלקת הודעה, ומחלקות אחרות השולטות בהעדפות המשתמש. בנוסף, השתמשתי במבנים מוכרים בעולם ה-NET., כמו מחלקות אוספים, properties, וכדומה, כך שהגישה אל ה-Web Service הרבה יותר אינטואיטיבית. ניתן להשתמש בספריה בכל יישום ASP.NET. הספריה אינה מונעת ממך מלהשתמש בה גם ביישום שולחני, אך שיטת הזיהוי של המשתמש מצד Yahoo די מונעת את זה, אלא אם אתה רוצה לבצע ניתוח של קוד ה-HTML בדף ההתחברות שלהם.

התגובות סגורות.