কোডল্যাব: পরীক্ষা চালিত উন্নয়ন ত্বরান্বিত করতে মিথুন

১. ভূমিকা

এই কোডল্যাবটি টেস্ট ড্রাইভেন ডেভেলপমেন্ট (TDD)-এর মূলনীতিগুলোর সাথে পরিচয় করিয়ে দেয়, যেখানে কোড বাস্তবায়নের আগেই টেস্ট লেখা হয়। আমরা এই পদ্ধতিটি প্রদর্শন করতে রুবি ব্যবহার করে একটি সাধারণ ক্যালকুলেটর অ্যাপ তৈরি করব।

আপনি আপনার কোডিং সহকারী হিসেবে জেমিনি কীভাবে ব্যবহার করবেন, তাও শিখবেন। জেমিনি টেস্ট কেস তৈরি করে, কোড বাস্তবায়নের পরামর্শ দিয়ে এবং এমনকি কোডের ব্যাখ্যা প্রদান করে TDD চক্রকে ত্বরান্বিত করতে সাহায্য করবে।

অবশেষে, আপনি দেখতে পাবেন কীভাবে ক্যালকুলেটর অ্যাপটিকে গুগলের সম্পূর্ণভাবে পরিচালিত সার্ভারবিহীন প্ল্যাটফর্ম ক্লাউড ফাংশনে স্থাপন করে আপনার অ্যাপটিকে ব্যবহারযোগ্য করে তোলা যায়।

২. পূর্বশর্তসমূহ

  • বিলিং সক্ষম একটি গুগল ক্লাউড প্রজেক্ট
  • একটি ওয়েব ব্রাউজার

আপনার প্রকল্প তৈরি করুন

জেমিনি এপিআই সক্রিয় করুন

gcloud services enable cloudaicompanion.googleapis.com --project PROJECT_ID

ক্লাউড ফাংশন এপিআই সক্রিয় করুন

gcloud services enable cloudfunctions.googleapis.com --project PROJECT_ID

ক্লাউড শেল সক্রিয় করুন

  • আপনি ক্লাউড শেল ব্যবহার করবেন, যা গুগল ক্লাউড কনসোলে চলমান একটি কমান্ড-লাইন পরিবেশ এবং এতে প্রয়োজনীয় ভাষাগুলো আগে থেকেই ইনস্টল করা থাকে। ক্লাউড কনসোল থেকে, উপরের ডান কোণায় থাকা ‘Activate Cloud Shell’- এ ক্লিক করুন:

6757b2fb50ddcc2d.png

  • ক্লাউড শেলে সংযুক্ত হওয়ার পর, আপনি দেখতে পাবেন যে আপনি ইতিমধ্যেই প্রমাণীকৃত এবং প্রজেক্টটি আপনার প্রজেক্ট আইডিতে সেট করা আছে। আপনি যে প্রমাণীকৃত, তা নিশ্চিত করতে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান:
gcloud auth list
  • gcloud কমান্ডটি আপনার প্রজেক্ট সম্পর্কে জানে কিনা তা নিশ্চিত করতে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান:
gcloud config list project
  • আপনার প্রজেক্টটি সেট করা না থাকলে, এটি সেট করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:
gcloud config set project <YOUR_PROJECT_ID>

gcloud কমান্ড এবং এর ব্যবহার সম্পর্কে জানতে ডকুমেন্টেশন দেখুন।

ওপেন এডিটর

  • এই কোডল্যাবের জন্য, আমরা ইনবিল্ট ক্লাউড এডিটর ব্যবহার করব। ক্লাউড শেল উইন্ডোতে, উপরের ডান কোণায় থাকা 'ওপেন এডিটর' বোতামটিতে ক্লিক করুন। এটি আপনার জন্য একটি ভিএসকোড এডিটর খুলে দেবে।

e5a5e95d543db556.png

রুবি এক্সটেনশন যোগ করুন

  • বাম দিকের মেনুতে, এক্সটেনশন আইকনে ক্লিক করুন। 999939b067e1d0dc.png সার্চ বারে vscode ruby ​​লিখে VSCode Ruby এক্সটেনশনটি ইনস্টল করুন।

a6fd4e37b3d847d2.png

৩. মিথুন রাশির প্রস্তুতি

এলএলএমগুলো অনির্দিষ্ট। তাই, আপনি যখন এই প্রম্পটগুলো চেষ্টা করবেন, তখন যে প্রতিক্রিয়াটি পাবেন তা কোডল্যাবে সংযুক্ত স্ক্রিনশটগুলোর থেকে ভিন্ন হতে পারে।

