Named এবং Anonymous Functions

Functions in Julia (ফাংশনস) - জুলিয়া (Julia) - Computer Programming

414

জুলিয়া প্রোগ্রামিং ভাষায় Named Functions এবং Anonymous Functions দুই ধরনের ফাংশন ব্যবহৃত হয়। এগুলির মধ্যে প্রধান পার্থক্য হল Named Functions-এ ফাংশনের একটি নাম থাকে, যেখানে Anonymous Functions-এ ফাংশনের কোনো নাম থাকে না। নিচে এই দুটি ধরনের ফাংশনের বৈশিষ্ট্য এবং উদাহরণ দেখানো হলো।


১. Named Functions

Named Function এমন একটি ফাংশন যার একটি নির্দিষ্ট নাম থাকে এবং যা পরবর্তী কোডে পুনরায় ব্যবহার করা যায়। এগুলি সাধারণত ফাংশন ডিফাইন করার সময় একটি নাম ব্যবহার করে, যাতে পরবর্তীতে কোডের যেকোনো স্থানে ফাংশনটি কল করা যায়।

Named Function এর সিনট্যাক্স:

function function_name(arguments)
    # কোডের অংশ
end

উদাহরণ ১: Named Function তৈরি করা

function add(a, b)
    return a + b
end

result = add(3, 5)  # ফাংশন কল
println(result)      # আউটপুট হবে: 8

এখানে, add একটি Named Function যা দুইটি আর্গুমেন্ট গ্রহণ করে এবং তাদের যোগফল ফেরত দেয়।

উদাহরণ ২: Named Function এর অন্যান্য ব্যবহার

function multiply(x, y)
    return x * y
end

product = multiply(4, 5)  # ফাংশন কল
println(product)           # আউটপুট হবে: 20

এখানে, multiply একটি Named Function যা দুটি সংখ্যার গুণফল বের করে।


২. Anonymous Functions

Anonymous Functions (বা lambda functions) হল এমন ফাংশন যার কোনো নাম থাকে না। এগুলি সাধারণত একক ব্যবহার বা অস্থায়ী ফাংশন হিসেবে ব্যবহৃত হয়। এই ধরনের ফাংশন তৈরি করা সহজ এবং এগুলি সাধারণত যেখানে একবার ব্যবহারের প্রয়োজন, সেখানে সরাসরি কোডে লেখা হয়।

Anonymous Function এর সিনট্যাক্স:

function_name = (arguments) -> expression

এখানে, arguments ফাংশনের আর্গুমেন্ট, এবং expression হল সেই কোড যা আর্গুমেন্টের উপর কাজ করবে।

উদাহরণ ১: Anonymous Function ব্যবহার করা

add = (a, b) -> a + b

result = add(3, 5)  # ফাংশন কল
println(result)      # আউটপুট হবে: 8

এখানে, add একটি Anonymous Function যা দুইটি আর্গুমেন্ট গ্রহণ করে এবং তাদের যোগফল প্রদান করে।

উদাহরণ ২: Array এর সাথে Anonymous Function ব্যবহার

arr = [1, 2, 3, 4, 5]

# Anonymous Function ব্যবহার করে array তে প্রতিটি মানকে দ্বিগুণ করা
doubled_arr = map(x -> x * 2, arr)
println(doubled_arr)  # আউটপুট হবে: [2, 4, 6, 8, 10]

এখানে, x -> x * 2 একটি Anonymous Function যা arr এর প্রতিটি উপাদানকে দ্বিগুণ করে এবং map ফাংশনের মাধ্যমে সেই মানগুলো তৈরি হয়।


৩. Named এবং Anonymous Functions এর মধ্যে পার্থক্য

বৈশিষ্ট্যNamed FunctionsAnonymous Functions
নামএকটি নাম থাকেকোনো নাম থাকে না
ব্যবহারকোডের যেকোনো স্থানে পুনরায় ব্যবহার করা যায়একবার ব্যবহারের জন্য উপযুক্ত
সিনট্যাক্সfunction function_name(arguments)(arguments) -> expression
ব্যবহারের পরিসীমাএকাধিক স্থানে ফাংশনটি ব্যবহার করা যায়সাধারণত একক ব্যবহার বা অস্থায়ী ফাংশন
উদাহরণfunction add(a, b)multiply = (x, y) -> x * y

৪. অন্যান্য ব্যবহার

Named Function এর অন্যান্য উদাহরণ:

function square(x)
    return x^2
end

squared_value = square(4)  # ফাংশন কল
println(squared_value)      # আউটপুট হবে: 16

Anonymous Function এর অন্যান্য উদাহরণ:

# Array তে সব সংখ্যার বর্গফল বের করা
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(x -> x^2, numbers)
println(squared_numbers)  # আউটপুট হবে: [1, 4, 9, 16, 25]

এখানে, x -> x^2 একটি Anonymous Function যা numbers এর প্রতিটি উপাদানকে বর্গফল করে।


সারসংক্ষেপ

Named Functions এবং Anonymous Functions জুলিয়া ভাষায় দুটি গুরুত্বপূর্ণ ফাংশন ধারণা। Named Functions এর একটি নির্দিষ্ট নাম থাকে এবং এগুলি বারবার ব্যবহার করা যায়। অন্যদিকে, Anonymous Functions কোনও নাম ছাড়া একবার ব্যবহারের জন্য তৈরি করা হয় এবং এগুলি সাধারনত একক বা অস্থায়ী কাজের জন্য ব্যবহৃত হয়। Anonymous Functions সহজ এবং সংক্ষিপ্ত ফাংশনালিটি প্রদান করে, যেখানে Named Functions বড় এবং পুনরায় ব্যবহৃত কোড ব্লক তৈরির জন্য উপযুক্ত।

Content added || updated By
Promotion

Are you sure to start over?

Loading...