Efodio

Efodio Efodio is an IT company. Here we provide IT-related software, application development services. Cont

GetX লাইব্রেরী টা ইউজ করার ক্ষেত্রে ডেভেলপারদের পারদর্শীতা কিংবা স্টাইল দেখে আমি মোটামুটি ভালোই হতাশ।বিশেষ করে কয়েকটা বি...
13/08/2021

GetX লাইব্রেরী টা ইউজ করার ক্ষেত্রে ডেভেলপারদের পারদর্শীতা কিংবা স্টাইল দেখে আমি মোটামুটি ভালোই হতাশ।
বিশেষ করে কয়েকটা বিষয়ে খুবই বাজে অবস্থা। এসব দেখে কেনো জানি মনে হয় ফ্লাটারের মতো GetX ও এখন হাইপে পরিণত হইছে। আই মিন রিকুয়ারমেন্ট থাকুক কিংবা না থাকুক সবাই যেমন ইদানীং ফ্লাটারেই এ্যাপ করতে হবে এমন একটা বেপার দেখা যাচ্ছে, ঠিক তেমনই দেখা যাচ্ছে রিকুয়ারমেন্ট থাকুক আর না থাকুক, ভালোভাবে, নিয়মমতো ইউজ করতে পারি কিংবা না পারি, GetX ইউজ করতে হবে। কারণ এটা pub.dev এ most liked third party package. 😃

যাইহোক, কয়েকটা জিনিশ চোখে পড়লো ডেভেলপারদের GetX এর ব্যবহার দেখে। বিশেষ করে নিচের কয়েকটা বিষয় ম্যাক্সিমাম ডেভেলপারদের এওয়ারনেসে নাই বা থাকেনা বিধায় সঠিকভাবে GetX এর প্রয়োগ করতে পারেনা/জানেনাঃ

১) GetX contextless: Provider এর মতো GetX এর কোনো অপারেশনেই BuildContext লাগেনা। তাই সবকিছু build মেথডের মাধ্যমেই হতে হবে এমন কোনো কথা নাই। কিন্তু ম্যাক্সিমাম ডেভেলপারের টেন্ডেন্সি দেখছি সবকিছু উইজেটের ফাইলেই করার।

২) Separation of concern: Context লাগেনা বলে অতিসহজেই ভিউ এবং লজিক আলাদা করা যায়। নামের ক্ষেত্রে GetX লজিক হোল্ডার ক্লাসে Controller (GetxController, SuperController) থাকলেও এগুলো মূলত কিছুটা ViewModel/PageModel এর মতো। সুতরাং শুধুমাত্র Key গুলো ছাড়া (এবং সেইসাথে ফর্ম ভ্যালিডেশন লজিক বাদে) বাঁকি সব লজিক controller এ মুভ করা যায় এবং উচিৎ। ভিউ বা উইজেট ফাইলে Key এর ভ্যারিয়েবল ছাড়া অন্যকোনো ভ্যারিয়েবল রাখা উচিৎ নয়। কিন্তু অধিকাংশ ডেভেলপারই দেখা যায় মিক্স আপ করেন।

৩) Uses of StatefulWidget: ২ নাম্বার পয়েন্ট ঠিকমতো মানলে ভিউ এ StatefulWidget ইউজ করার কোনো মানেই নাই। কিন্তু অনেক ডেভেলপারই দেখি খামোখা StatefulWidget ইউজ করেন। আর একারণেই তারা বলেন GetX একটা ভারি লাইব্রেরী! 😑

৪) Bindings: আপনার এ্যাপ যদি বড়ো হয় তবে আপনার উচিৎ পেজ বা অন্তত মডিউল অনুযায়ী ডিপেন্ডেন্সি বাইন্ড করা। এবং শুধুমাত্র ল্যান্ডিং পেজের Binding অবজেক্টটা GetMaterialApp এর initialBinding প্রোপার্টি তে দেওয়া। আর যথাসম্ভব Get.put() এর যায়গায় Get.lazyPut() ইউজ করা।

* FlutterFly Fullstack Flutter with Clean Architecture পেইড course করায় যেখানে GetX ব্যবহার করে Separation of Concern, SOLID implementation, Clean Architecture (By Uncle Bob), DDD (Domain Driven Development), TDD (Test Driven Development) ইত্যাদি এ্যাডভান্সড বিষয় সহ শেখানো হয়।

