"హలో, అమిగో! ఇది నేనే-మళ్లీ. నేను మీకు ఇంటర్ఫేస్లపై మరొక దృక్కోణాన్ని అందించాలనుకుంటున్నాను. మీరు చూడండి, చాలా సమయం తరగతి అనేది ఒక నిర్దిష్ట వస్తువు యొక్క నమూనా. దీనికి విరుద్ధంగా, ఇంటర్ఫేస్లు ఒక వస్తువు యొక్క సామర్థ్యాలు లేదా వస్తువు కాకుండా పాత్రలు."
ఉదాహరణకు, కార్లు, సైకిళ్లు, మోటార్సైకిళ్లు మరియు చక్రాలు వంటి అంశాలు తరగతులు మరియు వస్తువులుగా ఉత్తమంగా సూచించబడతాయి. కానీ వారి సామర్థ్యాలు, "నేను తరలించగలను", "నేను వ్యక్తులను తీసుకువెళ్ళగలను" మరియు "నేను పార్క్ చేయగలను" వంటివి ఇంటర్ఫేస్లుగా ఉత్తమంగా సూచించబడతాయి. ఈ ఉదాహరణను పరిశీలించండి:
జావా కోడ్ | వివరణ |
---|---|
|
కదిలే సామర్థ్యానికి అనుగుణంగా ఉంటుంది. |
|
కదిలే సామర్థ్యానికి అనుగుణంగా ఉంటుంది. |
|
సరుకు రవాణా చేసే సామర్థ్యానికి అనుగుణంగా ఉంటుంది. |
|
ఒక "చక్రం" తరగతి. కదిలే సామర్థ్యం ఉంది. |
|
ఒక "కారు" తరగతి. ఒక వ్యక్తి ద్వారా నడపబడే, మరియు సరుకును మోసుకెళ్లే సామర్థ్యాన్ని కలిగి ఉంటుంది. |
|
"స్కేట్బోర్డ్" తరగతి. ఒక వ్యక్తి ద్వారా కదలగల మరియు నియంత్రించగల సామర్థ్యాన్ని కలిగి ఉంటుంది. |
ఇంటర్ఫేస్లు ప్రోగ్రామర్ జీవితాన్ని చాలా సులభతరం చేస్తాయి. ప్రోగ్రామ్లు చాలా తరచుగా వేలకొద్దీ వస్తువులు, వందల కొద్దీ తరగతులు మరియు కేవలం రెండు డజన్ల ఇంటర్ఫేస్లు (పాత్రలు) కలిగి ఉంటాయి. కొన్ని పాత్రలు ఉన్నాయి, కానీ వాటిని అనేక విధాలుగా (తరగతులు) కలపవచ్చు.
మొత్తం విషయం ఏమిటంటే, మీరు ప్రతి ఇతర తరగతితో పరస్పర చర్యను నిర్వచించే కోడ్ను వ్రాయవలసిన అవసరం లేదు. మీరు చేయాల్సిందల్లా పాత్రలతో (ఇంటర్ఫేస్లు) సంభాషించడమే.
మీరు రోబోటిక్ బిల్డర్ అని ఊహించుకోండి. మీకు డజన్ల కొద్దీ అధీన రోబోలు ఉన్నాయి మరియు వాటిలో ప్రతి ఒక్కటి బహుళ నైపుణ్యాలను కలిగి ఉండవచ్చు. మీరు తక్షణమే గోడ కట్టడం పూర్తి చేయాలని అనుకుందాం. మీరు "బిల్డ్" చేయగల సామర్థ్యం ఉన్న అన్ని రోబోట్లను తీసుకొని గోడను నిర్మించమని చెప్పండి. ఏ రోబోలు దీన్ని చేస్తాయో మీరు నిజంగా పట్టించుకోరు. ఇది రోబోటిక్ వాటర్ క్యాన్గా ఉండనివ్వండి. అది ఎలా నిర్మించాలో తెలిస్తే, దానిని నిర్మించనివ్వండి.కోడ్లో ఇది ఎలా ఉంటుందో ఇక్కడ ఉంది:
జావా కోడ్ | వివరణ |
---|---|
|
"గోడను నిర్మించే" సామర్థ్యం. «ఒక గోడను నిర్మించు» (తగిన పద్ధతిని కలిగి ఉంది) ఆదేశాన్ని అర్థం చేసుకుంటుంది. |
|
ఈ సామర్థ్యం/నైపుణ్యం ఉన్న రోబోలు.
నీరు త్రాగుట గోడను నిర్మించదు (ఇది WallBuilder ఇంటర్ఫేస్ను అమలు చేయదు). |
|
గోడ కట్టమని ఆదేశం ఎలా ఇవ్వాలి? |
"అది చాలా ఆసక్తికరంగా ఉంది. ఇంటర్ఫేస్లు ఇంత ఆసక్తికరమైన అంశంగా ఉంటాయని నేను కలలో కూడా అనుకోలేదు."
"ఆపై కొన్ని! బహురూపతతో కలిపి, ఇది పూర్తిగా మనస్సును కదిలించేది."
GO TO FULL VERSION