አብነት ተለዋዋጭ ከአካባቢው ተለዋዋጭ
የአብነት ተለዋዋጭ በነገር ተኮር ፕሮግራሚንግ ውስጥ የሚገኝ የተለዋዋጭ አይነት ነው። በክፍል ውስጥ የሚገለጽ ተለዋዋጭ ነው, እና እያንዳንዱ የዚያ ክፍል ነገር የተለየ የዚያ ተለዋዋጭ ቅጂ ይይዛል. በሌላ በኩል፣ የአካባቢ ተለዋዋጮች አጠቃቀም በዕቃ ተኮር የፕሮግራም ቋንቋዎች ብቻ የተገደበ አይደለም። እሱ በተገለጸበት የተወሰነ የኮድ (ለምሳሌ ተግባር፣ loop block ወዘተ) ውስጥ ብቻ ሊገመገም የሚችል ተለዋዋጭ ነው። በዚህ ምክንያት የአካባቢ ተለዋዋጮች የአካባቢ ወሰን አላቸው ተብሏል።
ምሳሌ ተለዋጭ ምንድን ነው?
የአብነት ተለዋዋጮች የእያንዳንዱን ነገር ሁኔታ በክፍል ውስጥ ለማከማቸት በነገር ተኮር ፕሮግራሚንግ ውስጥ ጥቅም ላይ ይውላሉ። እንዲሁም አባል ተለዋዋጮች ወይም የመስክ ተለዋዋጮች በመባል ይታወቃሉ። የአብነት ተለዋዋጮች በጃቫ ውስጥ የማይንቀሳቀስ ቁልፍ ቃል ሳይጠቀሙ ይታወቃሉ። በምሳሌ ተለዋዋጮች ውስጥ የተከማቹ እሴቶች ለእያንዳንዱ ነገር ልዩ ናቸው (እያንዳንዱ ነገር የተለየ ቅጂ አለው) እና በውስጣቸው የተከማቹ እሴቶች የነገሩን ሁኔታ ይወክላሉ። ለአብነት ተለዋዋጭ ቦታ በክምር ውስጥ ይመደባል፣ ያ ነገር በክምር ውስጥ ሲመደብ። ስለዚህ ነገሩ በህይወት እስካለ ድረስ የምሳሌ ተለዋዋጮች በማህደረ ትውስታ ውስጥ ይቀመጣሉ። ለምሳሌ የአንድ መኪና ቀለም ከሌላው መኪና ቀለም የተለየ ነው. ስለዚህ የመኪናው ነገር ቀለም በአብነት ተለዋዋጭ ውስጥ ሊከማች ይችላል. በተግባር፣ ለምሳሌ ተለዋዋጮች በክፍል ውስጥ እና በውጪ ዘዴዎች ይታወቃሉ። ብዙውን ጊዜ፣ ለምሳሌ ተለዋዋጮች እንደ ግላዊ ይታወቃሉ፣ ስለዚህም እነሱ በተገለጸው ክፍል ውስጥ ብቻ መድረስ ይችላሉ።
አካባቢያዊ ተለዋዋጭ ምንድን ነው?
አካባቢያዊ ተለዋዋጮች የአካባቢ ወሰን ያላቸው ተለዋዋጮች ናቸው፣ እና እነሱ በተወሰነ የኮድ እገዳ ውስጥ ይታወቃሉ። የአካባቢያዊ ተለዋዋጮች ጊዜያዊ ሁኔታውን ለማከማቸት ዘዴ ጥቅም ላይ እንደዋሉ ተለዋዋጮች ሊታዩ ይችላሉ። የአካባቢያዊ ተለዋዋጭ ወሰን የሚወሰነው ተለዋዋጭው የታወጀበትን ቦታ በመጠቀም ነው፣ እና ልዩ ቁልፍ ቃላት ለዚህ ዓላማ ጥቅም ላይ አይውሉም። በተለምዶ፣ የአካባቢያዊ ተለዋዋጭ መዳረሻ በታወጀው ኮድ ብሎክ ውስጥ የተገደበ ነው (ማለትም በዚያ የኮድ ብሎክ መክፈቻ እና መዝጊያ ቅንፎች መካከል)። የአካባቢ ተለዋዋጮች በተለምዶ በጥሪ ቁልል ውስጥ ይከማቻሉ። ይህ ተደጋጋሚ ጥሪዎች የአካባቢያዊ ተለዋዋጮችን ቅጂዎች በተለየ የማስታወሻ አድራሻዎች ውስጥ እንዲቀመጡ ያስችላቸዋል። ዘዴው አፈፃፀሙን ሲያጠናቅቅ ስለዚያ ዘዴ መረጃ ከጥሪ ቁልል ውስጥ ይወጣል፣ እንዲሁም የተከማቹትን የአካባቢ ተለዋዋጮች ያጠፋል።
በምሳሌ ተለዋዋጭ እና አካባቢያዊ ተለዋዋጭ መካከል ያለው ልዩነት ምንድን ነው?
የአብነት ተለዋዋጮች በክፍሎች ውስጥ ከስልቶች ውጭ ይታወቃሉ እና የነገሩን ሁኔታ ያከማቻሉ ፣አካባቢያዊ ተለዋዋጮች ግን በኮድ ብሎኮች ውስጥ ይታወቃሉ እና የአንድን ዘዴ ሁኔታ ለማከማቸት ያገለግላሉ።የአብነት ተለዋዋጭ የሚኖረው ተለዋዋጭ የያዘው ነገር የቀጥታ እስከሆነ ድረስ ነው፣ የአካባቢ ተለዋዋጭ ግን የዚያ ዘዴ/የኮድ እገዳ በሚፈፀምበት ጊዜ ይኖራል። የአብነት ተለዋዋጭ (ይፋዊ ተብሎ የተገለጸው) በክፍሉ ውስጥ ሊደረስበት ይችላል፣አካባቢያዊ ተለዋዋጭ ግን በተገለጸው ኮድ ብሎክ ውስጥ ብቻ ነው። የአብነት ተለዋዋጮች አጠቃቀም ለዕቃ ተኮር ፕሮግራሚንግ ብቻ የተገደበ ሲሆን የአካባቢ ተለዋዋጮች ግን እንዲህ ያለ ገደብ የላቸውም።