সি-শার্প এবং ডট নেট প্রোগ্রামিং [পর্ব-০১] :: সূচনা

সি-শার্প এবং ডট নেট প্রোগ্রামিং টিউটোরিয়াল

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

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

সি-শার্প নিয়ে আলোচনা করার পূর্বে প্রোগ্রামিং ভাষা কি সেটা নিয়ে আলোচনা করা জরুরী। প্রোগ্রামিং ভাষা হল এমন এক ভাষা যা মানুষের সাথে কম্পিউটারের এক যোগসূত্র স্থাপন করে। কম্পিউটার কিন্তু আমাদের চলতি ভাষা বোঝে না। এমনকি ইংরেজি, বাংলা, হিন্দি, উর্দু, ফারসি, আরবি কোন ভাষাই কম্পিউটারের ভাষা নয়। বরং কম্পিউটার যে ভাষায় যোগাযোগ রক্ষা করে তার নাম মেশিন ল্যাঙ্গুয়েজ বা মেশিন ভাষা। এখন মেশিন ভাষা আসলে কেমন তা একটু দেখিঃ

0011100011001100011……

এই সিকোয়েন্সটি লক্ষ করুন এটা শুধু ০ আর ১ এর সমন্বয়ে তৈরী। ০(শূন্য) অর্থ সিগনালের অনুপস্থিতি বা অফ (OFF) এবং ১ (এক) অর্থ সিগনালের উপস্থিতি বা অন (ON)। এখন আপনি একটা কমান্ড দিলেন তা কম্পিউটার বুঝবে এই মেশিন সিকোয়েন্সের মাধ্যমে এবং আপনাকে আউটপুট দেখাবেও এই সিকোয়েন্সে। কিন্তু মানুষের পক্ষে এই ভাষা বুঝে মনে রাখা সম্ভব নয় তাই এমন এক ভাষার প্রয়োজন যা মানুষের বোধগম্য হবে এবং একইসাথে কম্পিউটারের সাথেও যোগসূত্র স্থাপন করবে। প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যাবহার করে মানুষ কম্পিউটারকে নির্দেশ প্রদান করতে পারে।

বিশ্বের প্রথম কম্পিউটার ল্যাঙ্গুয়েজ হিসেবে ১৮৪২-১৮৪৩ সালের দিকে আবিষ্কৃত এডা (মতান্তরে আডা) (Ada) কে মনে করা হয়। এই ল্যাঙ্গুয়েজের আবিষ্কারক একজন মহিলা যার নাম Ada Lovelace। এরপরে বিভিন্ন সময়ে কম্পিউটার বিজ্ঞানীদের হাতে বিভিন্ন প্রোগ্রামিং ভাষা প্রস্তুত করা হয়েছে।

ডট নেট কি?

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

সি শার্প ও ডট নেট?

সি শার্প সব থেকে নতুন এক ল্যাঙ্গুয়েজ হিসেবে জানুয়ারি, ২০০২ সালে মাইক্রসফটের হাত ধরে আত্মপ্রকাশ করে। এই সিশার্প কে বিশেষ ভাবে ডট নেট এর সাথে কাজের জন্যই তৈরী করা হয়। তাই সি শার্পে ডট নেট লাইব্রেরীর সকল সুবিধা পাওয়া যাবে। সি শার্প ল্যাঙ্গুয়েজ তৈরীতে পূর্বের সকল ল্যাঙ্গুয়েজের বিশেষত্বকে কাজে লাগানো হয়েছে। এই ল্যাঙ্গুয়েজে সি, সি++, জাভা, প্যাস্কেল এর মত শক্তিশালী ল্যাঙ্গুয়েজ এর বৈশিষ্ট রয়েছে।

