মোবাইল অ্যাপ

Flutter দিয়ে অ্যাপ: বিগিনার থেকে অ্যাডভান্সড — পুরো পথটা একসাথে

Flutter দিয়ে অ্যান্ড্রয়েড ও আইওএস অ্যাপ বানানোর সম্পূর্ণ গাইড — বিগিনার সেটআপ থেকে অ্যাডভান্সড স্টেট ম্যানেজমেন্ট পর্যন্ত, বাংলাদেশি ডেভেলপারদের জন্য।

স্ট্যাক অ্যালিক্স টিমস্ট্যাক অ্যালিক্স টিম২৮ জুল, ২০২৬ মিনিট পড়া
শেয়ার করুন

মোবাইল অ্যাপ এখন আর শুধু বড় কোম্পানির বিলাসিতা নয় — বাংলাদেশের ছোট রেস্টুরেন্ট থেকে শুরু করে অনলাইন কোর্স প্ল্যাটফর্ম, প্রতিটি ব্যবসারই এখন একটা নিজস্ব অ্যাপ দরকার হয়ে পড়েছে। কিন্তু সমস্যা হলো, আলাদা করে অ্যান্ড্রয়েড আর আইওএস অ্যাপ বানাতে গেলে দুই গুণ সময়, দুই গুণ খরচ আর দুই গুণ ঝামেলা। ঠিক এই জায়গাতেই Flutter খেলাটা বদলে দিয়েছে। Google-এর তৈরি এই ওপেন-সোর্স ফ্রেমওয়ার্ক দিয়ে আপনি একটাই কোডবেস লিখে অ্যান্ড্রয়েড, আইওএস, ওয়েব এবং ডেস্কটপ — সবগুলোর জন্যই অ্যাপ বানাতে পারবেন।

এই গাইডে আমরা Building Apps with Flutter নিয়ে একদম গোড়া থেকে শুরু করব — মানে বিগিনার লেভেলে ইনস্টলেশন আর প্রথম অ্যাপ, তারপর ধাপে ধাপে এগিয়ে যাব অ্যাডভান্সড স্টেট ম্যানেজমেন্ট, API ইন্টিগ্রেশন আর Play Store-এ পাবলিশ করা পর্যন্ত। বাংলাদেশি ফ্রিল্যান্সার, স্টার্টআপ ফাউন্ডার কিংবা শখের প্রোগ্রামার — যেই হোন না কেন, এই পোস্ট পড়ে আপনি একটা স্পষ্ট রোডম্যাপ পেয়ে যাবেন। চলুন শুরু করা যাক।

📌 এক নজরে

  • Flutter হলো Google-এর ক্রস-প্ল্যাটফর্ম ফ্রেমওয়ার্ক — একটাই কোড দিয়ে Android, iOS, Web ও Desktop অ্যাপ।
  • প্রোগ্রামিং ভাষা Dart — শিখতে সহজ, সিনট্যাক্স অনেকটা JavaScript ও Java-র মাঝামাঝি।
  • সবকিছুই Widget — বাটন, টেক্সট, লেআউট সবই উইজেট, এবং উইজেট জুড়ে জুড়ে UI তৈরি হয়।
  • Hot Reload ফিচারের কারণে কোড বদলানোর সাথে সাথেই অ্যাপে পরিবর্তন দেখা যায়, ডেভেলপমেন্ট অনেক দ্রুত।
  • বিগিনারের জন্য setState, অ্যাডভান্সডের জন্য Provider, Riverpod বা Bloc দিয়ে স্টেট ম্যানেজমেন্ট।
  • বাংলাদেশে ফ্রিল্যান্স মার্কেটে Flutter ডেভেলপারের চাহিদা দ্রুত বাড়ছে, রেট ঘণ্টায় ১৫–৪০ ডলার পর্যন্ত।

Flutter কী এবং কেন বেছে নেবেন

Flutter মূলত একটা UI টুলকিট যা দিয়ে ন্যাটিভ পারফরম্যান্সের সুন্দর অ্যাপ বানানো যায়। এর সবচেয়ে বড় শক্তি হলো — এটি প্রতিটি পিক্সেল নিজে আঁকে (Skia/Impeller রেন্ডারিং ইঞ্জিন দিয়ে), ফলে অ্যান্ড্রয়েড আর আইওএসে আপনার অ্যাপ একই রকম দেখায়। React Native যেখানে ন্যাটিভ কম্পোনেন্টের উপর নির্ভর করে, Flutter সেখানে নিজের রেন্ডারিং নিয়ন্ত্রণ করে, তাই UI-তে অসঙ্গতি (inconsistency) অনেক কম হয়।

