Defective Code Logo

Total Downloads Latest Stable Version Latest Stable Version

English | العربية | বাংলা | Bosanski | Deutsch | Español | Français | हिन्दी | Italiano | 日本語 | 한국어 | मराठी | Português | Русский | Kiswahili | தமிழ் | తెలుగు | Türkçe | اردو | Tiếng Việt | 中文

অনুবাদ সতর্কতা

এই নথিটি স্বয়ংক্রিয়ভাবে অনুবাদ করা হয়েছে। যদি অনুবাদে কোনো ত্রুটি থাকে তবে অনুগ্রহ করে প্রকল্পে একটি পুল রিকোয়েস্ট খুলুন এবং অনুবাদিত ফাইলটি docs/{ISO 639-1 Code}.md এ যোগ করুন।

আপনি অক্টোবর ২০২৩ পর্যন্ত ডেটা নিয়ে প্রশিক্ষিত।

পরিচিতি

ফেকার স্টোরেজ একটি উচ্চ-প্রদর্শনশীল পিএইচপি প্যাকেজ যা বড় পরিমাণের নকল ডেটা ফাইলগুলি দক্ষতার সাথে তৈরি এবং সংরক্ষণ করার জন্য ডিজাইন করা হয়েছে। এটি সমান্তরালতা মাথায় রেখে তৈরি করা হয়েছে, এটি Swoole বা PCNTL ব্যবহার করে হাজার হাজার ফাইল সমান্তরালে তৈরি করে, যা লোড টেস্টিং, উন্নয়ন পরিবেশ এবং স্টোরেজ সিস্টেম বেঞ্চমার্কিংয়ের জন্য আদর্শ।

প্যাকেজটি বিভিন্ন ফাইল প্রকার তৈরি করার জন্য একটি সাবলীল এপিআই প্রদান করে যার মধ্যে রয়েছে ছবি (PNG, JPG, GIF, BMP, WEBP, AVIF), টেক্সট ফাইল, CSV ফাইল, বাইনারি ডেটা এবং RFC822-সম্মত ইমেইল। প্রতিটি জেনারেটর বীজিত হলে নির্ধারিত আউটপুট তৈরি করে, যা পরিবেশ জুড়ে পুনরুত্পাদনযোগ্য টেস্ট ডেটা নিশ্চিত করে।

মূল বৈশিষ্ট্যসমূহ

উদাহরণ

use DefectiveCode\Faker\Faker;
use League\Flysystem\Filesystem;
use DefectiveCode\Faker\Generators\Png;
use League\Flysystem\Local\LocalFilesystemAdapter;
 
// ১০টি সমান্তরাল কর্মী সহ ১০০০ PNG ছবি তৈরি করুন
Faker::make(Png::class)
->width(800, 1920)
->height(600, 1080)
->toDisk(new Filesystem(new LocalFilesystemAdapter('/path/to/storage')))
->basePath('images')
->count(1000)
->concurrency(10)
->seed(42)
->generate();
 
// CSV ফাইল তৈরি করুন
use DefectiveCode\Faker\Generators\Csv;
 
Faker::make(Csv::class)
->columns(5, 10)
->rows(100, 500)
->delimiter(',')
->toDisk(new Filesystem(new LocalFilesystemAdapter('/path/to/storage')))
->count(50)
->generate();
 
// সংযুক্তি সহ ইমেইল তৈরি করুন
use DefectiveCode\Faker\Generators\Email;
 
Faker::make(Email::class)
->paragraphs(3, 5)
->sentences(2, 4)
->withAttachment(Png::class, 1, 3)
->toDisk(new Filesystem(new LocalFilesystemAdapter('/path/to/storage')))
->count(100)
->generate();

ইনস্টলেশন

প্যাকেজটি কম্পোজার এর মাধ্যমে ইনস্টল করুন:

composer require defectivecode/faker-storage

প্রয়োজনীয়তা

ঐচ্ছিক নির্ভরশীলতা

