সরাসরি প্রধান সামগ্রীতে চলে যান

প্রোগ্রামার হবার ১০ স্টেপ

             প্রোগ্রামার হবার ১০ স্টেপ 

          

                 

স্টেপ-১::পাঁচটা বেসিক জিনিস সম্পর্কে ক্লিয়ার ধারণা থাকতে হবে- variable, if-else, array, for loop এবং function। আরো বেশি শিখার জন্য একটা প্রোগ্রামিং ল্যাঙ্গুয়েজ ঠিক করতে হবে। পাইথন, জাভা, C++, জাভাস্ক্রিপ্ট, C# বা অন্য যে কোন একটা।

স্টেপ-২:প্রোগ্রাম চলার সময় বিভিন্ন তথ্য বা ডাটা কিভাবে রাখতে হবে সেটা বুঝার জন্য কয়েকটা ডাটা স্ট্রাকচার (data structure) শিখতে হবে। তার মধ্যে হ্যাশ টেবিল (hash table) বা ডিকশনারি মাস্ট শিখতে হবে। তারপরে Stack এবং Queue সম্পর্কে কিছু আইডিয়া নিতে হবে। বেশি তেল থাকলে linked list, Tree নিয়ে গুতাগুতি করতে পারেন।

স্টেপ-৩:::একটা array এর মধ্যে নির্দিষ্ট কোন একটা উপাদান খুঁজে বের করা পদ্ধতিতে বলা হয় search। মিনিমাম linear search এবং binary search এর কোড নিজ হাতে লিখে প্রাকটিস করতে হবে।একটা array এর উপাদানগুলিকে ছোট থেকে বড় বা বড় থেকে ছোট সাজানোর পদ্ধতিকে প্রোগ্রামিং এর ভাষায় sorting বলে। কমপক্ষে bubble sort নিজ হাতে প্রোগ্রামিং করতে পারতে হবে। অন্যসব sorting যেমন, merge sort, selection sort, insertion sort নিজে নিজে প্রোগ্রামিং করতে পারলে আপনি এগিয়ে যাবেন।

স্টেপ-৪:::কোন একটা সফটওয়্যার এপ্লিকেশনের ডাটা দীর্ঘ মেয়াদে সংরক্ষণ করার জন্য ডাটাবেস ব্যবহার করা হয়। ডাটাবেস গুলার মধ্যে Microsoft SQL এবং MySQL জনপ্রিয়। এই দুইটার যেকোনো একটাতে কিভাবে ডাটা রাখতে হয়, বের করে আনতে হয় সেটা জানতে হবে। আরো একটু বেশি জানতে চাইলে, কোন একটা স্কুলের বিভিন্ন ক্লাসের স্টুডেন্টদের নাম, সাবজেক্ট, পরীক্ষার নম্বর সহ যাবতীয় তথ্য সংরক্ষণের জন্য ডাটাবেসে কি কি টেবিল লাগবে সেটা শিখতে হবে।স্টেপ-৫::প্রোগ্রামিং কনসেপ্ট সম্পর্কে ধারনা থাকতে হবে। তারমধ্যে সবচেয়ে গুরুত্বপূর্ণ হচ্ছে Object Oriented Programming যেটাকে সংক্ষেপে OOP বলা হয়। OOP তে প্রোগ্রাম এর বিভিন্ন জিনিসকে বাস্তব দুনিয়ার বস্তু বা অবজেক্ট হিসেবে চিন্তা করা হয়। OOP এর তিনটা প্রধান অংশ- Inheritance, Encapsulation এবং Polymorphism সম্পর্কে ক্লিয়ার ধারণা থাকতে হবে।স্টেপ-৬:আপনাকে নিজে নিজে প্রোগ্রামিং করতে হবে। দরকার হইলে গুগলে সার্চ দিয়ে কোন ওয়েবসাইট থেকে দেখে দেখে টাইপ করবেন তারপরেও নিজে নিজে প্রোগ্রামিং করতে হবে। ছোট ছোট প্রোগ্রাম দিয়ে শুরু করতে হবে। যেমন, আয়তক্ষেত্রের দৈর্ঘ্য, প্রস্থ দিলে সেটার ক্ষেত্রফল বের করে দিতে পারে এমন প্রোগ্রাম। তবে প্রোগ্রামার হইতে হইলে আপনাকে fibonacchi series বের করার একাধিক পদ্ধতি জানতেই হবে। আরো কিছু দিন পরে ক্যালকুলেটর বানানোর প্রোগ্রাম নিজে নিজে পারতে হবে।স্টেপ-৭:::সব প্রোগ্রামিং ল্যাঙ্গুয়েজেরই কিছু জনপ্রিয় প্যাকেজ/লাইব্রেরি/ফ্রেমওয়ার্ক থাকে। আপনাকে কমপক্ষে একটা ভালো করে জানতে হবে। তবে ধীরে ধীরে আরো কয়েকটা সম্পর্কে ধারণা নিতে হবে। প্রোগ্রামিং করার সময় বিভিন্ন সফটওয়্যার ব্যবহার করা হয়। যেমন, eclipse, visual studio, webstorm, sublime text, Notepad++, ইত্যাদি। এদের যেকোনো একটা ব্যবহার করা জানতে হবে।স্টেপ-৮::::কোন একটা বিশাল সফটওয়্যার প্রোগ্রামে যদি একাধিক প্রোগ্রামার কাজ করে, তাইলে কোডগুলা কোন একটা ভার্সন কন্ট্রোল বা সোর্স কন্ট্রোল সফটওয়্যার দিয়ে সেইভ করা হয়। সোর্স কন্ট্রোল সফটওয়্যার এর মধ্যে সবচেয়ে বেশি জনপ্রিয় -github। প্রোগ্রামার হইতে হইলে আপনার github একাউন্ট এবং সেখানে কয়েকটা নিজস্ব প্রজেক্টের কোড থাকা উচিত।স্টেপ-৯::::আপনাকে গুগল করে যেকোনো প্রবলেমের সল্যুশন বের করার দক্ষতা অর্জন করতে হবে। যারা আপনার চাইতে এগিয়ে আছে তাদের ফলো করতে হবে। ঘন্টার পর ঘন্টা টিউটোরিয়াল দেখে কাটাইতে হবে। stackoverflow তে অন্যদের প্রশ্নের উত্তর ব্যবহার করে আপনার সমস্যার সমাধান করা জানতে হবে। সবচেয়ে ভালো হয় কেউ যদি প্রোগ্রামিং কনটেস্ট বা অনলাইনে প্রবলেম সলভ করার চেষ্টা করেন।স্টেপ-১০::::প্রোগ্রামার হইতে হইলে আত্ম-উদ্যোগী হয়ে লেগে থাকতে হবে। নিত্য নতুন কিছু ট্রাই করার ইচ্ছা থাকতে হবে। নিজে নিজে কিছু করার আকাঙ্ক্ষা থাকতে হবে।Object Oriented Programming সম্পর্কে প্রাথমিক ধারণা:::আপনার নিজের কিছু সম্পদ আছে যেমন-ল্যাপটপ, মোবাইল ইত্যাদি। আপনি আবার উত্তরাধিকার সূত্রে আপনার পরিবার থেকে থাকার জায়গা (বাসা) পেয়ে থাকেন। যদিও বাসাটা আপনার না, তারপরেও আপনি উত্তরাধিকার সূত্রে সেই বাসা ব্যবহার করতে পারেন। এইটাই Inheritance বা উত্তরাধিকার।আপনার বাসায় যে ময়লা নিতে আসে তাকে কিন্তু বাসার ভিতরে ঢুকতে দেন না। সে জানে না বাসার কোথায় কিভাবে ময়লা রাখা হয়। তারমানে বাসার ভিতরে ময়লা রাখার পদ্ধতি তার কাছে লুকানো বা Encapsule করা। তার সেটা জানার দরকারও নাই। খালি- ময়লা বলে ডাক দিলে, ময়লা দিয়ে গেলেই হলো। বাইরের মানুষের কাছ থেকে ভিতরের জিনিস লুকানোকেই Encapsulation বলে।আপনার আব্বু অফিস থেকে ফিরে এসে যদি বলে- এই টেবিলে পানি নাই। অনেক সময় আপনার আম্মু এসে পানি দিয়ে যায়। আবার কখনো কখনো আপনাদের বাসার কাজের লোক এসে পানি দিয়ে যায়। কালেভদ্রে আপনার ছোটবোনও টেবিলে পানি রেখে যায়। এখন কে পানি দিয়ে যাচ্ছে সেটা আপনার আব্বুর কাছে মুখ্য না। যখন যে আছে সে করে দিলেই হবে। তারমানে পানি দিয়ে যাওয়ার কাজটা অনেকেই করতে পারে। এইটাই অনেকটা Polymorphism এর মত।

