কম্পিউটার প্রোগ্রামিং (দ্বিতীয় খণ্ড) -বইয়ের ভূমিকাঃ আমার কম্পিউটার প্রোগ্রামিং (যেটি পরবর্তী সময়ে কম্পিউটার প্রোগ্রামিং ১ম খণ্ড নামে প্রকাশ করা হয়) বইটি প্রকাশ হওয়ার পরে দেখতে দেখতে পাঁচ বছরেরও বেশি সময় অতিবাহিত হয়ে গেল। এই সময়ে আরও বেশ কয়েকটি বই লিখলেও কম্পিউটার প্রোগ্রামিং ২য় খণ্ড লেখার কাজ অনেক ধীরগতিতে হয়েছে। শেষ পর্যন্ত বইটি আলোর মুখ দেখতে যাচ্ছে। আশা করি, ১ম খণ্ড পড়ার পরে এই বইটিকে ঘিরে শিক্ষার্থীদের যেই প্রত্যাশা, সেটি পূরণে বইটি সক্ষম হবে। আমি সবসময় মৌলিক জ্ঞান ও দক্ষতা অর্জনের দিকে জোর দেই। কারণ কারও বেসিক খুব ভালো থাকলে সে বহুদূর যেতে পারবে। তাই এই বইতেও প্রোগ্রামিংয়ের মৌলিক কিছু বিষয় নিয়ে আলাপ করেছি। ১ম খণ্ডের মতো, এই বইতেও প্রোগ্রামিং ভাষা হিসেবে সি ব্যবহার করেছি। এই বইটি পড়ার পরে শিক্ষার্থীদের প্রোগ্রামিংয়ের মৌলিক জ্ঞান যেমন বাড়বে, তেমনি সি প্রোগ্রামিং ভাষায় দক্ষতাও বৃদ্ধি পাবে। বাংলাদেশের শিক্ষার্থীদের প্রোগ্রামিংয়ের গড়পড়তা মান বৃদ্ধিতেও বইটি অবদান রাখতে পারবে বলে আমার বিশ্বাস। বইটির জন্য অনেক ছেলেমেয়ে আমাকে তাড়া দিয়েছে, ইমেইল করে, ফেসবুকে পোস্ট করে। তাঁদের প্রতি কৃতজ্ঞতা। বইটি রিভিউ করেছেন শাহরিয়ার মঞ্জুর, শহীদুল ইসলাম (সুমন), মীর ওয়াসি আহমেদ ও তাহমিদ রাফি। তাদেরকে অশেষ ধন্যবাদ ও কৃতজ্ঞতা। তাহমিদ রাফি বইটির সম্পাদনা ও পেজ মেকাপের কাজটি করেছে। সেই সঙ্গে কিছু কিছু অংশে বিস্তারিত তথ্য যুক্ত করেছে, আর ডিবাগিং অধ্যায়টিও তার লেখা। এজন্য সে বিশেষ ধন্যবাদ প্রাপ্য। আর বই লেখার সময়কালে আমার পুত্র আরাভের দেখাশোনার কাজটি পুরোপুরি নিজের কাঁধে নিয়ে আমার লেখার সময় বের করে দেওয়ার জন্য আমার স্ত্রী পারমিতাকেও অসংখ্য ধন্যবাদ। পাঠকের চোখে কোনো ভুলত্রুটি কিংবা অসঙ্গতি ধরা পড়লে আমাকে ইমেইল করার অনুরোধ রইল, পরবর্তী সংস্করণে সংশোধন করার চেষ্টা করব।
কম্পিউটার প্রোগ্রামিং (দ্বিতীয় খণ্ড) -বইয়ের সূচীপত্র অধ্যায় ১ – কম্পিউটার মেমোরি (Computer Memory) ১.১ – বিট ও বাইট ১.২ – ভ্যারেয়িবলের অ্যাড্রেস বা ঠিকানা ১.৩ – বিভিন্ন প্রকারের মেমোরি অধ্যায় ২ – পয়েন্টার ২.১ – নাল পয়েন্টার ২.২ – স্ট্রিং ও পয়েন্টার ২.৩ – পয়েন্টারের পয়েন্টার অধ্যায় ৩ – ফাইল (File) অধ্যায় ৪ – রিকার্শন (Recursion) ৪.১ – লোকাল ও গ্লোবাল ভ্যারিয়েবল ৪.২ – স্ট্যাটিক ভ্যারিয়েবল ৪.৩ – বিভিন্ন প্রকারের মেমোরি ৪.৪ – রিকার্শন অধ্যায় ৫ – বিটওয়াইজ অপারেশন (Bitwise Operation) অধ্যায় ৬ – স্ট্রাকচার (Structure) ও ইউনিয়ন (Union) ৬.১ – স্ট্রাকচার (Structure) ৬.২ – ইউনিয়ন (Union) ৬.৩ – স্ট্রাকচারের মেমোরি অ্যালাইনমেন্ট অধ্যায় ৭ – আরও পয়েন্টার ৭.১ – পয়েন্টারের হিসাব-নিকাশ ৭.২ – ভয়েড পয়েন্টার (void pointer) ৭.৩ – ফাংশন পয়েন্টার ৭.৪ – qsort ও bsearch ফাংশন অধ্যায় ৮ – মজার কিছু প্রোগ্রাম ৮.১ – সময় পরিমাপ ৮.২ – র্যানডম নম্বর (random number) তৈরি ৮.৩ – নিজে হেডার ফাইল তৈরি করা অধ্যায় ৯ – বিবিধ ৯.১ – কনস্ট্যান্ট (constant) ও ম্যাক্রো (Macro) কনস্ট্যান্ট (constant) ম্যাক্রো ৯.২ – এনিউমারেশন (enumeration) ৯.৩ – কমান্ড লাইন আর্গুমেন্ট (Command Line Argument) ৯.৪ – প্রোগ্রাম কম্পাইল হওয়ার ধাপসমূহ ৯.৫ – #typedef ও #define নিয়ে কিছু কথা ৯.৬ – main() ফাংশন ও return 0 ৯.৭ – lvalue এবং rvalue অধ্যায় ১০ – প্রোগ্রাম ডিবাগিং ১০.১ – ডিবাগিং কী? ১০.২ – সাধারণ ডিবাগিং ১০.৩ – কোডব্লকসে ডিবাগিং
বইটি কাদের জন্য উপযোগি? যেসব শিক্ষার্থী ইতিমধ্যে আমার কম্পিউটার প্রোগ্রামিং ১ম খণ্ড বইটি শেষ করেছে, এই বইটি মূলত তাদের জন্য। এছাড়া কেউ যদি ৫২টি প্রোগ্রামিং সমস্যা ও সমাধান বইটি পড়ে থাকে এবং সমস্যাগুলো সমাধানের চেষ্টা করে থাকে, তাহলে তার জন্য বইটি পড়া সহজ হবে।
তামিম শাহরিয়ার সুবিন, গ্র্যাব আর এন্ড ডি সেন্টার, সিঙ্গাপুর।
১৯৮২ সালের ৭ নভেম্বর ময়মনসিংহে জন্ম নেওয়া তামিম শাহরিয়ার সুবিন পেশায় একজন সফটওয়্যার ইঞ্জিনিয়ার। তার শিক্ষাজীবন শুরু হয় হোমনা সরকারি প্রাথমিক বিদ্যালয়ে। অতঃপর এ কে উচ্চ বিদ্যালয় ও নটরডেম কলেজে পড়া শেষে শাহজালাল বিজ্ঞান ও প্রযুক্তি বিশ্ববিদ্যালয়ে কম্পিউটার সায়েন্স এন্ড ইঞ্জিনিয়ারিং বিষয়ে পড়াশোনে শেষ করেন। সরকারি কর্মকর্তার ঘরে জন্ম নেওয়া সুবিনের প্রধান আকর্ষণ প্রোগ্রামিংকে ঘিরে। তিনি প্রোগ্রামিং বিষয়ক প্রায় পাঁচশোটি সমস্যা বিশ্ববিদ্যালয়ে থাকাকালে সমাধান করেছেন। নানা ভাষায় কোডিং করতে পারলেও তার পছন্দের প্রোগ্রামিং ভাষা পাইথন। তবে তার শখ লেখালিখি এবং ভ্রমণ। শখ এবং আগ্রহের বস্তুকে এক বিন্দুতে মিলিয়ে সুবিন লিখে ফেলেছেন বেশ কয়েকটি বই। তামিম শাহরিয়ার সুবিন এর বই সমূহ’র বিষয়বস্তু হলো কম্পিউটার প্রোগ্রামিং, যার বেশিরভাগ বাংলা ভাষায় লিখিত। কীভাবে বাংলা ভাষাভাষী মানুষের কম্পিউটার প্রোগ্রামিং বিষয়ে জড়তা দূর করা যায় সে ভাবনা থেকেই তিনি বাংলায় প্রোগ্রামিং বিষয়ক বই লেখা শুরু করেন। সহজ, সাবলীল ভাষায় লেখা বলে তামিম শাহরিয়ার সুবিন এর বই পাঠকের আত্মস্থ করতে বেগ পেতে হয় না। তামীম শাহরিয়ার সুবিন এর বই সমগ্র এর মাঝে তাই দেখতে পাওয়া যায় প্রোগ্রামিং গাইডলাইন, পাইথন দিয়ে প্রোগ্রামিং ও গণিতের মতো খটমটে বিষয়ের উপস্থিতি। তিনি বাংলাদেশে থাকাকালে মুক্ত সফটওয়্যার লিমিটেড ও দ্বিমিক কম্পিউটিং নামক দুটি প্রতিষ্ঠান গড়ে তোলেন। বাংলাদেশ গণিত অলিম্পিয়াডের একজন একাডেমিক কাউন্সিলর হিসেবেও নিয়োজিত রয়েছেন। বর্তমানে তিনি সপরিবারে সিঙ্গাপুরে বসবাস করছেন।