Loading…

সম্পর্কে অনলাইন C# ফরম্যাটার

আপনার C# কোড পেস্ট করুন (বা একটি ফাইল ড্রপ করুন) এবং "ফরম্যাট" ক্লিক করুন। এই টুলটি সামঞ্জস্যপূর্ণ ডিফস এবং ঘর্ষণ-মুক্ত কোড রিভিউর জন্য CSharpier-এর ক্যানোনিকাল স্টাইল প্রয়োগ করে। এটি আধুনিক C# বৈশিষ্ট্যগুলি বুঝতে পারে যেমন রেকর্ডস, প্যাটার্ন ম্যাচিং, র স্ট্রিং লিটারেলস, ফাইল-স্কোপড নেমস্পেস, এবং আরও অনেক — তাই আপনি এখানে যা পরীক্ষা করেন তা বাস্তব-বিশ্বের .NET প্রকল্পের মতো আচরণ করে।

কেন ডেভেলপাররা এই C# ফরম্যাটার ব্যবহার করেন

  • আপনার পুরো দলের মধ্যে স্থিতিশীল ও পূর্বাভাসযোগ্য ডিফসের জন্য CSharpier-এর মাধ্যমে ক্যানোনিকাল, মতামতভিত্তিক স্টাইল
  • আপনার কোডের যুক্তি স্পর্শ না করেই হোয়াইটস্পেস, ইন্ডেন্টেশন, লাইন ব্রেক, এবং ব্রেস লেআউট স্বাভাবিক করে
  • আধুনিক C# সিনট্যাক্স সমর্থন করে (রেকর্ডস, প্যাটার্ন ম্যাচিং, র স্ট্রিংস, টপ-লেভেল স্টেটমেন্টস, ফাইল-স্কোপড নেমস্পেস, এবং আরও)
  • আউটপুট প্যানেল থেকে ফরম্যাট করা C# কোড সহজে কপি ও ডাউনলোড করুন — দ্রুত এককালীন ফিক্সের জন্য নিখুঁত
  • কোড রিভিউ, রিফ্যাক্টর, কাটাস, এবং .NET 6/7/8-এ মাইগ্রেট করার আগে লেগেসি .cs ফাইল পরিষ্কার করার জন্য আদর্শ
  • লিন্টার এবং অ্যানালাইজারের সাথে ভালোভাবে কাজ করে — CSharpier কে লেআউট হ্যান্ডেল করতে দিন, এবং অ্যানালাইজারদের নিয়ম ও স্টাইল হ্যান্ডেল করতে দিন
  • স্বল্পস্থায়ী ফরম্যাটিংয়ের জন্য ডিজাইন করা — অত্যন্ত সংবেদনশীল বা গোপন কোড পেস্ট করা এড়িয়ে চলুন; গোপন প্রকল্পের জন্য CSharpier CLI ব্যবহার করুন

🔧 কিভাবে C# কোড ফরম্যাট করবেন (ধাপে ধাপে) for csharp-formatter

1

১. আপনার C# কোড পেস্ট বা ড্রপ করুন

📥 ইনপুট এডিটরে আপনার C# কোড পেস্ট করুন, অথবা ড্রপজোনে একটি .cs ফাইল ড্রপ করুন। ফর্ম্যাটারটি বাক্যগতভাবে বৈধ C# আশা করে — যা আপনি একটি সাধারণ .NET প্রকল্পে কম্পাইল করতে পারেন।

2

২. ফর্ম্যাটার চালান

⚙️ CSharpier-এর ক্যানোনিকাল লেআউট প্রয়োগ করতে "ফর্ম্যাট" বাটনে ক্লিক করুন। ইন্ডেন্টেশন, ব্রেস এবং লাইন ব্রেক স্বাভাবিক করা হয় যখন আচরণ সংরক্ষিত থাকে। বড় স্নিপেটের জন্য, এটি গভীরভাবে নেস্টেড লজিক বা LINQ পাইপলাইন পড়া অনেক সহজ করে তোলে।

3

৩. পর্যালোচনা, কপি, বা ডাউনলোড করুন

