কম্পিউটার

ম্যাক সিস্টেম রুবি ব্যবহার করবেন না - পরিবর্তে এটি ব্যবহার করুন

কেউ হয়তো আপনাকে একবার বলেছে, "রুবি সিস্টেমটি ব্যবহার করবেন না।" এটা ভাল উপদেশ, কিন্তু কেন? চলুন জেনে নেওয়া যাক।

আপনার কোন রুবি আছে?

MacOS একটি "সিস্টেম রুবি" আগে থেকে ইনস্টল করা আছে।

which ব্যবহার করুন রুবি কোথায় ইনস্টল করা আছে তা দেখতে কমান্ড:

$ which ruby
/usr/bin/ruby

যদি আপনি /usr/bin/ruby দেখতে পান , এটি প্রি-ইনস্টল করা macOS সিস্টেম রুবি।

সিস্যাডমিন স্ক্রিপ্ট চালানোর জন্য সিস্টেম রুবি ব্যবহার করা ভাল, যতক্ষণ না আপনি রুবিকে আপডেট করার চেষ্টা করে বা রত্ন যোগ করার চেষ্টা করে পরিবর্তন না করেন।

কিন্তু আপনি যখন রুবিতে প্রজেক্ট তৈরি করছেন তখন আপনি এটি ব্যবহার করতে চান না।

উন্নয়নের জন্য রুবি

রুবির সাথে প্রজেক্ট ডেভেলপ করার জন্য, আপনাকে হোমব্রু দিয়ে রুবি ইনস্টল করতে হবে বা asdf, chruby, rbenv, বা rvm-এর মতো সংস্করণ ম্যানেজার ব্যবহার করতে হবে।

আপনি যদি একাধিক প্রজেক্ট নিয়ে কাজ করেন এবং একবারে সব আপডেট করতে না পারেন তাহলে একজন ভার্সন ম্যানেজার সাহায্য করে। একটি গাইডের জন্য যা সংস্করণ পরিচালকদের তুলনা করে এবং রুবি ইনস্টল করার সর্বোত্তম উপায় দেখায়, আমার নিবন্ধটি দেখুন একটি Mac এ রুবি ইনস্টল করুন৷

কিন্তু কেন macOS ডিফল্ট রুবি ব্যবহার করবেন না? ডেভেলপমেন্টের জন্য ম্যাক ডিফল্ট রুবি ব্যবহার করা কেন খারাপ ধারণার কারণগুলো দেখে নেওয়া যাক।

মণি ইনস্টলেশনের ঝামেলা

RubyGems হল রেডিমেড সফটওয়্যার লাইব্রেরি যা রুবিতে বিকাশকে সহজ এবং মজাদার করে তোলে। বেশিরভাগ রুবি প্রকল্প অন্তত কিছু রত্ন ব্যবহার করে।

আপনি যদি ম্যাক সিস্টেম রুবি ব্যবহার করেন, gem install চালান সিস্টেম রুবি ডিরেক্টরি /Library/Ruby/Gems/2.6.0 রত্ন সংরক্ষণ করার চেষ্টা করবে . এই ডিরেক্টরিটির মালিকানা root , সিস্টেম সুপার ইউজার। সাধারণ ব্যবহারকারীদের এটিতে লেখার অনুমতি নেই (এবং আপনার সত্যিই এই ফোল্ডারটি পরিবর্তন করা উচিত নয়)।

আপনি যদি একটি রত্ন ইনস্টল করার চেষ্টা করেন, উদাহরণস্বরূপ gem install rails , আপনি একটি অনুমতি ত্রুটি পাবেন:

ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory

এটি সিস্টেম নিরাপত্তা লঙ্ঘন করে

ইউনিক্স-ভিত্তিক সিস্টেম শক্তিশালী, তাই একটি সমাধান আছে। আপনি অনুমতি সীমাবদ্ধতা ওভাররাইড করতে সুপার ইউজার হিসাবে রত্ন ইনস্টল করতে পারেন। কিন্তু এটা করবেন না!

$ sudo gem install rails

যে কোনো সময় আপনি sudo চালাতে চলেছেন , আপনার থামানো উচিত এবং জিজ্ঞাসা করা উচিত যে আপনি নিজেকে পায়ে গুলি করতে চলেছেন কিনা।

এই ক্ষেত্রে, আপনার প্রয়োজন sudo কারণ আপনি OS দ্বারা পরিচালিত সিস্টেম ফাইলগুলি পরিবর্তন করছেন৷ এটা করবেন না! আপনি সিস্টেমটিকে ভাঙা বা আপোসহীন অবস্থায় ছেড়ে যেতে পারেন। আরও খারাপ, একটি রত্ন দূষিত কোড থাকতে পারে যা আপনার কম্পিউটারের সাথে টেম্পার করে।

রত্ন ব্যবস্থাপনা

