כותרות TheMarker >
    ';

    יישומונים - תכנות להנאה ופרנסה

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

    ארכיון

    תגובות (0)

    נא להתחבר כדי להגיב

    התחברות או הרשמה   

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

    /null/text_64k_1#

    אין רשומות לתצוגה

    להרוג את ASP

    0 תגובות   יום רביעי, 8/4/09, 21:49

    תזכורת למי ששכח, או מי שהתמזל מזלו ולא "נגע" ביצור שנקרא ASP - Active Server Pages

    ASP נולד כמו רוב פתרונות מיקרוסופט בשנות ה-90 (לשמחתינו לא עוד) - פתאום שמים לב שיש דרישה למוצר שאין להם (קצת כמו SQL Server כמה שנים לפני), נכנסים לפאניקה, קונים איזשהו מוצר בתחום ומשחררים אותו "מיקרוסופטי". עם הזמן מנסים לשפר אותו, אבל זה אף פעם לא "זה". המוצר שקנו היה בינוני במקרה הטוב, אבל בגלל שלא רוצים לפגוע בתאימות לאחור לא הופכים אותו למעולה. עד גירסא 3.0 ASP לא הגיע אפילו לדרגה של שימושי. ASP הביא איתו שני חברים - VBScript ואקסס. הראשון כי רצו שמפתחי VB יוכלו לעשות ווב, והשני כי לא היה משהו אחר. אקסס הוא מוצר מעולה בתחומו, אבל הוא לא מסד נתונים אינטרנטי אפילו בקירוב. נכון שלא היה חובה להשתמש ב-VBScript, אפשר היה לשלב כמעט כל שפת סקריפט, אבל זה באמת היה כך. אקסס נלקח כי אז לא היה MSDE/SQL Server Express והדבר "האמיתי" לא נגיש כלכלית לרבים.

    ניתן לסווג את השימוש ב-ASP לשניים - פנים-ארגוני מבוסס אובייקטי COM ואינטרנט. בפיתוח פנים-ארגוני ניתן למצוא הגיון תכנותי - הפרדת שכבות לוגיות, תצוגה עצמאית וכו'. הדגש על מילה "ניתן" כי קשה למצוא כאלו יותר מחמץ בפסח בבני-ברק. באתרים כאלו ה-ASP רק קלט נתונים מטפסים, העביר לאובייקט COM שלרוב נכתב ב-VB6 או לפעמים ב-ATL או Delphi, האובייקט הפעיל לוגיקה עסקית, החזיר תשובה וקוד ASP חולל HTML. באתרי אינטרנט זה לא קרה (אם עבדתם כך אתם ראויים למדליה). שם ASP עושה הכל - קורא ממסד נתונים, מעבד מידע, כותב למסד נתונים, מוציא HTML והכל מעורב כמו בבליל ספאגטי דביק.

    מסקירת אתרי ASP שראיתי את הקוד שלהם (חלקם מהאתרים המסחריים המובילים בארץ) הסקתי כמה מסקנות:

    • מתכנת ASP מאמין ששימוש חוזר בקוד (code re-use) משמעו Copy/Paste.
    • ניהול גירסאות הוא מתן שמות עוקבים לקבצים - index, index1, index2,...
    • טבלאות הן דבר רע, ולכן עדיף לשים הכל בטבלה אחת שחייבת להקרא table1 או לחליפין mytable.
    • השיטה המומלצת לחסימת משתמשים לא מורשים היא לשים isadmin=1 בשורת הכתובת.
    אבל ה"דבר" הוא כמובן אדישות מוחלטת לאבטחה, לא ראיתי דף שלא היה בו פתח ל-SQL Injection. אם אתם זדוניים ולא נרתעים מללכת לכלא (אם אתם מאמינים שהמשטרה מסוגלת לאתר אתכם) הקלידו "SQL injection scanner" בגוגל, כוונו לאתר ASP השנוא אליכם ומיד תקבלו שלל "המלצות". כולם מאשימים את מיקרוסופט בפרצות אבטחה ומסכים כחולים, אבל ב-95% מהמקרים זו אחריות שילוחית אם בכלל. מיקרוסופט מאפשרת הרצת קוד גרוע ותו לא.
    לצערינו זה לא דבר חדש, אבל ASP בכל זאת טכנולוגיה נפוצה. למה? כי היא חינמית וניתן ללמוד אותה בכמה שעות. בגלל שהיא כל כך קלה ונגישה כל אחד חושב שהוא מסוגל להיות "בונה אתרים". נזרוק כמה SELECTים, קצת לולאות FOR, פלאש (מועתק) על חצי עמוד וסיימנו. אף לא חושב להתחיל לנתח חולים אחרי שראה סרט על בית-חולים, אז למה בונים אתרים מסחריים (שסולקים כרטיסי אשראי) בלי מושג קלוש איך לעשות את זה? אני רועד כשאני כותב קוד שמטפל בפרטי לקוח, בודק כל שורה, מנתח כל התקפה אפשרית. רק בגלל שאתה "יודע" לתכנת, זה לא אומר שאתה צריך...

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

    • היום מפתחים מערכות חדשות ב-ASP!
    • היום יש קורסים שמלמדים ASP!
    • ממליצים ללקוחות על ASP כטכנולוגיה וותיקה ש"הוכיחה את עצמה"!
    אם אתם חושבים/רוצים להתחיל ללמוד בניית אתרים - אל תלמדו ASP, הניחו למפלצת למות. יש כל כך הרבה חלופות היום, החל מ-PHP שעליה אכתוב בהמשך, דרך Ruby, Python וכלה ב-ASP.NET, שפרט לשלוש אותיות האימה לחלוטין לא קשורה לקודמה. התקינו את Microsoft Web Platform Installer ותהנו מסביבת פיתוח מדהימה שלא עולה אפילו שקל. היא רצה על חלונות כך שזה מתאים למתחילים, יש שם את שפת הפיתוח הכי חזקה כיום - #C (כן, אני יודע שאתם לא מסכימים), והכל בהתקנה אוטומטית מלאה. אם כבר החלטתם להיכנס לתחום, עשו זאת נכון ועם נזק מינימלי לסביבה.
    דרג את התוכן:

      פרופיל

      felixg
      1. שלח הודעה
      2. אוף ליין
      3. אוף ליין

      תגיות