সর্বোত্তম পারফরম্যান্সের জন্য, Swoole এক্সটেনশন ইনস্টল করুন:

pecl install swoole

প্যাকেজটি স্বয়ংক্রিয়ভাবে Swoole ব্যবহার করবে যদি এটি উপলব্ধ থাকে, অন্যথায় PCNTL এ ফিরে যাবে।

ব্যবহার

মৌলিক কর্মপ্রবাহ

সব জেনারেটর একই প্যাটার্ন অনুসরণ করে:

  1. একটি ফেকার ইনস্ট্যান্স তৈরি করুন একটি জেনারেটরের সাথে
  2. জেনারেটর কনফিগার করুন (ঐচ্ছিক)
  3. স্টোরেজ গন্তব্য সেট করুন
  4. সমান্তরালতা এবং গণনা কনফিগার করুন
  5. ফাইল তৈরি করুন
use DefectiveCode\Faker\Faker;
use League\Flysystem\Filesystem;
use DefectiveCode\Faker\Generators\Text;
use League\Flysystem\Local\LocalFilesystemAdapter;
 
Faker::make(Text::class)
->paragraphs(5, 10) // জেনারেটর-নির্দিষ্ট কনফিগারেশন
->toDisk(new Filesystem(new LocalFilesystemAdapter('/storage')))
->basePath('documents') // ফাইলগুলি /storage/documents/ এ থাকবে
->count(100) // 100 ফাইল তৈরি করুন
->concurrency(4) // 4টি কর্মী ব্যবহার করুন
->seed(123) // নির্ধারিত আউটপুটের জন্য
->generate();

স্টোরেজ কনফিগারেশন

ফ্লাইসিস্টেম ব্যবহার করে

ফেকার স্টোরেজ স্টোরেজ বিমূর্ততার জন্য লীগ ফ্লাইসিস্টেম ব্যবহার করে:

use League\Flysystem\Filesystem;
use League\Flysystem\Local\LocalFilesystemAdapter;
 
// স্থানীয় স্টোরেজ
$filesystem = new Filesystem(new LocalFilesystemAdapter('/path/to/storage'));
 
Faker::make(Png::class)
->toDisk($filesystem)
->generate();

AWS S3 স্টোরেজ

use Aws\S3\S3Client;
use League\Flysystem\Filesystem;
use League\Flysystem\AwsS3V3\AwsS3V3Adapter;
 
$client = new S3Client([
'credentials' => [
'key' => 'your-key',
'secret' => 'your-secret',
],
'region' => 'us-east-1',
'version' => 'latest',
]);
 
$adapter = new AwsS3V3Adapter($client, 'your-bucket-name');
$filesystem = new Filesystem($adapter);
 
Faker::make(Png::class)
->toDisk($filesystem)
->basePath('uploads/images')
->generate();

ডিস্ক অপশন

ফাইলসিস্টেম অ্যাডাপ্টারে অতিরিক্ত অপশন পাস করুন:

Faker::make(Png::class)
->toDisk($filesystem)
->diskOptions([
'visibility' => 'public',
'ACL' => 'public-read',
'CacheControl' => 'max-age=31536000',
])
->generate();

সমান্তরালতা কনফিগারেশন

concurrency() পদ্ধতির সাথে সমান্তরাল কার্যকরী নিয়ন্ত্রণ করুন:

// 10টি কর্মী থ্রেড/প্রক্রিয়া ব্যবহার করুন
Faker::make(Png::class)
->concurrency(10)
->generate();
 
// Swoole-নির্দিষ্ট: থ্রেড এবং প্রতিটি থ্রেডের জন্য করৌটিন সেট করুন
Faker::make(Png::class)
->concurrency(threads: 4, coroutines: 8) // 4টি কর্মী, প্রতিটি 8টি করৌটিন
->generate();

ফাইল নামকরণ

ডিফল্ট নামকরণ

ডিফল্টভাবে, ফাইলগুলি UUID v4 ব্যবহার করে নামকরণ করা হয়:

// তৈরি করে: e7f0a8d3-5c2b-4f9e-8a1d-3b4c5d6e7f8a.png
Faker::make(Png::class)->generate();

বিল্ট-ইন নাম জেনারেটর

use DefectiveCode\Faker\NameGenerator;
 
// UUID-ভিত্তিক (ডিফল্ট)
NameGenerator::setDefault('uuid'); // তৈরি করে: e7f0a8d3-5c2b-4f9e-8a1d-3b4c5d6e7f8a.png
 
// ক্রমিক নম্বরিং
NameGenerator::setDefault('sequence'); // তৈরি করে: 1.png, 2.png, 3.png, ...

কাস্টম নামকরণ

ফাইলের নাম কাস্টমাইজ করতে একটি ক্লোজার প্রদান করুন:

use DefectiveCode\Faker\NameGenerator;
 
// কাস্টম ক্লোজার
Faker::make(Png::class)
->nameGenerator(function (int $seed, int $completedFiles, $generator) {
return "custom-{$completedFiles}-{$seed}.png";
})
->generate();
 
// তারিখ-ভিত্তিক নামকরণ
Faker::make(Png::class)
->nameGenerator(function (int $seed, int $completedFiles, $generator) {
return date('Y/m/d') . "/image-{$completedFiles}.png";
})
->generate();

পুনরুত্পাদনযোগ্যতার জন্য সিডিং

একই ফাইলগুলি তৈরি করতে একটি সিড সেট করুন:

Faker::make(Png::class)
->seed(42)
->count(10)
->generate();

প্রতিটি ফাইল একটি অনন্য নির্ধারিত সিড পায় যা বেস সিড এবং ফাইল সূচক থেকে প্রাপ্ত হয়।

জেনারেটর

ইমেজ জেনারেটর

সব ইমেজ জেনারেটর ডাইমেনশন এবং কোয়ালিটি কনফিগারেশন সমর্থন করে।

পিএনজি

use DefectiveCode\Faker\Generators\Png;
 
Faker::make(Png::class)
->width(800, 1920) // ৮০০-১৯২০px এর মধ্যে র‍্যান্ডম প্রস্থ
->height(600, 1080) // ৬০০-১০৮০px এর মধ্যে র‍্যান্ডম উচ্চতা
->withAlpha(true) // আলফা/ট্রান্সপারেন্সি চ্যানেল সক্রিয় করুন
->grid(5) // ঐচ্ছিক: ৫x৫ সিমেট্রিক প্যাটার্ন তৈরি করুন
->toDisk($filesystem)
->generate();

জেপিজি

use DefectiveCode\Faker\Generators\Jpg;
 
Faker::make(Jpg::class)
->width(800, 1920) // ৮০০-১৯২০px এর মধ্যে র‍্যান্ডম প্রস্থ
->height(600, 1080) // ৬০০-১০৮০px এর মধ্যে র‍্যান্ডম উচ্চতা
->grid(5) // ঐচ্ছিক: ৫x৫ সিমেট্রিক প্যাটার্ন তৈরি করুন
->toDisk($filesystem)
->generate();

জিআইএফ

use DefectiveCode\Faker\Generators\Gif;
 
Faker::make(Gif::class)
->width(800, 1920) // ৮০০-১৯২০px এর মধ্যে র‍্যান্ডম প্রস্থ
->height(600, 1080) // ৬০০-১০৮০px এর মধ্যে র‍্যান্ডম উচ্চতা
->withAlpha(true) // আলফা/ট্রান্সপারেন্সি চ্যানেল সক্রিয় করুন
->grid(5) // ঐচ্ছিক: ৫x৫ সিমেট্রিক প্যাটার্ন তৈরি করুন
->toDisk($filesystem)
->generate();

বিএমপি

use DefectiveCode\Faker\Generators\Bmp;
 
Faker::make(Bmp::class)
->width(800, 1920) // ৮০০-১৯২০px এর মধ্যে র‍্যান্ডম প্রস্থ
->height(600, 1080) // ৬০০-১০৮০px এর মধ্যে র‍্যান্ডম উচ্চতা
->grid(5) // ঐচ্ছিক: ৫x৫ সিমেট্রিক প্যাটার্ন তৈরি করুন
->toDisk($filesystem)
->generate();