আপনি যদি সি-শার্প ও ডট নেট নিয়ে প্রোগ্রাম করতে চান, তাহলে আপনার কম্পিউটারে নিম্নলিখীত সফটওয়্যার লাগবেঃ

  • ১. Microsoft Visual Studio
    এখন পর্যন্ত Microsoft Visual Studio 2010 বার হয়েছে। তবে কারোর কাছে 2005 এর ভার্সন থাকলেও চলবে। তা দিয়েও কাজ করতে পারবেন। Microsoft Visual Studio 2010 এর ট্রায়াল ভার্সন এখান থেকে ডাউনলোড করতে পারবেন। তবে সব থেকে ভাল হয় যদি ফুল ভার্সন কোনভাবে ব্যাবহার করতে পারেন। মার্কেটে এর ফুল ভার্সনের ডিভিডি পাবেন। সেটাও কিনতে পারেন। আবার আপনি এর Express ভার্সনটি Free তে ব্যাবহার করতে পারবেন। নিচে তার লিঙ্ক দেয়া হল।

  • ২. অথবা ফ্রি কিছু কম্পাইলার পাওয়া যায় সেগুলো ব্যাবহার করতে পারেন শুধু সি শার্প প্রোগ্রাম রান করার জন্য তবে সেগুলো দিয়ে ডট নেট সাপোর্ট পাবেন না।

আমি এই টিউনে সবকিছুই Microsoft Visual Studio 2010 ব্যাবহার করে কাজ করব।

আমার প্রথম সি শার্প প্রোগ্রামঃ

আসুন, সি শার্প দিয়ে প্রোগ্রামিং করা শুরু করি। কেমন হবে যদি আপনি এমন একটি প্রোগ্রাম বানালেন যা কিনা HELLO! THIS IS MY FIRST C# PROGRAM  প্রিন্ট করবে। নিশ্চয় খুব ভাল লাগবে। তাহলে ধাপে ধাপে লক্ষ করুন কিভাবে কাজ করা হচ্ছেঃ

১। প্রথমে Visual Studio 2010 চালু করুন।

প্রথমবার চালু করার সময় এমন একটি পেজ দেখতে পাবেন। এটাই Welcome Page.

এই স্ক্রিনে লক্ষ করুন Start Page নামে যে অংশ রয়েছে সেখানে উপরের বাম পাশে তিনটি অপশন আছে, Connect To Team Foundation Server, New Project, Open Project.

Visual Studio তে আপনার সব প্রোগ্রাম একটি প্রজেক্ট ফাইল হিসেবে তৈরী করতে হয়। প্রজেক্ট তৈরী করার সুবিধা হল আপনার প্রোগ্রামের জন্য প্রয়োজনীয় সকল রিসোর্সগুলো একিসাথে থাকবে। এক সাথেই লোড হবে।

ক্লিক করুন New Project. কারন আপনার আগে কোন প্রজেক্ট নেই তাই Open Project করবেন না। পরবর্তিতে নিজের আগের কোন প্রজেক্ট নিয়ে কাজ করতে Open Project অপশন ব্যাবহার করবেন। পরবর্তিতে আরো বিস্তারিত দেখানো হবে।

২। এবার নিচের স্ক্রিনশটের মত ডায়ালগ আসবেঃ

Create Project Window

এখানে লক্ষ করুন বাম পাশের অংশে Visual C# এর অধীনে অনেক অপশন রয়েছে। এর মধ্যে Windows ক্লিক করুন কারন আপনার এপ্লিকেশন Windows Application হবে। এবার ডান পাশের অংশে Windows Application এর রকমফের দেখা যাচ্ছে। ডিফল্ট ভাবে প্রথম অপশন Windows Forms Application সিলেক্টেড রয়েছে। তবে আমরা আপাতত Forms Application তৈরী করব না। ফর্ম এপ্লিকেশন নিয়ে অন্য এক টিউনে আলোচনা করব।