FlutterFly হচ্ছে Prohelika এর Flutter wing.

24/05/2021

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

React Native নিয়ে একটি কনফিওসন��React Native নিয়ে অনেকের মাঝেই একটা কনফিওসন কাজ করে, যে JavaScript দিয়ে কোড লিখে মোবাইল...
02/03/2021

React Native নিয়ে একটি কনফিওসন��
React Native নিয়ে অনেকের মাঝেই একটা কনফিওসন কাজ করে, যে JavaScript দিয়ে কোড লিখে মোবাইল অ্যাপ বানালে সেটা কি আসলেও আসল অ্যাপ এর মত কাজ করবে কিনা, তাও আবার অ্যান্ড্রয়েড এবং আইওএস উভয় প্লাটফর্মে। এই কনফিওসনটা দুর করার জন্যেই এই ছোট পোস্টটি, মূলত React Native এর অফিসিয়াল ডকুমেন্টেশন থেকে নেয়া।
React Native এ যাওয়ার আগে আমাদের Views and mobile development নিয়ে আলোচনা করা দরকার। View হচ্ছে অ্যান্ড্রয়েড এবং আইওএস উভয় প্লাটফর্মের প্রাথমিক বিল্ডিং ব্লক। আসলে View বলতে আমরা কি বুঝাচ্ছি? View হচ্ছে স্ক্রিনে একটি ছোট আয়তক্ষেত্রাকার (Rectangular) এলেমেন্ট. মোবাইলের স্ক্রিনে আমরা যা দেখি আসলে সব মূলত View। কোনও অ্যাপ্লিকেশনের ক্ষুদ্রতম ভিজ্যুয়াল উপাদানগুলি যেমন একটি লাইন বা বাটন এগুলও এক ধরনের View। কিছু View অনেকগুলো View এর কম্বিনেশন। তো বলা যেতে পারে আমরা আলটিমেটলি যত ভিতরে যাই না কেন, বেসিক বিল্ডিং ব্লকই কিন্তু হচ্ছে View.
তাহলে এখন আসা যাক React Native, IOS, Android এ। অ্যান্ড্রয়েড ডেভেলপমেন্টে, আপনি কোটলিন বা জাভাতে ভিউ লিখেন; আইওএস ডেভেলপমেন্টে আপনি সুইফট বা অবজেক্টিভ-সি ব্যবহার করেন। রিএ্যাক্ট নেটিভে, আপনি কিন্তু এই সেইম View গুলোকেই ইনভোক করে থাকেন জাভাস্ক্রিপ্টের সাহায্যে React কম্পোনেন্টের মাধ্যমে। তাহলে আসলে ব্যাপারটা কি দাঁড়ালো? রানটাইম এ, রিঅ্যাক্টনেটিভ সেই কম্পোনেন্টগুলোর জন্য সংশ্লিষ্ট অ্যান্ড্রয়েড এবং আইওএস ভিউ তৈরি করে থাকে। রিঅ্যাক্টনেটিভ কম্পোনেন্টগুলো অ্যান্ড্রয়েড এবং আইওএসের সেইম View দারা সাপোর্টেড হওয়ার কারণে, আপনি যখন React Native অ্যাপ বানাবেন সেটার লুক, ফিল এবং পারফরমেন্স নেটিভ অ্যাপ এর মতই হবে।

আসুন জেনে নেই স্মার্টফোনের জন্য ক্রস-প্ল্যাটফর্ম অ্যাপ ডেভেলপমেন্ট কি বা কেন???** ক্রস-প্ল্যাটফর্ম অ্যাপ ডেভেলপমেন্টবাংল...
25/02/2021

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

কিভাবে আপনার ক্যারিয়ার শুরু করবেন? যখন আপনার ক্যারিয়ার গড়ার কোন ধারণা নেই!ট্যাগ লাইনটা দেখে ঘাবড়ে গেছেন?ঘাবড়ানোর কিছু নে...
17/02/2021

কিভাবে আপনার ক্যারিয়ার শুরু করবেন? যখন আপনার ক্যারিয়ার গড়ার কোন ধারণা নেই!

ট্যাগ লাইনটা দেখে ঘাবড়ে গেছেন?

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

কিন্তু কনফিউজড হয়ে বসে থাকলে হবে?

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

