What ever happened to the Shabak blogs?

15 בנובמבר 2008

  למי שזוכר, בתחילת שנת 2008 השב"כ העלו סט של ארבעה בלוגים של עובדים מהאגף הטכנולוגי שלהם. Service announcement in English: This is a tedious & boring blog post in Hebrew regarding something you don't care about. המטרה המוצהרת הייתה לחשוף לאזרחים מהשורה שגם עובדי שב"כ הם אנשים אמיתיים ולא דמויות מסתוריות מסרט של ג'יימס בונד. בנוסף, האג'נדה הנסתרת-גלויה הייתה לעודד גיוס כוח-אדם במשרה מלאה למערך הטנוכלוגי של השב"כ.הרעיון הוא שאם תיתן לאנשים לשאול שאלות מאנשים אחרים על הדרך שהם עברו להגיע לאיפה שהם - הם יענו וברצון. כמו כל סיפורי האהבה הגדולים, ההתחלה...
תגיות: ,
תגובה אחת

Response.redirect או Server.Transfer?

21 בספטמבר 2008

תוספת משנת 2008: זהו. העברתי את כל הפוסטים מ-JustinAngel.Net משנת 2003-2005 לבלוג הזה ששירת אותי בין השנים 2006-2008. בעתיד הקרוב JustinAngel.Net ירד מהאוויר אחרי 6 שנים של להיות הבלוג הטכני הראשון שכתוב בעברית. הפוסט המצורף זה הפוסט הטכני הראשון שאי-פעם כתבתי. לא היה לנו אז צביעת קוד, ולא תמונות בבלוגים ושום כלי מתוחכם כזה. אני חושב שזה הולם שהפוסט הראשון שאי-פעם כתבתי בעברית יהיה גם הפוסט האחרון שאי-פעם אפרסם בעברית.     לא פעם נתקלתי עם מפתחים חדשים ומנוסים כאחד שלא בטוחים במספר סוגיות בתחום היותר אפור של הפן הטכני בתכנות דוט נט. פעם בשבוע אפרסם נושא אחד...
תגובה אחת

SessionState בקובץ web.config

העשרה שבועית בנושא והפעם מאמר מקיף על האפשרויות של sessionState בתוך web.config. (נושא שנתתי הסבר מזורז עליו השבוע). (תודה לאוריאקס על הכותרת) sessionState מאפשר זיהוי ומעקב על פני מספר webforms של משתמש מסויים. דוגמאות טובות הן:  לעקוב אחרי הרשאות למערכת (למשל, Login), לעקוב אחרי שינויים במצב העבודה של המשתמש עם האפליקציה (למשל, עגלת קניות), לעקוב אחרי אופן הגלישה של משתמש באתר ומאוחר יותר לנתח את הממצאים כדי להראות הרגלי גלישה באתר. ספציפית במאמר זה נתמקד באפשרויות השונות לשימוש ב-sessionState כפי שהן באות לכדי ביטוי ב-web.config ו-machine.config:1. כבוי. אם לא משתמשים ב-sessionState, זה חסכון אדיר במשאבי מערכת שמכוונים את...
אין תגובות

TextBox.Readonly=true; האומנם?

טעות נפוצה שאני נתקל כאשר אני עובר על קוד של תוכניתנים אחרים זה בלבול בנושא תכונת ה-ReadOnly של TextBox. מאיזהשהי סיבה, תוכניתנים יוצאים מנקודת הנחה שברגע שהם כתבו ReadOnly אז המשתמש באמת לא יוכל לערוך את התוכן של תיבת הטקסט. תיכננתי ניסוי קטן שיבדוק את הנושא. ניצור דף עם הפריטים הבאים:1. תיבת טקסט - פקד TextBox. התוכנה ReadOnly תהיה True, והתכונה Text תהיה על "Original Text". 2. כפתור - כפתור פשוט שיגרום ל-PostBack.3.סקריפט ג'אווה - הסקריפט ייגש לתגית ה-<input> בצד לקוח וינסה לשנות את הערך שלה ל-"Not original Value!". הסקריפט ירוץ בטעינת הדף. 4. Label - לתוכה...
אין תגובות

Late Bound Data Expressions – הכוח שמאחורי הרעיון