এখন Console Application Select করুন। এবার নিচের দিকে Name অংশে আপনার এপ্লিকেশনের একটি পছন্দমত নাম দিন। ধরুন নাম দিলাম MyFirstProgram. এবার দেখুন তার পরে Location এ কোন স্থানে প্রজেক্ট তৈরী হবে তা দেখাচ্ছে। প্রয়োজনে এটি পরিবর্তন করতে পারেন তবে তা না করাই ভাল।

সকল সিশার্প এপ্লিকেশন প্রজেক্টের একটি Solution File থাকে যা স্বয়ংক্রীয় ভাবে প্রজেক্টের সাথেই তৈরী হয়। (পরবর্তিতে Solution File নিয়ে বিশদ আলোচনা করব)। ফাইলের নাম কি হবে সেটার একটি অপশন দেখা যাচ্ছে, Solution Name: এখানে সাধারনত আপনার প্রজেক্টের নামের অনুরুপ হবে। এটা পরিবর্তন না করাই ভাল। যদি Solution File এর জন্য নতুন ফোল্ডার তৈরী করতে চান তাহলে ডান পাশে Create Directory For Solution চেকবক্স চেক করুন। ডিফল্ট ভাবে এটা সেলেক্ট করাই থাকে।

সব শেষে OK ক্লিক করুন।

৩। নিচের স্ক্রিনশট দেখা যাবেঃ

প্রোগ্রামিং কোড লেখার জন্য স্থান তৈরী হয়েছে। এখানে আপনার যাবতীয় কোড লিখতে হবে। এবার আপনাদের সুবিধার জন্য স্ক্রিনে লেখা কোডগুলো লিখে দিলাম নিচেঃ

 using System; using System.Collections.Generic;  using System.Linq;  using System.Text; namespace MyFirstProgram {  class Program  {  static void Main(string[] args)  {  }  } }

প্রথমে দেখুন

using System; using System.Collections.Generic; using System.Linq; using System.Text;

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

এরপরে লক্ষ করুনঃ

namespace MyFirstProgram { class Program { static void Main(string[] args) { } } }

এখানে আমাদের প্রোগ্রামের নামে একটি নেমস্পেস দেখা যাচ্ছে। যার অধীনে সকল কাজ হবে। এর নিচেই একটি Program class এর অধীনে Main Function রয়েছে। সব সময় মনে রাখবেন যে কোন প্রোগ্রামিং ভাষাতে তৈরী প্রোগ্রামের সব থেকে গুরুত্বপূর্ন অংশ হল এই Main Function. কারন প্রোগ্রাম কম্পাইল করার সময় এই ফাংশন থেকেই কম্পাইল শুরু হয়। Main function সচরাচর কোন কিছু return করে না। তাই Main Function এর return type void হয়। কোন ফাংশনের রিটার্ন টাইপ void মানে হল, ফাংশন শেষে তা কোন কিছু রিটার্ন করবেনা। হয়ত, এখন খুব বেশি ধারনা পাবেননা তবে প্রোগ্রাম করতে করতে আপনার ধারনা আরো স্বচ্ছ হবে।

এবার Main Function এর ভিতর কোড লিখুনঃ

Console.WriteLine("HELLO! THIS IS MY FIRST C# APPLICATION");

লেখার সময় Visual Studio তে সাজেশন আসে। কিছু স্ক্রিনশট দেয়া হলঃ

এখানে Console লেখার মানে হল, আপনার প্রোগ্রামের আউটপুট কন্সোলে দেখানো হবে। Console এর ভিতর দুইটি ফাংশন রয়েছে, Write এবং WriteLine. আমরা এখানে WriteLine ফাংশন ব্যাবহার করেছি। আপনি ইচ্ছা করলে Write ফাংশন ব্যাবহার করতে পারেন। WriteLine function এর ভিতর আপনি যে লেখা দেখতে চান তা লিখুন। লেখা গুলো “” ডাবল কোটেশনের ভিতর লিখতে হবে।

