TG Telegram Group & Channel
Mizan Institute of Technology - MiT🇪🇹 | United States America (US)
Create: Update:

ስለምንሰጣቸው ኮርሶች ማብራሪያ ክፍል 2️⃣
ለዛሬ ፓይተን ፕሮግራሚንግን በተመለከተ የተወሰኑ ሃሳቦችን እናካፍላችሁ!

ፓይተን ከፕሮግራሚን ቋንቋዎች መካከል አንዱ ስለሆነ ሃሳቡን እንረዳው ይረዳን ዘንድ ቅድሚያ ስለ ፕሮግራሚንግ ቋንቋ ምንነት ትንሽ እንበል።


በመጀመሪያ ወደ ፕሮግራሚንግ ዓለም እንኳን ደህና መጡ! (Introduction to the World of Programming)

ግን ግን… ከኮምፒውተር ጋር መነጋገር እንደሚችሉ ያውቃሉ? በድምጽዎ ወይም በጽሑፍ መልእክት አይደለም የምትግባቡት! ኮምፒውተሮች የራሳቸው ቋንቋ አላቸው፡ የፕሮግራሚንግ ቋንቋ (Programming Language) ይባላል።

የፕሮግራሚንግ ቋንቋ ምንድን ነው?
ልክ ሰዎች እርስ በእርስ ለመግባባት ቋንቋ እንደሚጠቀሙት (ለምሳሌ፡ አማርኛ፣ ኦሮምኛ፣ እንግሊዝኛ፣ አረብኛ፣ ፈረንሳይኛ...) እንደሚጠቀሙ ሁሉ፣ እኛ ሰዎች ከኮምፒውተር ጋር ለመግባባትም የፕሮግራሚንግ ቋንቋ እንጠቀማለን።

የፕሮግራሚንግ ቋንቋ ለኮምፒውተሩ፤ ምን ማድረግ እንዳለበት፣ እንዴት ማድረግ እንዳለበት እና መቼ ማድረግ እንዳለበት የሚነግሩ ትዕዛዞች (instructions) ስብስብ ነው። እነዚህ ትዕዛዞች በተወሰነ ቅደም ተከተል (syntax) እና ትርጉም (semantics) የተጻፉ ናቸው። ልክ የምግብ አዘገጃጀት መመሪያ (recipe) አንድን ምግብ እንዴት ማዘጋጀት እንደሚቻል ደረጃ በደረጃ እንደሚነግረን ሁሉ፣ የፕሮግራሚንግ ቋንቋም ኮምፒውተሩ አንድን ስራ እንዴት ማከናወን እንዳለበት ይነግረዋል።

✔️የፕሮግራሚንግ ቋንቋዎች ጥቅሞች:

👉አውቶሜሽን (Automation): ተደጋጋሚ ስራዎችን በራሳቸው እንዲሰሩ ማድረግ። ለምሳሌ፡- በየቀኑ አንድ አይነት ኢሜይል መላክ ካለብዎት፣ ይህን ስራ በፕሮግራም መስራት ይችላሉ። እርስዎ በየቀኑ ተመሳሳይ ነገር ማኑዋሊ ከመስራት ያንን ስራ የሚሰራ አንድ ፕሮግራም መፃፍ ማለት ነው።

👉ችግር መፍታት (Problem Solving): ውስብስብ ችግሮችን ለመፍታት ኮምፒውተርን መጠቀም እንችላለን። ለምሳሌ፡- የአየር ሁኔታ ትንበያን ለማስላት፣ የህክምና ምስሎችን ለመተንተን።

👉አዲስ ነገር መፍጠር (Innovation): አዳዲስ ሶፍትዌሮችን፣ ድረ-ገጾችን፣ የሞባይል መተግበሪያዎችን፣ ጌሞችን... ለመፍጠር።

👉የመረጃ ትንተና (Data Analysis): ብዙ መረጃዎችን (data) በፍጥነት እና በትክክል ለመተንተን። ማንዋሊ እነ excel ጋ ከመዛዛግ በፕሮግራሚንግ ማፋጠን ይችላል።



✔️የተለመዱ የፕሮግራሚንግ ቋንቋዎች (Common Programming Languages):
በአለም ላይ የሰው ልጆች የምንግባባባቸው በሺዎች የሚቆጠሩ ቋንቋዎች እንዳሉ ሁሉ በሺዎች የሚቆጠሩ የፕሮግራሚንግ ቋንቋዎች አሉ። አንዳንዶቹ በጣም ተወዳጅ ሲሆኑ፣ አንዳንዶቹ ደግሞ ለተወሰኑ ስራዎች ብቻ ያገለግላሉ። ከታዋቂዎቹ መካከል፡-