🔍 মূল এবং ফর্ম্যাট করা কোড তুলনা করুন। একবার আপনি সন্তুষ্ট হলে, ফলাফলটি আপনার এডিটরে ফিরে কপি করুন বা ফর্ম্যাট করা .cs ফাইল ডাউনলোড করুন। এটি একটি দ্রুত প্রি-কমিট ক্লিনআপ হিসাবে বা আপনার দলের স্টাইলের জন্য রেফারেন্স হিসাবে ব্যবহার করুন।

প্রযুক্তিগত বিবরণ ও স্টাইল নোট

ফর্ম্যাটিং ইঞ্জিন ও স্টাইল

এই ফর্ম্যাটারটি আপনার C# সোর্সে একটি ক্যানোনিকাল, মতামতভিত্তিক লেআউট প্রয়োগ করতে CSharpier ব্যবহার করে। এটি শুধুমাত্র ফর্ম্যাটিংয়ে মনোনিবেশ করে এবং প্রোগ্রামের আচরণ পরিবর্তন করে না।

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

সমর্থিত ইনপুট ও সীমাবদ্ধতা

ফর্ম্যাটারটি .NET অ্যাপ্লিকেশন, লাইব্রেরি, API এবং গেম প্রকল্পে ব্যবহৃত সাধারণ C# ফাইলের জন্য ডিজাইন করা হয়েছে।

প্যারামিটারসীমা / আচরণনোট
ফাইল এক্সটেনশন.csস্ট্যান্ডার্ড সি# সোর্স ফাইলের জন্য সর্বোত্তম, যার মধ্যে ইউনিটি স্ক্রিপ্ট এবং ASP.NET কন্ট্রোলার অন্তর্ভুক্ত।
MIME টাইপtext/x-csharpএডিটরে সি# ইনপুট সনাক্ত করতে এবং সিনট্যাক্স হাইলাইটিং কনফিগার করতে ব্যবহৃত হয়।
সর্বোচ্চ ইনপুট আকার≈ 2 MB সোর্স কোডখুব বড় সলিউশনগুলি CSharpier CLI বা এডিটর ইন্টিগ্রেশনের মাধ্যমে ভালভাবে পরিচালনা করা হয়।
এনকোডিংUTF-8 সুপারিশকৃতসেরা ফলাফলের জন্য ফরম্যাট করার আগে লিগ্যাসি এনকোডিং (যেমন, Windows-1252) রূপান্তর করুন।

উদাহরণ: পূর্বে এবং পরে

এখানে একটি ছোট উদাহরণ দেখানো হয়েছে কিভাবে এলোমেলো সি# কোড একটি পরিষ্কার, রিভিউ-প্রস্তুত লেআউটে রূপান্তরিত হয়।

// পূর্বে
using System;using System.Collections.Generic;namespace App{class Z{public static int Sum(List<int> xs){int s=0;foreach(var x in xs){s+=x;}Console.WriteLine($"Sum={s}");return s;}}}

// পরে
using System;
using System.Collections.Generic;

namespace App
{
    class Z
    {
        public static int Sum(List<int> xs)
        {
            int s = 0;
            foreach (var x in xs)
            {
                s += x;
            }

            Console.WriteLine($"Sum={s}");
            return s;
        }
    }
}

কমান্ড-লাইন ও এডিটর ইন্টিগ্রেশন

আপনি যদি আপনার স্থানীয় ওয়ার্কফ্লো বা CI পাইপলাইনে একই ফরম্যাটিং স্টাইল চান, তাহলে CSharpier কে একটি .NET টুল হিসাবে ইনস্টল করুন এবং আপনার বিল্ড, এডিটর, বা প্রি-কমিট হুকগুলিতে একীভূত করুন।

সমস্ত প্ল্যাটফর্ম (.NET টুল)

CSharpier গ্লোবালি ইনস্টল করুন

dotnet tool install -g csharpier

আপনার PATH-এ `csharpier` CLI যোগ করে যাতে আপনি যেকোনো প্রজেক্ট থেকে এটি চালাতে পারেন।