তবে মনে রাখবেন আপনি কোন না কোন কাজের যোগ্য। তাই নিজে যে দিকে এগিয়ে গিয়েছেন সেদিকেই ক্যারিয়ার নিয়ে চিন্তা করা ভালো।

এই যুগে আইটি খাতে গড়ে তুলতে পারেন আপনার ক্যারিয়ার।

আপনি কি Professional Android & IOS Developer হতে চান ? 👇👇তবে আজই যোগাযোগ করুন 👇👇আপনার দরকার হচ্ছে সঠিক সময়ে সঠিক সিদ্ধান...
14/02/2021

আপনি কি Professional Android & IOS Developer হতে চান ? 👇👇
তবে আজই যোগাযোগ করুন 👇👇

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

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

আপনার ক্রিয়েটিভ চিন্তা অথবা কাজকে সবার মাঝে ছড়িয়ে দিতে অবশ্যই আপনাকে একটি স্ট্রং পোর্টফোলিও তৈরি করতে হবে। আপনার প্রতিটি ইউনিক ডিজাইন এবং আপনার ক্রিয়েটিভ চিন্তাভাবনাগুলো সবার সামনে এর মাধ্যমে উপস্থাপন করতে হবে । একটি ভালো মানের পোর্টফোলিও যেমন আপনাকে ভালো ক্লাইন্ট পেতে অনেক বেশি সাহায্য করবে তেমনি জব সেক্টরে আপনার এই কাজ সবচেয়ে বেশি প্রধান্য পাবে।
এরকম আরো অসংখ্য বিষয় নিয়ে শুরু হতে যাচ্ছে আমাদের Professional Android & IOS app Development Course । সে হিসেবে আপনাকে সঠিক গাইডলাইন দেওয়া ও সঠিক পথ দেখানোই হলো আমাদের লক্ষ। আর আমাদের এ লক্ষের সাথে যুক্ত রয়েছেন ফ্রিল্যান্স মার্কেটপ্লেস এর সফল ফ্রীলান্সার ও ৮ বছরেরও বেশি অভিজ্ঞতা সম্পন্ন মেন্টর - Aftab Sayem (professional Android & ios app developer )
কোর্সটি বেসিক থেকে উন্নত আকারে তৈরি করা হয়েছে যাতে একজনের কোডিং সম্পর্কে পূর্ব জ্ঞান নেই যাতে করে তাদের কোনো সমস্যা না হয় এবং আমাদের যে সমস্ত রুলস দেওয়া হয় সেই দক্ষতাগুলো সহজেই সামলাতে পারে এবং নিজেকে একজন Professional Android & IOS app Developer হতে পারেন

সাথে থাকছে ফ্রিল্যান্সিং শুরু করার সঠিক গাইডলাইন ও নানা অজানা কৌশল। তাছাড়াও রয়েছে ফ্রিল্যান্সিং মার্কেটপ্লেস নিয়ে বিশেষ কিছু মাস্টার-ক্লাস। যার মাধ্যমে আপনি ফ্রিল্যান্সিংয়ে সফল হয়ে ক্যারিয়ার গঠন করতে পারবেন। কোর্স শেষে আপনি যদি চান আমাদের কম্পানিতেই কাজ করতে পারবেন
- থাকছে 'লাইফ-লং মেন্টরশিপ' যার ফলে আপনি আপনার মেন্টরের সহায়তা পাবেন আজীবন

আজই এনরোল করুন অথবা পেজে sms করুন👇👇👇
কোর্সে রেজিস্ট্রেশন করার জন্য ওয়েবসাইটে ভিজিট করুন:
www.Efodio.com

Mobile Application Development দিন দিন জনপ্রিয় হয়ে উঠছে। অনেক Programming Tools রয়েছে যা দ্বারা একজন ডেভেলপার  Mobile Ap...
10/02/2021

