Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Client

המערכת נכתבה בשפת c#, ASP.NET בסביבת visual studio 2022, כאשר צד ה-server פותח בטכנולוגיות webAPI בשיטות המתקדמות ביותר ש- ASP.NET מציעה. וצד ה- client פותח ב-React העושה שימוש בטכנולוגיות חדשות ומתקדמות וכן בספרית mui.

כ"כ בפרויקט זה השתמשנו במודל החלוקה ל 4 שכבות הפיתוח:

  1. Client- React
  2. webAPI service
  3. BL
  4. DAL

את המערכת חילקנו למספר חלקים עיקריים:

  1. React- בשכבה זו קיימים כל המסכים של הפרויקט
  2. webAPI- בשכבה זו מנוהלת קריאות ה-GET וה-POST מה Server ואליו.
  3. BL- המרת נתונים ממודל של Client למודל של Entity Framework.
  4. DAL- פניה ישירה למסד הנתונים.

4.2 טכנולוגיות מתקדמות: Web API – ממשק תכנות יישומים לשרתי אינטרנט / דפדפני אינטרנט. מטרתו לתווך בין צד לקוח לצד שרת על מנת לבצע את הפונקציונליות הנדרשת לצד לקוח, עיקר תפקודו הוא מקבל נתונים מצד הלקוח והעברתם לשרת, ולהפך. Entity framework – טכנולוגית עבודה מתקדמת מול DB יצירת אובייקטים ומיפוי מול טכנולוגית עבודה מתקדמת של מיקרוסופט, הEntity framework מאפשר לטעון את הנתונים מהDB ולעשות להם השמה בצורה ישירה ואוטומטית לתוך אובייקטים בקוד הממפים את מאגר הנתונים בצורה מידית, השימוש בEntity framework נעשה באמצעות הגדרת הקובץ ModelDB קובץ זה מחולל classes לעבודה מול Data Base, כך שנוצרת ישות לכל טבלה. הישות הנוצרת מכילה אתחולים, מאפינים וקשרים עבור טבלה ספציפית וכן שדות חדשים עבור קשרים. הודות ליישויות הללו שנוצרו ע"י הקובץ Model ניתן להגדיר מופע מסוג הטבלה. React – טכנולוגיה מתקדמת המאפשרת פיתוח מלא מקצה לקצה בצד הלקוח כלומר ריאקט אספה התנהגויות שונות שעד היום נכתבו בצד השרת ואפשרה אותם בצד הלקוח, בפרויקט שלנו ריאקט נכתבה בjava script. Mui – חבילת component מעוצבת.

4.3 עקרונות התכנות:

  • מבחינה מקצועית – בחירת שפות וטכנולוגיות שתתאמנה לצרכי האפליקציה, התמקדנו בחיפוש שפות וטכנולוגיות המתקדמות ביותר התומכות בoop ומאפשרות מודולריות ופונקציונליות גבוהה.
  • בנינו את הפרויקט בצורה מודולרית ביותר ע"י חלוקה – מבחינת מבנה הקוד לשכבות (GUI,BL,DL) בכדי להפוך את הקוד לנהיר ודינאמי כך שניתן יהיה להבין את הקוד בקלות, לנהלו לתחזקו ולהוסיף על הפרויקט במידת הצורך.
  • מסכי המערכת נכתבו בצורה פשטנית וברורה ביותר לעין, כך שקלים מאד לשימוש, ונותנים חווית משתמש.
  • הגישה לגבי אפליקציית web היא כמה שיותר כתיבה בצד הclient, מכיוון שכל פניה לשרת מכבידה על המערכת וגורמת להאטת התהליכים במערכת, בעקבות כך השתדלנו שרוב הנתונים שלא צריכים לעבור עיבוד בשרת ימומשו בצד הclient. וע"כ השתמשנו בספריית react כדי לחסוך פניות לשרת.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages