Elixir:
ভবিষ্যত বা অতীতের তারিখ গণনা করা
কিভাবে:
এলিক্সিরের বিল্ট-ইন Date
মডিউল ব্যবহার করে, আপনি সহজেই টাইমলাইনের সাথে খেলতে পারেন।
# একটি দেওয়া তারিখ থেকে যোগ বা বিয়োগ
date_today = ~D[2023-04-15]
{year, month, day} = date_today
# ভবিষ্যতে ১০ দিন পরের তারিখ গণনা
date_future = Date.add(date_today, 10)
IO.inspect(date_future) # => ~D[2023-04-25]
# অতীতে ৩০ দিন আগের তারিখ গণনা
date_past = Date.add(date_today, -30)
IO.inspect(date_past) # => ~D[2023-03-16]
লক্ষ্য করুন কিভাবে Date.add/2
সহজেই দিনের সংখ্যা নেয় যা আপনি সময়ের কন্টিনিউয়ামে যাত্রা করতে চান।
গভীর ডাইভ
ভবিষ্যত বা অতীতের তারিখ গণনা করার ক্ষমতা নতুন নয়। ঐতিহাসিক প্রোগ্রামিং ভাষাগুলিও তাদের নিজস্ব উপায় ছিল— COBOL বা FORTRAN চিন্তা করুন। তবে, এলিক্সির ফাংশনাল ফ্লেয়ার এবং ডেটার অমূল্যতা প্রদান করে, যা তারিখের গণনাকে সরল এবং ত্রুটিগুলি কম প্রবণ করে তোলে।
বিকল্প? আপনি সেকেন্ড, মিনিট ইত্যাদি যোগ করে ম্যানুয়ালি গণনা করতে পারেন, কিন্তু যখন এলিক্সির একটি দৃঢ় Date
মডিউল প্রদান করে, তখন পুনরায় চাকা আবিষ্কার করার কি দরকার? বিশেষ করে বিবেচনা করে যে সময়-ভিত্তিক গণনা আদর্শ বছর, সময় অঞ্চল, এবং দিনের আলো সংরক্ষণ পরিবর্তনগুলি হিসাবে জটিল হতে পারে।
বাস্তবায়নের বিস্তারিতগুলো এলিক্সিরের :calendar
মডিউল এবং এরল্যাং বাস্তবায়নের অধীনে বুঝতে ঘোরে। আমরা তারিখ এবং সময়ের কার্যকারিতা বিবর্তনের যুগের উপর দাঁড়িয়ে আছি, এবং এলিক্সিরের সিনট্যাক্স সুগার এটি আরো মধুর করে তুলেছে।
আরো দেখুন
- এলিক্সিরের অফিসিয়াল
Date
মডিউল ডকুমেন্টেশন: https://hexdocs.pm/elixir/Date.html - “Date, Time, and Time Zones in Elixir”: এলিক্সিরের সময়-হ্যান্ডলিং ক্ষমতাগুলি গভীর অন্বেষণ করে একটি নিবন্ধ।
- এরল্যাং এর
:calendar
মডিউল ডকুমেন্টেশন: http://erlang.org/doc/apps/erts/calendar.html