⚡️Python: ሁለገብ፣ ለመማር ቀላል፣ ለዳታ ሳይንስ፣ ለማሽን ለርኒንግ፣ ለድረ-ገጽ ልማት... የሚውል። (ስለ ፓይተን ዛሬ ከዚህ ጽሁፍ በታች በዝርዝር እናያለን!)

⚡️JavaScript: በዋናነት ለድረ-ገጽ ልማት (front-end) የሚያገለግል (ከላይ ፉል ስታክ ላይ አይረናል)፣ ግን ደግሞ ለጀርባ (back-end) እና ለሞባይል መተግበሪያ (React Native) ማበልፀግም የሚውል።

⚡️Java: ለትላልቅ ሲስተሞች፣ ለሞባይል መተግበሪያዎች (Android), ለድረ-ገጽ ጀርባ (back-end)... የሚውል።

⚡️C# (C Sharp): በማይክሮሶፍት የተሰራ፣ ለዊንዶውስ መተግበሪያዎች፣ ለጌሞች (Unity), ለድረ-ገጽ ጀርባ... የሚውል።

⚡️C++: ለከፍተኛ አፈጻጸም (high performance) የሚያስፈልጉ ስራዎች፣ ለጌሞች፣ ለኦፕሬቲንግ ሲስተሞች (ዊንደውስ፣ ማክ፣ ላይነክስ... የሚውል።

⚡️PHP: በዋናነት ለድረ-ገጽ ጀርባ (back-end) የሚያገለግል።

⚡️Swift: በ Apple የተሰራ ለ iOS እና macOS.

⚡️Go: በ Google የተሰራ አዲስ ቋንቋ.

⚡️Kotlin: ለ Android (አሁን ላይ በ5 ሚሊዮን ኮደርስ ላይ ቤዚኩ እየተሰጠ ያለው ኮርስ).

⚡️⚡️ Dart:  ይህ ለአንድሮይድና iOS ስልኮች ላይ የሚሰራ ሞባይል አፕ በFlutter ለመስራት ይጠቅማል.



😄የፕሮግራሚንግ ቋንቋዎች ግንኙነት እና ተመሳሳይነት:

ምንም እንኳን እያንዳንዱ የፕሮግራሚንግ ቋንቋ የራሱ የሆነ ልዩ ባህሪያት ቢኖረውም፣ ብዙዎቹ ተመሳሳይ መሰረታዊ ፅንሰ-ሀሳቦች (fundamental concepts) አሏቸው። እነዚህም፡-

➡️ (Variables): መረጃዎችን ለማከማቸት የሚያገለግሉ ስያሜዎች ናቸው።

➡️የዳታ አይነቶች (Data Types): ቁጥሮች፣ ጽሑፎች፣ ቡሊያኖች (እውነት ሀሰት)...

➡️ኦፕሬተሮች (Operators): የሂሳብ ስሌቶችን፣ ንፅፅሮችን፣ ሎጂካዊ ኦፕሬሽኖችን ለመስራት።

➡️Control Structures: ሁኔታዊ መግለጫዎች (ይህ ከሆነ ይህ ይሆናል፣ ካልሆነ ግን ሌላኛው ይሆናል) (if/else), ዑደቶች – ድግግሞሽ (for, while, do while))።

➡️ፈንክሽኖች (Functions): ተደጋጋሚ ኮዶችን በአንድ ቦታ ለመሰብሰብ።

አንድ የፕሮግራሚንግ ቋንቋ መማር ሌሎችን ለመማር ቀላል ያደርገዋል፣ ምክንያቱም እነዚህ መሰረታዊ ፅንሰ-ሀሳቦች በብዙ ቋንቋዎች ውስጥ ተመሳሳይ ናቸው።


💎 ፓይተን (Python) ከሌሎች ፕሮግራሚንግ ቋንቋዎች ለየት የሚያደርገው ምንድን ነው? (Why Python?)

ከላይ ከተዘረዘሩት ታዋቂ ቋንቋዎች መካከል ፓይተን ልዩ ቦታ ይይዛል። ለዚህም በርካታ ምክንያቶች አሉ፡-

💻 ቀላልነት (Exceptional Simplicity): ፓይተን ለመማር በጣም ቀላል ነው። ኮዱ ግልፅ፣ ለማንበብ ቀላል እና ለመረዳት የማያስቸግር ነው። ወደ እንግሊዝኛ ቋንቋ የቀረበ ነው። ይህ ማለት በፍጥነት መማር እና ወደ ተግባር መግባት ይችላሉ ማለት ነው! ሌሎች ቋንቋዎች ከሚጠይቁት ጊዜ በጣም ባነሰ ጊዜ ውስጥ ፓይተንን መማር ይቻላል።

