মূল বিষয়বস্তুতে যান
FileSlimmer
টুল
নির্দেশিকা

কোড টুল

এই তিনটি টুল আপনার সোর্স বিশ্লেষণ করে, নতুন করে লেখে আর আবার ছাপিয়ে দেয়। যা তারা কখনো করে না, তা হলো সেটি চালানো। এই পার্থক্যটাই এখানকার পুরো নিরাপত্তার কাঠামো, আর সেটি একটি বাক্যে প্রতিশ্রুতি দেওয়া নয় — কোডেই বেঁধে দেওয়া।

আপনার কোড বিশ্লেষণ করা হয়, কখনো চালানো হয় না

মিনিফায়ারকে আপনার সোর্স বুঝতে হয়, অর্থাৎ তাকে সিনট্যাক্স ট্রি-তে বিশ্লেষণ করে সেই ট্রি আবার ছাপিয়ে দিতে হয়। কিছু মূল্যায়ন করার দরকার তার নেই, আর এটি করেও না: কোনো eval নেই, ডায়নামিক Function নেই, আর আপনার স্ক্রিপ্ট চালায় এমন কোনো প্রিভিউও নেই।

SVG-র বেলায় এটি সবচেয়ে বেশি জরুরি। SVG আসলে চালানোর যোগ্য একটি নথি — এতে স্ক্রিপ্ট, ইভেন্ট হ্যান্ডলার ও javascript: URL থাকতে পারে। এর প্রতিটি দুইবার করে মুছে ফেলা হয়: একবার অপ্টিমাইজারের নিজের নিয়মে, আর একবার পরে চলা আলাদা একটি পাসে — কারণ একটিমাত্র বাগওয়ালা একটিমাত্র ফিল্টার কোনো নিরাপত্তার কাঠামো নয়।

মিনিফাই করে আসলে কতটা বাঁচে

ফাঁকা জায়গা মুছে দিয়ে আর স্থানীয় নামগুলি ছোট করে সাধারণত কাঁচা সোর্সের এক-তৃতীয়াংশ কমে যায়। বাকি লাভের বেশিরভাগটা আসে আপনার সার্ভারের সংকোচন থেকে, মিনিফায়ার থেকে নয়। তাই বাস্তব তুলনাটা হলো মিনিফাই করে তারপর gzip করা ফাইল — কাঁচা বাইটের হিসাব নয়।

ইমপোর্টে হাত দেওয়া হয় না

CSS-এ থাকা @import টেক্সট হিসেবেই রাখা হয়, অথবা আপনি চাইলে সরিয়ে দেওয়া হয়। তাকে কখনো অনুসরণ করা হয় না: সেটি যেদিকে দেখাচ্ছে তা এনে ফেললে এই পাতাটি আপনার পেস্ট করা ফাইল নিয়ে আপনার হয়ে একটি রিকোয়েস্ট পাঠাত — সাইটের বাকি সবটা ঠিক এই কাজটি না করার জন্যই বানানো।

নির্দেশিকা

নির্দেশিকা