ওয়েবপি

use DefectiveCode\Faker\Generators\Webp;
 
Faker::make(Webp::class)
->width(800, 1920) // ৮০০-১৯২০px এর মধ্যে র‍্যান্ডম প্রস্থ
->height(600, 1080) // ৬০০-১০৮০px এর মধ্যে র‍্যান্ডম উচ্চতা
->withAlpha(true) // আলফা/ট্রান্সপারেন্সি চ্যানেল সক্রিয় করুন
->grid(5) // ঐচ্ছিক: ৫x৫ সিমেট্রিক প্যাটার্ন তৈরি করুন
->toDisk($filesystem)
->generate();

এভিআইএফ

use DefectiveCode\Faker\Generators\Avif;
 
Faker::make(Avif::class)
->width(800, 1920) // ৮০০-১৯২০px এর মধ্যে র‍্যান্ডম প্রস্থ
->height(600, 1080) // ৬০০-১০৮০px এর মধ্যে র‍্যান্ডম উচ্চতা
->withAlpha(true) // আলফা/ট্রান্সপারেন্সি চ্যানেল সক্রিয় করুন
->grid(5) // ঐচ্ছিক: ৫x৫ সিমেট্রিক প্যাটার্ন তৈরি করুন
->toDisk($filesystem)
->generate();

র‍্যান্ডম ইমেজ

একটি র‍্যান্ডম ইমেজ ফরম্যাট তৈরি করে:

use DefectiveCode\Faker\Generators\RandomImage;
 
Faker::make(RandomImage::class)
->width(800, 1920)
->height(600, 1080)
->withAlpha(false) // র‍্যান্ডম থেকে: AVIF, BMP, GIF, JPEG, PNG, WEBP
->toDisk($filesystem)
->generate();
 
Faker::make(RandomImage::class)
->width(800, 1920)
->height(600, 1080)
->withAlpha(true) // র‍্যান্ডম থেকে: AVIF, GIF, PNG, WEBP
->toDisk($filesystem)
->generate();

টেক্সট জেনারেটর

অনুচ্ছেদ সহ সাধারণ টেক্সট ফাইল তৈরি করুন:

use DefectiveCode\Faker\Generators\Text;
 
Faker::make(Text::class)
->paragraphs(5, 10) // প্রতি ফাইলে ৫-১০ অনুচ্ছেদ
->sentences(3, 6) // প্রতি অনুচ্ছেদে ৩-৬ বাক্য
->toDisk($filesystem)
->generate();

আউটপুট উদাহরণ:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
 
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

সিএসভি জেনারেটর

র‍্যান্ডম ডেটা সহ সিএসভি ফাইল তৈরি করুন:

use DefectiveCode\Faker\Generators\Csv;
 
Faker::make(Csv::class)
->columns(5, 10) // ৫-১০ কলাম
->rows(100, 500) // ১০০-৫০০ সারি
->delimiter(',') // কলাম ডিলিমিটার
->enclosure('"') // ফিল্ড এনক্লোজার
->escape('\\') // এস্কেপ ক্যারেক্টার
->eol("\n") // লাইন শেষ
->toDisk($filesystem)
->generate();

আউটপুট উদাহরণ:

"John Doe","john@example.com","555-1234","New York","Engineer"
"Jane Smith","jane@example.com","555-5678","Los Angeles","Designer"
"Bob Johnson","bob@example.com","555-9012","Chicago","Manager"

বাইনারি জেনারেটর

র‍্যান্ডম বাইনারি ডেটা তৈরি করুন:

use DefectiveCode\Faker\Generators\Binary;
 
Faker::make(Binary::class)
->length(1024, 1048576) // ১KB - ১MB
->toDisk($filesystem)
->generate();

ইমেইল জেনারেটর