চলুন প্রথমে জেমিনিকে জিজ্ঞাসা করি TDD কী। আমরা যে ক্লাউড শেল এডিটরে আছি, সেখানেই জেমিনির সাথে কথোপকথন শুরু করার জন্য, এই ধাপগুলো অনুসরণ করুন:

  • পৃষ্ঠার বাম দিকে মিথুন রাশির আইকনটি খুঁজুন। 25fdcae4447d063c.png এটি আপনার জন্য বাম দিকে চ্যাট উইন্ডোটি খুলে দেবে।
  • আপনি ' Enter a prompt here লেখা টেক্সটবক্সটিতে টাইপ করা শুরু করতে পারেন।

5e09b0fb6a1b44dd.png

প্রম্পট:

What is Test Driven Development?

প্রতিক্রিয়া:

Test-driven development (TDD) is a software development methodology that requires developers to write automated tests before writing any production code. This helps ensure the code is correct and meets the requirement.
....

এটি আপনাকে TDD এবং এর সুবিধাগুলোর একটি সংক্ষিপ্ত পরিচিতি দেয়।

এবার মিথুনকে জিজ্ঞাসা করা যাক রুবি কী:

প্রম্পট:

What is Ruby?

প্রতিক্রিয়া:

Ruby is a general-purpose, interpreted, object-oriented programming language. It is designed to be easy to read and write. Ruby is dynamically typed, meaning that the type of a variable is not declared and can change during execution.
....

এতে ব্যাখ্যা করা হয়েছে রুবি কী এবং ভাষা হিসেবে রুবি ব্যবহারের সুবিধাগুলো কী কী।

৪. প্রজেক্ট সেটআপ

চলুন এখন একটি সাধারণ সিনাত্রা অ্যাপ তৈরি করে শুরু করা যাক।

  • চলুন একটি খালি ফোল্ডার তৈরি করি। আপনি এর নাম আপনার ইচ্ছামতো দিতে পারেন। এই কোডল্যাবের জন্য আমরা এর নাম দেব gemini-tdd । ক্লাউড এডিটরের বাম দিকে Explorer ট্যাবের নিচে, /home/<YOUR-USERNAME>/ এর অধীনে ফোল্ডারটি তৈরি করুন।

d1d920b074cd7c79.png

  • চলুন, আমরা এইমাত্র তৈরি করা ফোল্ডারটি খুলি। একদম বাম দিকের মেনুতে থাকা আইকনটিতে ক্লিক করুন। 1d080370a3ccad53.png ফাইল -> ফোল্ডার খুলুন-এ ক্লিক করুন।
  • চলুন এই রুট ফোল্ডারে একটি নতুন রুবি ফাইল তৈরি করি যা অ্যাপটির সূচনা বিন্দু হিসেবে কাজ করবে, আপনি এর নাম আপনার ইচ্ছামতো দিতে পারেন। এই কোডল্যাবে আমরা এর নাম দেব app.rb 7beab8d21c59eee7.png
  • চলুন রুট ফোল্ডারে একটি Gemfile ও যোগ করি। Gemfile সম্পর্কে Gemini-কে জিজ্ঞাসা করাও ভালো হবে।
  • আমাদের টেস্ট কেসগুলো লেখার জন্য আমরা একটি app_test.rb ফাইলও তৈরি করব।

৫. মিথুন-চালিত বাস্তবায়ন

এখন আমরা কী করতে চাইছি সে সম্পর্কে জেমিনিকে কিছু ধারণা দিয়ে শুরু করা যাক এবং এর জন্য টেস্ট কেস তৈরি করতে বলা যাক। জেমিনি চ্যাট প্রম্পটে নিম্নলিখিত নির্দেশটি কপি করুন।

প্রম্পট:

Answer as a software engineer with Ruby expertise. We want to build a Ruby calculator application with a test driven development approach. Let's start by writing some tests for the calculator app using minitest gem.

প্রতিক্রিয়া:

Here is a simple test for a calculator app that adds two numbers:
require "minitest/autorun"

describe "Calculator" do
  it "should add two numbers" do
    calculator = Calculator.new
    assert_equal 5, calculator.add(2, 3)
  end
end
This test uses the assert_equal method to verify that the result of the add method is correct. 
.....