কেন Flutter বেছে নেবেন? প্রথমত, খরচ ও সময় বাঁচে — একটা টিম একটাই কোডবেস মেইনটেইন করে দুই প্ল্যাটফর্মের কাজ চালায়। দ্বিতীয়ত, Hot Reload দিয়ে সেকেন্ডের মধ্যে পরিবর্তন দেখা যায়, যা বাংলাদেশি ক্লায়েন্টদের দ্রুত প্রোটোটাইপ দেখানোর জন্য দারুণ। তৃতীয়ত, Google নিজে Flutter দিয়ে Google Pay-এর মতো বড় অ্যাপ চালায়, এবং BYJU\'S, Alibaba, eBay-এর মতো কোম্পানিও এটি ব্যবহার করছে — তাই দীর্ঘমেয়াদে ফ্রেমওয়ার্কটির ভবিষ্যৎ নিয়ে দুশ্চিন্তা নেই।

প্রথম ধাপ: সেটআপ ও Dart-এর বেসিক

শুরু করতে আপনার দরকার হবে Flutter SDK, একটা কোড এডিটর (VS Code সবচেয়ে জনপ্রিয়, সাথে Flutter ও Dart এক্সটেনশন), এবং অ্যান্ড্রয়েড টেস্টিংয়ের জন্য Android Studio (এমুলেটরের জন্য)। বাংলাদেশের ডেভেলপারদের একটা বড় সুবিধা — আইওএস অ্যাপ টেস্ট করতে Mac লাগলেও, অ্যান্ড্রয়েড অ্যাপ পুরোপুরি Windows-এ বানানো ও টেস্ট করা যায়। SDK ইনস্টলের পর টার্মিনালে flutter doctor কমান্ড দিলে কোন কোন জিনিস বাকি আছে তা স্পষ্ট দেখা যায়।

Dart শেখা নিয়ে ভয় পাবেন না। আপনি যদি আগে JavaScript বা Java জানেন, তাহলে কয়েক দিনেই বেসিক ধরে ফেলবেন। মূল ধারণাগুলো হলো — var, final, const দিয়ে ভ্যারিয়েবল, classfunction, এবং async/await দিয়ে অ্যাসিনক্রোনাস কোড (যেমন ইন্টারনেট থেকে ডেটা আনা)। Flutter-এ প্রায় সবকিছুই WidgetStatelessWidget (যেটার ডেটা বদলায় না) আর StatefulWidget (যেটার ডেটা বদলায়, যেমন কাউন্টার বা লগইন ফর্ম)। এই দুইটার পার্থক্য বুঝে গেলে অর্ধেক কাজ শেষ।

ইন্টারমিডিয়েট: লেআউট, নেভিগেশন ও স্টেট

একবার বেসিক উইজেট বুঝে গেলে আসবে লেআউটRow, Column, Stack, Container, আর Expanded/Flexible দিয়ে রেসপনসিভ ডিজাইন। বাংলাদেশের ব্যবহারকারীদের কাছে নানা স্ক্রিন সাইজের ফোন আছে (সস্তা থেকে দামি), তাই MediaQuery আর LayoutBuilder দিয়ে রেসপনসিভনেস নিশ্চিত করা জরুরি। একাধিক স্ক্রিনের মধ্যে যাওয়া-আসার জন্য Navigation ব্যবহার হয় — সাধারণ Navigator.push থেকে শুরু করে অ্যাডভান্সড GoRouter প্যাকেজ পর্যন্ত।

এই পর্যায়েই স্টেট ম্যানেজমেন্ট ধারণাটা গুরুত্বপূর্ণ হয়ে ওঠে। ছোট অ্যাপে setState যথেষ্ট, কিন্তু অ্যাপ বড় হলে অনেক স্ক্রিনে একই ডেটা (যেমন লগইন ইউজার, কার্ট আইটেম) শেয়ার করতে হয়। তখন setState দিয়ে সামলানো কঠিন হয়ে পড়ে। এখানেই আসে Provider বা Riverpod — এগুলো দিয়ে অ্যাপের ডেটা একটা কেন্দ্রীয় জায়গায় রাখা যায় এবং যেখানে দরকার সেখানে নেওয়া যায়। বিগিনার থেকে অ্যাডভান্সডে উঠতে হলে এই কনসেপ্টটা ভালো করে আয়ত্ত করতেই হবে।

অ্যাডভান্সড: API, ডেটাবেস ও পাবলিশিং

সত্যিকারের অ্যাপ মানেই ব্যাকএন্ডের সাথে সংযোগhttp বা dio প্যাকেজ দিয়ে REST API কল করে JSON ডেটা আনা, তারপর সেটাকে Dart মডেলে রূপান্তর (parsing) করা — এটা প্রায় প্রতিটি অ্যাপে লাগে। লোকাল ডেটা সংরক্ষণের জন্য shared_preferences (ছোট ডেটা), sqflite বা Hive (বড় ডেটাবেস) ব্যবহার হয়। রিয়েল-টাইম অ্যাপ (যেমন চ্যাট বা অর্ডার ট্র্যাকিং) বানাতে চাইলে Firebase একটা চমৎকার সমাধান — Authentication, Firestore ডেটাবেস ও Push Notification সবই বিনামূল্যে শুরু করা যায়।

