חוק ההפשטות הדולפת ב-Angular

Angular מסתירה מורכבות. היא מספקת לך כלים כמו ה-Router, ה-HttpClient וה-Signals. הכלים הללו מאפשרים לך לבנות אפליקציות מבלי לדאוג לגבי המנגנונים הפנימיים של הדפדפן.

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

הסתכלו על ה-HttpClient של Angular. הוא הופך את שליחת הבקשות לפשוטה. ואז אתם נתקלים בשגיאת CORS או ב-timeout. פתאום, אתם חייבים להבין HTTP ותקשורת רשת. ההפשטה דלפה.

הסתכלו על RxJS. הוא מנהל זרמי נתונים. אתם משתמשים באופרטורים כדי לטפל בפעולות משתמש. אם אינכם יכולים להסביר מדוע switchMap עובד אחרת מ-mergeMap, עליכם ללמוד את ה-JavaScript event loop. RxJS אינו מחליף את הידע הזה.

כלי AI הם שכבת ההפשטה החדשה ביותר. אתם משתמשים ב-AI כדי לכתוב components, בדיקות או פיצ'רים. זה הופך אתכם למהירים.

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

למעשה, ההסתמכות על AI הופכת את היסודות לחשובים יותר. עליכם להעריך את איכות הקוד שה-AI מספק לכם.

Frameworks הופכים אתכם לפרודוקטיביים. AI הופך אתכם למהירים. אף אחד מהם לא הופך את JavaScript, ה-DOM או תקשורת רשת לאופציונליים. הם רק מקלים על השכחה של היסודות הללו עד שמשהו נשבר.

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

Source: https://dev.to/duskoperic/the-law-of-leaky-abstractions-in-the-angular-ecosystem-59da

Optional learning community: https://t.me/GyaanSetuAi