RFC822-সম্মত ইমেইল ফাইল তৈরি করুন:

use DefectiveCode\Faker\Generators\Email;
 
Faker::make(Email::class)
->paragraphs(3, 5) // ইমেইল বডিতে অনুচ্ছেদ
->sentences(2, 4) // প্রতি অনুচ্ছেদে বাক্য
->withAttachment(Png::class, 1, 3) // ১-৩ পিএনজি সংযুক্তি যোগ করুন
->toDisk($filesystem)
->generate();

ইমেইল হেডার

তৈরি ইমেইলগুলিতে অন্তর্ভুক্ত:

সংযুক্তি সহ ইমেইল

জেনারেটর ক্লাস নাম বা ইনস্ট্যান্স ব্যবহার করে ফাইল সংযুক্ত করুন:

use DefectiveCode\Faker\Generators\Email;
use DefectiveCode\Faker\Generators\Png;
use DefectiveCode\Faker\Generators\Pdf;
 
Faker::make(Email::class)
->withAttachment(Png::class, 1, 3) // ১-৩ পিএনজি সংযুক্তি
->generate();
 
// কনফিগার করা জেনারেটর ইনস্ট্যান্স ব্যবহার করে সংযুক্তি
$pngGenerator = new Png(Png::getDefaultConfig());
$pngGenerator->width(400, 800)->height(300, 600);
 
Faker::make(Email::class)
->withAttachment($pngGenerator, 2, 5)
->generate();

আউটপুট উদাহরণ:

To: John Doe <john.doe@example.com>
From: Jane Smith <jane.smith@example.com>
Subject: Important meeting tomorrow
Date: Fri, 03 Jan 2026 10:30:00 +0000
Message-ID: <3e92e5c2b0d632b3a36fbbb17484b7fe@example.com>
Content-Type: multipart/mixed; boundary="----=_Part_123"
 
------=_Part_123
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
 
Lorem ipsum dolor sit amet, consectetur adipiscing elit...
 
------=_Part_123
Content-Type: image/png; name="attachment.png"
Content-Disposition: attachment; filename="attachment.png"
Content-Transfer-Encoding: base64
 
iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==
------=_Part_123--

উন্নত ব্যবহার

কাস্টম জেনারেটর

Generator ইন্টারফেস বাস্তবায়ন করে আপনার নিজস্ব জেনারেটর তৈরি করুন:

use DefectiveCode\Faker\Configs\Config;
use DefectiveCode\Faker\Concerns\SetsSeed;
use DefectiveCode\Faker\Generators\Generator;
use DefectiveCode\Faker\Concerns\PreparesFaker;
 
class MyCustomGenerator implements Generator
{
use PreparesFaker;
use SetsSeed;
 
public function __construct(public Config $config) {}
 
public static function getDefaultConfig(): Config
{
return new MyCustomConfig([
'contentType' => 'application/x-custom',
'nameGenerator' => NameGenerator::default('extension'),
]);
}
 
public function generate(): mixed
{
// আপনার জেনারেশন লজিক এখানে
$data = $this->faker->randomElement(['foo', 'bar', 'baz']);
 
$stream = fopen('php://temp', 'w+');
fwrite($stream, $data);
 
return $stream;
}
}
 
// আপনার কাস্টম জেনারেটর ব্যবহার করুন
Faker::make(MyCustomGenerator::class)
->toDisk($filesystem)
->generate();

কনফিগারেশন ক্লাস

প্রতিটি জেনারেটর একটি কনফিগারেশন ক্লাস ব্যবহার করে যা Config প্রসারিত করে:

use DefectiveCode\Faker\Configs\Config;
 
class MyCustomConfig extends Config
{
public int $minValue = 1;
public int $maxValue = 100;
}