💻 ሁለገብነት (Incredible Versatility): ፓይተን ልክ እንደ ሁለገብ መሳሪያ (multi-tool) ነው። ለተለያዩ የቴክኖሎጂ ዘርፎች ያገለግላል። ከድረ-ገጽ እስከ ዳታ ሳይንስ፣ ከማሽን ለርኒንግ እስከ አርቴፊሻል ኢንተለጀንስ... ፓይተን በሁሉም ቦታ አለ!

💻ግዙፍ ማህበረሰብ ከጀርባው መኖር (Huge Community): ፓይተንን ሲማሩ ብቻዎን አይደሉም! በአለም ዙሪያ በሚሊዮኖች የሚቆጠሩ የፓይተን ደቨሎፐሮች (developers) አሉ። ይህ ማለት ማንኛውም ጥያቄ ቢኖርዎት፣ ማንኛውም ችግር ቢያጋጥምዎት፣ እርዳታ ማግኘት በጣም ቀላል ነው! ምናልባትም እርስዎን ያጋጠመዎ ጥያቄ ከእርስዎ በፊት የነበሩ ደቨሎፐሮችን አጋጥሟቸው፣ እነሱ ጠይቀው ተመልሶላቸው፣ አሁን ላይ እርስዎ ያልገባዎትን ሲጠይቁ መልሱ በቀላል የሚገኝ ይሆናል።

💻ብዙ ላይብረሪዎች (Libraries) እና ፍሬምወርኮች (Frameworks): ፓይተን ብዙ ዝግጁ የሆኑ ኮዶች (libraries) እና ፍሬምወርኮች (frameworks) አሉት። ይህ ማለት ብዙ ስራዎችን ከባዶ መፃፍ አያስፈልግዎትም ማለት ነው! ለምሳሌ፡- ድረ-ገጽ ለመስራት Django ወይም Flask, ለዳታ ሳይንስ NumPy, Pandas, Matplotlib, ለማሽን ለርኒንግ Scikit-learn, TensorFlow, Keras... እነዚህ ሁሉ ዝግጁ የሆኑ መሳሪያዎች ናቸው።

ስለምንሰጣቸው ኮርሶች ማብራሪያ ክፍል 2️⃣
ለዛሬ ፓይተን ፕሮግራሚንግን በተመለከተ የተወሰኑ ሃሳቦችን እናካፍላችሁ!

ፓይተን ከፕሮግራሚን ቋንቋዎች መካከል አንዱ ስለሆነ ሃሳቡን እንረዳው ይረዳን ዘንድ ቅድሚያ ስለ ፕሮግራሚንግ ቋንቋ ምንነት ትንሽ እንበል።


በመጀመሪያ ወደ ፕሮግራሚንግ ዓለም እንኳን ደህና መጡ! (Introduction to the World of Programming)

ግን ግን… ከኮምፒውተር ጋር መነጋገር እንደሚችሉ ያውቃሉ? በድምጽዎ ወይም በጽሑፍ መልእክት አይደለም የምትግባቡት! ኮምፒውተሮች የራሳቸው ቋንቋ አላቸው፡ የፕሮግራሚንግ ቋንቋ (Programming Language) ይባላል።

የፕሮግራሚንግ ቋንቋ ምንድን ነው?
ልክ ሰዎች እርስ በእርስ ለመግባባት ቋንቋ እንደሚጠቀሙት (ለምሳሌ፡ አማርኛ፣ ኦሮምኛ፣ እንግሊዝኛ፣ አረብኛ፣ ፈረንሳይኛ...) እንደሚጠቀሙ ሁሉ፣ እኛ ሰዎች ከኮምፒውተር ጋር ለመግባባትም የፕሮግራሚንግ ቋንቋ እንጠቀማለን።

የፕሮግራሚንግ ቋንቋ ለኮምፒውተሩ፤ ምን ማድረግ እንዳለበት፣ እንዴት ማድረግ እንዳለበት እና መቼ ማድረግ እንዳለበት የሚነግሩ ትዕዛዞች (instructions) ስብስብ ነው። እነዚህ ትዕዛዞች በተወሰነ ቅደም ተከተል (syntax) እና ትርጉም (semantics) የተጻፉ ናቸው። ልክ የምግብ አዘገጃጀት መመሪያ (recipe) አንድን ምግብ እንዴት ማዘጋጀት እንደሚቻል ደረጃ በደረጃ እንደሚነግረን ሁሉ፣ የፕሮግራሚንግ ቋንቋም ኮምፒውተሩ አንድን ስራ እንዴት ማከናወን እንዳለበት ይነግረዋል።

