কম্পিউটার টিউটোরিয়াল

কোড স্ট্রিমলাইন করুন: প্রোগ্রামিং ফ্লো বজায় রাখার ছোট ছোট সুবিধা

সফটওয়্যার বিল্ড করার সময় কিছু জিনিস থাকবে যা প্রতিবার লিখতে গিয়ে ফ্রাস্ট্রেট করবে। কোডের বिटস যেগুলো বদশ見える। অথবা যেসব লাইন কখনো সঠিকভাবে মনে থাকে না, তাই কোডবেসে অন্য জায়গা থেকে কপি-পেস্ট করতে হয়। এগুলো আপনার ফ্লো ভাঙে! তাই এগুলো চেনে, সেগুলো আরো সুবিধাজনক করা গুরুত্বপূর্ণ।

উদাহরণস্বরূপ, রেইলস অ্যাপে কাস্টম কনফিগারেশন লাগতে পারে। হয়তো এক্সট্রা অ্যাপ-স্পেসিফিক সেটিংস চান। অথবা আপনি যে লাইব্রেরি ব্যবহার করছেন সেগুলো তাদের কনফিগারেশন ফাইল config/-এ খুঁজে না। সাধারণত আপনি YAML-ERB-read-Rails.env ড্যান্স করবেন:

 YAML.load(ERB.new(File.read(Rails.root.join('config', 'google_analytics.yml'))).result)[Rails.env] 

তবে এটা একদম রিডিকুলাস। এবং কখনো ERB ভুলে যাবেন, এবং আপনি এক্সপেক্ট না করলেও জিনিসপত্র ভাঙবে।

আমাদের কোডবেসে একটা সিম্পল Settings ক্লাস আছে এটাকে সুবিধাজনক করতে:

require 'settings' GoogleAnalyticsSettings = Settings.new(:google_analytics) GoogleAnalyticsSettings.google_analytics_id # => "UA-XXXXXXX-1" 

Settings অটোমেটিক্যালি config/ ডিরেক্টরিতে সঠিক কনফিগারেশন ফাইল খুঁজে পাবে। তারপর YAML এবং ERB দিয়ে পাইপ করবে, এবং Rails.env ব্যবহার করে রেইলস এনভায়রনমেন্টের কনফিগারেশন গ্র্যাব করবে। অবশেষে সবকিছু OpenStruct-এ র‍্যাপ করবে যাতে টপ-লেভেল কনফিগারেশন এক্সেস করা একটু নাইস হয়। এখানে একটি বেসিক Settings ইমপ্লিমেন্টেশন এর gist দেওয়া আছে।

খুব সিম্পল। কিন্তু সুবিধাজনক। সেটা ফাইল লোডিং ঝামেলার চেয়ে অনেক সহজ মনে রাখা Settings.new। এই ছোট ছোট সুবিধাগুলো যোগ হয়ে আপনার কোডবেসকে অনেক বেশি মজার করে দেবে কাজ করতে।

আপনার কোডে, কী কী আপনাকে বিরক্ত করে, ফ্লো ভাঙায়, অথবা যেথা প্রতিবার এক্সাম্পল লুকআপ করতে হয়? সেগুলো আপনার জন্য সহজ করার উপায় খুঁজে পেতে পারেন কি?

  1. নতুন পিসির জন্য ৮টি অপরিহার্য উইন্ডোজ ১০ সেটিংস টুইক

  2. ৮টি পাওয়ারফুল ম্যাকবুক ট্র্যাকপ্যাড জেসচার আবিষ্কার করুন: প্রোডাক্টিভিটি ও ফান বাড়ান

  3. ৫টি অপরিহার্য ডিসকর্ড সেটিংস টুইক প্রোডাক্টিভিটি বাড়াতে

  4. ব্রাউজার প্রাইভেসি ফুটপ্রিন্ট নিরাপদে মুছুন: কম্পিউটার সেটিংস ব্যবহার করার গাইড