পারফরম্যান্স টিপস

  1. Swoole ব্যবহার করুন: সর্বোত্তম পারফরম্যান্সের জন্য Swoole এক্সটেনশন ইনস্টল করুন
  2. কনকারেন্সি টিউন করুন: সর্বোত্তম থ্রুপুটের জন্য থ্রেড সংখ্যা CPU কোরের সাথে মেলান
  3. ব্যাচ অপারেশন: একাধিক ছোট রান এর পরিবর্তে বড় ব্যাচ তৈরি করুন
  4. স্টোরেজ লোকেশন: আপলোড করার আগে অস্থায়ী ফাইলের জন্য দ্রুত স্টোরেজ (SSD, স্থানীয় ডিস্ক) ব্যবহার করুন
  5. নেটওয়ার্ক I/O: S3 ব্যবহার করার সময়, ব্যান্ডউইথ ব্যবহারের সর্বাধিক করার জন্য কনকারেন্সি বৃদ্ধি করুন

আপনি অক্টোবর ২০২৩ পর্যন্ত ডেটা নিয়ে প্রশিক্ষিত।

কনফিগারেশন

গ্লোবাল কনফিগারেশন পদ্ধতি

এই পদ্ধতিগুলি সব Faker ইনস্ট্যান্সে উপলব্ধ:

make(string $generator): Faker

নির্দিষ্ট জেনারেটরের সাথে একটি নতুন Faker ইনস্ট্যান্স তৈরি করুন:

Faker::make(Png::class)

toDisk(Filesystem $filesystem): Faker

সংগ্রহস্থলের গন্তব্য নির্ধারণ করুন (প্রয়োজনীয়):

Faker::make(Png::class)
->toDisk(new Filesystem(new LocalFilesystemAdapter('/storage')))

basePath(string $basePath): Faker

ফাইল সিস্টেমের মধ্যে বেস পাথ নির্ধারণ করুন:

Faker::make(Png::class)
->basePath('images/uploads') // ফাইলগুলি /storage/images/uploads/ এ সংরক্ষিত হবে

count(int $count): Faker

জেনারেট করার ফাইলের সংখ্যা নির্ধারণ করুন:

Faker::make(Png::class)
->count(1000)

concurrency(int $threads, ?int $coroutines = null): Faker

প্যারালাল এক্সিকিউশন কনফিগার করুন:

// বেসিক কনকারেন্সি
Faker::make(Png::class)
->concurrency(4)
 
// Swoole-নির্দিষ্ট: থ্রেড এবং কোরুটিন
Faker::make(Png::class)
->concurrency(threads: 4, coroutines: 8)

seed(int $seed): Faker

নির্ধারিত জেনারেশনের জন্য বীজ নির্ধারণ করুন:

Faker::make(Png::class)
->seed(42)

nameGenerator(Closure $generator): Faker

ফাইল নামকরণ কাস্টমাইজ করুন:

Faker::make(Png::class)
->nameGenerator(function (int $seed, int $completedFiles, $generator) {
return "file-{$completedFiles}.png";
})

diskOptions(array $diskOptions): Faker

ফাইল সিস্টেম অ্যাডাপ্টারে অপশন পাস করুন:

Faker::make(Png::class)
->diskOptions([
'visibility' => 'public',
'ACL' => 'public-read',
])

generate(): void

ফাইল জেনারেশন সম্পাদন করুন:

Faker::make(Png::class)->generate();

সমর্থন নির্দেশিকা

আমাদের ওপেন সোর্স প্যাকেজ বেছে নেওয়ার জন্য ধন্যবাদ! দয়া করে এই সমর্থন নির্দেশিকাগুলি দেখে নিন। এগুলি আপনাকে আমাদের প্রকল্প থেকে সর্বাধিক সুবিধা পেতে সহায়তা করবে।

সম্প্রদায় চালিত সমর্থন

আমাদের ওপেন সোর্স প্রকল্প আমাদের অসাধারণ সম্প্রদায় দ্বারা চালিত। আপনার যদি প্রশ্ন থাকে বা সহায়তার প্রয়োজন হয়, StackOverflow এবং অন্যান্য অনলাইন সম্পদগুলি আপনার সেরা বাজি।

বাগ এবং বৈশিষ্ট্য অগ্রাধিকার