✔️የፕሮግራሚንግ ቋንቋዎች ጥቅሞች:

👉አውቶሜሽን (Automation): ተደጋጋሚ ስራዎችን በራሳቸው እንዲሰሩ ማድረግ። ለምሳሌ፡- በየቀኑ አንድ አይነት ኢሜይል መላክ ካለብዎት፣ ይህን ስራ በፕሮግራም መስራት ይችላሉ። እርስዎ በየቀኑ ተመሳሳይ ነገር ማኑዋሊ ከመስራት ያንን ስራ የሚሰራ አንድ ፕሮግራም መፃፍ ማለት ነው።

👉ችግር መፍታት (Problem Solving): ውስብስብ ችግሮችን ለመፍታት ኮምፒውተርን መጠቀም እንችላለን። ለምሳሌ፡- የአየር ሁኔታ ትንበያን ለማስላት፣ የህክምና ምስሎችን ለመተንተን።

👉አዲስ ነገር መፍጠር (Innovation): አዳዲስ ሶፍትዌሮችን፣ ድረ-ገጾችን፣ የሞባይል መተግበሪያዎችን፣ ጌሞችን... ለመፍጠር።

👉የመረጃ ትንተና (Data Analysis): ብዙ መረጃዎችን (data) በፍጥነት እና በትክክል ለመተንተን። ማንዋሊ እነ excel ጋ ከመዛዛግ በፕሮግራሚንግ ማፋጠን ይችላል።



✔️የተለመዱ የፕሮግራሚንግ ቋንቋዎች (Common Programming Languages):
በአለም ላይ የሰው ልጆች የምንግባባባቸው በሺዎች የሚቆጠሩ ቋንቋዎች እንዳሉ ሁሉ በሺዎች የሚቆጠሩ የፕሮግራሚንግ ቋንቋዎች አሉ። አንዳንዶቹ በጣም ተወዳጅ ሲሆኑ፣ አንዳንዶቹ ደግሞ ለተወሰኑ ስራዎች ብቻ ያገለግላሉ። ከታዋቂዎቹ መካከል፡-

⚡️Python: ሁለገብ፣ ለመማር ቀላል፣ ለዳታ ሳይንስ፣ ለማሽን ለርኒንግ፣ ለድረ-ገጽ ልማት... የሚውል። (ስለ ፓይተን ዛሬ ከዚህ ጽሁፍ በታች በዝርዝር እናያለን!)

⚡️JavaScript: በዋናነት ለድረ-ገጽ ልማት (front-end) የሚያገለግል (ከላይ ፉል ስታክ ላይ አይረናል)፣ ግን ደግሞ ለጀርባ (back-end) እና ለሞባይል መተግበሪያ (React Native) ማበልፀግም የሚውል።

⚡️Java: ለትላልቅ ሲስተሞች፣ ለሞባይል መተግበሪያዎች (Android), ለድረ-ገጽ ጀርባ (back-end)... የሚውል።

⚡️C# (C Sharp): በማይክሮሶፍት የተሰራ፣ ለዊንዶውስ መተግበሪያዎች፣ ለጌሞች (Unity), ለድረ-ገጽ ጀርባ... የሚውል።

⚡️C++: ለከፍተኛ አፈጻጸም (high performance) የሚያስፈልጉ ስራዎች፣ ለጌሞች፣ ለኦፕሬቲንግ ሲስተሞች (ዊንደውስ፣ ማክ፣ ላይነክስ... የሚውል።

⚡️PHP: በዋናነት ለድረ-ገጽ ጀርባ (back-end) የሚያገለግል።

⚡️Swift: በ Apple የተሰራ ለ iOS እና macOS.

⚡️Go: በ Google የተሰራ አዲስ ቋንቋ.

⚡️Kotlin: ለ Android (አሁን ላይ በ5 ሚሊዮን ኮደርስ ላይ ቤዚኩ እየተሰጠ ያለው ኮርስ).

⚡️⚡️ Dart:  ይህ ለአንድሮይድና iOS ስልኮች ላይ የሚሰራ ሞባይል አፕ በFlutter ለመስራት ይጠቅማል.



😄የፕሮግራሚንግ ቋንቋዎች ግንኙነት እና ተመሳሳይነት:

ምንም እንኳን እያንዳንዱ የፕሮግራሚንግ ቋንቋ የራሱ የሆነ ልዩ ባህሪያት ቢኖረውም፣ ብዙዎቹ ተመሳሳይ መሰረታዊ ፅንሰ-ሀሳቦች (fundamental concepts) አሏቸው። እነዚህም፡-

➡️ (Variables): መረጃዎችን ለማከማቸት የሚያገለግሉ ስያሜዎች ናቸው።

➡️የዳታ አይነቶች (Data Types): ቁጥሮች፣ ጽሑፎች፣ ቡሊያኖች (እውነት ሀሰት)...

➡️ኦፕሬተሮች (Operators): የሂሳብ ስሌቶችን፣ ንፅፅሮችን፣ ሎጂካዊ ኦፕሬሽኖችን ለመስራት።

➡️Control Structures: ሁኔታዊ መግለጫዎች (ይህ ከሆነ ይህ ይሆናል፣ ካልሆነ ግን ሌላኛው ይሆናል) (if/else), ዑደቶች – ድግግሞሽ (for, while, do while))።