অভিজ্ঞ বিকাশকারীরা রত্ন ইনস্টল করতে এবং তাদের নির্ভরতা পরিচালনা করতে বান্ডলার ব্যবহার করে।

কল্পনা করুন যে আপনি এমন প্রকল্প পেয়েছেন যা একটি মণির বিভিন্ন সংস্করণ ব্যবহার করে (সম্ভবত আপনার প্রকল্পগুলির মধ্যে একটি নতুন রত্ন প্রকাশ ছিল)। অথবা আপনার প্রকল্পের দুটি ভিন্ন রত্ন একটি নির্ভরশীল মণির বিভিন্ন সংস্করণের উপর নির্ভর করে।

আপনার প্রয়োজনীয় রত্নগুলির ট্র্যাক রাখতে বান্ডলার আপনার প্রকল্প ডিরেক্টরিতে একটি জেমফাইল ব্যবহার করে৷ আপনি যদি sudo ব্যবহার করতেন রুবি সিস্টেমের সাথে রত্ন ইনস্টল করতে, আপনি সিস্টেম রুবি ডিরেক্টরিতে অসঙ্গত রত্নগুলির একটি জগাখিচুড়ির সাথে শেষ করতে চান৷

আপনি রত্নগুলির জন্য আপনার হোম ডিরেক্টরি ব্যবহার করে এমন একটি কমান্ডের সাহায্যে বান্ডলার ইনস্টল করে সিস্টেমের অনুমতি সমস্যা সমাধান করতে পারেন। কিন্তু Homebrew এর সাথে Ruby ইনস্টল করা বা একটি সংস্করণ ম্যানেজার ব্যবহার করা এবং ইনস্টল করা বান্ডলার ব্যবহার করা সহজ, যা আপনার স্থানীয় উন্নয়ন পরিবেশ সঠিকভাবে সেট আপ করবে।

নতুনতম রুবি ব্যবহার করুন

আপনি যখন একটি প্রকল্প শুরু করেন, তখন নতুন রুবি রিলিজ ব্যবহার করুন (এটি লেখার সময় এটি 3.0)।

MacOS Catalina বা Big Sur-এর সিস্টেম রুবি হল রুবি 2.6.3, যা পুরানো। আপনি যদি রুবি দিয়ে শুরু করেন তবে হোমব্রু দিয়ে ইনস্টল করুন এবং রুবি 3.0 এর সাথে একটি প্রকল্পে কাজ করুন। আপনি যখন অন্য একটি প্রকল্প তৈরি করা শুরু করেন, তখন এটি একটি সংস্করণ পরিচালক ইনস্টল করার সময় হতে পারে যাতে আপনি বিভিন্ন রুবি সংস্করণের সাথে প্রকল্পগুলি চালাতে পারেন৷

বিগ সুরের পরে MacOS

MacOS Big Sur এখন বর্তমান সংস্করণ। অ্যাপল বলেছেন:

"লিগ্যাসি সফ্টওয়্যারের সাথে সামঞ্জস্যের জন্য স্ক্রিপ্টিং ল্যাঙ্গুয়েজ রানটাইম যেমন পাইথন, রুবি এবং পার্ল ম্যাকওএস-এ অন্তর্ভুক্ত করা হয়েছে৷ macOS-এর ভবিষ্যত সংস্করণগুলি ডিফল্টরূপে স্ক্রিপ্টিং ভাষা রানটাইম অন্তর্ভুক্ত করবে না এবং আপনাকে অতিরিক্ত প্যাকেজগুলি ইনস্টল করতে হতে পারে৷ ।"

আপনি যদি 2021 সালের শেষের দিকে এটি পড়ে থাকেন তবে রুবি সিস্টেমটি ইতিমধ্যেই চলে যেতে পারে। যদি না হয়, Homebrew বা একটি সংস্করণ পরিচালকের সাথে Ruby ইনস্টল করে নিজেকে প্রস্তুত করুন।

রুবি উপভোগ করুন

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

রুবিতে কোডিং করার আনন্দ উপভোগ করুন! সর্বোপরি, এটি প্রোগ্রামার সুখের জন্য নিবেদিত একটি ভাষা হিসাবে পরিচিত। কিন্তু মনে রাখবেন, রুবি সিস্টেমটি macOS এর জন্য আছে, আপনার জন্য নয়।


  1. ম্যাকে উইন্ডোজ 10 ইনস্টল করার সম্পূর্ণ গাইড

  2. ফিক্স:জাভা কমান্ড-লাইন টুল ব্যবহার করতে আপনাকে একটি JDK (MAC OS X) ইনস্টল করতে হবে

  3. ম্যাকের টাস্ক ম্যানেজার:অ্যাক্টিভিটি মনিটর এবং এটি কীভাবে ব্যবহার করবেন

  4. ম্যাকে লাইন ইন অডিও ইনপুট ব্যবহার করুন