ব্যাস আপনার প্রথম প্রোগ্রাম তৈরী। এবার Debug Menu থেকে Start Without Debugging অথবা Ctrl+F5 চাপুন। তাহলে Console Window তে আপনার প্রোগ্রামের আউটপুট দেখতে পাবেন। নিচে তার স্ক্রিনশট দেয়া হল।

এটাই আপনার প্রথম প্রোগ্রাম। আশা করি আগ্রহীদের কাজে লাগবে।

Level 0

আমি জ্যোতি। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 13 বছর 3 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 17 টি টিউন ও 98 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 2 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।

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


টিউনস


আরও টিউনস


টিউনারের আরও টিউনস


টিউমেন্টস

খুব ভাল। চালিয়ে যান

অনেক অনেক ধন্যবাদ, আশা করি দ্বিতীয় পর্ব খুব তারাতারি পাবো ।

    দ্বিতীয় পর্বের কাজ শুরু করব আজকেই। ইনশাল্লাহ, খুব তারাতারি পেয়ে যাবেন। অনেক ধন্যবাদ আপনাকে।

খুবই ভালো উদ্যোগ । চালিয়ে যান সাথে আছি।

    ধন্যবাদ। আপনাদের সাহায্য আসলেই আমার প্রয়োজন।

দ্বিতীয় পর্বের অপেক্ষায়…………..

    হ্যাল্লো নতুন পণ্ডিত…

    দ্বিতীয় পর্বের কাজ চলছে। আশা করি খুব তাড়াতাড়ি পোস্ট করতে পারব। ধন্যবাদ আপনাকে।

চালিয়ে জান, আমরা ছিলাম, আছি, থাকবো…
আপনার অন্য শুভ কমানা…………………

ওহ ভুলে গেছি বলতেঃ
Welcome to techtunes.
স্বাগতম টেকটিউন্স এ… ভালো কিছুর অপেক্ষায়…

    অনেক ধন্যবাদ এন্টি হ্যাকার ভাই। আজকেই প্রথমবারের মত টিউন করা শুরু করলাম। আশা করি ভাল কিছু পাবেন। ভাল থাকবেন।

সাথে আছি চালিয়ে যান।প্রোগ্রামিং শিখার ইচ্ছা বহুদিনের।

    ২য় পর্ব প্রকাশিত হয়েছে। ধন্যবাদ। আশা করি আপনার ইচ্ছা কিছুটা হলেও পূরন হবে।

চালিয়ে যান আমি আপনার 1……2…….3 তম viewer।

Level 0

APNAR MOTO UDAR LOKEDER PASHE AMI SOBSOMOY THAKTE CHAI & ONEK ONEK THANK YOU.
CHALIE JAN SESH PROJONTO AND ARO VALOVABE.

    ধন্যবাদ। আপনাদের সহযোগীতা আমার একান্তই কাম্য।

Level 0

APNAR MOTO UDAR LOKEDER PASHE AMI SOBSOMOY A6I+THAKBO+THAKTE CHAI & ONEK ONEK THANK YOU.
CHALIE JAN SESH PROJONTO AND ARO VALOVABE.

ভাল একটা কাজ হাতে নিয়েছেন,আশা করব মাঝ পথে থেমে যাবেন্না।
আর টিউনও সুন্দর হইছে,
ধন্যবাদ আপনাকে টিউনের জন্য।

Vizan, Visual stuidio er je link ta diyechen oita install korar jonno XP service pack 3 recommend kore.but amar pc service pack2.ki kora jai?????Service pack3 chara ki hobe na???r full version ta ki paoa jabe VB studio er?

    ভিসুয়াল স্টুডিও ২০১০ Windows XP SP3 অথবা পরবর্তি সকল ভার্সনের জন্য। তাই, এর পুর্ববর্তি ভার্সন ব্যাবহারকারীদেরকে SP3 install করতে হয়। আপনি SP3 install করুন নতুবা Windows 7 ব্যাবহার করুন। তাহলে প্রয়োজনীয় সকল কিছুই চালাতে পারবেন কোন সমস্যা হবে না আশা রাখি। ভাল থাকবেন।

