מעניין אותי אם אתה מסוגל לנהל דיון ענייני בלי לגלוש לפסים אישיים ולהערות פוגעות כמו "יש לי הרגשה שזה הולך להיות קצת ארוך ... אבל אני אוהב אנשים כמוך . שלא מבינים הרבה אבל אוהבים לחשוב שהם כן מבינים ." ו"אוי ... כמה שאתה לא מבין ...".
אני לא מנסה להעליב אותך או לרדת עליך כל שתי שורות בהודעות שלי, ואני מצפה ליחס בוגר מצדך גם.אני מבין שהצורה שבה אני מגדיר שפת תכנות לא מוצאת חן בעיניך. הייתי רוצה לשמוע הגדרה שלך לשפת תכנות. כל עוד אתה לא כותב הגדרה משלך, אני אמשיך ברשותך ואתייחס למה שכתבת בהתאם להגדרה שלי.
"אם כבר אתה מתקטנן ... אז ב - VB אתה יכול לכתוב ב - Notepad , וגם לקמפל מה - CMD Prompt ...
כמה שורות של הגדרת הטופס (נעשה אותו נסתר בשבילך...) , וישר את הקוד ב - FormLoad ."
איך באמת אתה עושה את זה בVB6? אשמח לראות דוגמא של קוד והסברים.
"נראה אותך כותב אפליקציה חלונאית גדולה ב Java או C/C++ בלי סביבת פיתוח עם "GUI" ... הנשמה תצא לך לפני שתסיים ..."
Windows עצמה כתובה בC. אלפי תוכנות נכתבו גם הן ב++C/C עוד לפני שהיה כלי ליצירת GUI בצורה נוחה. חוץ מזה, העובדה שכדי להקל על הפיתוח משתמשים בעורך GUI אינה אומרת שהשפה מכריחה אותך לעשות את זה. אתה בהחלט יכול לכתוב קוד נקי בעצמך, אם אתה מזוכיסט מספיק. הנקודה היא שהשפה לא מכריחה אותך.
""VB היא Interpreted לחלוטין" - אוי ... כמה שאתה לא מבין ...
ש - VB רצה ב - Debug היא Interpreter , מטעמי נוחות בלבד ב - Debug . אבל כאשר אתה מקמפל EXE , הוא בינארי לחלוטין . תלמד קצת ... במקום לזרוק סתם מילים גבוהות לאויר ...
ועובדה לכך אתה גם יכול לראות , שאם היא היתה באמת Interpreter , יהה צריך להיות לה מנוע שמריץ אותה ... כמו JVM או .Net Framework ...
לפני שתעשה את הטעות ותגיד ש - MSVBVM60.dll הוא המנוע , אתקן אותך מראש ואומר לך שהוא רק DLL של של פונקציות ספריה מוכנות , על הסגנון של ה - CLR של .Net , אבל הרבה פחות משוכלל וגדול ."
ניסית פעם להסתכל על קוד אסמבלי של קובץ VB? המבנה של התוכנית דומה מאוד לשפת interpreter. כל פונקציה שאתה משתמש בה פחות או יותר היא שירות של הVB VM. ברמה הכי עליונה יש רק קריאות לVB VM.
VB פשוט עוטפת את הקוד במשהו סטנדרטי שמריץ את הקוד כInterpreter.
"אני רואה שאתה מדבר הרבה על Java , ואתה לא כל כך מבין בה .
"את ג'אווה אתה יכול לקמפל Just in Time לקוד מכונה" - קומפיילר JustInTime הוא של ה - Framework של .Net ולא של Java ... סתם שתדע ."
למעשה, לא. הJDK כולל מהדר JIT.
"ושאומרים JustInTime , מתכוונים לקימפול אצל הלקוח שניה לפני הריצה של הרכיב , ואתה בכלל התכוונת לקימפול במחשב הפיתוח ומסירה ללקוח כשהרכיב כבר מקומפל ... אז זה ממש ממש לא JustinTime , אפילו לא בקונספט ..."
Just In Time הוא מושג רחב שכולל בתוכו גם את Ahead of Time, שמשמעותו כתיבת קובץ מחלקה בעל byte code וכמו כן בעל native machine code.
Just In Time עצמו מתבצע בג'אווה תוך כדי הריצה של הVM, והוא מייצר לשיטות שנקראות בתדירות גבוהה קוד מכונה on the fly.
"ומזל באמת שהסכמת ש - VB.Net ו - C# הם באמת שפות תכנות .
מזל שהם "עומדות" בהגדרה שלך , כי אם לא אני בטוח שכולם היו זונחים אותם ..."
אתה מודע לזה שרוב הצעות העבודה בשוק לא הולכות לשפות האלה, נכון? $C זה חיקוי לג'אווה שחסר פורטביליות, ואני ממש לא יודע מי משתמש בVB.NET.
יום נעים. 