অ্যাপ তৈরি হয়ে গেলে শেষ ধাপ পাবলিশিং। অ্যান্ড্রয়েডের জন্য Google Play Console-এ ডেভেলপার অ্যাকাউন্ট লাগে (এককালীন ২৫ ডলার ফি), আর আইওএসের জন্য Apple Developer অ্যাকাউন্ট (বছরে ৯৯ ডলার)। পাবলিশ করার আগে অ্যাপ build করতে হয় flutter build appbundle কমান্ড দিয়ে, সাইনিং কী জেনারেট করতে হয়, এবং স্ক্রিনশট ও বর্ণনাসহ স্টোর লিস্টিং প্রস্তুত করতে হয়। বাংলাদেশ থেকে পেমেন্ট রিসিভের জন্য Payoneer বা ব্যাংক অ্যাকাউন্ট যুক্ত করা যায়।

📊 পরিসংখ্যান ও তথ্য

  • বিশ্বব্যাপী ক্রস-প্ল্যাটফর্ম মোবাইল ফ্রেমওয়ার্কগুলোর মধ্যে Flutter ধারাবাহিকভাবে শীর্ষ অবস্থানে, প্রায় ৪৬%+ ডেভেলপার এটি ব্যবহার করেন।
  • Google Play Store-এ ১০ লাখের বেশি অ্যাপ Flutter দিয়ে তৈরি।
  • Flutter-এর প্রোগ্রামিং ভাষা Dart GitHub-এ দ্রুত বর্ধনশীল ভাষাগুলোর একটি।
  • আপওয়ার্ক ও ফাইভারে একজন দক্ষ Flutter ডেভেলপার ঘণ্টায় ১৫–৪০ ডলার আয় করেন, যা বাংলাদেশি ফ্রিল্যান্সারদের জন্য আকর্ষণীয়।
  • একটি মাঝারি জটিলতার Flutter অ্যাপ ন্যাটিভের তুলনায় প্রায় ৩০–৪০% কম সময়ে ডেলিভারি করা সম্ভব।
মূল কথা: Flutter শুধু একটা টুল নয়, এটা বাংলাদেশি ডেভেলপারদের জন্য একটা ক্যারিয়ার সুযোগ। একটাই স্কিল শিখে দুই প্ল্যাটফর্মের কাজ পাওয়া যায় — সময় ও আয় দুইয়েরই লাভ।

✅ ধাপে ধাপে

  • ধাপ ১ — সেটআপ: Flutter SDK, VS Code ও Android Studio ইনস্টল করুন এবং flutter doctor চালিয়ে নিশ্চিত করুন সব ঠিক আছে।
  • ধাপ ২ — Dart শিখুন: ভ্যারিয়েবল, ফাংশন, ক্লাস ও async/await — ৩–৫ দিনে বেসিক আয়ত্ত করুন।
  • ধাপ ৩ — প্রথম অ্যাপ: ডিফল্ট কাউন্টার অ্যাপ চালিয়ে Hot Reload অনুভব করুন, তারপর নিজের একটা সিম্পল UI বানান।
  • ধাপ ৪ — উইজেট ও লেআউট: Row, Column, Container, ListView দিয়ে একটা প্রোফাইল বা টু-ডু স্ক্রিন তৈরি করুন।
  • ধাপ ৫ — নেভিগেশন: একাধিক স্ক্রিন বানিয়ে Navigator বা GoRouter দিয়ে এদের সংযুক্ত করুন।
  • ধাপ ৬ — স্টেট ম্যানেজমেন্ট: আগে setState, পরে Provider বা Riverpod দিয়ে বড় অ্যাপের ডেটা সামলান।
  • ধাপ ৭ — API ও ডেটাবেস: http/dio দিয়ে API কল ও Firebase/sqflite দিয়ে ডেটা সংরক্ষণ শিখুন।
  • ধাপ ৮ — পাবলিশ: অ্যাপ build করে Play Store ও App Store-এ আপলোড করুন।