שלום לכולם, נתחיל בהגדרה כוללנית, Late Bound Data Expressions מיועדים לקבלת מידע (משתנים) בתצוגת עיצוב ולפרמט אותו לתצורה נבחרת. נעשה פירוש רש“י. ב”קבלת מידע (משתנים)” אנו מתכוונים כל אובייקט המכיל מידע, הכל ממחרוזות, DataReaderים וכלה ב-DataSetים. ב”בתצוגת עיצוב” אנו מתכוונים שבזמן שתמיד ניתן לשנות את תוכן המידע כחלק מה-Code Behind, ה-Late Bound Data Expressions מאפשרים לנו לשנות את המידע בתצוגת ה-Design. ב”פרמט אותו לתצורה נבחרת” אנו אומרים למעשה שאנו נקבל את הנתונים האלו ונגדיר להם אלגוריתם שהם יעברו לפני תצוגה ללקוח. ישנם שתי שיטות בנויות בדוט נט ל-Late Bound Data Expressions: הראשונה DataBinder.Eval, והשנייה String.Format. שתיהן למעשה...
אין תגובות

קונפיגיורציה לאפליקציות בקובץ ה-web.config, מדוע וכיצד?

קדם דבר: שלום לכולם, במאמר נערוך סקירה על מגוון האפשרויות לשמירה של קונפיגיורציה לאפליקציות (Application Configuration) בתוך קובץ ה-web.config. שתי השאלות הראשונות שנשאל הן: מהי קונפיגיורציה אפלקטיבית? ומדוע לשמור ב-web.config? ישנם נתונים בכל אפליקציה שאין צורך או יכולת לשמור במסד נתונים, למשל: רשימת סוגי מוצרים ואת מחרוזת החיבור למסד הנתונים. נהוג לשמור את מרבית הנתונים מהסוג הזה בקובץ XML חיצוני שיושב באפליקציה. ניצמד לדוגמאות שהעלינו קודם: רשימת סוגי מוצרים ומחרוזת חיבור. את רשימת סוגי המוצרים במסד NorthWind, אפשר לשמור בקובץ XML בתוך האפליקציה. הרי מדובר על רשימה של מעט פריטים, שמיועדים בעיקר לקריאה, וביצוע שינויים...
תגובה אחת

תרגיל בארכיקטורה – תיאוריה בחסות האקדח והמציאות שלי

תוספת משנת 2008: אומנם הדעות שמשוקפות במאמר הזה לא הדעות שלי כיום, אבל לפני ארבע שנים בהחלט היה מדובר בדעה הרווחת. מומלץ לקרוא את המאמר הזה בחשדנות רבה, היא נכתבה ממקום של הרבה פחות ניסיון בדוט-נט (בעיקר כי לאף אחד לא היה את הניסיון הזה באותן שנים). שלום לכולם, באחד מהגיחות שלי לפורום של “מתכנתים-עם-יותר-מדי-זמן-פנוי” (או בשמו האמיתי: הנדסת תוכנה בתפוז) יצא לי להיתקל בשאלה הבאה: איך הייתם ניגשים לממש שאלה כזו מבחינת האפיון וגם תכנותית (.NET)? 1. שתי ישויות - CONTACT , CONTACT-GROUP  (לטובת EMAIL) 2. CONTACT-GROUP יכולה להכיל גם CONTACT...
אין תגובות

אורקל ודוט נט – המציאות מוזרה מכל דמיון

שלום לכולם, במאמר הזה אני אדבר על החיבור המוזר של אורקל ודוט נט, מנקודת המבט של מפתחים המשתמשים System.Data.OracleClient. קדם דבר לפני שנתחיל לדבר, ניישר קו על מה זה אורקל. אורקל הוא מסד נתונים אימתני. אורקל הוא מפלצת אימתנית של מסד נתונים שמסוגלת לעשות פחות או יותר הכל. מה זה אורקל ביחס לסיקוול סרבר(Sql server)?  פחות או יותר אותו דבר. יש הבדלים, אבל בוא נגיד שהם יותר למומחי מסדי-נתונים שזה העבודה שלהם ולא למפתחים. לעומת זאת יש הבדלים שחשובים לנו: באורקל עובדים עם PL/SQL ובסיקוול עובדים עם T-SQL, הממשק הנפוץ של סיקוול סרבר הוא ה-Enterprise Manager שהוא...
תגובה אחת

Struct ו-Class -ההבדלים והכוח הטמון בשוני ביניהם

שלום לכולם, קדם דבר בואו נדבר קצת על ההבדלים בין Struct (להלן: מבנה) ל-Class (להלן: מחלקה). למי שרק עכשיו שומע על מבנה נסביר בתמצות מהו מבנה (מהפן הפרקטי). שאנו כותבים מחלקה חדשה הקוד יראה בערך ככה: public class ClassName { // ... } אז שאנחנו עובדים עם מבנה זה יראה ככה: public struct StructName { // ... } הבדל ענק נכון? אז אתם, שנתקלים במושג הזה פעם ראשונה או שנתקלתם בו בעבר, כנראה חושבים שהוא מיותר לחלוטין. סתם עוד פדנטיות שמתכנתי הסיפיפי האלו הכניסו לנו לשפה כי הייתה להם חרדת נטישה. אז אני בא...
אין תגובות