এটি আপনাকে ক্যালকুলেটর অ্যাপের জন্য একটি নমুনা টেস্ট কেস দেয়, যেমন দুটি সংখ্যা যোগ করার জন্য। এটি টেস্টগুলোর জন্য প্রয়োজনীয় ডিপেন্ডেন্সি minitest/autorun ও ইম্পোর্ট করেছে। চলুন, কন্টেন্টটি app_test.rb তে কপি করি। এখন এই টেস্টটি রান করে দেখা যাক; যেহেতু কোনো কোড লেখা নেই, এটি নিশ্চিতভাবেই ফেইল করবে।

চলুন মিথুনকে জিজ্ঞাসা করি এই পরীক্ষাটি কীভাবে চালাতে হয়।

প্রম্পট:

How do we run the tests written in app_test.rb using ruby command?

প্রতিক্রিয়া:

To run the tests written in app_test.rb using the ruby command, you can use the following steps:
1.Make sure that you are in the same directory as the app_test.rb file.
2.Open a terminal window.
3.Type the following command:
ruby app_test.rb
This will run all of the tests in the app_test.rb file and report the results.

তাহলে, চলুন পরীক্ষাটি চালানো যাক। এক্সপ্লোরার ট্যাবে app_test.rb এর উপর রাইট ক্লিক করুন এবং "Open in Integrated Terminal"-এ ক্লিক করুন।

66b4bb9598c1feca.png

নিশ্চিত করুন যে আপনি app_test.rb ফাইলটির সাথে একই ফোল্ডারে আছেন, অন্যথায় সেখানে যাওয়ার জন্য cd কমান্ডটি ব্যবহার করুন। টার্মিনালে, Gemini থেকে প্রাপ্ত কমান্ডটি চালান:

ruby app_test.rb

আপনি নিম্নলিখিত ত্রুটিটির সম্মুখীন হবেন:

NameError: uninitialized constant Calculator

চলুন, এডিটর থেকেই জেমিনিকে জিজ্ঞাসা করি কীভাবে এটি ঠিক করা যায়। ক্লাউড শেল এডিটরের নেভিগেশন প্যানে থাকা চ্যাট আইকনে ক্লিক করুন এবং নিচের প্রম্পটটি জিজ্ঞাসা করুন:

প্রম্পট:

NameError: uninitialized constant Calculator. Give me Calculator class code.

প্রতিক্রিয়া:

The error you are getting is because you have not defined the Calculator class. You need to define the Calculator class before you can use it in your tests.
Here is the code for the Calculator class:
Class Calculator
  def add(a, b)
    a + b
  end
end
Once you have defined the Calculator class, you can run the tests again and they will pass.
.....

জেমিনি আমাদের বলছে যে আমাদের কাছে Calculator নামের কোনো ক্লাস নেই এবং আমাদের একটি তৈরি করতে হবে। এটি Calculator ক্লাসটি তৈরি করার জন্য কোডও দিয়েছে। চলুন, এই কোডটি ব্যবহার করা যাক। এক্সপ্লোরার ট্যাব থেকে app.rb খুলুন এবং জেমিনির দেওয়া কোডটি এতে কপি করুন। app.rb ফাইলের বিষয়বস্তু পরিবর্তন করার সময়, আপনি জেমিনির কাছ থেকে অটো-কমপ্লিট হিসেবে কিছু সাজেশন পেতে পারেন; আপনি যদি এটি গ্রহণ করতে চান তবে tab চাপুন, অন্যথায় Esc

এখন, পরীক্ষাটি আবার চালানো যাক। আপনার ইন্টিগ্রেটেড টার্মিনালে নিম্নলিখিত কমান্ডটি টাইপ করুন:

ruby app_test.rb

কিন্তু আপনি এখনও একই ত্রুটি " NameError: uninitialized constant Calculator " এর সম্মুখীন হবেন। চলুন জেমিনিকে জিজ্ঞাসা করি এটি কীভাবে ঠিক করা যায়।

৬. জেমিনির সাথে পুনরাবৃত্তিমূলক TDD

প্রম্পট:

I am still getting this error: "NameError: uninitialized constant Calculator".

প্রতিক্রিয়া:

The error you are getting is because you have not defined the Calculator class. You need to define the Calculator class before you can use it in your tests.
Here is the code for the Calculator class:
class Calculator
  def add(a, b)
    a + b
  end

  def subtract(a, b)
    a - b
  end

  def multiply(a, b)
    a * b
  end

  def divide(a, b)
    a / b
  end