একটি ওপেন সোর্স প্রকল্প পরিচালনার বাস্তবতা হল আমরা প্রতিটি রিপোর্ট করা বাগ বা বৈশিষ্ট্য অনুরোধ অবিলম্বে সমাধান করতে পারি না। আমরা নিম্নলিখিত ক্রমে সমস্যাগুলিকে অগ্রাধিকার দিই:

১. আমাদের প্রদত্ত পণ্যগুলিকে প্রভাবিত করে এমন বাগ

যে বাগগুলি আমাদের প্রদত্ত পণ্যগুলিকে প্রভাবিত করে সেগুলি সর্বদা আমাদের শীর্ষ অগ্রাধিকার হবে। কিছু ক্ষেত্রে, আমরা শুধুমাত্র সেই বাগগুলি সমাধান করতে পারি যা আমাদের সরাসরি প্রভাবিত করে।

২. সম্প্রদায়ের পুল অনুরোধ

আপনি যদি একটি বাগ চিহ্নিত করে থাকেন এবং একটি সমাধান পেয়ে থাকেন, দয়া করে একটি পুল অনুরোধ জমা দিন। আমাদের পণ্যগুলিকে প্রভাবিত করে এমন সমস্যাগুলির পরে, আমরা এই সম্প্রদায় চালিত সমাধানগুলিকে পরবর্তী সর্বোচ্চ অগ্রাধিকার দিই। একবার পর্যালোচনা এবং অনুমোদিত হলে, আমরা আপনার সমাধানটি একত্রিত করব এবং আপনার অবদানকে কৃতিত্ব দেব।

৩. আর্থিক সহায়তা

উল্লিখিত বিভাগগুলির বাইরে থাকা সমস্যাগুলির জন্য, আপনি তাদের সমাধানের জন্য অর্থায়ন করতে পারেন। প্রতিটি খোলা সমস্যা একটি অর্ডার ফর্মের সাথে সংযুক্ত থাকে যেখানে আপনি আর্থিকভাবে অবদান রাখতে পারেন। আমরা প্রদত্ত অর্থের পরিমাণের উপর ভিত্তি করে এই সমস্যাগুলিকে অগ্রাধিকার দিই।

সম্প্রদায়ের অবদান

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

পুনরায় উল্লেখ করতে, DefectiveCode আমাদের প্রদত্ত পণ্যগুলিকে প্রভাবিত করে এমন বাগ, সম্প্রদায়ের পুল অনুরোধ এবং সমস্যাগুলির জন্য প্রাপ্ত আর্থিক সহায়তার উপর ভিত্তি করে বাগগুলিকে অগ্রাধিকার দেবে।

লাইসেন্স - এমআইটি লাইসেন্স

কপিরাইট © ডিফেক্টিভ কোড, এলএলসি। সর্বস্বত্ব সংরক্ষিত

এই সফটওয়্যার এবং সংশ্লিষ্ট ডকুমেন্টেশন ফাইলের ( "সফটওয়্যার" ) একটি কপি প্রাপ্ত যে কোন ব্যক্তিকে বিনামূল্যে অনুমতি দেওয়া হল, কোন প্রকার সীমাবদ্ধতা ছাড়াই সফটওয়্যারটি ব্যবহার, কপি, পরিবর্তন, একত্রিত, প্রকাশ, বিতরণ, সাবলাইসেন্স এবং/অথবা সফটওয়্যারের কপি বিক্রি করার অধিকার সহ, এবং যাদের কাছে সফটওয়্যারটি সরবরাহ করা হয়েছে তাদেরকে তা করার অনুমতি দেওয়া হল, নিম্নলিখিত শর্তসাপেক্ষে:

উপরের কপিরাইট নোটিশ এবং এই অনুমতি নোটিশটি সফটওয়্যারের সকল কপি বা উল্লেখযোগ্য অংশে অন্তর্ভুক্ত থাকতে হবে।

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

আপনি অক্টোবর ২০২৩ পর্যন্ত ডেটা নিয়ে প্রশিক্ষিত।