গোলাং, বা সহজভাবে “গো” হল একটি নতুন প্রোগ্রামিং ভাষা যা প্রাথমিকভাবে 2012 সালে প্রকাশিত হয়েছে৷ এর উত্স Google-এ ফিরে এসেছে, অনেকে এটিকে Google-এর অভ্যন্তরীণ ভাষা বলে মনে করেন৷
আপনি কি কখনও নতুন প্রোগ্রামার হিসাবে গোলং শেখার কথা বিবেচনা করেছেন? সম্ভবত আপনি একজন বিদ্যমান বিকাশকারী এবং আপনার দক্ষতার সম্পদ যোগ করতে চান। আমরা গো-তে আরও ঘনিষ্ঠভাবে নজর দেব যাতে আপনি সম্ভাব্য সবচেয়ে সচেতন সিদ্ধান্ত নিতে পারেন।
গোলং এর উল্লেখযোগ্য বৈশিষ্ট্য
Go এর যদি চেষ্টা করার মতো কিছু থাকে তবে এটি অফার করে এমন অনন্য বৈশিষ্ট্যগুলির অ্যারে। তা সত্ত্বেও, পাইথন, সি, সি++, জাভা এবং জাভাস্ক্রিপ্ট সহ অন্যান্য প্রোগ্রামিং ভাষার সাথেও একই বৈশিষ্ট্যগুলি ভাগ করে নেয়।
উদাহরণস্বরূপ, এর পরীক্ষার ক্ষমতা এবং স্ট্যান্ডার্ড লাইব্রেরির অ্যারে এটিকে অন্যান্য ভাষার সাথে আরও বেশি করে তোলে। কিন্তু কিছু বৈশিষ্ট্য গোলংকে আরও অনন্য এবং শেখার যোগ্য করে তোলে। এখানে কিছু উল্লেখযোগ্যের দিকে নজর দেওয়া হল:
সঙ্গতি
একই সাথে একাধিক অপারেশন চালানোর ক্ষমতা গোলং এর অনন্য বৈশিষ্ট্যগুলির মধ্যে একটি। এটি অর্জন করতে এটি গোরুটিন নামে একটি বৈশিষ্ট্য ব্যবহার করে। এটি গোলং প্রোগ্রামগুলিকে মেমরি বরাদ্দে খুব দ্রুত এবং দক্ষ করে তোলে।
মেমরি ঠিকানা অ্যাসাইনমেন্ট
গোলং-এর অ্যাড্রেস অ্যাসাইনমেন্ট আপনাকে একটি বস্তুর বিষয়বস্তু, একটি ফাংশনের ফলাফল বা একটি পরিবর্তনশীল অন্যটিতে স্থানান্তর করতে দেয়। আপনার উদ্দেশ্যের উপর নির্ভর করে, ডাটাবেসে একটি মডেল অবজেক্ট ঢোকানোর সময় বা একটি ফাংশনের বৈশিষ্ট্য অন্যটিতে বরাদ্দ করার সময় এটি কার্যকর হতে পারে।
উদাহরণস্বরূপ, আপনি ডাটাবেসের মধ্যে সরাসরি একটি কাঠামো সন্নিবেশ করতে পারবেন না। কিন্তু ঠিকানা অ্যাসাইনমেন্ট আপনাকে একটি স্ট্রাকট বা ক্লাসের বিষয়বস্তু অন্য ভেরিয়েবলের সাথে সংযুক্ত করতে দেয়। অতএব, আপনি সহজেই এর ক্ষেত্রগুলি ডাটাবেসে সন্নিবেশ করতে পারেন। এটি অন্যান্য প্রোগ্রামিং ভাষায় একটি অবজেক্টে একটি ক্লাস বরাদ্দ করার অনুরূপ।
সংকলিত
অবশ্যই, সংকলিত ভাষাগুলি তাদের ব্যাখ্যা করা সমকক্ষগুলির চেয়ে দ্রুততর কারণ তারা সরাসরি ফর্ম্যাটে রূপান্তরিত হয় যা মেশিন পড়তে পারে। যদিও গো একটি সংকলিত ভাষা, তবে এটির প্রক্রিয়াকরণ আরও বেশি দক্ষ, অন্যান্য বৈশিষ্ট্য যেমন আবর্জনা সংগ্রহ, গোরুটিন চ্যানেলিং এবং স্ট্যাটিক টাইপিংয়ের জন্য ধন্যবাদ।
আবর্জনা সংগ্রহ
আপনি অন্য প্রোগ্রামিং ভাষায় এটি ব্যবহার না করে একটি ভেরিয়েবল ঘোষণা করতে বা একটি লাইব্রেরি কল করতে পারেন, আপনি Go এ এটি করতে পারবেন না। এই বৈশিষ্ট্যটি আপনাকে আপনার প্রোগ্রামে বরাদ্দ করা অব্যবহৃত স্মৃতিগুলিকে খালি করতে দেয় যা কর্মক্ষমতার একটি উল্লেখযোগ্য উন্নতি ঘটায়। এছাড়াও, এটি আপনার কোড ক্লিনার এবং আরো পঠনযোগ্য করে তোলে।
স্থিরভাবে টাইপ করা সিনট্যাক্স
C এর মত, Go স্ট্যাটিক সিনট্যাক্স সমর্থন করে, যা কম্পাইলের সময়কে উন্নত করে এবং ডিবাগিংকে সহজ করে তোলে। সংক্ষেপে, আপনাকে স্ট্রিং, ইন্টিজার, অ্যারে এবং স্ট্রাকচার সহ বিভিন্ন ডেটা প্রকার কঠোরভাবে ঘোষণা করতে হবে। যাইহোক, আপনি যদি JavaScript বা Python এর মতো ভাষা থেকে আসছেন, তাহলে প্রথমে এটি বিশ্রী মনে হতে পারে। নিশ্চিন্ত থাকুন, সামান্য অনুশীলনের মাধ্যমে, এটি আয়ত্ত করতে খুব বেশি লাগে না।
যান ব্যবহার এবং বাজার চাহিদা
অন্যান্য প্রোগ্রামিং ভাষার সাথে জনপ্রিয়তার ক্ষেত্রে গোলং-এর তুলনা আছে। এটি বেশিরভাগের কাছে বিস্ময়কর নয় কারণ এটি তুলনামূলকভাবে নতুন। 2021 স্ট্যাক ওভারফ্লো ডেভেলপার সার্ভে অনুসারে, সমীক্ষা করা ডেভেলপারদের প্রায় 9.55 শতাংশ Go ব্যবহার করে, এটিকে 14তম জনপ্রিয় প্রোগ্রামিং ভাষা হিসাবে স্থাপন করে।
তবুও, stakshare.io Go ব্যবহারকারী কোম্পানির সংখ্যা 2,624 এ রাখে। এর মধ্যে রয়েছে Google, Uber, Slack, Pinterest, Shopify, Twitch, ইত্যাদির মতো বড় নাম৷ অবশ্যই, সেই তালিকায় এমন ব্যক্তিদের উল্লেখ নেই যারা প্রথমবার ভাষা পরিবর্তন করছেন বা গ্রহণ করছেন৷ এর গতি, একত্রীকরণ এবং সিপিইউ বন্ধুত্ব এটিকে জটিল কাজগুলি পরিচালনাকারী সংস্থাগুলির তালিকার শীর্ষে রেখেছে।
যাইহোক, এই সংখ্যাটি পাইথন ব্যবহারকারীদের তুলনায় প্রায় 67.1 শতাংশ কম। যদিও গুরুত্বপূর্ণ, এটি আশ্চর্যজনক নয়—স্ট্যাক ওভারফ্লো বিকাশকারী সমীক্ষায় আমরা আগে উল্লেখ করেছি যে পাইথনকে 2021 থেকে 2022 সালের মধ্যে সবচেয়ে জনপ্রিয় ব্যাকএন্ড ভাষা হিসাবে স্থান দিয়েছে।
Go-এর কম জনপ্রিয়তা আপনার পরবর্তী নির্বাচিত দক্ষতা হিসাবে এটি শেখার বিষয়ে আপনাকে দুবার ভাবতে পারে। কিন্তু একটি সুস্পষ্ট ইঙ্গিত রয়েছে যে কোম্পানিগুলি তাদের দক্ষতাকে মূল্যায়ন করা সত্ত্বেও দক্ষ গো ডেভেলপারদের অভাব রয়েছে৷
তদুপরি, একই সমীক্ষায় দেখা গেছে যে অনেক ডেভেলপার Go এ স্যুইচ করতে পছন্দ করবে, কিন্তু এক সময় বা অন্য সময়ে এটি চেষ্টা করতে ভয় পায়। উপরন্তু, talent.com অনুসারে, মার্কিন যুক্তরাষ্ট্রে একজন গো ডেভেলপারের গড় বার্ষিক বেতন $135,000।
তাই, কম জনপ্রিয়তা সত্ত্বেও, বড় এবং ছোট উভয় কোম্পানির মধ্যে Go-এর গ্রহণ বৃদ্ধি পেয়েছে। এবং Go এর একটি দৃঢ় ভিত্তিগত বোঝাপড়ার সাথে, আপনি জাভাস্ক্রিপ্ট বা পাইথনের মতো অন্যান্য জনপ্রিয় ভাষার বিপরীতে কম প্রতিযোগিতার সম্মুখীন হন, যেগুলির ইতিমধ্যেই অবিরাম সিনিয়র ডেভেলপার রয়েছে।