ኣብ ዓውዲ ናይ ነገራት-ተኮር ፕሮግራሚንግ፡ ምርዳእ ድልዱልን ዝዕቀብን ኮድ ንምህዛን መእተዊ መቐየሪታት ወሳኒ እዩ። ኣምር ናይ ዝተሓለወን ውልቃውን ። ደረጃታት ተበጻሕነት ኣብ ምዕሻግ ርኡይ ተራ ይጻወቱ፣ እዚ መሰረታዊ መትከል እዚ ንመንግስቲ ሓደ ኣቕሓ ዘረጋግጽ መሰረታዊ መትከል እዩ መብዛሕትኡ ግዜ ኣዳለውቲ ኣብ ውሽጢ መተግበሪታቶም ተበጻሕነትን ድሕነትን ንምምዛን ኣብ መንጎ እዞም ክልተ መቐየሪታት ምስ ምምራጽ ይቃለሱ። እዚ ጽሑፍ’ዚ ንኡስ ናይ ገዛእ ርእሶም ኣባላት ይድህስስ። ኣብ ዝተፈላለየ ቋንቋታት ፕሮግራሚንግ ዘለዎም ትርጉም ይድህስስ፣ ኣብ ንኡስ ንኡስ
Access Modifiers ኣብ object ዝተመርኮሰ ቋንቋታት ዝጥቀሙ ቁልፊ ቃላት ኮይኖም ተበፃሕነት ክፍልታት፣ ሜላታትን ተለዋዋጥን ንምቕማጥ ዝውዕሉ እዮም። ኣባላት ሓደ ክፍሊ ኣብ ካልእ ክፋላት ናይቲ መደብ ብኸመይ ክረኽብዎ ከም ዝኽእሉ ይገልጹ። እቶም ቀንዲ መእተዊ መቐየሪታት ብህዝቢ , ዝተሓለወ , ናይ ብሕቲ ፣ ሓደ ሓደ ግዜ ድማ ብነባሪ ወይ ውሽጣዊ ፣ ከከም ቋንቋ ከከም ቋንቋ የጠቓልሉ።
ከም ተባሂሎም ዝተኣወጁ ኣባላት ህዝቢ ካብ ዝኾነ ካልእ ክፍሊ ተበፃሕቲ እዮም። እዚ ደረጃ ተበጻሕነት ንዝሰፍሐ ምብጻሕ ዘኽእል ኮይኑ ግን ናብ ዘይተደልየ ምትእስሳርን ምጉዳል ምዕሻግን ከስዕብ ይኽእል።
እቲ ናይ ብሕቲ መእተዊ መቐየሪ ንኣባላት ክፍሊ ኣብቲ ዝተኣወጀሉ ክፍሊ ርኡይነት ይድርቶ። እዚ ድማ ልዑል ደረጃ ምዕሻግ የረጋግጽ፣ እዚ ድማ ናይ ደገ ክፍልታት ነዞም ኣባላት ብቐጥታ ከይረኽብዎም ወይ ካብ ምቕያር ይኽልክል።
እቲ ዘለዎም ኣባላት ዝተሓለወ መቐየሪ ኣብ ውሽጢ ናይ ገዛእ ርእሶም ደርብን ብዝተረኽበ ክፍልታትን ተበፃሕቲ እዮም። እዚ ደረጃ ተበጻሕነት ኣብ መንጎ ሚዛን ይሃርም ናይ ውልቅን ህዝባውን ፣ ንኡሳን ክፍልታት ገለ ደረጃ ምዕሻግ እናዓቀበ ንኡሳን ክፍልታት ተግባር ክጥቀሙን ከናውሑን የኽእሎም።
ኣብ መንጎ ዘሎ መሰረታዊ ፍልልይ ናይ ብሕቲን ዝተሓለወን መእተዊ መቐየሪታት ኣብቲ ንንኡሳን ክፍልታትን ናይ ደገ ክፍልታትን ዝወሃብ ደረጃ ተበፃሕነት እዩ ዝምርኮስ።
ናይ ብሕቲ ኣባላት ኣብ ንኡሳን ክፍልታት ዝበጽሑ ኣይኮኑን፣ ዋላ እቲ ንኡስ ክፍሊ ኣብ ውሽጢ ሓደ ዓይነት ፓኬጅ ወይ ሞዱል ይኹን። እዚ ማለት ከም ብሕታዊ ዝእወጅ ሜላታት ወይ ተቐያየርቲ ኣብ ዝተረኽቡ ክፍልታት ክውረሱ ወይ ብቐጥታ ክጥቀሙ ኣይክእሉን እዮም። ብኣንጻሩ ፡ ዝተሓለዉ ናይ ገዛእ ርእሶም ኣባላት ኣብ ውሽጢ ንኡሳን መደባት ተበጻሕቲ ኮይኖም፡ ውርሻን ፖሊሞርፊዝምን ብኣድማዒ መንገዲ ንኽሰርሑ የኽእሉ።
ምጥቃም ናይ ብሕቲ ኣባላት ካብ ኩሎም ካልኦት ክፍልታት ዝርዝር ኣተገባብራ ብምሕባእ ንኢንካፕሱሌሽን የዕብዮ። እዚ ድማ ዘይተደልየ ምትእትታው ክከላኸል ይኽእል እዩ ግን ንኽንሰጋገር ክድርት ይኽእል። ብኻልእ ወገን ፡ ዝተሓለዉ ኣባላት፡ ንገለ ዝርዝራት ንንኡሳን ክፍልታት የቃልዑ፡ ንኤንቴጅን ግን ከኣ ብጥንቃቐ እንተዘይተመሪሑ፡ ኣብ ሓደጋ ከእትዉ ዝኽእሉ ግን ከኣ ኣብ ሓደጋ ከእትዉ ዝኽእሉ።
ኣብ መንጎ ምምራጽ ኣብቲ ዝተሓለወን ውልቀን ፍሉይ ጠለባት ናይቲ ዝምዕብል ዘሎ ሶፍትዌር ይምርኮስ።
ተጠቐም ። ፡ ናይ ብሕቲ ጽኑዕ ምዕሻግ ከተተግብር ኣብ እትደልየሉ እዋን እዚ ካብ ክፍሊ ወጻኢ ክቕየሩ ወይ ክኣትዉ ንዘይብሎም ንጥቕሚ ዝውዕሉ ሜላታት ወይ ተለዋዋጢ ረቛሒታት ዝምችእ እዩ። ንውሽጣዊ ኩነታት ይሕልዎን ኣብ ውሽጣዊ ክፍሊ ምምሕያሻት ንደጋዊ ክፍልታት ከምዘይጸልዎን የረጋግጽ።
ምረጽ ። ዝተሓለወ ናይ ገዛእ ርእሶም ኣባላት ንውርሻ ዝዓለመ ክፍሊ ኣብ ዝነድፈሉ እዋን እዚ ድማ ንኡሳን ክፍልታት ነዞም ኣባላት ክረኽቡን ከዐርዩን የኽእሎም፣ ዳግመ-ኣጠቓቕማን ምንዋሕን ኮድ ንምትብባዕ። ኣብ ማዕቀፋትን ቤተ መጻሕፍትን ኣገዳሲ እዩ ኣብ ዝዛዘምሉ እዋን ቁልፊ ስክፍታ ኣብ ዝኾነሉ እዋን።
ዝተፈላለዩ ቋንቋታት ነዞም መእተዊ መቐየሪታት ብኸመይ ከም ዘተግብሩ ምርዳእ ንመስቀላዊ ቋንቋ ምዕባለን ምሉእ ዓቕሚ ናይ ነገራት ዝቐንዐ ፕሮግራሚንግ ንምጥቃምን ወሳኒ እዩ።
ኣብ ጃቫ፡ እቲ ዝተሓለወ መእተዊ መቐየሪ ኣብ ውሽጢ ሓደ ፓኬጅን ንንኡሳን ክፍልታትን ርኡይነት ይህብ ዋላ ኣብ ዝተፈላለየ ፓኬጅ እንተሃለወ። እቲ ናይ ብሕቲ መቐየሪ ናብቲ ናይ ኣዋጅ ክፍሊ ጥራይ ምእታው ይድርት። ኣብዚ ሓደ ኣብነት ኣሎ፤
ህዝባዊ ክፍሊ ወላዲ {
ዝተሓለወ ባዶነት ምርኢት() {
// ዝተሓለወ ሜላ
}
}
ህዝባዊ ክፍሊ ውላድ ወላዲ {
ህዝባዊ ባዶነት ምርኢት() {
display(); // ተበፃሕቲ
}
} .
C++ ተመሳሳሊ ቅዲ ይኽተል፡ ግን ምስ ምውሳኽ ምግላጽ ደረጃታት ምብጻሕ ውርሻ። ዝተሓለዉ ኣባላት ኣብ ዝተረኽቡ ክፍልታት ተበጻሕቲ ክኾኑ እንከለዉ፡ ናይ ብሕቲ ኣባላት ግን ከምኡ ኣይኮኑን።
ክፍሊ መሰረት {
ዝተሓለወ:
INT Protectedvar;
ናይ ብሕቲ:
INT ፕራይቨትቫር፤
}፤
ካብ ክፍሊ ዝተረኽበ : ህዝባዊ መሰረት {
void function() {
deploseedvar = 1; // ተበጻሒ
ናይ ብሕቲVAR = 1; // ዘይርከብ
}
};
ኣብ መንጎ ምርጫ ዝተሓለወን ውልቃውን ዘሎ ንተዓጻጻፍነትን ውሕስነትን ናይ ኮድካ ይጸልዎ።
ምጥቃም ዝተሓለወ ናይ ገዛእ ርእሶም ኣባላት ፡ ንዝዝርጋሕ ክፍልታትካ ይውስኽ። ንኡሳን ክፍልታት ነዞም ኣባላት ክወርሱን ክጥቀመሎምን ነቲ መሰረታዊ ክፍሊ ከይተመሓየሸ ኣብ ልዕሊ ዝጸንሐ ተግባር ክሃንጹ ይኽእሉ።
ካብ መጠን ንላዕሊ ምቅላድ ደርባዊ ውሽጣዊ ስፍራ ምስ ምክልኻል ናብ ናይ ጽገና ብድሆታት ከስዕብ ይኽእል። ኣብቲ መሰረታዊ ደርቢ ዝመጽእ ለውጢ ንንኡስ ክፍልታት ብዘይተጸበኻዮ መንገዲ ጽልዋ ከሕድር ይኽእል እዩ፣ እዚ ድማ ነቲ ኮድቤዝ ንምምሕዳር ኣጸጋሚ ይገብሮ።
ብሉጽ ልምድታት ምኽባር፡ ኣጠቓቕማኻ ናይ መእተዊ መቐየሪታትካ ንኮድካ ከም ዘዕብዮ የረጋግጽ፡ ኣብ ክንዲ ዝዕንቅፎ።
ኣብ ልዕሊ ዝተሓለወ ኣባላት ልዕሊ ዓቐን ምጽጋዕ ካብ መጠን ንላዕሊ ውርሻ ምልክት ክኸውን ይኽእል። ንኮድ ዳግማይ ምጥቃም ንምዕዋት ቅንብር ምጥቃም ኣብ ግምት ኣእትዉ፣ እዚ ድማ መብዛሕትኡ ግዜ ዝያዳ ተዓጻጻፍን ክዕቀብ ዝኽእልን ኮድ የስዕብ።
እቲ ዝድለ ዝተሓተ ደረጃ ተበፃሕነት ምሃብ። ሓደ ኣባል ብንኡስ ክፍልታት ምርካብ ኣየድልዮን እንተኾይኑ ፡ ብሕታዊ ግበር . እዚ ልምዲ እዚ ንዘይተሓሰበ ጎናዊ ሳዕቤናት ዘለዎ ተኽእሎ ይንክዮ።
ምርጫ ናይ መእተዊ መቐየሪታት ርኡይ ጽልዋ ዝነበሮም ናይ ሓቂ ዓለም ስናርዮታት ምምርማር ክቡር ርድኢት ክህብ ይኽእል እዩ።
ብዙሓት ማዕቀፋት ንዝተሓለወ ናይ ገዛእ ርእሶም ኣባላት የቃልዑ፡ ንኣዳለውቲ ድማ መሰረታዊ ክፍልታት ከናውሑ የኽእሎም። ንኣብነት ኣብ መርበብ ሓበሬታ ፍሬምዎርክስ፡ ናይ መሰረት ተቖጻጻሪ ክፍልታት መብዛሕትኡ ግዜ ዝተሓለዉ ሜላታት ኣለዎም። ንባህርያት ንምምዕርራይ ክግለፉ ዝኽእሉ
ብዘይግቡእ ኣጠቓቕማ ኣጋጣሚታት ተራእዩ እዩ ። ዝተሓለወ መእተዊ ናብ ናይ ጸጥታ ተቓላዕነት ዘምርሕ ንኡሳን ክፍልታት ንውሽጣዊ ውሽጣውያን ንውሽጣውያን ተማሃሮ ብዘይተሓሰበ መንገዲ ዝረኽብዎን ዝተመሓየሸን ብምዃን ዘይምርግጋእን ምፍራስን ኣስዒቡ።
ቋንቋ-ፍሉይ ባህርያት፡ ናይ ምብጻሕ መቐየሪታት ከመይ ከም ዝጠቅም ክጸልዉ ይኽእሉ እዮም፡ ሶፍትዌር ኣብ ዝነድፈሉ እዋን ድማ ኣብ ግምት ክኣትዉ ይግባእ።
C++ ንኣምር ናይ ዓርኪ ክፍልታትን ተግባራትን የላልዮም፣ እዚኦም ድማ ናይ ብሕቲን ዝተሓለወን ኣባላት ካልእ ክፍሊ ክረኽቡ ይኽእሉ። እዚ ባህሪ እዚ ንመከላኸሊ መእተዊ ዝተሓላለኸነት ይውስኽን ብጥበብ ክውዕል ኣለዎ።
ከም Javaን C# ዝኣመሰሉ ቋንቋታት ኣብ ግዜ ምዝዋር ናይ ብሕቲ ኣባላት ክረኽቡ ዝኽእሉ ኣስተንትኖ የፍቅዱ። እዚ ዓቕሚ እዚ ሓያል እኳ እንተኾነ፡ ንመቆጻጸሪታት ምብጻሕ ከዳኽም ይኽእልን ብጥንቃቐ ክሕዞን ይግባእ።
መእተዊ መቐየሪታት ነቲ ኮድ ናይ ምፍታን ዓቕሚ ብኣድማዒ መንገዲ ክጸልዎ ይኽእል።
ናይ ብሕቲ ኣባላት ብቐጥታ ምፍታን ብሓፈሻኡ ተስፋ ይቖርጽ። ኣብ ክንድኡ ፈተናታት ኣብ ህዝባዊ መተሓላለፍቲ ከተኩሩ ይግባእ። እዚ ግን ሓደ ሓደ ግዜ ምሉእ ሽፋን ኮድ ንምርካብ በዳሂ ክገብሮ ይኽእል እዩ።
ምጥቃም ንፈተነ ከቃልል ይኽእል። ንዝተሓለወ ናይ ገዛእ ርእሳ ኣባላት ንንኡስ ክፍልታት ፈተና ንኽረኽቡን ንኽመሓየሹን ብምፍቃድ እዚ ሜላ እዚ ጠቓሚ ክኸውን ይኽእል እዩ ግን ኣብ ዝርዝር ኣተገባብራ ፅግዕተኛታት ንኸይተኣታተወ ብጥንቃቐ ክውዕል ይግባእ።
ሪፋክቶሪንግ ኮድ ኣቃውማን ምዕቃብን ንምምሕያሽ መእተዊ መቐየሪታት ምቕያር ከጠቓልል ይኽእል።
ኣብ እዋን ሪፋክቶሪንግ፡ ሰፊሕ ተበጻሕነት ካብ ህዝቢ ወይ ምሕላው ናብ ናይ ብሕቲ ምጉዳል ኣብ ግምት ኣእቱ፡ ሰፊሕ ተበጻሕነት ድሕሪ ሕጂ እንተዘይተደልየ። እዚ ልምዲ እዚ ንኢንካፕሱሌሽን የዕቢን ንዘይተሓሰበ ምትእስሳር ንዝፍጠር ሓደጋ ይንክዮን።
ኣብ ሓደ ህዝባዊ ኤፒኣይ ደረጃ ምብጻሕ ክትቅይር ከለኻ፡ ለውጢ ምብታኽ ጥንቁቕ ኩን። ተበፃሕነት ምንካይ ኣብ APIካ ዝምርኮስ ኮድ ናይ ምጥርናፍ ጌጋታት ከስዕብ ይኽእል እዩ።
ምዕቡላት ኣምር ምድህሳስ፡ ርድኢትን ኣተገባብራን ናይ መእተዊ መቐየሪታት ከዕምቖም ይኽእል።
ቅዲ ዲዛይን መብዛሕትኡ ግዜ ፍሉይ ደረጃ ምብጻሕ ይእዝዝ። ንኣብነት፡ እቲ ሲንግልተን ዝበሃል ቅዲ፡ ካብ ክፍሊ ወጻኢ ንዝፍጠር ምጥቃዕ ንምክልኻል፡ ናይ ብሕቲ ሃናጺ የድልዮ።
ኣብ ማልቲፍሬድድ ኣፕሊኬሽናት፡ መእተዊ መቐየሪታት ኣብ ድሕነት ፈትሊ ተራ ኣለዎም። ናይ ብሕቲ ኣባላት ኣብ መላእ ፈትሊታት ክካፈሉ ከለዉ ናይ ሓባር ናይ ምብጻሕ ጉዳያት ክከላኸሉ ይኽእሉ እዮም ግን synchronized access የድልዮም።
ኣብ መንጎ ዘሎ ፍልልይ ምርዳእ ዝተሓለወን ናይ ብሕቲ መእተዊ መቐየሪታት ውጽኢታዊ ነገራት ዝቐንዐ ኮድ ንምጽሓፍ ኣገዳሲ እዩ። እንከሎ ፕራይቨት ዝለዓለ ምዕሻግ ከረጋግጽ ፡ ዝተሓለዉ ናይ ገዛእ ርእሶም ኣባላት ንኡስ ደረጃ ምብጻሕ ብምፍቃድ ሚዛን ይህቡ። ብዛዕባ ደረጃታት ተበፃሕነት ብግቡእ ዝተረድአ ውሳነታት ምሃብ ንውሕስነት ኮድ፣ ምሕላውነትን ምዝርጋሕን የዕቢ።
ብሉጽ ልምድታት ብምኽባርን ትርጉም ነፍሲ ወከፍ መቐየሪ ኣብ ግምት ብምእታውን፡ ኣዳለውቲ ድልዱልን ተዓጻጻፍን ሶፍትዌር ስነ ህንጻታት ክፈጥሩ ይኽእሉ። ነቲ ዝምጥን መእተዊ መቐየሪ ምጥቃም ኣብ ሓፈሻዊ ፅሬትን ዓወትን ናይ ሶፍትዌር ፕሮጀክትታት ኣበርክቶ ዝገብር ወሳኒ ክእለት እዩ።
ትሕዝቶ ባዶ እዩ!