Level 0

ভাইয়া আমি c & c++ জানি। আমার প্রশ্ন হছে আমি dev c তে c# লিখতে পারব না??

Level 0

ভাইয়া আপনার C# এর প্রথম টিউন টি পড়লাম, খুব সুন্দর হয়েছে। সব কিছু বুঝতেও পেরেছি।
কিন্তু সমস্যা হল আমার Microsoft Visual Stdio 2005 দেওয়া। এখানে set up
দেওয়ার পর একটি window আসে window তে লিখা থাকে কোন Platform এ আপনি
Develop করতে চান। আমি C# সিলেক্ট করেছিলাম, কিন্তু New Project এ ক্লিক
করলে একটি Form দেখায়। আমি Form এ কিছু না করে Program.cs
ফাইল টি খুলে আপনার লেখার মত হুবহু সবকিছু লিখেছি কিন্তু
Debug without Error / Ctrl+f5 চপলে কোন আউটপুট আপনার টিউনের মত দেখায়
না।

আমার কোনখানে ভুল গেছে এবং কি করব জানালে উপকৃত হব।

    @kamrul71: ভাই, আপনাকে Console Application এ কাজ করতে হবে। অর্থাৎ New Project এ গিয়ে Windows Console Application select করতে হবে। আপনার বর্ননা শুনে মনে হচ্ছে আপনি Windows Forms Application এ ভুল করে কাজ করেছেন। সেখানে Program.cs ফাইল যার কথা বললেন, সেখানে কোড করলে হবে না। ঐটা Form Application এ Auto-Generated code file। আশা করি সফল হবেন। আরো ভাল হয়, আপনি নতুন কোন ভার্সন ব্যবহার করুন। যেমনঃ Visual Studio 2008 or 2010 Express…ধন্যবাদ।

Level 0

হুররে , আমি পেরেছি ভাইয়া। আপনাকে অনেক অনেক ধন্যবাদ। দোয়া করবেন যাতে আপনার মত আমি ও কাউকে help করতে পারি।

Level 0

Software er jonno system repuirment

Level 0

সেরাম হৈসে বস 🙂 চালায়ে যান শিখতে এবার হবেই 😀

Level 0

ভিজুয়াল স্টুডিও কালেকশন করেছি প্রায় ৭ মাস হয়েছে। বিগত ৭ মাস ধরে এই সফ্টওয়্যার এর মাথা ‍মুন্ডু কিছুই বুঝতে পারিনি।কতবার ইনস্টল এবং আনইস্টল দিয়েছি তার কোন হিসেব ই নেই।জাভা শিখার জন্য বাংলায় সার্চ দিতে ওয়াহিদ ভাই এর সাথে আপনাকে পেলাম। আর ১ম দিনের ভিতরেই আমি HELLO! THIS IS MY FIRST C# APPLICATION লিখতে সক্ষম হয়েছি।
এত সহজে এর চেয়ে ভাল C# প্রোগ্রামিং শিক্ষনীয় বিষয় সম্বন্ধে আলোচনা মনে হয় সম্ভব নয়।

সত্যিই এটি চমৎকার…. .. .. . ইনফিনিট থ্যংকস .. .. .

Level 0

ওফ আনন্দে বানান ও ভূল হয়ে যায়
(ইনফিনিট থ্যংকস) নয় ইনফিনিট থ্যাংকস

আমি যদি সি শার্প দিয়ে প্রোগ্রাম ডেভেলপ করি তাহলে সেটিকে সবার পিসিতে চালানোর যোগ্য করতে আমাকে কি কি করতে হবে? সেটআপ ফাইল তৈরি করার পর আর কি কি সাথে রাখতে হবে ? অনেক সময় তো ডটনেট ফ্রেমওয়ার্ক নিয়ে সমস্যা করে অন্যের পিসিতে?