একটি রিপোতে সমস্ত সি# ফাইল ফরম্যাট করুন

csharpier **/*.cs

বর্তমান ডিরেক্টরির অধীনে প্রতিটি .cs ফাইলকে পুনরাবৃত্তিমূলকভাবে ফরম্যাট করে।

ফাইল পরিবর্তন না করে CI চেক

csharpier --check **/*.cs

যদি ফাইলগুলি সঠিকভাবে ফরম্যাট না হয় তবে একটি নন-জিরো স্ট্যাটাস দিয়ে প্রস্থান করে, যা পুল রিকোয়েস্ট গেটের জন্য আদর্শ।

এডিটর ইন্টিগ্রেশন

ভিজুয়াল স্টুডিও, VS কোড, রাইডার

CSharpier এক্সটেনশন ইনস্টল করুন বা এটিকে একটি এক্সটার্নাল টুল হিসাবে কনফিগার করুন, তারপর "Format on Save" সক্ষম করুন।

ম্যানুয়াল ধাপ ছাড়াই আপনার কোডবেসকে ধারাবাহিকভাবে ফরম্যাট রাখে।

`dotnet new tool-manifest` এবং `dotnet tool install csharpier` দিয়ে একটি রিপো-লোকাল টুল ম্যানিফেস্ট যোগ করুন যাতে প্রতিটি অবদানকারী একই CSharpier সংস্করণ ব্যবহার করে।

সি# ফরম্যাটারের জনপ্রিয় ব্যবহারের ক্ষেত্র

দলব্যাপী সামঞ্জস্য

আপনার .NET কোডবেস জুড়ে একটি একক, ক্যানোনিক্যাল স্টাইল প্রয়োগ করুন এবং ডিফগুলি ছোট রাখুন।

  • শেয়ার্ড রিপোজিটরিতে সমস্ত .cs ফাইলে একই ফরম্যাটিং প্রয়োগ করুন।
  • CI-তে CSharpier চালান পুল রিকোয়েস্টে আনফরম্যাটেড পরিবর্তন ব্লক করতে।
  • শুধুমাত্র স্টাইল-সংক্রান্ত আলোচনা এড়িয়ে কোড রিভিউতে শব্দদূষণ হ্রাস করুন।

দ্রুত রিফ্যাক্টর

বড় সম্পাদনা বা রিফ্যাক্টরের পরে, পাঠযোগ্যতা এবং কাঠামো পুনরুদ্ধার করতে পুনরায় ফরম্যাট করুন।

  • কোড ব্লক সরানো বা ডুপ্লিকেট করার পর ইন্ডেন্টেশন স্বাভাবিক করুন।
  • দীর্ঘ LINQ কোয়েরি এবং ইন্টারপোলেটেড স্ট্রিংগুলি পড়া সহতর করুন।
  • ছড়িয়ে থাকা স্পেস, অসামঞ্জস্যপূর্ণ ব্রেস এবং অদ্ভুত ব্রেকগুলি পরিষ্কার করুন।

ইউনিটি ও গেম ডেভেলপমেন্ট

বড় ইউনিটি প্রকল্পগুলিতে গেমপ্লে স্ক্রিপ্ট এবং ইঞ্জিন ইন্টিগ্রেশন পরিষ্কার রাখুন।

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

ASP.NET Core, API ও Blazor

কন্ট্রোলার, সার্ভিস, Razor কম্পোনেন্ট এবং DTOগুলি পড়া এবং রক্ষণাবেক্ষণ সহজ করুন।

  • অ্যাট্রিবিউট, রেকর্ড এবং মিনিমাল API-এর জন্য পূর্বাভাসযোগ্য লেআউট।
  • এন্ডপয়েন্ট, কন্ট্রাক্ট বা DTO ফর্ম পরিবর্তন করার সময় ক্লিনার ডিফ।
  • একটি একক, বিশ্বস্ত স্টাইলের সাথে নতুন টিম সদস্যদের দ্রুত অনবোর্ড করুন।

❓ Frequently Asked Questions

🆚ফরম্যাটার বনাম লিন্টার — পার্থক্য কী?