মন্তব্যসমূহ

এই ব্লগটি থেকে জনপ্রিয় পোস্টগুলি

বুদ্ধিমত্তা কি?

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

প্রোগ্রামিং ভাষা

                                      প্রোগ্রামিং ভাষা একজন মানুষ তার কার্য সম্পাদন ও মনের ভাব প্রকাশ করার জন্য ভাষা ব্যবহার করে। যে মানুষ যে ভাষা জানে তার সাথে সেই ভাষায় কথা বলতে হয় । কিন্তু বিভিন্ন ভাষাভাষী মানুষের কম্পিউটার একটি মাত্র ভাষা বোঝে ,  আর তা হচ্ছে মেশিন ভাষা। মেশিন ভাষা কি ? ০ এবং ১ এ দুটি অংকের সমন্বয়ে মেশিন ভাষার উদ্ভব। সহজ কথায় ০ এবং ১ কে ব্যবহার করে নির্দেশ সাজিয়ে প্রোগ্রাম লেখার পদ্ধতিকে মেশিন ভাষার প্রোগ্রাম বলে। মেশিন ভাষায় লিখিত প্রোগ্রামের অপর নাম অবজেক্ট প্রোগ্রাম। মানুষের জন্য মেশিন ভাষা কঠিন তাই মানুষের ভাষার কাছাকাছি ভাষা  ( যেমন সি , সি ++)  যা অনুবাদক প্রোগ্রামের মাধ্যমে তা মেশিন ভাষায় রুপান্তর করা যায়। কম্পিউটার বা যেকোনো ডিভাইস দিয়ে আপনার নিজের কিংবা সারা বিশ্বের মানুষের জন্য কোন কাজ সম্পাদন করতে চাইলে প্রোগ্রামিং ভাষা জানতে হবে। প্রোগ্রামিং ভাষা কি ? কম্পিউটারের মাধ্যমে কোন প্রোগ্রাম রচনার জন্য ব্যবহৃত শব্দ , বর্ণ , অঙ্ক , চিহৃ প্রভৃতির সমন্বয়ে গঠিত রীতি নীতিকে প্রোগ্রামিং ভাষা বলে। বিভিন্ন প্রোগ্রাম রচনার জন্য বিভিন্ন ধরনের প্রোগ

সহজেই কোডিং ছাড়া অ্যাপস তৈরী

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