end
....

এটি আমাদের একটি প্রতিক্রিয়া দিয়েছে, যা উপরেরটির মতো হতেও পারে বা নাও হতে পারে। সুতরাং, আসুন জেমিনিকে স্পষ্টভাবে জানিয়ে দিই যে আমাদের app.rb-এ Calculator ক্লাসটি সংজ্ঞায়িত করা আছে।

প্রম্পট:

Calculator class is defined in app.rb already.

প্রতিক্রিয়া:

I see that the Calculator class is defined in the app.rb file. However, you are getting the NameError error because you are trying to use the Calculator class in the app_test.rb file without requiring the app.rb file.
To fix this, you need to add the following line to the top of the app_test.rb file:
require_relative "app"

জেমিনি থেকে আমরা app.rb ফাইলটি ইম্পোর্ট করার নির্দেশনা পেয়েছি, যেখানে ক্যালকুলেটর ক্লাসটি সংজ্ঞায়িত করা আছে। সঠিক উত্তর পেতে কখনও কখনও ২-৩ বার নির্দেশনা অনুসরণ করতে হতে পারে, কিন্তু যখন আপনি বিষয়টি আয়ত্তে এনে ফেলবেন, তখন এটি আরও সহজ হয়ে যাবে। অনুগ্রহ করে মনে রাখবেন, জেমিনির উত্তরে আপনি এর পরিবর্তে `require "./app"`- ও দেখতে পারেন। চলুন, `app_test.rb` ফাইলের `app.rb` অংশে এটি যোগ করে একই টেস্টটি আবার রান করি।

অনুগ্রহ করে নিশ্চিত করুন যে এই পর্যায়ে আপনার app_test.rb ফাইলটি দেখতে এইরকম:

require "minitest/autorun"
require "./app"

describe "Calculator" do
  it "should add two numbers" do
    calculator = Calculator.new
    assert_equal 5, calculator.add(2, 3)
  end
end

প্রজেক্ট ফোল্ডারের মধ্যে থাকা ক্লাউড শেল টার্মিনাল থেকে নিচের কমান্ডটি চালান:

ruby app_test.rb

সবকিছু ঠিকঠাক থাকলে, পরীক্ষাটি পাস করার কথা। তাই, আমরা TDD পদ্ধতি ব্যবহার করে একটি খুব সাধারণ রুবি অ্যাপ তৈরি করেছি এবং জেমিনির সাহায্য নিয়েছি। প্রম্পটের প্রতিক্রিয়াগুলো সব সময় একই রকম হবে না এবং এটি LLM মডেলের একটি স্বাভাবিক বৈশিষ্ট্য। আপনি জেমিনির ক্যালকুলেটরে আরও বেশি অপারেশন পেতে পারেন, কিন্তু সার্বিকভাবে আমরা যে প্রক্রিয়াটি অনুসরণ করেছি, সেটিই কাজ করার কথা।

৭. অ্যাপটি ক্লাউড ফাংশনে স্থাপন করুন

এবার জেমিনিকে এটি ক্লাউড ফাংশনে ডেপ্লয় করতে বলা যাক:

প্রম্পট:

Let's deploy this app to Cloud Functions

প্রতিক্রিয়া:

To deploy your app to Cloud Functions, you can use the following steps:
1.Create a new Cloud Functions project.
2.Create a new Cloud Function.
3.Set the trigger for the Cloud Function to be an HTTP request.
4.Set the entry point for the Cloud Function to be the app method in the app.rb file.
5.Deploy the Cloud Function.
Once you have deployed the Cloud Function, you can test it by sending an HTTP request to the function's URL. 
....

জেমিনি ক্লাউড ফাংশনস UI ব্যবহার করে এটি ম্যানুয়ালি কীভাবে ডেপ্লয় করতে হয় তা ব্যাখ্যা করে। কিন্তু আমি তা করতে চাই না। চলুন জেমিনিকে gcloud কমান্ডটি দিতে বলি, যা আমি সরাসরি ইন্টিগ্রেটেড টার্মিনাল থেকেই চালাতে পারব।

প্রম্পট:

How do I deploy this app to Cloud Functions gen2 using the gcloud command?

প্রতিক্রিয়া:

...
Here are the specific commands you can use to deploy your app to Cloud Functions using the gcloud command:

gcloud functions deploy calculator --runtime ruby32 --trigger-http --entry-point app