Mobile Application Development দিন দিন জনপ্রিয় হয়ে উঠছে। অনেক Programming Tools রয়েছে যা দ্বারা একজন ডেভেলপার Mobile Application Development করতে পারে। এই জনপ্রিয় Programming Tools এর মধ্যে একটি রয়েছে Flutter। আজকে আমরা Flutter নিয়ে আলোচনা করব।
Flutter কি?
Flutter হচ্ছে একটি open-source mobile UI framework যা Google তৈরি করেছে এবং এটি released হয়েছে in May 2017। Flutter এর মাধ্যমে Native Mobile Application তৈরি করা যায় একটি মাত্র CodeBase দিয়ে। এর মানে হচ্ছে একটি মাত্র Programming ল্যাঙ্গুয়েজ Dart দিয়ে Android and IOS APP Development করা যায়।
Flutter এর ২টি প্রয়োজনই অংশ রয়েছে।
SDK: SDK হচ্ছে একটি টুল যা দ্বারা Flutter ২টি মেশিন একসাথে Code Compile করে।
Widgets: Widgets হচ্ছে Flutter এর User Interface Library. এতে রয়েছে অনেকগুলা উপাদান।
Flutter দিয়ে ডেভেলপ করার জন্য ডার্ট প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহার করা হয়। ডার্ট মুলত ফ্রন্ট এন্ড ডেভেলপমেন্ট জন্য ব্যবহার করা হয় এবং এর দ্বারা মোবাইল এন্ড ওয়েব অ্যাপ্লিকেশান তৈরি করা যায়। ডার্ট হচ্ছে একটি Object Oriented Programming Language যার Syntex গুলা javascript programming language এর সাথে সামঞ্জস্যপূর্ণ।
Flutter কেন শিখবেন ?
Companies using Flutter
Flutter Framework অন্যান্য Framework এর তুলনায় লার্নিং সহজ। বেসিক OOP জানা থাকলে খুব সহজে এই Framework শিখা যায়।
এই Framework এ কোড গুলা দ্রুত update করা যায়, Real Time Result দেখা যায়। এছাড়াও এই Framework এ কিছু বিশেষ Feature আছে Hot Restart, Hot Reload যা দ্রুত ভাবে কোড গুলা Compile করে Execute করে।
Flutter Framework এ layout Design খুবি আকর্ষণীয়। খুব কম সময়ে আকর্ষণীয় layout Design করা যায়।
Flutter এর আরেকটি গুরতপূর্ণ বিষয় হচ্ছে এর Documentation. যেকোনো Framework বুঝার জন্য টার Documentation খুবি গুরুত্বপূর্ণ ভুমিকা পালন করে। যদি Documentation user friendly না হয় তাহলে ওই Framework বুজাটা কঠিন হয়ে যায়। কিন্তু Flutter এর Documentation খুব user friendly সহজে বুঝা যায় যেকোন Widgets কথায় এন্ড কিভাবে use করতে হবে তা তাদের Documentation সহজভাবে দেয়া আছে।
Flutter এর রয়েছে একটি ফাস্ট Growing Community। এই Community এর মাধ্যমে যেকোন প্রব্লেম সল্ভিং ও নিউ কোন update সম্পর্কে সহজে যানা যায়।
Flutter VSCode and Android Studio তে Supportable। এই IDE গুলাতে Flutter এর Available Plugins and Features গুলা পাওয়া যায়
Flutter এর Career সংক্রান্ত বিষয়ে নিয়ে আলোচনা?
Flutter হচ্ছে একটি fast growing technology। কেউ যদি Mobile Application Development নিয়ে Carrier করতে চান তাহলে Flutter শিখাটা তাদের জন্য ভাল হবে।
Freelanicng Marketplace এ Flutter এর চাহিদা দিন দিন বাড়ছে। একটি পরিসংখান এ দেখা গেছে 2018 to 2019 এ Freelancing Marketplace এ সবচেয়ে বেশি France এ Flutter নিয়ে Mobile Application Development করা হয়েছে।
Flutter Statistics
Local Market এর ক্ষেত্রে Low Competition হওার কারনে Flutter Developer সহজে জব পেয়ে যাচ্ছেন। কিন্তু অন্যান্য Framework এর Developer রা High Competition এর মুখামুখী হতে হচ্ছে।
কিভাবে এবং কোথায় Flutter শিখলে ভাল হবে?
Flutter শিখার জন্য অনেক সোর্স অনলাইনয়ে আছে। Youtube, udemy, Lynda, medium, stackoverflow, github এইগুলা সোর্স থেকে Flutter শিখতে পারি।
কিন্তু একা যেকোনো কিছু শিখতে গেলে অনেক সময় লেগে যায়। আরেকটি সমস্যা দেখা যায় যে অনেকিছু বুজতে সমস্যা হয়।
কতটুকু শিখলে জব করার মতন Capacity চলে আসে বা জব এর জন্য অ্যাপ্লাই করতে পারব সেটাও বুজাটা সহজ হয় না।
তবে আপনার Flutter ডেভলপমেন্ট প্রকল্পটি শুরু করার জন্য আপনার মেন্টরদের প্রয়োজন। যদি আপনার মনে একটি দীর্ঘমেয়াদী প্ল্যান থাকে যা স্ক্র্যাচ থেকে মনোযোগ প্রয়োজন তবে মেন্টরদের অথবা ট্রেইনিং এর সাহায্য নিতে পারেন। প্রয়োজন নির্বিশেষে, আপনার সমস্ত উন্নয়নের প্রয়োজনের জন্য আপনাকে অবশ্যই Efodio এর মতো প্রযুক্তিগত ট্রেইনিং ইন্সটিটিউট এর উপর নির্ভর করতে হবে। এবং আমাদের সাথে যোগাযোগ করতে পারেন। ধন্যবাদ ❤️❤️

