מדריך שאני כעת כותב, ובדיקת דרישה
-
חברה, מחיאות כפיים בבקשה.
אני כותב מדריך על תהליכים בC# (הנה הלינק http://tchumim.com/topic/667 למי שלא דורך בפורום מדריכים ולא נכנס לפורום דרך הקישור החביב הצג נושאים פעילים).
נו ומה אני רוצה? טוב אז דבר ראשון צומי :roll: .
דבר שני לדעת האם יש לאנשים הערות/רעיונות על דרך כתיבתי ועל הנושאים לכתוב בהווה ובעתיד.
אני יודע די טוב C#, WPF. נוגע הרבה בEntityFramwork וכעת גם בASP.NET MVC.תודה מראש למתייחסים .
פורסם במקור בפורום CODE613 ב18/05/2015 13:03 (+03:00)
-
קודם כל, כל הכבוד על ההשקעה!!
מדריכים בעברית בתחום הזה זה תמיד טוב ומועיל!!
ובמיוחד אני מאד אוהב את סגנון הכתיבה שלך - הוא רהוט ובהיר!!
לפעמים כדאי קצת יותר להרחיב כדי שהמושג יהיה יותר מובן. לדוג' במדריך על הDelegate עדיין לא הצלחתי להבין מדוע להשתמש בו? מה רע לקרוא ישירות למתודה עצמה? למה אנחנו צריכים לקרוא לדבר שמייצג אותה?אני מאד מאד אשמח אם תמשיך לכתוב!
לגבי הנושאים - אני מתחיל.. אז בשבילי כל דבר יעזור..
כרגע אשמח אם תוכל להבהיר את נושא זריקת ותפיסת חריגות.. וכן להמשיך את המדריך לגבי האירועים Event.ושוב, תודה רבה ויישר כח עצום על ההשקעה!! זה לא מובן מאליו!!
פורסם במקור בפורום CODE613 ב18/05/2015 15:48 (+03:00)
-
avr416 ממש תודה שנפלת לפה (מהשמים.. ).
אני ממש שמח מבואך ומאחל שלא תתאדה כמו אורחים קודמים .
תודה על שפע המחמאות והתודות (תתחיל להתקמצן, אחרת נפסיק להתרגש ).
אני לוקח את הערות שלך לתשומת ליבי.במדריך על הDelegate עדיין לא הצלחתי להבין מדוע להשתמש בו? מה רע לקרוא ישירות למתודה עצמה? למה אנחנו צריכים לקרוא לדבר שמייצג אותה?
אתה קראת הכל? יש דוגמאות שמה. אבל אולי הם לא ברורות מספיק.
פורסם במקור בפורום CODE613 ב18/05/2015 17:03 (+03:00)
-
על אף שלא הבנתי הכל, היה מרתק
אדפיס ואעבור ע"ז שובכתבת שבJS תמיד יש פונקציה 1 שבו תלוי פונקציה 2.
ואם יש יותר פונקציות התלויות אחת בשניה?הבנתי נכון (בקצרה) ששאר השפת משתמשות בטרד ראשי שהוא שולט על טרדי-משנה ומוגבלים מהקצב שלו (ומצד שני מתחלקים איתו במשימות כבדות)
משא"כ בJS שבבת אחת כל הפונקציות מופעלות בטרדים נפרדים?אשמח גם להסבר מה ההבדל בין מערך לאוביקט
איברים במערך לא שווים למתודות באובייקט?פורסם במקור בפורום CODE613 ב20/05/2015 15:32 (+03:00)
-
דבר נוסף
אשמח להסביר על HASH
המרת מחרוזת לערך מספרי
ככל שאני מבין החישוב הוא כך
ערך איבר 1 * 1- ערך איבר 2 * (ערך מקסימלי של איבר 1 + 1 *1 = אינדקס 2)
- ערך איבר 3 * (ערך מקסימלי של איבר 1 + 1 * אינדקס 2 = אינדקס 3)
אכן?
יש טכניקה המאפשרת להקטין את ערך המספר הסופי?
פורסם במקור בפורום CODE613 ב20/05/2015 16:45 (+03:00)
-
בקשר לJS: טריד אחד בלבד. הוא עושה רק פעולה אחת בו זמנית. לא יכול לעשות שתיים. רק סדר הפעולות הוא לפי זמינות. כשהוא קרוא לGET מהאינטרנט ומחכה לתשובה הוא עושה פעולה אחרת ואח"כ לוקח את התשובה הגיע ע"י EVENT. כך נראה לי.
לא דברתי על פוקנציה תלויה בפונקציה וכו'.
כעת לתכונות המבלבלות של JS. אז בJS הכל זה אובייקטים. הכל אבל הכל. דוגמה:var MyFunction = function() { console.log("hi hi hi"); }; MyFunction.p = 1;
המשתנה MyFunction הוא אובייקט שמכיל איבר חסר שם מסוג פונקציה, שהוא זה שמופעל אם תכתוב את שמו עם סוגריים אחריו. יש לו בנוסף עוד איברים בעלי שם כמו p שהוגדר להכיל 1.
כעת כשיש לך אובייקט כל שהוא ואתה כותב ככה:MyFunction["p"] = 123;
זה שקול לגמרי לזה:
MyFunction.p = 123;
סה"כ השמת מאפיין. יש הבדל, והוא שע"י סוגריים מרבעות אפשר לבחור שמות שמורים ועם רווח וכו'.
כדי לראות את כל ההשמות הללו:Object.keys(MyFunction);
כעת מערך, הוא דבר ראשון גם אובייקט וחלות עליו כל הבלבולים שהראתי בפונקציה. נוסף עליו תכונות המערך שהם גישה לפי מיקום, זה נראה בדיוק כמו אובייקט אבל א: אין שמות לאיברים. הם פשוט נמצאים במקום שנקבע להם. ב. האיברים מוצבים ע"י מספר למיקום. אם שמת באינדקסר (הסוגריים המרובעות) טקסט זה לא ייכנס כאיבר במערך אלא כמאפייין נוסף באובייקט המערך. ג. השליפה וההשמה מבוצעים ביעילות רבה יותר מאשר באובייקט.
בהצלחה בבלבול, ואולי תלמד דחוף שפה נוספת כדי שתידע מה JS רוצה מהחיים שלך :).
פורסם במקור בפורום CODE613 ב20/05/2015 19:25 (+03:00)
-
תודה על התשובות המפורטות!
@דוד ל.ט.
כעת מערך, הוא דבר ראשון גם אובייקט וחלות עליו כל הבלבולים שהראתי בפונקציה. נוסף עליו תכונות המערך שהם גישה לפי מיקום, זה נראה בדיוק כמו אובייקט אבל א: אין שמות לאיברים. הם פשוט נמצאים במקום שנקבע להם. ב. האיברים מוצבים ע"י מספר למיקום. אם שמת באינדקסר (הסוגריים המרובעות) טקסט זה לא ייכנס כאיבר במערך אלא כמאפייין נוסף באובייקט המערך. ג. השליפה וההשמה מבוצעים ביעילות רבה יותר מאשר באובייקט.
השאלה היתה על כלל השפות
זה נכון גם לגביהם?פורסם במקור בפורום CODE613 ב20/05/2015 20:57 (+03:00)
-
דבר נוסף
אשמח להסביר על HASH
המרת מחרוזת לערך מספרי
ככל שאני מבין החישוב הוא כך
ערך איבר 1 * 1- ערך איבר 2 * (ערך מקסימלי של איבר 1 + 1 *1 = אינדקס 2)
- ערך איבר 3 * (ערך מקסימלי של איבר 1 + 1 * אינדקס 2 = אינדקס 3)
אכן?
יש טכניקה המאפשרת להקטין את ערך המספר הסופי?
HASH זה מטרה עם המון אלגורותמים.
והמטרה היא להפוך ערך לערך אחר בעל אורך מצומצם שבכל אופן ייצג אותו.
זה לא קשור לשפה כזו או אחרת, ויש לזה המון מימושים (צורות שונות להגיע לתוצאה דומה), אני לא מכיר אפי' אחת (:) אני מתכנת, לא מושעמם. או אני מתכנת, לא חכם... או "בשביל מה יש כבר ספריות מוכנות בשביל זה?" או "כבר גמרתי את הלימודים") אז אני לא יכול לעזור לך, אבל אני זוכר שבויקי יש הרבה.השאלה היתה על כלל השפות
זה נכון גם לגביהם?אשמח גם להסבר מה ההבדל בין מערך לאוביקט
איברים במערך לא שווים למתודות באובייקט?בעיקרון השוואת שפות בנושאים האלו רגישה: יש שפות שאין בכלל אובייקטים...
המילים "מתודת באובייקט לא שווים לאיברים במערך" מריחים JS למרחוק :). אני לא מספיק יודע איך מסודרים האובייקטים בשפות אחרות מJS, ואני מאמין שברמת המחשב זה דומה, אבל במרת המתכנת מתודה היא לא איבר ולא כלום. היא נטו כלי לשימוש חוזר ע"י קריאה אליו. ברוב השפות המודרניות, קוד בשביל לדעת איזה מתודות יש במחלקה בה אני נמצא (שבJS זה פשוט הkeys במחלקה Object) נחשבת לנושא מתקדם בשם Reflection (שיקוף - כמו צילום רנטגן לראות את העצמות, אתה רוצה לראות "מבחוץ" את המתודות של המחלקה) והצורך שלו מוגדר למקרים חריגים, והוא לא קיים בכל שפה!.
המושג מערך זה מבנה נתונים - צורת שמירה בזיכרון, רציפה, כאשר כל איבר מופיע לפי הסדר במקומו בזיכרון. הכתיבה והקריאה למערך מבוססת על מיקום הערך. והשמה במיקום גבוה פירושו שיש רצף מתחילת הזיכרון עד למקום הגבוה (נגיד a[500] = 4 אומר שיש בזיכרון מקום עבור 400 מספרים (תא למס' שלם בד"כ זה 32 סיביות - 4 בתים) לכל הפחות ברצף).
הקריאה והכתיבה למערך היא מהירה מאוד, בגלל שלא מבוצע חיפוש אלא מיד משוקללת הכתובת (כתובת המערך - שזה איבר ראשון + (היסט שזה האינדקס * גודל תא).
בכל השפות עיליות העבודה מול מערך נעשית ע"י אובייקט המוגדר בספריה היסודית של השפה. ממילא המערך עצמו הוא סוג של אובייקט, אך אובייקט בכלל לא נותן פונציונליות של מערך. לא מינה ולא מקצתה, שלא כמו בJS, שם כל אובייקט זה "מילון" של שם וערך.
ניתן להשוות את השניים בשאר השפות כמו שאלה מה ההבדל בין חתיכת ברזל לבין מברג פיליפס. המברג הוא אכן וריאציה של חתיכת ברזל, אבל חתיכת ברזל לא מבריגה. התשובה הזו נכונה גם לJS שהרי אובייקט לא נותן את הפונקציונליות הראשית של מערך שזה מבנה נתונים רציף חסר שם לגישה מהירה.פורסם במקור בפורום CODE613 ב21/05/2015 15:02 (+03:00)
-
-
לגבי JS...
אני לא באמת יודע. הנה הרגע גיליתי שטעיתי במשפט הזה:
@דוד ל.ט.התשובה הזו נכונה גם לJS שהרי אובייקט לא נותן את הפונקציונליות הראשית של מערך שזה מבנה נתונים רציף חסר שם לגישה מהירה.
בJS מערך זה לא באמת מערך http://blog.niftysnippets.org/2011/01/myth-of-arrays.htmlblog.niftysnippets.org/2011/01/myth-of-arrays.html.
ומערך אמיתי זה כנראה פה https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays.
פורסם במקור בפורום CODE613 ב21/05/2015 17:32 (+03:00)