This command will create a new Cloud Function called calculator that is triggered by an HTTP request and uses the app method in the app.rb file as the entry point.

Once the Cloud Function is deployed, you can test it by sending an HTTP request to the function's URL. For example, you can use the following command to send a request to the function:

curl -X POST -H "Content-Type: application/json" -d '{"a": 2, "b": 3}' https://REGION-PROJECT_ID.cloudfunctions.net/calculator

চলুন, টার্মিনালে জেমিনি কর্তৃক প্রদত্ত gcloud কমান্ডটি এক্সিকিউট করি।

gcloud functions deploy calculator --runtime ruby32 --trigger-http --entry-point app

আপনি নিম্নলিখিত ত্রুটির সম্মুখীন হবেন:

ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Build failed: Could not find Gemfile.lock file in your app. Please make sure your bundle is up to date before deploying.; Error ID: 7916f05c

ত্রুটিটি সমাধান করতে মিথুন রাশির সাহায্য নেওয়া যাক।

প্রম্পট:

ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Build failed: Could not find Gemfile.lock file in your app. Please make sure your bundle is up to date before deploying.; Error ID: 7916f05c

প্রতিক্রিয়া:

It looks like you're trying to deploy a function to Cloud Functions, but you don't have a Gemfile.lock file in your app. To fix this, run the following command in your app directory:
bundle install
This will create a Gemfile.lock file that lists all of the gems that your app uses.
...

চলুন টার্মিনালে bundle install চালাই, যা Gemfile.lock ফাইলটি তৈরি করবে। কমান্ডটি চালানোর পর, এক্সপ্লোরার ট্যাবটি দেখুন, আপনি Gemfile.lock ফাইলটি দেখতে পাবেন।

চলুন আবার ক্লাউড ফাংশনসে ডিপ্লয় করার চেষ্টা করি। টার্মিনালে একই ডিপ্লয় কমান্ডটি চালান:

gcloud functions deploy calculator --runtime ruby32 --trigger-http --entry-point app

আপনি নিম্নলিখিত আরেকটি ত্রুটির সম্মুখীন হবেন:

ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Build failed: unable to execute functions-framework-ruby; please ensure a recent version of the functions_framework gem is in your Gemfile; Error ID: 89ae7dda

৮. রুবির জন্য ফাংশন ফ্রেমওয়ার্ক

চলুন মিথুনকে ভুলটি সম্পর্কে জিজ্ঞাসা করি:

প্রম্পট:

ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Build failed: unable to execute functions-framework-ruby; please ensure a recent version of the functions_framework gem is in your Gemfile; Error ID: 89ae7dda

প্রতিক্রিয়া:

It looks like you're trying to deploy a function to Cloud Functions, but the build is failing because the functions_framework gem is not in your Gemfile. To fix this, add the following line to your Gemfile:

gem "functions_framework"

Then, run the following command to install the gem:

bundle install

Once the gem is installed, you can try deploying your function again.
....

মূলত, আমাদের অ্যাপে functions_framework জেমটি নেই। চলুন, আমাদের Gemfile-এ এই লাইনটি যোগ করে দিই:

gem "functions_framework"

এখন টার্মিনালে bundle install কমান্ডটি চালান। আপনি "No explicit global resource in Gemfile" লেখা একটি এরর পেতেও পারেন বা নাও পেতে পারেন। যদি এমনটি হয়, তবে নিশ্চিত করুন যে আপনার Gemfile-এর প্রথম লাইনে নিম্নলিখিত কোডটি রয়েছে:

source "https://rubygems.org"

তারপর টার্মিনাল থেকে আবার bundle install চালান। এবার, `deploy` কমান্ডটি আবার চালানো যাক:

gcloud functions deploy calculator --runtime ruby32 --trigger-http --entry-point app --project PROJECT_ID

এখন আপনি নিম্নলিখিত ত্রুটিটি দেখতে পাবেন:

ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Build failed: failed to verify function target "app" in source "app.rb": Undefined function: "app"; Error ID: e12ab0f9

এটি সমাধান করার জন্য, চলুন জেমিনির Generate Code ফিচারটি ব্যবহার করে দেখি। এক্সপ্লোরার ট্যাব থেকে app.rb ফাইলটি খুলুন, যেখানে আমাদের ক্যালকুলেটর অ্যাপের কোডটি আগে থেকেই রয়েছে। app.rb ফাইলের প্রথম লাইনে FunctionsFramework ' টাইপ করা শুরু করুন, এবং তারপরে " . " টাইপ করুন। আপনি ধূসর রঙে কিছু সাজেশন দেখতে পাবেন:

