গো (প্রোগ্রামিং ভাষা)

গো একটি প্রোগ্রামিং ভাষা যেটি ২০০৭ সালে গুগলে ডেভেলপ করা হয়। এটি স্ট্যাটিক টাইপড ল্যাঙ্গুয়েজ যার সিনট্যাক্স সি প্রোগ্রামিং এর মত । এটিতে গ্যারবেজ কালেকশন, টাইপ সেফটি, ডাইন্যামিক টাইপিং ক্যাপাবিলিটি, সিএসপি ধরনের কনকারেন্সি, বড় লাইব্রেরী রয়েছে । গুগলের তিনজন কর্মকর্তা রবার্ট গ্রিসেমার, রব পাইক এবং কেন থম্পসন একত্রে এই ভাষাটি নির্মাণ করেন। এর সোর্স কোড ২০০৯ সালে উন্মুক্ত করে দেওয়া হয় । জাভা এবং সি এর মত প্রতিষ্ঠিত ল্যাংগুয়েজ এর তুলনায় এর সোর্স কোড সহজবোধগম্য এবং দ্রুত কার্যকারী ॥ এটিকে এমনভাবে বানানো হয় যাতে এই প্রোগ্রামিং ল্যাঙ্গুয়েজটি Linux, OS X, Windows, এছাড়াও BSD এবং Unix এর কিছু ভার্শন এ চলতে পারে । এমনকি ২০১৫ সাল থেকে এটি স্মার্টফোন এও ব্যবহারযোগ্য হয় । বিবিসি , সাউন্ড ক্লাউড , ফেসবুক এর মত বড় বড় ওয়েবসাইটে গুগল গো এর ব্যবহার দেখা যায় । ভাষাটি নভেম্বর,2009 সালে ঘোষণা করা হয় । এটি সাধারনত গুগলের বিভিন্ন পন্যে ব্যবহার করা হয় । তাছাড়াও অন্য কোম্পানি দ্বারা এটি ব্যবহার করা হয় । গো (প্রোগ্রামিং ভাষা)' একটি ওপেন সোর্স সফটওয়্যার এবং এটি তৈরির সময় সকল প্লাটফরম যেমন লিনাক্স,ম্যাক ওএস,মাইক্রোসফট উইন্ডোজ এর কথা মাথায় রাখা হয় । গো তে হ্যালো ওয়ার্লড এর প্রোগ্রামের ধরন নিচের মতন । package main import "fmt" func main() { fmt.Printf("Hello, world") } গো এর অফিশিয়াল সাইট থেকে ঘুরে আসতে পারেন। উইন্ডোজ লিনাক্স ম্যাক এর জন্য ১.৭ রিলিজ রয়েছে , ওয়েব ও কোড রান করাতে পারবেন । চাইলে আমাদের লোকাল মেশিনেও এই ট্যুর রান করতে পারি । সেক্ষেত্রে আমাদের ইন্টারনেটে কানেক্টেড না থাকলেও চলবে । লোকাল মেশিনে রান করায়, আমাদের কোডও দ্রুত কম্পাইল হবে এবং আমরা দ্রুত রেসপন্স পাবো । অফলাইনে এই ট্যুর রান করার দুটো উপায় আছে - গো তে ভ্যারিয়েবল গুলো এক্সপ্লিসিটলি ডিফাইন করে দিতে হয় । var কিওয়ার্ডটি ব্যবহার করে আমরা এক বা একাধিক ভ্যারিয়েবল ডিফাইন করতে পারি । এই কিওয়ার্ডটির পর ভ্যারিয়েবল এর নাম এবং তারপর টাইপ নির্দেশ করতে হয় । গুগল মনে করে বর্তমানে প্রচলিত প্রোগ্রামিং ভাষাগুলো তাদের উপযোগিতার সীমা প্রায় পূর্ণ করে এনেছে। সোজা কথা হল, এদের আর নতুন কিছু দেয়ার নেই। বর্তমানে সবচেয়ে জনপ্রিয় ও বিখ্যাত যে ভাষাগুলো প্রচলিত আছে (যেমন সি, সি++, জাভা, সি#) সেগুলো প্রায় একই ধরনের সিনট্যাক্স কাঠামোকে ভিত্তি করে প্রতিষ্ঠিত। এসব প্রোগ্রামিং ভাষাকে হালনাগাদ করা বা এগুলোতে নতুন বৈশিষ্ট্য যোগ করার মানে হল, এদের লাইব্রেরিকেই শক্তিশালী ও বিস্তৃত করা, মূল ল্যাংগুয়েজের কাঠামোতে কিন্তু কোনো মৌলিক পরিবর্তন আনা হচ্ছে না। এ কারণে এ জায়গাটাতে গুরুত্ব দিতে চায় গুগল। কেবল নতুন একটি লাইব্রেরি অ্যাড করাই নয়, তার চাইতেও বেশি কিছু দিতে চায় গুগল। সি থেকে আজ পর্যন্ত কম্পিউটিং-এর ভুবনটি কিন্তু নানাভাবে পরিবর্তিত হয়েছে। গুগল-এর পক্ষ থেকেও তাই বলা হচ্ছে: ‘বর্তমানে কম্পিউটারের শক্তি প্রচন্ডভাবে বেড়ে গেছে, কিন্তু তার সঙ্গে তাল মিলিয়ে সফটঅয়্যার ডেভেলপমেন্ট ততটা শক্তি সঞ্চয় করতে পারছে না।’ প্যারালাল প্রসেসিং বা গারবেজ কালেকশন-এর মত কনসেপ্টকে সমর্থন বা ধারণ করতে গেলে প্রোগ্রামিং ভাষাগুলোর নিজেদের পাল্টে ফেলতে হবে অনেকটাই। এ কারণেই গুগল ‘গো’ প্রোগ্রামিং ভাষাকে ডিজাইন করেছে একেবারে শুরু থেকে, দ্রতগতির কম্পাইলেশনের সুবিধাসহ একটি সমসাময়িক, গারবেজ-কালেক্টেড ভাষা হিসেবে। Go এর শক্তিশালী স্ট্যান্ডার্ড লাইব্রেরি এবং ব্যবহারের সহজতার কারণে বিভিন্ন ডোমেনে ব্যাপক গ্রহণযোগ্যতা পেয়েছে। জনপ্রিয় অ্যাপ্লিকেশনগুলির মধ্যে রয়েছে: ক্যাডি , একটি ওয়েব সার্ভার যা HTTPS সেট আপ করার প্রক্রিয়াটিকে স্বয়ংক্রিয় করে, ডকার , যা সফ্টওয়্যার বিকাশ এবং স্থাপনার জটিলতাগুলিকে সহজ করার লক্ষ্যে কনটেইনারাইজেশনের জন্য একটি প্ল্যাটফর্ম প্রদান করে, কুবারনেটস , যা স্থাপনা স্বয়ংক্রিয় করে , স্কেলিং, এবং কন্টেইনারাইজড অ্যাপ্লিকেশনের ব্যবস্থাপনা, ককরোচডিবি , স্কেলেবিলিটি এবং শক্তিশালী সামঞ্জস্যের জন্য প্রকৌশলী একটি বিতরণ করা SQL ডাটাবেস, এবং হুগো , একটি স্ট্যাটিক সাইট জেনারেটর যা গতি এবং নমনীয়তাকে অগ্রাধিকার দেয়, যা বিকাশকারীদের দক্ষতার সাথে ওয়েবসাইট তৈরি করতে দেয়।