דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
yyyY

yyy

@yyy
אודות
פוסטים
168
נושאים
46
קבוצות
0
עוקבים
0
עוקב אחרי
0

פוסטים

פוסטים אחרונים הגבוה ביותר שנוי במחלוקת

  • בינה מלאכותית GPT 3.5 לעומת 4 - יתרון בתכנות.
    yyyY yyy

    האם מישהו ניסה את גרסה 4 הלא חינמית של GPT בתחום התכנות? האם יש לה יתרון ניכר?


  • טקסט תהילים חינמי - חופשי
    yyyY yyy

    מחפש קובץ או DB של טקסט התהילים חינמי חופשי, ושיהיה מה שפחות צריך להתקשקש אם זכויות יוצרים וכדו'.
    מצאתי את זה
    אבל אני רוצה קובץ גדול או DB כאמור.
    תודה רבה


  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    עכשיו ברשותכם שאלות:
    א.
    הפונקציה בסרוויס

    getBooks() {
      return this.Books = this.Books || this.httpClient.get<Book[]>(this.GetBooksURL).toPromise();
    } 
    

    מחזירה פרומיס
    אבל הפונקציה בקומפוננטה

    async ngOnInit() {
      this.books= await this.BookSvc.getBooks();
    

    מקבלת []Book ,
    השאלה היא האם הסיבה שמתבצעת ההמרה האוטומטית הזו, למרות שמדובר ב-TS, זה בגלל שיש async/await הוא מבין שהוא צריך לחלץ את הערך מהפרומיס?

    ב. אני מנסה לחבר את פרומיס זה לרעיון הכללי של פרומיס. אני ידעתי שהמצב של הפרומיס מוגדר ע"י הרצת resolve/reject, ואז פונים לthen או catch וכדו'. השאלה היא מי מריץ כאן מאחור את כל הפונקציות האלו הרי בקוד אני לא נוגע כאן ב-resolve then ודומיהם?


  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    @יוסף-בן-שמעון
    הטעות שלי היית שחשבתי שהתכוונת
    לזה

    return (this.Books = this.Books )|| this.httpClient.get<Book[]>(this.GetBooksURL).toPromise();
    

    ולא הבנתי מה ההצבה המוזרה באופרנד הראשון
    בשעה שהתכוונת באמת לזה:

    return this.Books = (this.Books || this.httpClient.get<Book[]>(this.GetBooksURL).toPromise());
    

  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    אגב ה-toPromise בהקשר זה הוא depricated


  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    @יוסף-בן-שמעון כתב בפניה אסינכרונית והמסתעף Angular TS:

    כשאתה מבצע השמה למשתנה books אתה קודם כל בודק אם הוא כבר מאותחל,

    זה נכון לגבי כל השמה, או שזה משהו ספציפי לפקודת return?

    במידה והוא כבר אותחל אתה לא משנה בו כלום אלא מצביע עליו בחזרה,

    למה פקודה כזו

    return this.books || this.httpClient.get<Books []>(this.Getbooks URL).toPromise();
    

    לא מבצעת אותו דבר, הרי אם האובייקט אינו מאותחל זה יחזיר undefind כלומר false, וילך לפרומיס לאתחל את האובייקט, ואם זה כן מאותחל כלומר true שיחזיר אותו עצמו ולא יפנה לפרומייס?
    בדקתי ואכן בסינטקס שלי הוא כן פונה כל פעם מחדש ואני רק שואל למה זה קורה.


  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    @יוסף-בן-שמעון כתב בפניה אסינכרונית והמסתעף Angular TS:

    books: Promise<Book[]>;
    books: Promise<Book[]> = [];

    לא כך ולא כך, אלא כך:

    books:Books[] = [];
    


    זה:

    books: Promise<Books[]>;
    

    מחזיר את השגיאה הזו
    'books' has no initializer and is not definitely assigned in the constructor.
    ואז אני מוסיף סימן ? ומקבל שגיאה ב-return

    Type 'Promise<book[] | undefined>' is not assignable to type 'Promise<book[]>'.
      Type book[] | undefined' is not assignable to type book[]'.
        Type 'undefined' is not assignable to type book[]'.ts(2322)
    

    וזה:

    books: Promise<Book[]> = [];
    

    מחזיר שגיאה:

    Type 'never[]' is missing the following properties from type 'Promise<Book[]>': then, catch, finally, [Symbol.toStringTag]
    

  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    @יוסף-בן-שמעון
    עשיתי כדבריך:
    זה הסרוויס

    constructor(private httpClient: HttpClient) {
      this.getBooks();
    }
    getBooks() {
      return this.Books = this.Books || this.httpClient.get<Book[]>(this.GetBooksURL).toPromise();
    }
    

    זה הקומפוננטה

    constructor(
       private BookSvc: BookSevice
     ) {
     }
     async ngOnInit() {
       this.books= await this.BookSvc.getBooks();  
     }
    

    העניין שכעת לא מתבצעת בכלל פניה לשרת.

    האמת (אני מניח שזה קשור לזה) שגם כך אשמח להכיר את הסינטקס של ה-return הנ"ל בשני דברים:
    א. סימן ה"||" פירושו OR?
    ב. מה המשמעות של קטע הקוד הזה
    this.books = this.books
    ?
    תודה רבה.


  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    @WEB כתב בפניה אסינכרונית והמסתעף Angular TS:

    לא חייבים להפוך לפרומיס, observable הוא מצוין ויכול לעשות הרבה דברים שpromise לא יודע לעשות.

    אני משתמש ב-observable כדי לקבל מהשרת, אבל אני לא יודע להשתמש בו שרק כאשר יתאכלסו הנתונים מהשרת אל תוך הסרוויס, אז ישלף המידע.

    כמו"כ למה לקרוא לhttp מתוך הconstructor של הservice? מקובל ליצור פונקציה בתוך הservice שהיא מחזירה את הobsevable של הקריאה. הconstructor משמש להזרקה של services אחרים לתוכו.

    כי חשבתי שיהיה הגיוני פעם אחת לשלוף את המידע ולא כל פעם לבדוק האם המידע קיים או לא.


  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    @יוסף-בן-שמעון כתב בפניה אסינכרונית והמסתעף Angular TS:

    this.books = await BooksSvc.GetBooks();
    

    הכנסתי את השורה הזו ל-CTOR וקיבלתי שגיאה
    'await' expressions are only allowed within async functions and at the top levels of modules
    הכנסתי את הנ"ל לפונקציה נוספת בתוך showBooks

    async getBooks() {
     await  this.booksSvc.getBooks()
     }
    

    והשארתי את הקריאה מקונסטרקטור כך:

    this.books=  this.getBooks()
    

    כתוצאה מכך אני מקבל שגיאה

    Type 'Promise<void>' is missing the following properties from type 'Book[]': length, pop, push, concat, and 29 more.
    

    בקיצור לא הולך...


  • פניה אסינכרונית והמסתעף Angular TS
    yyyY yyy

    יש לי http//GetBooks - API שמחזיר מערך של אובייקטיםמסוג Book המייצגים ספרים.
    אני רוצה להציג את רשימת הספרים בקומפוננטה ShowBooks. בקומפוננטה זו יש חיווי חזותי האם קראתי את הספר או לא התלוי במשתנה hasReaded הנמצא בתוך Book.
    כל ספר אפשר לקרוא ולצורך כך יש קומפוננטה נפרדת BookReader.
    בסיום הקריאה אני מסמן "קראתי" והחיווי אמור להתעדכן אוטומטי כשאחזור ל-showBooks.

    המימוש מתבצע כך: בקונסטרקטור של ShowBooks נטען סרויס BooksSvc, אשר בקונסטרקטור שלו (של BooksSvc) מתבצעת פנייה אוטומטית לשרת ואת המערך שהיא מקבלת היא מציבה למערך בתוך הסרויס .
    כעת בהמשך הקונסטרקטור של showBooks פשוט מקבלים מהסרויס את רשימת הספרים העדכנית.
    showBooks

    this.books = BooksSvc.GetBooks();
    

    BookSvc

    GetBooksURL: string = "http:GetBooks";
       books: Book[] = [];
       constructor(private httpClient: HttpClient) {
         this.firstGetBooks().subscribe(b => {
          this.books =b;
         })
       }
       firstGetBooks(): Observable<Book[]> {
         return this.httpClient.get<Book[]>(this.GetBooksURL)
       }
       Getbooks() {
        return this.books
       }
    

    הבעיה היא שכשהקומפוננטה showBooks מבקשת את המערך מהסרוויס עדין לא תמיד המידע הגיע. הצלחתי לפתור את זה עם setTimeOut אבל זה פתרון גרוע לדעתי כי אתה לא יודע כמה זמן יקח למידע להגיע וזה או בזבוז זמן או שתיפול על פחות מידי זמן.
    איך אפשר לפתור את זה?


  • קליטת תו מהקונסול - #C
    yyyY yyy

    @yossiz
    אכן מה שהביא אותי להרהר בדבר הוא תחום מערכות ההפעלה, בו למיטב זכרוני למדתי שתחום התצוגה מתוחזק בדר"כ ע"י מערכת ההפעלה ולא ע"י האפלקציה.

    לסיכום התשובות ע"פ הקישור שהביא @Aharon-0
    יש 2 שיטות:

    האחת הסטנדרטית יותר היא יצירת מחלקה (בדומה אולי ל -pipe בלינוקס) שפשוט משמשת "איש באמצע" ומתעדת את כל הפניות לקונסול. (גישה זו פחות "מעניינת" בעיני כי היא בדיוק כמו יצירת מטריצת משתנים המייצגים לוח.)

    השניה היא גישה ל-Buffer (דרך די מורכבת אם רוצים להתחיל מ-0)

    כך או כך אין דרך מובנית לעשות זאת.


  • קליטת תו מהקונסול - #C
    yyyY yyy

    @dovid כתב בקליטת תו מהקונסול - #C:

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

    אני פשוט טוען שנושא ה-X שלי הוא רצון להכיר טוב יותר את המערכת, ולכן הבעיה שהצגתי היא ה-X עצמו ולא Y.


  • קליטת תו מהקונסול - #C
    yyyY yyy

    @dovid כתב בקליטת תו מהקונסול - #C:

    בכל מקרה השאלה פה צועקת את XY Problem.

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


  • קליטת תו מהקונסול - #C
    yyyY yyy

    @dovid כתב בקליטת תו מהקונסול - #C:

    אני חושד שאתה גם בבעיית הXY, אני מייעץ שתספר למה אתה צריך דבר כזה.

    אני מיישם לוח משחק ומנסה לחסוך מטריצת משתנים.


  • קליטת תו מהקונסול - #C
    yyyY yyy

    יש לי קונסול שהדפסתי בו ABC, כעת אני רוצה "לקחת" מההדפס (הקונסול השחור) את ה-B ולהכניס אותו לתוך משתנה. האם אפשר, ואיך אני עושה את זה?
    במילים אחרות אני רוצה שה-Input יגיע מהמסך ולא ממשתנה או מהמשתמש.
    תודה רבה.


  • מחפש מצלמה ביתית - תקציב 3000 ש"ח
    yyyY yyy

    @יעקב2 כתב במחפש מצלמה ביתית - תקציב 3000 ש"ח:

    ברצינות ? מה נשאר מייצב אופטי וזום

    שאת אלו יש גם במרק 3 וגם ב-2?


  • מחפש מצלמה ביתית - תקציב 3000 ש"ח
    yyyY yyy

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


  • מחפש מצלמה ביתית - תקציב 3000 ש"ח
    yyyY yyy

    @nigun
    לא נראה לי. אני שולח את זה למישהו בארה"ב. כמובן שלכן צריך לשלם מיסים בסדר גודל של 40$, אבל זה עדיין יוצא יותר זול בכ-300 ש"ח מהמקום הכי זול שמצאתי בארץ לעת עתה. אם זה כל ההפרש, יכול להיות שעדיף כבר בארץ כי אתה מקבל אחריות ל-3 שנים.


  • מחפש מצלמה ביתית - תקציב 3000 ש"ח
    yyyY yyy

    האם ייתכן למצוא יותר זול מהיצרן עצמו?
    https://www.usa.canon.com/shop/p/powershot-g7-x-mark-ii?color=Black&type=New

  • 1 / 1
  • התחברות

  • אין לך חשבון עדיין? הרשמה

  • התחברו או הירשמו כדי לחפש.
  • פוסט ראשון
    פוסט אחרון
0
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום