Learning more about programming


(Tawhid) #1

Hey guys I’m not a cse student in fact I’ve just finish HSC .
But I love programming so I almost finished c
Now I want to create a real world project on Microsoft opperating system
So I need to know about it clearly
So how can I do it ?
Would you like to suggest me any book or any tutorial series ?
Please I need help
(Don’t feel hesitate to write in English or Bangla)


(Sayem Hossain) #2

হাই তৌহিদ,

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

  1. প্রব্লেম সলভিংঃ
    এখনি রিয়াল ওয়ার্ল্ডে প্রোজেক্টের চিন্তা না করে ইচ্ছামত প্রব্লেম সলভিং শুরু করো। এতে তোমার লজিক্যাল ক্যাপাবিলিটি যেমন বাড়বে, সেই সাথে তোমার ল্যাঙ্গুয়েজের ভিতটাও আরও শক্ত হবে। আমার সাজেশন হচ্ছে, অ্যাট লিস্ট ছয়মাস বসে বসে প্রব্লেম সল্ভিং করো। যেহেতু এইচ এস সি পরীক্ষা দিয়েছ মাত্র, কাজেই বিশ্ববিদ্যালয়ে ভর্তির প্রিপারেশনও নিতে হবে। এমন কিছু করা যাবে না, যাতে এ প্রিপারেশনে বিঘ্ন ঘটে। রাতে সময় করে দুই তিন ঘণ্টা প্রব্লেম সলভিং এর পেছনে ব্যয় করা যেতে পারে।
    অনলাইনে অনেক প্রব্লেম সলভিং সাইট আছে। যেখানে করলে নিজের স্কিলে বাড়ানোর পাশাপাশি পোর্টফোলিও হিসেবেও ভবিষ্যতে কাজে আসবে। https://www.hackerrank.com/

  2. ডেটা স্ট্র্যাকচার এবং অ্যালগোরিদমঃ
    এরপর কাজ হবে বেসিক ডেটা স্ট্র্যাকচার এবং অ্যালগোরিদম শেখা। নীলক্ষেতে গিয়ে বই কিনে পড়া শুরু করবে। অথবা ইউটিউবে অনেক প্লেলিস্ট আছে

ডেটা স্ট্র্যাকচার

অ্যালগোরিদম

ইউটিউব প্লেলিস্ট শেষ করার সুবিধা হচ্ছে অবশ্য অল্প সময়ে অনেক কিছু কভার করা যায়। কিন্তু ডিপ নলেজের জন্য বইয়ের কোন বিকল্প নেই।

  1. ডট নেট অথবা জাভা শেখাঃ
    রিয়েল ওয়ার্ল্ড সফটওয়্যার ডেভেলপমেন্টে বর্তমানে সি প্রোগ্রামিং খুব কমই ইউজ করা হয়। এর চেয়ে বরং মডার্ন ল্যাংগুয়েজগুলো দিয়ে সফটওয়্যার ডেভেলপমেন্ট অনেক সহজ। মাইক্রোসফটের এপ্লিকেশন ডেভেলপ করতে হলে তোমাকে শিখতে হবে ডট নেট ফ্রেমওয়ার্ক। এই ফ্রেমওয়ার্কে C#, F# ইত্যাদি ইউজ করা হয়, সো C# শেখা যেতে পারে।
    এছাড়া জাভা আরেকটা ভালো অপশন। জাভার সুবিধা হচ্ছে, তুমি যেকোন প্ল্যাটফর্মের জন্য এপ্লিকেশন ডেভেলপ করতে পারবে সেটা উইন্ডোজ হোক, ম্যাক হোক কিংবা লিনাক্স। সার্ভার সাইডে জাভার আধিপত্য এখনও সবচেয়ে বেশি। জাভা এন্টারপ্রাইজ ফ্রেমওয়ার্ক ব্যাবহার করে ওয়েব এপ্লিকেশন ডেভেলপ করা হয়।
    এছাড়াও জনপ্রিয় ল্যাঙ্গুয়েজগুলোর মধ্য পাইথন, জাভাস্ক্রিপ্ট ইত্যাদি আছে। তবে এইগুলো অনেক পরের ব্যাপার। এখন প্রব্লেম সলভিং শুরু করো, তারপর ডেটা স্ট্র্যাকচার - অ্যালগোরিদম করতে করতেই রিয়েল ওয়ার্ল্ডের সাথে কানেকশনটা হয়ে যাবে।

আর একটা ব্যাপার মনে করিয়ে দিতে চাই, সবসময় এই সেক্টরে সিনিয়র যারা আছেন তাদের সাথে যোগাযোগ রাখবে। এতে কি সুবিধা আছে সেটা এখন বলছিনা, সময় হলে ঠিকি বুঝে যাবে।

বেস্ট অফ লাক।


Need Suggestion