"হ্যালো, ওয়ার্ল্ড!" প্রোগ্রাম: সংশোধিত সংস্করণের মধ্যে পার্থক্য

বিষয়বস্তু বিয়োগ হয়েছে বিষয়বস্তু যোগ হয়েছে
NahidSultanBot (আলোচনা | অবদান)
বট নিবন্ধ পরিষ্কার করেছে। কোন সমস্য থাকল এর পরিচালককে জানান।
১ নং লাইন:
[[চিত্র:CNC_Hello_World.jpg|ডান|থাম্ব|অ্যাক্রিলিক গ্লাসের উপর কম্পিউটারের তথ্য সংরক্ষের পরীক্ষা]]
[[চিত্র:HelloWorld_Maktivism_ComputerProgramming_LEDs.jpg|থাম্ব| "হ্যালো ওয়ার্ল্ড!" বার্তাটি একটি সচল আলোর মাধ্যমে দেখানো হচ্ছে]]
'''হ্যালো ওয়ার্ল্ড!''' হচ্ছে একটি কম্পিউটার প্রোগ্রাম যা ব্যবহারকারীকে "হ্যালো ওয়ার্ল্ড!" আউটপুট দেখায়। যেকোনো প্রোগ্রামিং ভাষার ক্ষেত্রে এটি হচ্ছে সবচেয়ে সহজ প্রোগ্রাম। এটা সাধারণত একটি প্রোগ্রামিং ভাষা লিখার মৌলিক নিয়মগুলো ব্যাখ্যা করার জন্য ব্যবহৃত হয়। যখন কেউ নতুন একটি প্রোগ্রামিং ভাষা শিখা শুরু করে, তখন প্রায় সবাই এই প্রোগ্রামটি লিখেই শিখা শুরু করে। 
 
৭ নং লাইন:
 
এছাড়াও কম্পিউটারের কম্পাইলার এবং একটি প্রোগ্রামিং ভাষা নিয়ে কাজ করার জন্য কম্পিউটারটির সবকিছু ঠিকঠাকমত কাজ করছে কিনা সেটা জানার জন্যেও "হ্যালো, ওয়ার্ল্ড!" প্রোগ্রামটি ব্যাবহার করা হয়। কোন একটি কম্পিউটারে নতুন একটি প্রোগ্রামিং ভাষার জটিল জটিল প্রোগ্রামগুলো ঠিকমত কাজ করতে পারবে কিনা সেটা জানার জন্যেও এটি ব্যাবহৃত হয়। এই কারণেই কোন নতুন টুল চেইন পরীক্ষা করার জন্য এই সহজ প্রোগ্রামটি ব্যাবহার করা হয়।
[[চিত্র:PSP-Homebrew.jpeg|থাম্ব|সত্যতাস্বরূপ সনির পোর্টেবল প্লেস্টেশনে "হ্যালো ওয়ার্ল্ড!" প্রোগ্রামটি দেখানো হচ্ছে ]]
[[হ্যাকার]]<nowiki/>রা কোন একটি ডিভাইসে সিস্টেম ডিজাইনারদের কোডের দুর্বলতার সুযোগ নিয়ে ডিভাইসটি নিজেদের মত করে ব্যাবহার করতে পারবে কিনা সেই ব্যাপারে নিশ্চিত হওয়ার জন্যেও "হ্যালো, ওয়ার্ল্ড!" প্রোগ্রামটি ব্যাবহার করে থাকে। উদাহরণস্বরূপ [[সনি]]<nowiki/>র পোর্টেবল প্লেস্টেশন। এইরকম আরও অনেক ডিভাইসে নিজেদের মত করে কোড  লিখার জন্য এটি হচ্ছে প্রথম ধাপ। 
 
