এই বছর, মোবাইল অ্যাপ্লিকেশনগুলো আরও আরও জনপ্রিয় হয়ে উঠছে। خوشকসমتی ডেভেলপাররা যারা সেগুলো তৈরি করতে চান তাদের জন্য অনেক প্রোগ্রামিং টুল উপলব্ধ। এই টুলগুলোর মধ্যে Flutter নিজেকে আলাদা করে তুলেছে।
Flutter কী?
Flutter Google দ্বারা তৈরি একটি ফ্রি ও ওপেন-সোর্স মোবাইল UI ফ্রেমওয়ার্ক যা মে ২০১৭-এ রিলিজ হয়েছিল। সংক্ষেপে, এটি আপনাকে শুধু একটি কোডবেস দিয়ে একটি নেটিভ মোবাইল অ্যাপ্লিকেশন তৈরি করতে দেয়। এর মানে আপনি একটি প্রোগ্রামিং ভাষা এবং একটি কোডবেস ব্যবহার করে দুটি ভিন্ন অ্যাপ (iOS এবং Android-এর জন্য) তৈরি করতে পারেন।
Flutter-এর দুটি গুরুত্বপূর্ণ অংশ রয়েছে:
- একটি SDK (Software Development Kit): টুলসের একটি সংগ্রহ যা আপনার অ্যাপ্লিকেশন ডেভেলপ করতে সাহায্য করবে। এতে আপনার কোড নেটিভ মেশিন কোডে (iOS এবং Android-এর জন্য কোড) কম্পাইল করার টুলস রয়েছে।
- একটি ফ্রেমওয়ার্ক (উইজেট-ভিত্তিক UI লাইব্রেরি): পুনরব্যবহারযোগ্য UI এলিমেন্টের একটি সংগ্রহ (বাটন, টেক্সট ইনপুট, স্লাইডার, ইত্যাদি) যা আপনি আপনার নিজস্ব প্রয়োজন অনুযায়ী পারসোনালাইজ করতে পারেন।
Flutter-এ ডেভেলপ করতে আপনি Dart নামক একটি প্রোগ্রামিং ভাষা ব্যবহার করবেন। ভাষাটি Google অক্টোবর ২০১১-এ তৈরি করেছিল, কিন্তু গত কয়েক বছরে এটি অনেক উন্নত হয়েছে।
Dart ফ্রন্ট-এন্ড ডেভেলপমেন্ট-এ ফোকাস করে, এবং আপনি এটি ব্যবহার করে মোবাইল এবং ওয়েব অ্যাপ্লিকেশন তৈরি করতে পারেন।
আপনি যদি কিছুটা প্রোগ্রামিং জানেন, Dart একটি টাইপড অবজেক্ট-অরিয়েন্টেড প্রোগ্রামিং ভাষা। আপনি Dart-এর সিনট্যাক্স JavaScript-এর সাথে তুলনা করতে পারেন।
“Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.” - Google, flutter.dev
আপনি কেন Flutter শিখবেন?
আমি Flutter পছন্দ করার এবং আগামী বছর এটি ব্যবহার করার কিছু কারণ নির্বাচন করেছি। নিচে আমি বিস্তারিত এবং আমার মতামত দিচ্ছি।
সহজে শিখা এবং ব্যবহার
Flutter একটি আধুনিক ফ্রেমওয়ার্ক, এবং আপনি এটিকে অনুভব করতে পারবেন! এটি দিয়ে মোবাইল অ্যাপ্লিকেশন তৈরি করা অনেক সহজ। আপনি যদি Java, Swift, বা React Native ব্যবহার করে থাকেন, তবে আপনি লক্ষ্য করবেন Flutter কতটা ভিন্ন।
ব্যক্তিগতভাবে আমি Flutter ব্যবহার শুরু করার আগে মোবাইল অ্যাপ্লিকেশন ডেভেলপমেন্ট পছন্দ করতাম না।
Flutter-এ যা আমি পছন্দ করি সেটি হল: আপনি ढের সারি কোড ছাড়া একটি আসল নেটিভ অ্যাপ্লিকেশন তৈরি করতে পারেন।
দ্রুত কম্পাইলেশন: সর্বোচ্চ উৎপাদনশীলতা
Flutter-এর করণে, আপনি আপনার কোড পরিবর্তন করে রিয়েল-টাইমে ফলাফল দেখতে পারেন। এটিকে Hot-Reload বলা হয়। আপনি সেভ করার পর শুধু কিছুক্ষণের মধ্যে অ্যাপ্লিকেশনটি আপডেট হয়ে যায়।
মহত্বপূর্ণ পরিবর্তনগুলো আপনাকে অ্যাপ রিলোড করতে বাধ্য করে। কিন্তু আপনি যদি ডিজাইনের মতো কাজ করেন, উদাহরণস্বরূপ একটি এলিমেন্টের সাইজ পরিবর্তন করেন, তবে এটি রিয়েল-টাইমে হয়!
স্টার্টআপ MVP-র জন্য আদর্শ
আপনি যদি যত দ্রুত সম্ভব আপনার প্রোডাক্ট Инভেস্টরদের দেখাতে চান, Flutter একটি ভালো পছন্দ।
এটি MVP-র জন্য ব্যবহার করার আমার টপ ৪ কারণ:
- Flutter-এ মোবাইল অ্যাপ্লিকেশন ডেভেলপ করা সস্তা কারণ আপনাকে দুটি মোবাইল অ্যাপ (একটি iOS এবং একটি Android) তৈরি ও মেইনটেইন করতে হয় না।
- আপনার MVP তৈরি করতে শুধু এক জন ডেভেলপার যথেষ্ট।
- এটি পারফরম্যান্ট – আপনি একটি নেটিভ অ্যাপ্লিকেশন এবং একটি Flutter অ্যাপের মধ্যে পারফরম্যান্স পার্থক্য বুঝতে পারবেন না।
- এটি সুন্দর – আপনি Flutter দ্বারা প্রদত্ত উইজেটগুলো সহজে ব্যবহার এবং পারসোনালাইজ করে আপনার কাস্টমারদের জন্য একটি মূল্যবান UI তৈরি করতে পারেন (নিচে Flutter-এ বने অ্যাপের উদাহরণ দেখুন)।
ভালো ডকুমেন্টেশন
নতুন প্রযুক্তির জন্য ভালো ডকুমেন্টেশন থাকা গুরুত্বপূর্ণ। কিন্তু সবসময় সেটি থাকে না!
আপনি Flutter-এর ডকুমেন্টেশন থেকে অনেক শিখতে পারেন, এবং সব কিছু খুব বিস্তারিত এবং বেসিক ইউজ কেসের জন্য সহজ উদাহরণসহ। আমার কোডে আমার উইজেটগুলোর সাথে যে সমস্যাগুলো হয়েছিল, প্রতিবার আমি ডকুমেন্টেশন চেক করলে উত্তরটা সেখানে পেয়েছি।
বৃদ্ধিমান কমিউনিটি
Flutter-এর একটি শক্তিশালী কমিউনিটি রয়েছে, এবং এটা আশেপাশের শুরু!
আপনি জানেন, আমি আমার ওয়েবসাইটে প্রোগ্রামিং-এ আমার জ্ঞান এবং উপকারী কন্টেন্ট শেয়ার করতে ভালোবাসি। আমাকে জানতে হবে যে আমি একটি সম্ভাবনা ও ব্যাকার-পূর্ণ প্রযুক্তির ওপর কাজ করছি।
যখন আমি Flutter ব্যবহার শুরু করেছিলাম, প্রথমে আমি কমিউনিটি খুঁজেছিলাম, এবং আমার আশ্চর্যের সীমা নেই… Flutter-এ ইনফো এক্সচেঞ্জ করার জন্য যথেষ্ঠ জায়গা আছে।
আমি আমার প্রতিদিন চেক করার 몇몇 প্রিয় জায়গার উদাহরণ দিচ্ছি। আপনার সুপারিশ Twitter-এ মেসেজ করুন।
- Flutter Awesome: একটি অসাধারণ তালিকা যা সেরা Flutter লাইব্রেরি এবং টুল কিউরেট করে। এই ওয়েবসাইট প্রতিদিন কন্টেন্ট পাবলিশ করে অনেক উদাহরণ, অ্যাপ্লিকেশন টেমপ্লেট, পরামর্শ, এবং আরও অনেক কিছু সহ।
- Awesome Flutter: একটি GitHub রিপোজিটরি (Flutter Awesome-র সাথে লিঙ্কড) যা আর্টিকেল, ভিডিও, কম্পোনেন্ট, ইউটিলিটি, ইত্যাদির তালিকা ধারণ করে।
- It’s all widgets!: Flutter-এ বিল্ট অ্যাপের একটি ওপেন তালিকা।
- Flutter Community: একটি Medium পাবলিকেশন যেখানে আপনি আর্টিকেল, টিউটোরিয়াল, এবং আরও অনেক কিছু পাবেন।
Android Studio এবং VS Code দ্বারা সাপোর্টেড
Flutter বিভিন্ন IDE-এ উপলব্ধ। এই প্রযুক্তির সাথে ডেভেলপ করার জন্য দুটি প্রধান কোড এডিটর হল Android Studio (IntelliJ) এবং VS Code।
Android Studio একটি সম্পূর্ণ সফটওয়্যার যেখানে সব কিছু ইতিমধ্যে ইন্টিগ্রেটেড। আপনাকে Flutter এবং Dart প্লাগইন ডাউনলোড করে শুরু করতে হবে।
VS Code একটি লাইটওয়েট টুল, এবং সব কিছু মার্কেটপ্লেস থেকে প্লাগইন দিয়ে কনফিগারেবল।
আমি Android Studio ব্যবহার করি কারণ কাজ করার জন্য আমাকে অনেক কিছু কনফিগার করতে হয় না।
আপনি আপনার পছন্দের IDE বেছে নিতে আज़াদ!
বোনাস
ফ্রিল্যান্স
আপনি যদি কিছু ফ্রিল্যান্স কাজ শুরু করতে চান, তবে আপনাকে Flutter ব্যবহার করার কথা ভাবা উচিত।
২০২০ সালে, আমি বিশ্বাস করি এই প্রযুক্তি ফটাবে। এবং এর মানে অনেক লোক Flutter জানা ডেভেলপার খুঁজবে।
ফ্রান্সের সবচেয়ে বড় ফ্রিল্যান্স প্ল্যাটফর্ম Malt, সম্প্রতি এই বছরের টেক ট্রেন্ডস পাবলিশ করেছে। ২০১৮ এবং ২০১৯ সালের মধ্যে এই প্ল্যাটফর্মে Flutter +৩০৩% বৃদ্ধি পেয়েছে।
উপসংহার
তাহলে, আপনি Flutter-কে কীভাবে মনে করেন? আগামী বছর আপনি কি এটা শিখতে শুরু করবেন?
আমি আশা করি এই ইন্ট্রোডাকশন আপনাকে আগ্রহী এবং অনুপ্রাণিত করেছে। আপনি যদি পছন্দ করেন তবে এই নিবন্ধটি শেয়ার করুন।
আপনি যদি এই ধরনের আরও কন্টেন্ট চান, আপনি Twitter-এ আমাকে ফলো করতে পারেন, যেখানে আমি ওয়েব ডেভেলপমেন্ট, সেলফ-ইমপ্রুভমেন্ট, এবং একটি ফুল স্ট্যাক ডেভেলপার হিসেবে আমার যাত্রা সম্পর্কে টুইট করি!