10/02/2021

একজন প্রোগ্রামারের আসলে কতগুলো প্রোগ্রামিং ল্যাঙ্গুয়েজ জানা থাকা উচিত?
একজন প্রোগ্রামারের আসলে কতগুলো প্রোগ্রামিং ল্যাঙ্গুয়েজ জানা থাকা উচিত এর কোন ধরাবাধা নিয়ম বা ষ্ট্যাণ্ডার্ড স্কেল নেই । আপনার কি কি জানা থাকা উচিত সেটা নির্ভর করে আপনি আসলে কি করতে চান তার উপরে ।
তবে আমার মতে একজন প্রোগ্রামারের মোটামুটিভাবে নিম্নোক্ত ধরনের ল্যাঙ্গুয়েজ সম্পর্কে জ্ঞান থাকা উচিত ।মেশিন ল্যাঙ্গুয়েজের কাছাকাছি একটা লো-লেভেল ল্যাঙ্গুয়েজ - হার্ডওয়্যার এর ইন্সট্রাকশনস লেভেলে কাজ করতে গেলে একজন প্রোগ্রামারের এমন একটি লো-লেভেল ল্যাঙ্গুয়েজ জানা থাকা উচিত
অন্তত একটা আনম্যানেজড ল্যাঙ্গুয়েজ - প্রোগ্রামিং এর খুঁটিনাটি জানার জন্য একজন প্রোগ্রামারের C বা C++ এর মতো একটি আনম্যানেজড ল্যাঙ্গুয়েজ জানা থাকা আবশ্যক ।
অন্তত দুটি ম্যানেজড ল্যাঙ্গুয়েজ - মেমরী এলোকেশন , ম্যানেজমেন্ট, পয়েন্টার, গার্বেজ কালেকশন এর মতো লো-লেভেল বিষয়গুলো ছাড়া কিভাবে সহজে প্রোগ্রামিং করা যায় তা জানার জন্য ম্যানেজড ল্যাঙ্গুয়েজ জানা দরকার । আপনার জানা ম্যানেজড ল্যাঙ্গুয়েজ গুলোর মাঝে আবার অন্তত একটা ডাইনামিক্যালী টাইপড ল্যাঙ্গুয়েজ (যেমন Python , JavaScript) এবং অন্তত একটা ষ্ট্যাটিক্যালী টাইপড ল্যাঙ্গুয়েজ (যেমন C #, Java) থাকা ভাল ।
অন্তত একটা স্ক্রিপ্টিং ল্যাঙ্গুয়েজ - JavaScript , TypeScript , Ruby , PHP এর মতো অন্তত একটি স্ক্রিপ্টিং ল্যাঙ্গুয়েজ এর জ্ঞান আপনার ঝুলিতে থাকা ভাল ।
অন্তত একটা ডাটাবেস ল্যাঙ্গুয়েজ - ডাটাবেস ম্যানুপুলেট করার জন্য অধিকাংশ প্রোগ্রামারই সাধারনত একটা ল্যাঙ্গুয়েজ এর সাথে পরিচিত , আর সেটা হচ্ছে SQL । একজন প্রোগ্রামারের এটা অবশ্যই জানা থাকা উচিত ।

Address

Panchagarh

Alerts

Be the first to know and let us send you an email when Efodio posts news and promotions. Your email address will not be used for any other purpose, and you can unsubscribe at any time.

Contact The Business

Send a message to Efodio:

Share