৩৬ নং লাইন:
কিন্তু দাবী করা হয় যে hello, world শব্দদুইটি ১৯৬৭ সালে বিসিপিএল থেকে এসেছে। <ref>[http://www.catb.org/jargon/html/B/BCPL.html BCPL], ''[//en.wikipedia.org/wiki/Jargon_File Jargon File]''</ref>{{অনির্ভরযোগ্য উৎস?|date=March 2015}} প্রিন্সটন বিশ্ববিদ্যালয়ের অধ্যাপক ব্রায়ান কার্নিংটন এবং [[ক্যামব্রিজ বিশ্ববিদ্যালয়|ক্যামব্রিজ বিশ্ববিদ্যালয়ের]] অধ্যাপক মার্টিন রিচার্ডসের কাছ থেকে এই দাবীটির পক্ষে সমর্থন পাওয়া যায়।
 
আধুনিক ভাষারগুলোতে হ্যালো ওয়ার্ল্ড প্রোগ্রামটি বিভিন্নভাবে লিখা হয়। যেমন, "গো" প্রোগ্রামিং ল্যাঙ্গুয়েজে বিভিন্ন ভাষায় এটি লিখা যায়।<ref>[http://golang.org/doc/go_tutorial.html#tmp_20 A Tutorial for the Go Programming Language.] </ref> আমেরিকার সান মাইক্রোসিস্টেম্‌স নামক কোম্পানিটি [[জাভা প্রোগ্রামিং ভাষা]] ব্যাবহার করে আকার পরিবর্তনযোগ্য ভেক্টর গ্রাফিক্স দ্বারা  "হ্যালো, ওয়ার্ল্ড!" প্রোগ্রামটি তৈরি করে।<ref>{{cite news|last=Jolif|first=Christophe|title=Bringing SVG Power to Java Applications|newspaper=Sun Developer Network|date=January 2003}}</ref> এবং এক্সএল ([[প্রোগ্রামিং ভাষা]]) ব্যাবহার করে পৃথিবীর মত ঘূর্ননরত অবস্থায় ত্রিমাত্রিকভাবে hello world শব্দটি প্রদর্শন করানো যায়। <ref>{{cite web|last=de Dinechin|first=Christophe|title=Hello world!|url=http://grenouillebouillie.wordpress.com/2010/07/24/hello-world/|publisher=Grenouille Bouillie|date=July 24, 2010}}</ref> অন্যদিকে, কিছু উন্নত প্রোগ্রামিং ভাষা, যেমন পার্ল, পাইথন এবং রুবিতে কেবলমাত্র একটি বাক্য দ্বারা "hello world" শব্দটি প্রদর্শন করানো যায়। কিন্তু, অন্যান্য পুরাতন প্রোগ্রামিং ভাষা, যেমন অ্যাসেম্বলি ভাষায় অনেকগুলো লাইনের দরকার হয়। মার্ক গ্যাজডিল এবং এলিয়ট সলোওয়ের মতে পরীক্ষামূলক প্রোগ্রাম হিসেবে "hello world" পুরাতন হয়ে গিয়েছে। বর্তমানে সহজেই টেক্সটের বদলে বিভিন্নরকম গ্রাফিক্স এবং শব্দ ব্যাবহার করা যায়।<ref>[http://www.bfoit.org/itp/Soloway/CACM_Nintendo_Generation.pdf Teaching the Nintendo Generation to Program]</ref>
 
== প্রকারভেদ ==
৪৩ নং লাইন:
বিভিন্ন ফাংশনাল প্রোগ্রামিং ভাষা, যেমন [[লিস্প (প্রোগ্রামিং ভাষা)|লিস্প]], এমএল এবং হ্যাসকেল প্রোগ্রামিং ভাষায় বিকল্প হিসেবে [[ফ্যাক্টরিয়াল]] ব্যাবহার করে Hello World প্রোগ্রামটি লিখা যায়। এছাড়াও ফাংশনাল প্রোগ্রামিং ভাষায় রিকার্সিভ কৌশল ব্যাবহার করেও লিখা যায়। কিন্তু এই পদ্ধতিটি মৌলিক ফাংশনাল প্রোগ্রামিং ভাষার বৈশিষ্ট্যের সাথে বিরুদ্ধাচারন করে। অন্যান্য প্রোগ্রামিং ভাষা, যেমন (অ্যাসেম্বলি, সি, [[ভি এইচ ডি এল]]) দিয়ে Hello World বিভিন্ন এমবেডেড সিস্টেম ব্যাবহার করে লিখা হয়। কেননা, এইসব প্রোগ্রামিং ভাষা টেক্সট ইনপুট দেয়া কষ্টকর (অন্য কম্পিউটারের অন্যান্য উপাদান বা যোগাযোগের প্রয়োজন হয়) নাহয় অসম্ভব। মাইক্রোকন্ট্রোলার, [[ফিল্ড-প্রোগ্রামেবল গেইট অ্যারে]] এবং কমপ্লেক্স প্রোগ্রামেবল লজিক ডিভাইসের মত যন্ত্রে "Hello, World" বাক্যটি একটি জ্বলজ্বলে [[LED|লাইট এমিটিং ডায়োড]] দ্বারা প্রতিস্থাপিত হয়। এর দ্বারা যন্ত্র এবং সময়ের মধ্যকার মিথস্ক্রিয়া বুঝা যায়। <ref>{{cite web|last1=Silva|first1=Mike|title=Introduction to Microcontrollers - Hello World|url=http://www.embeddedrelated.com/showarticle/460.php|website=EmbeddedRelated.com|accessdate=19 May 2015|date=11 September 2013}}</ref><ref>{{cite web|last1=George|first1=Ligo|title=Blinking LED using Atmega32 Microcontroller and Atmel Studio|url=https://electrosome.com/blinking-led-atmega32-avr-microcontroller/|website=electroSome|accessdate=19 May 2015}}</ref><ref>{{cite web|last1=PT|first1=Ranjeeth|title=2. AVR Microcontrollers in Linux HOWTO|url=http://www.tldp.org/HOWTO/Avr-Microcontrollers-in-Linux-Howto/x207.html|website=The Linux Documentation Project|accessdate=19 May 2015}}</ref><ref>{{cite web|last1=Andersson|first1=Sven-Åke|title=3.2 The first Altera FPGA design|url=http://www.rte.se/blog/blogg-modesty-corex/first-altera-fpga-design/3.2|website=RTE|publisher=Realtime Embedded AB|accessdate=19 May 2015|date=2 April 2012}}</ref><ref>{{cite web|last1=Fabio|first1=Adam|title=CPLD Tutorial: Learn programmable logic the easy way|url=http://hackaday.com/2014/04/06/cpld-tutorial-learn-programmable-logic-the-easy-way/|website=Hackaday|accessdate=19 May 2015|date=6 April 2014}}</ref>
 
[[ডেবিয়ান]] এবং[[উবুন্টু (লিনাক্স ডিস্ট্রিবিউশন)| উবুন্টু লিনাক্স ডিস্ট্রিবিউশনগুলো]] "hello world" প্রোগ্রামটি এপিটি প্যাকেজ আকারে প্রকাশ করে থাকে। এর ফলে ব্যাবহারকারীরা কোনো সফটওয়্যারের সাথে কেবলমাত্র "apt-get install hello" টাইপ করেই প্রোগ্রামটি ইন্সটল করতে পারে। যদিও আপাতদৃষ্টিতে এটিকে নিষ্প্রয়োজন মনে হচ্ছে, কিন্তু নতুনদের জন্য একটি সহজ উদাহরণ হিসেবে কাজ করে। ডেভেলপারদের জন্য এটি অনেক উপকারী। এটি  [[ডেব (ফাইল ফরম্যাট)|.deb]]  প্যাকেজ তৈরী করার জন্য প্রয়োজন হয়। অন্যথায়, গতানুগতিক পুরাতন পদ্ধতিতে নাহয় ডেবহেল্পারের সাহায্যে প্যাকেজ তৈরী করতে হয়।  এছাড়াও লিনাক্সের "জিএনইউ হ্যালো" দ্বারা একটি সাধারণ জিএনইউ প্রোগ্রাম লিখার উদাহরণ পাওয়া যায়। 
 
== আরও দেখুন ==
* [[ফুবার (কম্পিউটার প্রোগ্রামিং)]]
 
 
== তথ্যসূত্র ==