আপনি যখন প্রোগ্রামিং করছেন, আপনি আক্ষরিক অর্থে একটি পদ্ধতি বা একটি রুটিন সংজ্ঞায়িত করছেন , আপনি কম্পিউটার সঞ্চালন করতে চান. একটি সাধারণ সাদৃশ্য কম্পিউটার প্রোগ্রামিংকে বেকিং রুটির সাথে তুলনা করে:আপনি কাজের পরিবেশ সেট আপ করতে একবার উপাদানগুলি তালিকাভুক্ত করেন, তারপরে একটি রুটি দিয়ে শেষ করতে আপনাকে যে পদক্ষেপগুলি নিতে হবে তা তালিকাভুক্ত করুন৷ প্রোগ্রামিং এবং বেকিং উভয় ক্ষেত্রে, কিছু পদক্ষেপ বিভিন্ন বিরতিতে পুনরাবৃত্তি করতে হবে। উদাহরণস্বরূপ, রুটি বেক করার ক্ষেত্রে এটি টক জাতীয় খাবার খাওয়ানোর প্রক্রিয়া হতে পারে:
STIR=100
SNOOZE=86400
function feed_culture {
remove_from(pantry)
add(flour, water)
stir($STIR)
sleep($SNOOZE)
}
এবং পরে, ময়দা গুঁড়ো এবং প্রুফিং:
KNEAD=600
SNOOZE=7200
function process_dough {
remove_from(proofing_drawer)
knead($KNEAD)
return_to_drawer($SNOOZE)
}
প্রোগ্রামিং-এ, এই সাবরুটিনগুলিকে ফাংশন হিসাবে প্রকাশ করা যেতে পারে . প্রোগ্রামারদের জন্য ফাংশনগুলি গুরুত্বপূর্ণ কারণ তারা কোডের অপ্রয়োজনীয়তা কমাতে সাহায্য করে, যার ফলে প্রয়োজনীয় রক্ষণাবেক্ষণের পরিমাণ হ্রাস পায়। উদাহরণস্বরূপ, প্রোগ্রাম্যাটিকভাবে রুটি বেক করার কাল্পনিক দৃশ্যে, যদি আপনি ময়দার প্রমাণের সময় পরিবর্তন করতে চান, যতক্ষণ আপনি আগে একটি ফাংশন ব্যবহার করেছেন, আপনাকে শুধুমাত্র একবার সেকেন্ডের মান পরিবর্তন করতে হবে, হয় একটি ভেরিয়েবল ব্যবহার করে (যাকে স্নুজ বলা হয় নমুনা কোডে) বা সরাসরি সাবরুটিনে যা ময়দা প্রক্রিয়া করে। এটি আপনার অনেক সময় বাঁচাতে পারে, কারণ ময়দার ক্রমবর্ধমান প্রতিটি সম্ভাব্য উল্লেখের জন্য আপনাকে আপনার কোডবেসের মাধ্যমে সন্ধান করতে হবে না, একটি অনুপস্থিত হওয়ার বিষয়ে খুব কম উদ্বেগ। অনেক বাগ একটি মিসড মান যা পরিবর্তিত হয়নি বা খারাপভাবে কার্যকর করা sed
এর কারণে হয়েছে ম্যানুয়ালি তাদের জন্য শিকার না করে প্রতিটি শেষ ম্যাচ ধরার আশায় কমান্ড।
Bash-এ, একটি ফাংশন সংজ্ঞায়িত করা আপনার লেখা স্ক্রিপ্ট ফাইলে বা একটি পৃথক ফাইলে সেট করার মতোই সহজ। আপনি যদি একটি ডেডিকেটেড ফাইলে ফাংশন সংরক্ষণ করেন, আপনি source
করতে পারেন এটিকে আপনার স্ক্রিপ্টে রাখুন যেমন আপনি include
করবেন C বা C++ বা import
-এ একটি লাইব্রেরি পাইথনে একটি মডিউল। একটি ব্যাশ ফাংশন তৈরি করতে, কীওয়ার্ড function
ব্যবহার করুন :
function foo {
# code here
}
একটি ফাংশন আর্গুমেন্টের সাথে কিভাবে কাজ করে তার একটি সহজ (এবং কিছুটা বানোয়াট, কারণ এটিকে আরও সহজ করা যেতে পারে) উদাহরণ দেওয়া হল:
#!/usr/bin/env bash
ARG=$1
function mimic {
if [[ -z $ARG ]]; then
ARG='world'
fi
echo "hello $ARG"
}
mimic $ARG
এখানে ফলাফল আছে:
$ ./mimic
hello world
$ ./mimic everybody
hello everybody
স্ক্রিপ্টের চূড়ান্ত লাইনটি নোট করুন, যা ফাংশনটি কার্যকর করে। এটি শুরুর স্ক্রিপ্টার এবং প্রোগ্রামারদের জন্য বিভ্রান্তির একটি সাধারণ বিষয়:ফাংশনগুলি স্বয়ংক্রিয়ভাবে কার্যকর হয় না। তারা সম্ভাব্য হিসেবে বিদ্যমান তাদের ডাকা পর্যন্ত রুটিন।
ফাংশন কলিং একটি লাইন ছাড়া, ফাংশন শুধুমাত্র সংজ্ঞায়িত করা হবে এবং চালানো হবে না.
আপনি যদি Bash-এ নতুন হয়ে থাকেন, শেষ লাইনটি অন্তর্ভুক্ত করে এবং আবার শেষ লাইনটি মন্তব্য করার সাথে নমুনা স্ক্রিপ্টটি চালানোর চেষ্টা করুন।
ফাংশন ব্যবহার করা
ফাংশনগুলি অত্যাবশ্যক প্রোগ্রামিং ধারণা, এমনকি সাধারণ স্ক্রিপ্টগুলির জন্যও। আপনি ফাংশনগুলির সাথে যত বেশি আরামদায়ক হবেন, আপনি যখন একটি জটিল সমস্যার মুখোমুখি হবেন তখন আপনি ততই ভাল হবেন যার জন্য কমান্ডের ঘোষণামূলক লাইনের চেয়ে আরও গতিশীল কিছু প্রয়োজন। সাধারণ-উদ্দেশ্যের ফাংশনগুলিকে আলাদা ফাইলে রাখলে আপনি কিছু কাজ বাঁচাতে পারেন, কারণ এটি আপনাকে সাধারণত যে রুটিনগুলি ব্যবহার করে সেগুলি তৈরি করতে সাহায্য করবে যাতে আপনি সেগুলিকে সমস্ত প্রোজেক্টে পুনরায় ব্যবহার করতে পারেন। আপনার স্ক্রিপ্টিং অভ্যাস দেখুন এবং ফাংশনগুলি কোথায় ফিট হতে পারে তা দেখুন৷