Loading…

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

যে সুইফট **কম্পাইল** হয় তা লেখা সহজ। যে সুইফট **সুন্দর, সামঞ্জস্যপূর্ণ এবং পর্যালোচনা-প্রস্তুত** তা লেখা কঠিন। এই অনলাইন সুইফট ফরম্যাটার সুইফটফরম্যাট-স্টাইলের নিয়ম ব্যবহার করে ইন্ডেন্টেশন, স্পেসিং এবং লাইন র‍্যাপিং স্বাভাবিক করে যাতে আপনার `.swift` ফাইলগুলি Xcode, Swift Playgrounds এবং CI পাইপলাইনে পরিষ্কার থাকে।

সুইফট ফরম্যাটারের মূল বৈশিষ্ট্য

  • সুইফট কোডে ইন্ডেন্টেশন, স্পেসিং এবং ব্রেসের **এক-ক্লিক ক্লিনআপ**
  • *ইন্ডেন্ট সাইজ* স্লাইডারের মাধ্যমে **কনফিগারযোগ্য ইন্ডেন্ট সাইজ** (1–8 স্পেস)
  • দীর্ঘ এক্সপ্রেশনগুলি আপনার পছন্দসই কলাম প্রস্থের মধ্যে রাখতে **র‍্যাপ / লাইন দৈর্ঘ্য** নিয়ন্ত্রণ
  • স্ট্যান্ডার্ড `.swift` সোর্স ফাইল এবং পেস্ট করা স্নিপেট সমর্থন করে
  • **iOS, macOS, watchOS, tvOS এবং সার্ভার-সাইড সুইফট** প্রকল্পের জন্য দুর্দান্ত
  • পর্দার আড়ালে স্বাভাবিক সুইফট আউটপুটের জন্য SwiftFormat-স্টাইল ইঞ্জিন ব্যবহার করে
  • ইডেম্পোটেন্ট ফরম্যাটিং - একাধিকবার চালালেও একই আউটপুট থাকে
  • অ্যাকাউন্টের প্রয়োজন নেই - শুধু পেস্ট করুন, ফরম্যাট করুন এবং পরিষ্কার ফলাফল কপি করুন

🛠️ সুইফট ফরম্যাটার কীভাবে ব্যবহার করবেন for swift-formatter

1

১. আপনার সুইফট কোড পেস্ট বা আপলোড করুন

📥 সরাসরি এডিটরে সুইফট কোড পেস্ট করুন, অথবা একটি `.swift` ফাইল ড্র্যাগ-এন্ড-ড্রপ করুন। টুলটি সাধারণ এক্সকোড-স্টাইল সুইফট সোর্সের জন্য অপ্টিমাইজড।

2

২. ইন্ডেন্টেশন ও লাইন দৈর্ঘ্য সেট করুন

📏 **ইন্ডেন্ট সাইজ** স্লাইডার ব্যবহার করে প্রতিটি ইন্ডেন্টেশন লেভেলের জন্য কতগুলি স্পেস ব্যবহার করতে হবে তা নির্বাচন করুন, এবং **র‍্যাপ / লাইন দৈর্ঘ্য** কনফিগার করুন যাতে দীর্ঘ লাইনগুলি কোথায় মোড়ানো হবে তা নিয়ন্ত্রণ করতে পারেন (বা এটি `0` সেট করে র‍্যাপ-ভিত্তিক ফরম্যাটিং নিষ্ক্রিয় করতে পারেন)।

3

৩. "ফরম্যাট" ক্লিক করুন

⚡ **ফরম্যাট** বাটন টিপে SwiftFormat-স্টাইল নিয়ম প্রয়োগ করুন। ফরম্যাটারটি ইন্ডেন্টেশন, `:` এবং অপারেটরগুলির চারপাশের স্পেস স্বাভাবিক করে এবং আপনার সেটিংস অনুযায়ী দীর্ঘ লাইনগুলি মোড়ানো হয়।

4

৪. ফলাফল পর্যালোচনা এবং কপি করুন

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

প্রযুক্তিগত বিবরণ

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

টুলটি সাধারণ SwiftFormat কনভেনশনগুলি মিরর করে যাতে আপনার কোডবেস ফাইল এবং অবদানকারীদের মধ্যে সামঞ্জস্যপূর্ণ থাকে।

দিকআচরণমন্তব্য
ভাষাসুইফটসুইফট ৫+ সোর্স ফাইলগুলির সাথে সবচেয়ে ভাল কাজ করে।
ইন্ডেন্টেশনকনফিগারযোগ্য স্পেস প্রতি লেভেল**ইন্ডেন্ট সাইজ** অপশন দ্বারা নিয়ন্ত্রিত (১–৮)।
লাইন র‍্যাপিংঐচ্ছিক র‍্যাপ কলাম**র‍্যাপ / লাইন দৈর্ঘ্য** দ্বারা নিয়ন্ত্রিত (০–১২০; `0` = র‍্যাপ নেই)।
হোয়াইটস্পেস`:` এবং অপারেটরগুলির চারপাশে স্বাভাবিকীকৃতপাঠযোগ্যতা এবং কোড রিভিউ জুড়ে সামঞ্জস্য উন্নত করে।
ইডেম্পোটেন্ট আউটপুটএকই ইনপুট → একই আউটপুটফরম্যাটিং ড্রিফট ছাড়াই একাধিকবার চালানোর জন্য নিরাপদ।

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