একটি ফরম্যাটার আপনার কোডের লেআউট পুনরায় লিখে (স্পেস, নিউলাইন, ইন্ডেন্টেশন, ব্রেস)। একটি লিন্টার সম্ভাব্য সমস্যা, স্টাইল ইস্যু বা সেরা অনুশীলন লঙ্ঘনের জন্য আপনার কোড বিশ্লেষণ করে। অনেক দল উভয়ই ব্যবহার করে: কাঠামোর জন্য ফরম্যাটার, নির্দেশিকা এবং ডায়াগনস্টিক্সের জন্য লিন্টার।

🔒ফরম্যাটিং কি আমার C# কোডের আচরণ পরিবর্তন করে?

না। CSharpier শুধুমাত্র ফরম্যাটিং এবং লেআউটে ফোকাস করে। এটি হোয়াইটস্পেস, ইন্ডেন্টেশন এবং লাইন ব্রেক পরিবর্তন করার সময় আপনার কোডের শব্দার্থবিদ্যা সংরক্ষণ করার জন্য ডিজাইন করা হয়েছে।

🧩এই টুলটি কি ইউজিং পুনর্বিন্যাস করে বা ইম্পোর্ট অপ্টিমাইজ করে?

না। এই ফরম্যাটারটি ইউজিং ডাইরেক্টিভ পুনর্বিন্যাস বা কোড রিফ্যাক্টর করে না। আপনার যদি ইম্পোর্ট পুনর্বিন্যাস, কোড ক্লিনআপ বা অতিরিক্ত অ্যানালাইজার প্রয়োজন হয় তবে IDE ফিচার বা `dotnet format` এর মতো টুল ব্যবহার করুন।

📦এটি কি আধুনিক C# ফিচার সমর্থন করে?

হ্যাঁ। CSharpier আধুনিক C# মাথায় রেখে তৈরি করা হয়েছে এবং রেকর্ড, ফাইল-স্কোপড নেমস্পেস, প্যাটার্ন ম্যাচিং, টপ-লেভেল স্টেটমেন্ট, র স্ট্রিং লিটারাল এবং আরও অনেক কিছু সমর্থন করে।

🏗️আমি CI-তে এই ফরম্যাটিং স্টাইল কিভাবে প্রয়োগ করব?

আপনার CI এনভায়রনমেন্টে CSharpier ইনস্টল করুন এবং `csharpier --check **/*.cs` চালান। কমান্ডটি নন-জিরো স্ট্যাটাস দিয়ে বের হলে, আপনি বিল্ড ফেল করতে পারেন এবং আনফরম্যাটেড কোড মার্জ হওয়া রোধ করতে পারেন।

🔐এখানে মালিকানাধীন বা গোপনীয় C# কোড পেস্ট করা কি নিরাপদ?

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

Pro Tips

Best Practice

একটি রিপো-লোকাল টুল ম্যানিফেস্ট কমিট করুন যাতে আপনার পুরো দল একই CSharpier সংস্করণ ব্যবহার করে এবং "আমার মেশিনে কাজ করে" পার্থক্য এড়ায়।

Best Practice

আপনার পছন্দসই লাইন প্রস্থ এবং স্টাইল সেটিংস সহ একটি `.editorconfig` যোগ করুন যাতে C# ফরম্যাটিং আইডিই, অবদানকারী এবং CI জুড়ে সামঞ্জস্যপূর্ণ থাকে।

Best Practice

প্রতিটি কমিটের আগে স্টেজ করা `.cs` ফাইলগুলি স্বয়ংক্রিয়ভাবে ফরম্যাট করতে একটি Git প্রি-কমিট হুক বা pre-commit/Husky এর মতো টুল ব্যবহার করুন।

Best Practice

এই ফরম্যাটারটি Roslyn অ্যানালাইজার বা অন্যান্য লিন্টারের সাথে একত্রিত করুন যাতে আপনি পরিষ্কার লেআউট এবং কার্যকরী ডায়াগনস্টিক্স উভয়ই পান।

Additional Resources

Other Tools