לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 27-04-2010, 18:30
צלמית המשתמש של MatiM
  משתמש זכר MatiM MatiM אינו מחובר  
 
חבר מתאריך: 12.04.06
הודעות: 2,021
שלח הודעה דרך MSN אל MatiM
שיטות תכנות

ערב טוב,

בעקבות דיון עם חבר, אני בא לקבל את דעתכם -


באינטרנט המערכות מסווגות ל2 סוגים:

- תכנות רגיל (HTML משולב PHP) - האתר נטען לפי הסדר, כל פעם מאנקלדים את הדפים שצריך וכו'...
אם נניח יש התחברות למערכת, עושים אינקלוד לעמוד לוגין, אם המשתמש מחובר - מציגים לו את העמוד המתאים וכו'...

- תכנות מונחה עצמים (שמשתמשים בכל הפונקציות והמחלקות וכו') - ואז צריך ליצור מחלקות ליצירת עמודים, משתנים ששומרים את כל השינויים שנירצה לעשות בדף, משתנה לoutput, נניח משתנים לכותרת העמוד, לטעינת JSים וכו'..
וזה כמו במערכות VB, IPB ושאר המערכות המוכנות שניתנות להורדה באתרים השונים.


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


אשמח שתאירו את עינינו,
תודה
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #2  
ישן 27-04-2010, 18:34
  שימיadmin שימי אינו מחובר  
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
 
חבר מתאריך: 25.10.01
הודעות: 42,775
בתגובה להודעה מספר 1 שנכתבה על ידי MatiM שמתחילה ב "שיטות תכנות"

VB (אני משער שאתה מתכוון ל vBulletin) היא מונחית עצמם?

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

אגב, כל הדברים שאמרת שצריך לעשות, צריך לעשות בשתי השיטות. רק שבמונחה עצמים, אתה עושה את מה שאתה צריך לעשות, ובנוסף לכך אתה יוצר אובייקטים עם מתודות, הגדרות, ירושות, וכו', במקום פשוט לעבוד על המידע ולכתוב רק קוד שאשכרה עושה משהו. הרי זה רעיון מוזר, קוד שעושה רק מה שרוצים. ברור שהגיוני יותר להוסיף הררי קוד שלא מוסיפים לך שום יכולת ומאטים לך את ריצת הקוד... מה.. לא?
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
נמאס לכם לזכור סיסמאות? לחצו כאן!

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #3  
ישן 27-04-2010, 18:44
צלמית המשתמש של MatiM
  משתמש זכר MatiM MatiM אינו מחובר  
 
חבר מתאריך: 12.04.06
הודעות: 2,021
שלח הודעה דרך MSN אל MatiM
בתגובה להודעה מספר 2 שנכתבה על ידי שימי שמתחילה ב "VB (אני משער שאתה מתכוון ל..."

כן, אני מתכון לvBulletin.

אז...VB היא לא מונחת עצמים?

את האמת לא התעמקתי בקבצים שלה, ראיתי כמה מהם כמה דקות..לא עבודה של שעות.
אבל עד כמה שראיתי, היא מפוצצת מחלקות, פונקציות וכו'...

[יכול להיות שיש לי טעות בהבנה של - מהו "תכנות מונחה עצמים"?]


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

כמו שחבר שלי אומר - לאפשר לך לשנות את הכותרת של כל עמוד בנפרד באתר שלך

שהרי אם נניח אנחנו ב"תכנות רגיל" (סליחה שאני משתמש במונחים כאלה, אין לי מושג איך לקרוא לזה אחרת) -
ואנחנו עושים:

קוד:
<HTML> <HEAD> <TITLE>bla bla bla</TITLE> </HEAD> <BODY> <?php require_once "...."; ?> </BODY> </HTML>


כל מה שבאינקלוד כבר לא ישנה את הכותרת של הדף.

בעוד שבמערכות מונחות עצמים (וזה קיים בVB, אז אני לא יודע למה אתה לא מחשיב אותה כזאת) -
יש לך את השטויות שבIPB קוראים להם "מאקרו" ואז יש לך נניח:

<!title!>

ובכל מקום שזה מופיע [כמו גם בHEAD, בכותרת העמוד] - מופיעה הכותרת שמשנים בכל מקום לאורך הקוד, וזה מכיוון שההדפסה של העמוד מתבצעת בסוף [לאחר שכל העמוד הוזן לתוך איזה $output או משהו].


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

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #4  
ישן 27-04-2010, 19:30
  שימיadmin שימי אינו מחובר  
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
 
חבר מתאריך: 25.10.01
הודעות: 42,775
בתגובה להודעה מספר 3 שנכתבה על ידי MatiM שמתחילה ב "כן, אני מתכון לvBulletin...."

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

לכל זה אין שום קשר ל OO

למחלקות, לעומת זאת, יש.

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

בד"כ עבודה ב OO דורשת שהכל כבר יהיה OO - ולכן אם הם הוסיפו מחלקות, יש להניח שהם שכתבו את כל הקוד. אני לא רואה סיבה לעשות דבר כזה בתוך אותו Major Version (הם עדיין ב 3). אולי ב 4? בכל מקרה, כמו שאתה רואה, מדובר במערכת נפלאה שעובדת מהר מאוד, והסתדרה טוב מאוד בלי OO, ויש לה הרחבות מפה ועד להודעה חדשה. מכאן ש...
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
נמאס לכם לזכור סיסמאות? לחצו כאן!

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #5  
ישן 27-04-2010, 20:22
צלמית המשתמש של MatiM
  משתמש זכר MatiM MatiM אינו מחובר  
 
חבר מתאריך: 12.04.06
הודעות: 2,021
שלח הודעה דרך MSN אל MatiM
בתגובה להודעה מספר 4 שנכתבה על ידי שימי שמתחילה ב "הדוגמא שנתת היא בסך הכל..."

אוקיי, אז נעזוב לרגע את הOO (שאני מניח שזה התכנות מונחה העצמים?), שכניראה אני הגעתי אליו שלא בכוונה.

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


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


אם יש איזה אתר שמשווה, או אפילו מלמד כל אחד מהסוגים לתכנות (שהזכרתי) - וכך ללמוד מה ההבדלים ביניהם, אני אשמח לדעת על קיומו


סליחה על כל הבלבול,
ותודה על התגובות המהירות והממוקדות
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #6  
ישן 27-04-2010, 20:33
  שימיadmin שימי אינו מחובר  
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
 
חבר מתאריך: 25.10.01
הודעות: 42,775
בתגובה להודעה מספר 5 שנכתבה על ידי MatiM שמתחילה ב "אוקיי, אז נעזוב לרגע את הOO..."

טמפלייטים הם לא "נגד" תכנות רגיל.

אתה משתמש בטמפלייט כדי שתהיה לך תבנית קבועה לעבוד איתה, והיא לא תהיה חלק מהקוד. זה בסך הכל הפרדה של כל מה שלא חייב להיות בקוד, מהקוד. ואתה מאנקלד את הטמפלייט (שאותו אתה יכול לטעון מקובץ, ממסד נתונים, וכו'), היכן שצריך, מריץ פונקציה שדואגת לשינוי מה שצריך לשנות בו כדי שיתאים לפלט הדף הנוכחי (נניח שיש לך טמפלייט פלט של דף שגיאה, אז בתוכו תהיה לך מחרוזת $ERRORMESSAGE - אז אתה פשוט דואג להחליף אותה בהודעת השגיאה, ואז אתה מדפיס את התוצאה אחרי ההחלפה. - ואז המשתמש מקבל הודעת שגיאה בתוך דף שעיצובו קבוע, למרות שבקוד ה PHP שלך שמת בעצם רק הודעת שגיאה, ולא את כל הזבל של ה HTML מסביב)
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
נמאס לכם לזכור סיסמאות? לחצו כאן!

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #11  
ישן 28-04-2010, 19:26
  fadey fadey אינו מחובר  
 
חבר מתאריך: 15.07.02
הודעות: 1,027
בתגובה להודעה מספר 9 שנכתבה על ידי MatiM שמתחילה ב "חבל שאני תקוע באותה רמה כבר..."

אגב, לשאלתך הראשית, OOP אינה "שיטה" לתכנות, אלא פשוט דרך.

השיטה המובילה כיום (ויש שיחלקו עליי) היא MVC:
Model, Views, Controllers
תוכל לגגל על הנושא ולמצוא המון המון הסברים מפורטים על השיטה, וכמה מילים בכל זאת אספר לך שהרעיון הכללי הוא ליצור 3 מחלקות "עצמאיות" ששולטות כל אחת בתחומה שלה כאשר המידע עובר בינהן.
Views - מחלקות האחראיות בעצם לכל פלט של HTML
Controllers - מחלקות האחראיות לכל הלוגיקה של הקוד
Models - מחלקות האחראיות לקשר בין הלוגיקה לבין ה HTML בשינויים אלו או אחרים.

מקור טוב בו ממש ניתן להבין את כל העסק הוא cakePHP.com.

מקווה שלזה התכוונת.
_____________________________________
ציטוט:
Different people use different tools, but its mostly morons who pretend that the problems with PHP actually matter.

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #13  
ישן 26-05-2010, 22:39
  שימיadmin שימי אינו מחובר  
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
 
חבר מתאריך: 25.10.01
הודעות: 42,775
בתגובה להודעה מספר 12 שנכתבה על ידי fadey שמתחילה ב "זה רעיון מוזר למי שלא רגיל..."

שכל מתודה כזו אפשר להחליף בפונקציה ואין שום הבדל. (חוץ מזה שיש סבירות גבוהה למדי שקוד ה OOP שלך יעבוד לאט יותר בגלל עומס גבוה יותר על המעבד עבור הגעה לאותה התוצאה; ישנם מקומות שזה אשכרה משנה - אתרים שיש בהם המון גולשים לדוגמה...)

דוגמה קלאסית שאני תמיד מביא היא הקרנל של לינוקס: מדובר במערכת הפעלה. היא חייבת לעבוד הכי מהר שאפשר. רוצה לנחש מה אין אפילו בשורה אחת בקרנל של לינוקס? (אני יודע שזה יהיה קשה לך - אז אתן לך רמז - זה מתחיל ב O, נגמר ב P, וזה שלוש אותיות, שהאות האמצעית היא אחת משתי הקיצוניות, והיא... "שמאלנית"...)

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

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #15  
ישן 27-05-2010, 23:39
  fadey fadey אינו מחובר  
 
חבר מתאריך: 15.07.02
הודעות: 1,027
בתגובה להודעה מספר 14 שנכתבה על ידי Zed3 שמתחילה ב "הבעיה היא, שמי שיש לו פטיש,..."

זד3, לא הצלחתי להבין אותך..

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

בכל אופן, לפי מה שאני יודע (ואני לא יודע הרבה על לינוקס) או לפחות שמעתי שלינוקס כתובה ב C ואם זה אכן נכון, אזיי שהשפה C בכלל לא כוללת תמיכה בOOP. אם זה לא נכון, חח אז תשכח מזה.

אני שוב אחלוק על דעתך, ואציג בפניך אתרים כמו פייסבוק, גוגל, טוויטר, גוגל מפות, ועוד המוני המונים ששועטים לכיוון הOOP, אז מה..? כל אלה טועים בחשיבתם?
_____________________________________
ציטוט:
Different people use different tools, but its mostly morons who pretend that the problems with PHP actually matter.

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #18  
ישן 28-05-2010, 20:36
  fadey fadey אינו מחובר  
 
חבר מתאריך: 15.07.02
הודעות: 1,027
בתגובה להודעה מספר 16 שנכתבה על ידי Zed3 שמתחילה ב "המשפט הוא די ברור, ובהקשר..."

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

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

ומכאן אני מסיק שאם זה באמת כמו שאתה אומר, כנראה שהפערים בזמן הם זניחים.
חוצמזה, ניסית פעם לשדרג אתר שכתוב בצורה פרוצדוראלית? תנסה אחד שכתוב בOOP, תראה שיקח לך רבע מהזמן.
_____________________________________
ציטוט:
Different people use different tools, but its mostly morons who pretend that the problems with PHP actually matter.

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 04:25

הדף נוצר ב 0.05 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר