ট্র্যাক
/
Elixir
Elixir
/
সিলেবাস
/
মৌলিক বিষয়
মৌ

মৌলিক বিষয় মধ্যে Elixir

2টি অনুশীলনী

মৌলিক বিষয় সম্পর্কে

  • Elixir ডাইনামিকভাবে টাইপড।
    • একটি ভ্যারিয়েবলের টাইপ কেবল রানটাইমেই যাচাই করা হয়।
  • ম্যাচ = অপারেটর ব্যবহার করে আমরা যেকোনো টাইপের একটি মান একটি ভ্যারিয়েবলের নামের সাথে বাইন্ড করতে পারি:
    • ভ্যারিয়েবল আবার বাইন্ড করা সম্ভব।
    • একটি ভ্যারিয়েবলের সাথে যেকোনো টাইপের মান বাইন্ড করা যেতে পারে।

মডিউল

  • Elixir-এ কোড সংগঠনের মূল ভিত্তি হলো মডিউল।
    • একটি মডিউল অন্য সব মডিউলের কাছে দৃশ্যমান।
    • একটি মডিউল defmodule দিয়ে ডিফাইন করা হয়।

নামযুক্ত ফাংশন

  • সব নামযুক্ত ফাংশন একটি মডিউলের ভেতরে ডিফাইন করতে হয়।

    • নামযুক্ত ফাংশন def দিয়ে ডিফাইন করা হয়।
    • এর বদলে defp ব্যবহার করে একটি নামযুক্ত ফাংশনকে প্রাইভেট করা যায়।
    • ফাংশনের শেষ এক্সপ্রেশনের মান অন্তর্নিহিতভাবে রিটার্ন করা হয়।
    • ছোট ফাংশন এক লাইনের সিনট্যাক্স ব্যবহার করেও লেখা যায়।
    def increment(n) do
      n + 1
    end
    
    defp private_increment(n) do
      n + 1
    end
    
    def short_increment(n), do: n + 1
    
  • ফাংশন কল করা হয় মডিউলের নামের সাথে ফাংশনের পুরো নাম ব্যবহার করে।

    • নিজের মডিউলের ভেতর থেকে কল করলে মডিউলের নাম বাদ দেওয়া যায়।
  • একটি নামযুক্ত ফাংশন বোঝাতে প্রায়ই ফাংশনের অ্যারিটি ব্যবহার করা হয়।

    • অ্যারিটি বলতে ফাংশনটি যে সংখ্যক আর্গুমেন্ট নেয় সেটিকে বোঝায়।
    # add/3, because the arity is 3
    def add(x, y, z), do: x + y + z
    

নামকরণের রীতিনীতি

মডিউলের নামে PascalCase ব্যবহার করা উচিত। একটি মডিউলের নাম অবশ্যই বড় হাতের অক্ষর A-Z দিয়ে শুরু হতে হবে এবং এতে অক্ষর a-zA-Z, সংখ্যা 0-9 আর আন্ডারস্কোর _ থাকতে পারে।

ভ্যারিয়েবল ও ফাংশনের নামে snake_case ব্যবহার করা উচিত। একটি ভ্যারিয়েবল বা ফাংশনের নাম অবশ্যই ছোট হাতের অক্ষর a-z বা আন্ডারস্কোর _ দিয়ে শুরু হতে হবে, এতে অক্ষর a-zA-Z, সংখ্যা 0-9 আর আন্ডারস্কোর _ থাকতে পারে, এবং নামের শেষে একটি প্রশ্নবোধক চিহ্ন ? বা একটি বিস্ময়সূচক চিহ্ন ! থাকতে পারে।

ইন্টিজার

ইন্টিজার মান হলো এক বা একাধিক অঙ্কে লেখা পূর্ণসংখ্যা। এগুলো নিয়ে আপনি মৌলিক গাণিতিক অপারেশন করতে পারেন।

স্ট্রিং

স্ট্রিং লিটারেল হলো ডাবল কোটেশনের ভেতরে থাকা ক্যারেক্টারের একটি ক্রম।

string = "this is a string! 1, 2, 3!"

স্ট্যান্ডার্ড লাইব্রেরি

  • ডকুমেন্টেশন অনলাইনে hexdocs.pm/elixir-এ পাওয়া যায়।
  • বেশিরভাগ বিল্ট-ইন ডেটা টাইপের একটি সংশ্লিষ্ট মডিউল থাকে, যেমন Integer, Float, String, Tuple, List।
  • Kernel মডিউলটি একটি বিশেষ মডিউল।
    • স্ট্যান্ডার্ড লাইব্রেরির বাকি অংশ যে মৌলিক সামর্থ্যগুলোর উপরে গড়ে উঠেছে, সেগুলো সরবরাহ করে।
    • স্বয়ংক্রিয়ভাবে ইমপোর্ট করা হয়।
    • এর ফাংশনগুলো Kernel. প্রিফিক্স ছাড়াই ব্যবহার করা যায়।

কোড কমেন্ট

সোর্স কোড পড়া অন্য ডেভেলপারদের জন্য নোট রেখে যেতে কোড কমেন্ট ব্যবহার করা যায়। Elixir-এ এক লাইনের কমেন্টের আগে # বসে।

GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি নতুন একটি উইন্ডো বা ট্যাবে খুলবে

মৌলিক বিষয় শিখুন

অনুশীলন লক করা আছে

মৌলিক বিষয় অনুশীলন করতে আরও ১টি অনুশীলনী আনলক করুন