➡️ፈንክሽኖች (Functions): ተደጋጋሚ ኮዶችን በአንድ ቦታ ለመሰብሰብ።

አንድ የፕሮግራሚንግ ቋንቋ መማር ሌሎችን ለመማር ቀላል ያደርገዋል፣ ምክንያቱም እነዚህ መሰረታዊ ፅንሰ-ሀሳቦች በብዙ ቋንቋዎች ውስጥ ተመሳሳይ ናቸው።


💎 ፓይተን (Python) ከሌሎች ፕሮግራሚንግ ቋንቋዎች ለየት የሚያደርገው ምንድን ነው? (Why Python?)

ከላይ ከተዘረዘሩት ታዋቂ ቋንቋዎች መካከል ፓይተን ልዩ ቦታ ይይዛል። ለዚህም በርካታ ምክንያቶች አሉ፡-

💻 ቀላልነት (Exceptional Simplicity): ፓይተን ለመማር በጣም ቀላል ነው። ኮዱ ግልፅ፣ ለማንበብ ቀላል እና ለመረዳት የማያስቸግር ነው። ወደ እንግሊዝኛ ቋንቋ የቀረበ ነው። ይህ ማለት በፍጥነት መማር እና ወደ ተግባር መግባት ይችላሉ ማለት ነው! ሌሎች ቋንቋዎች ከሚጠይቁት ጊዜ በጣም ባነሰ ጊዜ ውስጥ ፓይተንን መማር ይቻላል።

💻 ሁለገብነት (Incredible Versatility): ፓይተን ልክ እንደ ሁለገብ መሳሪያ (multi-tool) ነው። ለተለያዩ የቴክኖሎጂ ዘርፎች ያገለግላል። ከድረ-ገጽ እስከ ዳታ ሳይንስ፣ ከማሽን ለርኒንግ እስከ አርቴፊሻል ኢንተለጀንስ... ፓይተን በሁሉም ቦታ አለ!

💻ግዙፍ ማህበረሰብ ከጀርባው መኖር (Huge Community): ፓይተንን ሲማሩ ብቻዎን አይደሉም! በአለም ዙሪያ በሚሊዮኖች የሚቆጠሩ የፓይተን ደቨሎፐሮች (developers) አሉ። ይህ ማለት ማንኛውም ጥያቄ ቢኖርዎት፣ ማንኛውም ችግር ቢያጋጥምዎት፣ እርዳታ ማግኘት በጣም ቀላል ነው! ምናልባትም እርስዎን ያጋጠመዎ ጥያቄ ከእርስዎ በፊት የነበሩ ደቨሎፐሮችን አጋጥሟቸው፣ እነሱ ጠይቀው ተመልሶላቸው፣ አሁን ላይ እርስዎ ያልገባዎትን ሲጠይቁ መልሱ በቀላል የሚገኝ ይሆናል።

💻ብዙ ላይብረሪዎች (Libraries) እና ፍሬምወርኮች (Frameworks): ፓይተን ብዙ ዝግጁ የሆኑ ኮዶች (libraries) እና ፍሬምወርኮች (frameworks) አሉት። ይህ ማለት ብዙ ስራዎችን ከባዶ መፃፍ አያስፈልግዎትም ማለት ነው! ለምሳሌ፡- ድረ-ገጽ ለመስራት Django ወይም Flask, ለዳታ ሳይንስ NumPy, Pandas, Matplotlib, ለማሽን ለርኒንግ Scikit-learn, TensorFlow, Keras... እነዚህ ሁሉ ዝግጁ የሆኑ መሳሪያዎች ናቸው።
Please open Telegram to view this post
VIEW IN TELEGRAM


>>Click here to continue<<

Mizan Institute of Technology - MiT🇪🇹




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)