9e17476a4a586433.png

সাজেশনটি গ্রহণ করতে ট্যাব চাপুন। সেটি গ্রহণ করা হলে, আপনি নিচে দেখানো ছবির মতো আরও সাজেশন দেখতে পাবেন:

f3c35d1539789acc.png

আরও পরামর্শ গ্রহণ করতে ট্যাব চাপুন। সুতরাং, আপনার app.rb ফাইলটি দেখতে এইরকম হবে:

( ফাংশনের নাম 'add' থেকে 'app'- এ পরিবর্তন করুন )

require "functions_framework"

FunctionsFramework.http "app" do |request|
 a = request.params["a"].to_i
 b = request.params["b"].to_i
 Calculator.new.add(a, b)
end

class Calculator
 def add(a, b)
   a + b
 end
end

আমরা এইমাত্র ক্লাউড ফাংশনস অ্যাপটির এন্ট্রি পয়েন্ট তৈরি করেছি এবং এডিটরে জেমিনির কোড সাজেশন কীভাবে ব্যবহার করতে হয়, তাও শিখেছি। এখন, চলুন অ্যাপটি আবার ডিপ্লয় করার চেষ্টা করি।

gcloud functions deploy calculator --runtime ruby32 --trigger-http --entry-point app --project PROJECT_ID

এবং সবকিছু ঠিকঠাক থাকলে, ডেপ্লয়মেন্টটি সম্পন্ন হয়ে যাবে এবং আপনি আপনার অ্যাপটি যেখানে হোস্ট করা হয়েছে সেই URL-টি দেখতে পাবেন। বেশ, চলুন যোগফলের ফলাফলটি দেখানোর জন্য app.rb ফাইলটি একটু পরিবর্তন করি। আপনার চূড়ান্ত app.rb ফাইলটি দেখতে এইরকম হবে:

require "functions_framework"

FunctionsFramework.http "app" do |request|
 a = request.params["a"].to_i
 b = request.params["b"].to_i
 calculator = Calculator.new
 add = calculator.add(a, b)
 "Result: #{add}"
end

class Calculator
 def add(a, b)
   a + b
 end
end

৯. এন্ড-টু-এন্ড টেস্টিং

URL-টি খুলুন এবং নিচে দেখানো অনুযায়ী a এবং b কোয়েরি প্যারামিটার হিসেবে পাস করুন:

https://[APP-URL]/?a=2&b=3

আপনি প্রতিক্রিয়াটি "Result: 5" হিসাবে দেখতে পাবেন। একটি ক্যালকুলেটর অনেক ধরনের কাজ করে থাকে। আপনি এই অ্যাপটিকে সেই কাজগুলো করার জন্যও প্রসারিত করতে পারেন এবং এর জন্য জেমিনির সাহায্য নিতে পারেন।

১০. উপসংহার

আজ আমরা জেমিনির সাহায্যে TDD পদ্ধতি ব্যবহার করে কীভাবে একটি রুবি অ্যাপ তৈরি করতে হয় তা দেখলাম। আপনারা যেমন লক্ষ্য করেছেন, জেমিনি আপনাকে ভিন্ন ফলাফল দিতে পারে, কিন্তু এটি এমন একটি ভাষায় ডেভেলপমেন্ট প্রক্রিয়াকে ত্বরান্বিত করতে অবশ্যই সাহায্য করতে পারে, যেটির সাথে আপনি হয়তো খুব বেশি পরিচিত নন। একই সাথে এটি আপনার শেখার গতি বাড়ানোর জন্য বিভিন্ন ফাংশন বা কোড স্নিপেটও প্রদর্শন করে।

যেকোনো ডেভেলপার (অভিজ্ঞতা নির্বিশেষে) তাদের ডেভেলপমেন্ট প্রক্রিয়ার জন্য জেমিনির সাহায্য নিতে পারেন। ডেভেলপমেন্টের জন্য না হলেও, আপনি বিদ্যমান কোড ব্যাখ্যা করার জন্য জেমিনি ব্যবহার করতে পারেন, অথবা সেই কোডের জন্য টেস্ট তৈরি করতে বলতে পারেন, যা অন্তত আমার কাছে সবচেয়ে বিরক্তিকর কাজ 🙂

জেমিনির সাথে কোডিং উপভোগ করুন!