অ্যাপল প্ল্যাটফর্ম এবং সার্ভার-সাইড সুইফট প্রকল্পগুলিতে ব্যবহৃত বাস্তব-বিশ্বের সুইফট সোর্স ফাইলগুলিতে ফোকাস করে।

প্যারামিটারমান / আচরণমন্তব্য
ফাইল এক্সটেনশন.swiftস্ট্যান্ডার্ড Swift সোর্স ফাইল।
MIME টাইপtext/x-swiftএডিটর এবং ড্রপজোন শনাক্তকরণের জন্য অভ্যন্তরীণভাবে ব্যবহৃত।
সর্বোচ্চ ইনপুট সাইজ≈ 2 MB সোর্সখুব বড় ফাইলগুলো CI-তে স্থানীয় SwiftFormat এর মাধ্যমে ফরম্যাট করা ভালো।
আউটপুট এক্সটেনশন.swiftফরম্যাট করা কন্টেন্ট Swift সোর্স ফাইল হিসেবে সংরক্ষণ করা সর্বোত্তম।

বৈধতা ও ত্রুটি

ফরম্যাটারটি ব্যাকরণগতভাবে বৈধ Swift আশা করে। ইনপুটটি অসম্পূর্ণ বা বড় সিনট্যাক্স ত্রুটি থাকলে, এটি ব্যর্থ হতে পারে বা ফরম্যাট করা আউটপুটের পরিবর্তে একটি ত্রুটি বার্তা দিতে পারে।

কমান্ড লাইন বিকল্পসমূহ SwiftFormat সহ

Xcode, CI বা প্রি-কমিট হুকে একই স্টাইল চান? সরাসরি SwiftFormat ব্যবহার করুন:

macOS (Homebrew)

Homebrew এর মাধ্যমে SwiftFormat ইনস্টল করুন

brew install swiftformat

আপনার সিস্টেমে `swiftformat` CLI যোগ করে।

একটি Swift ফাইল ফরম্যাট করুন

swiftformat MyViewController.swift

ডিফল্ট SwiftFormat নিয়ম ব্যবহার করে ফাইলটি রিরাইট করে।

সম্পূর্ণ Xcode প্রজেক্ট ফরম্যাট করুন

swiftformat .

বর্তমান ডিরেক্টরিতে সমস্ত `.swift` ফাইল রিকার্সিভলি ফরম্যাট করে।

প্রজেক্ট-লেভেল কনফিগারেশন

কাস্টম কনফিগারেশন ব্যবহার করুন

swiftformat . --config .swiftformat

`.swiftformat` কনফিগ ফাইলে সংরক্ষিত টিম-স্পেসিফিক নিয়ম প্রয়োগ করুন।

Git প্রি-কমিটের সাথে সংযুক্ত করুন

swiftformat . && git commit

আপনার মেইন ব্রাঞ্চ পরিষ্কার রাখতে প্রতিটি কমিটের আগে SwiftFormat চালান।

দ্রুত এককালীন ক্লিনআপের জন্য এই অনলাইন টুল ব্যবহার করুন, তারপর একটি শেয়ার্ড `.swiftformat` ফাইল ব্যবহার করে আপনার রিপোতে একই স্টাইল মিরর করুন।

Swift ফরম্যাটারের ব্যবহারিক ক্ষেত্রসমূহ

iOS & macOS অ্যাপ ডেভেলপমেন্ট

ফিচার ব্রাঞ্চ জুড়ে UIKit, SwiftUI এবং Combine-হেভি কোড পড়তে পারা এবং সামঞ্জস্যপূর্ণ রাখুন।

  • কোড রিভিউ করার আগে ভিউ কন্ট্রোলার, ভিউ মডেল এবং সার্ভিসের ফরম্যাটিং মানসম্মত করুন।
  • প্রোডাকশন টার্গেটে কপি করার আগে স্ক্র্যাচপ্যাড বা প্রোটোটাইপ Swift কোড পরিষ্কার করুন।
  • জটিল SwiftUI ভিউ হায়ারার্কির ইন্ডেন্টেশন এবং র‍্যাপিং সারিবদ্ধ করুন।
struct ContentView: View {
  var body: some View {
    VStack {
      Text("Hello")
      Button("Tap me") {
        print("Tapped")
      }
    }
  }
}

সার্ভার-সাইড Swift (Vapor, Hummingbird, ইত্যাদি)

API হ্যান্ডলার এবং রাউটিং কোড স্ক্যান ও রিভিউ করা সহজ করুন।

  • রুট এবং মিডলওয়্যার ডিক্লেয়ারেশন পুনরায় ফরম্যাট করুন যাতে জটিল চেইনগুলি অনুসরণ করা সহজ হয়।
  • দীর্ঘ প্রপার্টি তালিকা সহ JSON এনকোডিং/ডিকোডিং স্ট্রাক্ট পরিষ্কার করুন।
  • Swift কোডের ভিতরে দীর্ঘ SQL বা HTTP ক্লায়েন্ট কলের সামঞ্জস্যপূর্ণ র‍্যাপিং নিশ্চিত করুন。
