মোবাইল অ্যাপ ডেভেলপমেন্ট শিখতে গেলে অনেক অনেক কিছুই রয়েছে শেখার মত, সব কিছু শিখতে গেলে সারাজীবন শেখার পেছনেই ব্যয় করতে হবে। কোন কাজ করা হয়ে উঠবে না। অ্যান্ড্রয়েড নিয়েই বলি। যেমন লেআউট, ফ্র্যাগমেন্ট, নেটওয়ার্ক, নটিফিকেশন, সার্ভিস, লোকেশন, ম্যাপ, ডেটাবেজ, ইমেজ, রেস্ট সহ আরো কত কিছু। তাই বলে সব কিছু শিখবেন?
একটা প্রজেক্টে সব কিছু লাগে না। যেহেতু একটা প্রজেক্টে সব কিছু লাগে না, তাই সব কিছু শেখারও কোন মানে হয় না। শিখতে গেলে অনেক অনেক সময় নষ্ট হবে। দরকার কি শিখতে হবে, তা জানা। কোনটার কি কাজ, তা সম্পর্কে একটা আইডিয়া নিতে পারেন বা ভাসা ভাসা জ্ঞান নিতে পারেন।
কি শিখতে হবে, তা জানার জন্য সবার আগে ব্যাসিক জ্ঞান থাকতে হবে। যেমন অ্যান্ড্রয়েডের জন্য জাভা প্রোগ্রামিং সম্পর্কে ধারণা থাকতে হবে। এরপর সিম্পল একটা অ্যান্ড্রয়েড অ্যাপ কিভাবে তৈরি করতে হয়, তা জানতে হবে। সিম্পল অ্যাপ তৈরি করার পাশাপাশি আপনাকে জানতে হবে আপনি কি ধরনের অ্যাপ তৈরি করতে চান, সে সম্পর্কে পরিষ্কার ধারণা।
যদি আপনি একটা এলার্ম ক্লক তৈরি করতে চান, হয়তো আপনাকে জানতে হবে সার্ভিস সম্পর্কে। ঐটা সম্পর্কে ভালো ভাবে জানলেন। এরপর আপনার এলার্ম ক্লক অ্যাপটা তৈরি করে ফেললেন। আপনি যদি একটা টু-ডু অ্যাপ তৈরি করতে চান, হয়তো আপনাকে জানতে হবে SQLite সম্পর্কে, লিস্ট ভিউ সম্পর্কে। এগুলো জানার পরই আপনার অ্যাপ তৈরি করা শুরু করে দিতে পারেন। সব কিছু ভালো করে শিখতে গেলে আপনার সময় নষ্ট হবে, কাজ হবে না। তাই কি ধরণের অ্যাপ তৈরি করবেন, তা সম্পর্কে আগে জেনে এরপর ঐ বিষয় গুলো ভালো করে জেনে নিতে পারেন। আপনাকে ফোকাসড হতে হবে।
ফোকাসড হতে গিয়ে আবার একেবারে ফোকাসড হওয়ার দরকার নেই। একটা উদাহরণ দেই। একজন আমাকে জিজ্ঞেস করল, “ভাই আমি অ্যান্ড্রয়েড অ্যাপ তৈরি করতে চাই। পরে শুনলাম এর জন্য জাভা প্রোগ্রামিং শিখতে হবে। কিন্তু জাভা প্রোগ্রামিং এ তো অ্যান্ড্রয়েড অ্যাপ তৈরির কোড নেই। শুধু অংক। আমি তো শুধু অ্যাপ তৈরি শিখতে চাচ্ছি।” এমন ফোকাসড হওয়ার দরকার নেই। যতটুকু না জানলেই নয়, ততটুকু আমাদের শিখতেই হবে। 😛
উপরের প্রশ্নের উত্তর দিচ্ছি। অ্যাপ তৈরি করতে গেলে আমাদের লজিক্যাল অনেক কাজ করতে হয়, এ জন্য জাভা প্রোগ্রামিং এর গণিত পার্ট, কন্ডিশনাল, ফাংশন, OOP, কন্ট্রোল স্ট্যাটমেন্ট সহ মূল কনসেফট গুলোর দরকার হয়। আবার আমাদের ডেটা নিয়েও কাজ করতে হয় অ্যাপ তৈরির ক্ষেত্রে। তখন ডেটা স্ট্র্যাকচার রিলেটেড কনসেফট গুলোর দরকার হয়। এগুলো যদি না জেনে আমরা অ্যাপ তৈরি করা শুরু করি, তখন হয়তো Hello World! টাইপ অ্যাপ তৈরি করতে পারব। কিন্তু এর থেকে কমপ্লেক্স কোন অ্যাপ বা কোড দেখলে মাথা ঘুরানো শুরু হবে। বমি বমি ভাব হতে পারে 😛
যাই করেন, করার পাশা পাশি নতুন কিছু শিখতে থাকেন। প্রতিদিন শেখার জন্য একটা নির্দিষ্ট সময় ব্যয় করুন। ভালো থাকুন। শুভ কামনা।
এই ব্লগ থেকে অ্যান্ড্রয়েড এবং আইওএস অ্যাপ ডেভেলপমেন্ট শেখা যাবে। তার জন্য নিচের লিঙ্ক দুইটি দেখতে পারেনঃ
আপনার প্রতিটি লেখা-ই অসাধারণ । ধন্যবাদ এমন সুন্দর একটি টপিক নিয়ে আলোচনা করার জন্য । আশাকরি, যারা মোবাইল অ্যাপ ডেভেলপমেন্ট শিখতে আগ্রহী তারা অনেক উপকৃত হবে ।
আমি একটি মোবাইল ব্যাংক অ্যাপস্ তৈরি করব । তাহলে কি কি জানতে হবে।
apnar lekha gulo porte onek valo lage…
Thanks Sir
আসসালামু আলাইকুম ভাই ,আমি ইসলামিক প্রশ্ন উত্তর গুলো বিষয় অনুযায়ী সাজিয়ে একটা এপস বানাতে চাই, এজন্য আমাকে কি কি জানতে হবে?
আমি কৃষি ভিত্তিক এপস তৈরি করতে চাই
আসসালামু আলাইকুম ভাই ,আমি ইসলামিক প্রশ্ন উত্তর গুলো বিষয় অনুযায়ী সাজিয়ে একটা এপস বানাতে চাই, এজন্য আমাকে কি কি জানতে হবে?
আমি একটি বুকস্টোর অ্যাপ তৈরী করতে চাই। যেখানে বই পড়ার পাশাপাশি বই কেনাও যাবে। অনুগ্রহ করে যদি জানান, আমি কিভাবে এগুতে পারি তাহলে উপকৃত হব।
ভাই, আমি একটা সামাজিক কল্যানমূলক সংস্থার এ্যাপ তৈরী করতে চাই, যেখানে ঐ সংস্থার নতুন সদস্য যুক্ত হতে পারবে নিজের নাম-ঠিকানা দিয়ে। নাম ঠিকানা লেখার জন্য নির্দিষ্ট বক্স আকৃতিরজায়গা থাকবে।সেখানে ফিালাপ করে সবাই নতুন সদস্য হিসেবে যুক্ত হতে পারবে।
তাহলে আমি অ্যাপ তৈরীর ওয়েবসাইট থেকে কিসের ব্যবহারের মাধ্যমে এ্যাপটি তৈরী করবো…?
Android app development শেখার আগে ভালো জাভা জানতে হয়। জাভা শেখার জন্য একটা ভালো আপ্স রিকমেন্ড করছি
https://play.google.com/store/apps/details?id=com.md.kaiumali.javainbangla
amar business er jonno ekta aps banate chai, kar help nite pari?