⚠️ সাধারণ ভুল

  • সরাসরি অ্যাডভান্স টপিকে লাফ দেওয়া — Dart ও বেসিক উইজেট না বুঝে Bloc/Riverpod ধরতে গেলে হতাশ হবেন।
  • স্টেট ম্যানেজমেন্ট অতিরিক্ত জটিল করা — ছোট অ্যাপে অযথা Bloc ব্যবহার না করে setState বা Provider দিয়েই শুরু করুন।
  • রেসপনসিভ ডিজাইন উপেক্ষা করা — শুধু এক ফোনে টেস্ট করে ছেড়ে দিলে অন্য স্ক্রিনে UI ভেঙে যেতে পারে।
  • এরর হ্যান্ডলিং না করা — API কল ব্যর্থ হলে অ্যাপ ক্র্যাশ করবে; সবসময় try-catch ও লোডিং স্টেট রাখুন।
  • প্যাকেজ অন্ধভাবে ব্যবহার — pub.dev থেকে যেকোনো প্যাকেজ নেওয়ার আগে এর জনপ্রিয়তা, আপডেট ও লাইসেন্স যাচাই করুন।
  • পারফরম্যান্স অবহেলা — অপ্রয়োজনে পুরো উইজেট ট্রি rebuild করালে অ্যাপ স্লো হয়; const কনস্ট্রাক্টর ব্যবহার করুন।

❓ সাধারণ প্রশ্নোত্তর (FAQ)

Flutter শিখতে কতদিন লাগে?\nপ্রোগ্রামিংয়ের পূর্ব অভিজ্ঞতা থাকলে নিয়মিত চর্চায় ২–৩ মাসে কাজের উপযোগী দক্ষতা অর্জন করা সম্ভব। একদম নতুন হলে Dart বেসিকসহ ৪–৬ মাস ধরে নিন।

Flutter শিখতে কি Mac লাগবে?\nনা। অ্যান্ড্রয়েড অ্যাপ পুরোপুরি Windows বা Linux-এ বানানো ও টেস্ট করা যায়। শুধু iOS অ্যাপ build ও App Store-এ পাবলিশ করতে Mac দরকার হয়।

Flutter নাকি React Native — কোনটা ভালো?\nদুটোই ভালো, তবে Flutter-এর UI ধারাবাহিকতা ও পারফরম্যান্স সাধারণত এগিয়ে। React Native-এ JavaScript লাগে, Flutter-এ Dart। বাংলাদেশের জব মার্কেটে দুটোরই চাহিদা আছে।

বিগিনার হিসেবে কোন স্টেট ম্যানেজমেন্ট শিখব?\nপ্রথমে setState, এরপর Provider। এই দুটো ভালো করে বুঝলে পরে Riverpod বা Bloc-এ যাওয়া সহজ হবে। শুরুতেই সব শেখার চাপ নেবেন না।

Flutter দিয়ে কি আয় করা যায়?\nঅবশ্যই। আপওয়ার্ক, ফাইভার ও লোকাল ক্লায়েন্ট — সব জায়গাতেই Flutter কাজের চাহিদা আছে। একটা ভালো পোর্টফোলিও থাকলে রিমোট জব বা ফ্রিল্যান্স প্রজেক্ট পাওয়া যথেষ্ট সম্ভব।

শেষ কথা

Flutter দিয়ে অ্যাপ ডেভেলপমেন্ট শেখা মানে এমন একটা স্কিল অর্জন করা যা আগামী বহু বছর কাজে দেবে। বিগিনার লেভেলে Dart আর উইজেট, ইন্টারমিডিয়েটে নেভিগেশন আর স্টেট, আর অ্যাডভান্সডে API, Firebase ও পাবলিশিং — এই পথ ধরে ধৈর্য নিয়ে এগোলে আপনি ছয় মাসের মধ্যেই একজন কাজের উপযোগী Flutter ডেভেলপার হয়ে উঠতে পারবেন। মূল মন্ত্র একটাই: প্রতিদিন একটু একটু কোড লিখুন আর ছোট ছোট প্রজেক্ট বানান।

আপনার ব্যবসার জন্য যদি একটা পেশাদার Flutter অ্যাপ দরকার হয়, কিংবা শেখার পথে গাইডলাইন চান — Stack Alix টিম আপনার পাশে আছে। অ্যাপ ডিজাইন থেকে শুরু করে ডেভেলপমেন্ট ও Play Store পাবলিশিং পর্যন্ত পুরো সেবা আমরা একসাথে দিই। আপনার আইডিয়াটা নিয়ে আজই আমাদের সাথে কথা বলুন।

ট্যাগ:মোবাইল অ্যাপ#flutter#building apps with flutter#mobile-app#dart#app development#cross-platform#bangladesh
স্ট্যাক অ্যালিক্স টিম
লেখক সম্পর্কে
স্ট্যাক অ্যালিক্স টিম
Stack Alix কন্ট্রিবিউটর

ডিজিটাল প্রোডাক্ট, ডেভেলপমেন্ট ও অনলাইন ব্যবসা নিয়ে নিয়মিত লেখেন।

নতুন আর্টিকেল ইনবক্সে পেতে চান?

সপ্তাহের সেরা টিপস ও গাইড সরাসরি আপনার ইমেইলে।