app.get("hello") { req async throws -> String in
    "Hello, world!"
}

Swift শেখানো ও শেখা

ছাত্রদের দেখান কিভাবে idiomatic Swift দেখতে হয় এবং অনুশীলনে "স্টাইল নয়েজ" কমায়।

  • স্লাইড বা ডকুমেন্টেশনে উদাহরণ শেয়ার করার আগে Swift কোড স্বাভাবিক করুন।
  • স্পেসিং এবং ইন্ডেন্টেশনের পরিবর্তে যুক্তিতে ফোকাস করতে ছাত্র জমাগুলি পরিষ্কার করুন।
  • দেখান কিভাবে ভাল ফরম্যাটিং আচরণ পরিবর্তন না করে পাঠযোগ্যতা উন্নত করে।
func fibonacci(_ n: Int) -> Int {
    if n < 2 { return n }
    return fibonacci(n - 1) + fibonacci(n - 2)
}

❓ Frequently Asked Questions

এই Swift ফরম্যাটার আসলে কী পরিবর্তন করে?

ফরম্যাটার **ইন্ডেন্টেশন, স্পেস এবং লাইন র‍্যাপিং** সামঞ্জস্য করে Swift-স্টাইল কনভেনশন অনুসরণ করতে। এটি ইচ্ছাকৃতভাবে আপনার কোডের যুক্তি পরিবর্তন করে না – শুধুমাত্র এটি কীভাবে সাজানো হয়েছে তা।

📏আমি র‍্যাপ / লাইন দৈর্ঘ্যের জন্য কী বেছে নেব?

সাধারণ পছন্দ **৮০ থেকে ১০০ অক্ষর** পর্যন্ত হয়, আপনার দল এবং ডিসপ্লে প্রস্থের উপর নির্ভর করে। সংকীর্ণ লেআউটের জন্য (যেমন স্প্লিট-ভিউ Xcode) একটি ছোট মান ব্যবহার করুন এবং যদি আপনার দল wider লাইনে স্বচ্ছন্দ হয় তবে একটি বড় মান ব্যবহার করুন। যদি আপনি লাইন-দৈর্ঘ্য-ভিত্তিক র‍্যাপিং না চান তবে এটি `0` সেট করুন।

🧹এটি কি SwiftLint-এর প্রতিস্থাপন?

না। একটি ফরম্যাটার **লেআউট এবং স্টাইল** (ইন্ডেন্টেশন, র‍্যাপিং, স্পেসিং) এর উপর ফোকাস করে, যখন SwiftLint **লিন্টিং নিয়ম এবং সম্ভাব্য সমস্যা** (অব্যবহৃত কোড, নামকরণ, জটিলতা) এর উপর ফোকাস করে। অনেক দল একসাথে উভয় ব্যবহার করে।

🔒এখানে প্রোডাকশন Swift কোড পেস্ট করা কি নিরাপদ?

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

আমি কি প্রতিটি কমিটে স্বয়ংক্রিয়ভাবে এই ফরম্যাটার চালাতে পারি?

হ্যাঁ – আপনার রিপোজিটরিতে **SwiftFormat** ব্যবহার করুন (উদাহরণস্বরূপ একটি Git প্রি-কমিট হুক, Xcode বিল্ড ফেজ বা CI জবের মাধ্যমে) একই স্টাইল স্বয়ংক্রিয়ভাবে প্রয়োগ করতে। এই অনলাইন টুলটি দ্রুত চেক এবং ছোট স্নিপেটের জন্য আদর্শ।

Pro Tips

Best Practice

আপনার দলের সাথে একটি **ইন্ডেন্ট সাইজ** এবং **র‍্যাপ / লাইন দৈর্ঘ্য** সম্মত হন, তারপর সেই মানগুলো এই টুলে এবং আপনার `.swiftformat` কনফিগারেশনে মিরর করুন।

Best Practice

কোড রিভিউগুলো স্পেসিং বিতর্কের পরিবর্তে লজিক এবং আর্কিটেকচারে ফোকাস রাখতে পুল রিকোয়েস্টে ফর্ম্যাটার চালান।

Best Practice

জেনারেটেড সুইফট কোডে (যেমন কোডজেন টুলস থেকে) ফর্ম্যাটার ব্যবহার করুন যাতে এটি আপনার হাতে লেখা কোডের মতো পরিষ্কার দেখায়।

Best Practice

দ্রুত স্থানীয় টুইকের জন্য শুধুমাত্র Xcode-এর "রি-ইন্ডেন্ট" এর সাথে এই ফর্ম্যাটারটি একত্রিত করুন; সত্যিকারের সামঞ্জস্যপূর্ণ স্টাইল বজায় রাখতে CI-তে SwiftFormat ব্যবহার করুন।

Additional Resources

Other Tools