বিজ্ঞান ব্লগ

প্রোগ্রামিং-এর-হাতেখড়িঃ প্রাথমিক আলোচনা

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

* প্রোগ্রামিং কি?

কম্পিউটার প্রোগ্রাম হচ্ছে এক বিশেষ ধরনের ভাষায় লেখা সংকেত যা কম্পিউটারের হার্ডওয়্যার সহজেই বুঝতে পারে।কম্পিউটার যেহেতু মানুষের ভাষা বোঝে না তাই একে নির্দেশ দেওয়ার জন্য কিছু প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহার করা হয়ে থাকে ।

*কি ল্যাঙ্গুয়েজ দিয়ে শুরু করবো?

পুরো বিশ্বব্যাপী প্রোগ্রামিং এর অনেক ল্যাঙ্গুয়েজ জনপ্রিয় রয়েছে।যেমনঃ

1.C

2.C#

3.C++

4.Java

5.Python ইত্যাদি

নতুনরা C ল্যাঙ্গুয়েজ দিয়ে শুরু করতে পারে ।সি এর বেসিক আর  সমস্যা সমাধানের মাধ্যমে একটা ধারনা তৈরি হলে ওরিয়েন্টেড ল্যাঙ্গুয়েজ C++, জাভা এভাবে শিখে আগানো যায়।প্রোগ্রামিং এ ভালো হতে হলে যে সব ল্যাঙ্গুয়েজ জানতে হবে তা নয় তবে দুই একটা ল্যাঙ্গুয়েজ ভালোভাবে রপ্ত করতে পারলেই যথেষ্ট ।

তবে যে ল্যাঙ্গুয়েজ দিয়ে শুরু করা হোক না কেনো প্রচুর প্রোগ্রামিং সম্পর্কিত প্রবলেম সমাধান করতে হবে আর গণিতে ভালো দক্ষতা অর্জন করতে হবে।আস্তে আস্তে অ্যালগরিদম ,ডাটা স্ট্রাকচার এগুলো রপ্ত করে নিতে হবে।

*প্রোগ্রামিং ল্যাঙ্গুয়েজ শেখার জন্য কি বই অনুসরণ করবো?

বর্তমানে প্রোগ্রামিং ল্যাঙ্গুয়েজ শেখার জন্য অনলাইনে অনেক প্লাটফর্ম রয়েছে।অনেক বইয়ের হার্ডকপি  বা সফটকপি ও রয়েছে।তবে নতুন প্রোগ্রামার যারা তারা হাতেখড়ি করতে পারে C আর Java শেখার মাধ্যমে।C শেখার জন্য Herbert Schildt এর “Teach Yourself” বইটি দিয়ে আর Java শুরু করা যেতে পারে  Herbert Schildt এর “Java The Complete Reference” এর মাধ্যমে ।

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

আর যারা প্রোগ্রামিং নিয়ে শুরুতে মজার কিছু পড়তে চাই তাদের জন্য রয়েছে  ঝংকার মাহবুব স্যারের   “হাবলুদের জন্য প্রোগ্রামিং”,“প্রোগ্রামিংয়ের বলদ To বস”,“প্রোগ্রামিংয়ের চৌদ্দগোষ্ঠী” ধারাবাহিকভাবে প্রকাশিত গল্পের আকারে লেখা ৩টি বই।

এগুলো পড়তে ভুলবেন না !!!

মিলিয়ন বছরের ঘুমন্ত জীবের পুনরুত্থান

ভ্যাক্সিন ব্যবহারের বিরোধীতা করছেন যারা

*কোন ওয়েবসাইটগুলো প্রোগ্রামিং এর জন্য অনুসরণ করবো?

সি,সি++, জাভা যেটাই শিখতে যাই না কেনো আমাদের প্রতেক ধাপে নানারকম  সমস্যা সমাধান  করতে হয়।অনেক সময় সেই  সমস্যাগুলো আমরা নিজেরা  সমাধান করতে পারি না বা নির্দিষ্ট কোনো ধাপ বুঝতে আমাদের সমস্যা হয় ।আবার অনেক ওয়েবসাইটে প্রোগ্রামিং ল্যাঙ্গুয়েজ ,ডাটা স্ট্রাকচার সহ অনেক বিষয়ের কোর্স রয়েছে।  সেইক্ষেত্রে কিছু ওয়েবসাইট থেকে সাহায্য নিয়ে খুব সহজেই সমাধান করা যায়।এমন অনেক ওয়েবসাইট রয়েছে ।তবে কিছু জনপ্রিয় ওয়েবসাইট নিচে লিংকসহ দেয়া হলোঃ

1.Codeforwin

2.stackoverflow

3.W3schools

4.Khan Academy

5.Coursera 

*কিভাবে হয়ে উঠবো একজন দক্ষ  প্রোগ্রামার ?

প্রোগ্রামিং শেখা মানে লজিক নিয়ে ভাবা,নতুন কিছু চিন্তা করা। এতে মস্তিষ্কের লজিক্যাল সেক্টরের ও উন্নতি হয়।কিছু ল্যাঙ্গুয়েজ শেখা মানে প্রোগ্রামিং শেখা হয়ে যায় ব্যাপারটা এমন না। লজিক্যাল চিন্তা করা,ডাটা স্ট্রাকচার ,অ্যালগরিদম ,গণিতে দক্ষতা অর্জন এসব প্রয়োজন একজন দক্ষ প্রোগ্রামার হতে।প্রোগ্রামার হওয়ার জন্য যে কম্পিউটার সাইন্সের ছাত্র হতে হবে বিষয়টা এমন না, যে কেউ যেকোনো বয়সের ব্যক্তি এটি শুরু করতে পারে। 

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

নিচে কিছু প্রোগ্রামিং প্রতিযোগিতার ওয়েবসাইটের লিংক দেয়া হলোঃ

1।HackerRank

2.CODECHEF

3.Codewars

4.Uva Online Judge

5.Codeforces

তাহলে আর দেরি না করে আজ থেকেই শুরু করে দেয়া যাক ! 

“HAPPY CODING”

 

 

 

 

 

 

 

                                                                                                                                                                                              

Exit mobile version