নোড.জেএস এর নির্ভরতা খুব বেশি ওজন করে


10

সম্প্রতি আমি নোড.জেএস দিয়ে খেলতে শুরু করেছি

এখন, এখানে প্রতিটি নোড টিউটোরিয়াল জানিয়েছে যে আপনার সাথে শুরু করা উচিত

npm init

এবং তারপরে, বলুন যে আপনি কিছু মানক সার্ভার ফ্রেমওয়ার্ক চান, বলুন আপনি এক্সপ্রেস চয়ন করেছেন:

npm install express

তবে তারপরে আপনি এএসপি.নেট এর মতো বিশ্ব থেকে আরও অনেকগুলি জিনিস ব্যবহার করতে চাইবেন।

আমি টেম্পলেট ইঞ্জিন (জ্যাড) এবং স্টাইলশিট প্রি-প্রসেসর (এসএএসএস) সম্পর্কে কথা বলি।

এবং তারপরে তারা আপনাকে "gulp / grunt ইনস্টল করুন! যাতে আপনি সার্ভারটি এবং অন্যান্য অনেকগুলি স্বয়ংক্রিয়ভাবে সংশোধন করতে এবং কুশলীকরণ করতে পারেন!"

এবং এর অর্থ গল্প, নোড-স্যাস এবং গল্প-স্যাস এবং গল্প-উগ্লিফাই ইনস্টল করা এবং সম্ভবত আরও কিছু দুর্দান্ত জিনিস (টিএসডি বা ব্যাবেল, মার্কডাউন ইত্যাদি) ...

তবে এগুলির সবগুলিই আপনার ডিস্ক এবং প্রকল্পে ভারী । এক মুহুর্তের জন্যও তাকাবেন না এবং আপনি সহজেই সেই প্রকল্পের জন্য 100MB + ডিস্ক আকারের সাথে নিজেকে আবিষ্কার করতে পারেন (যা এখনও শুরু হয়নি!) প্রতিটি নোড মডিউল তার নিজস্ব নির্ভরতা আনয়ন করে যেহেতু 10000+ ফাইল উল্লেখ না করে তবে একই নির্ভরতা অন্য মডিউল দ্বারা ব্যবহৃত হয়। এবং এটি যে কোনও জায়গায় স্থানান্তরিত করা খুব কঠিন বিষয়, কোনও ওয়েব সার্ভারকে ছেড়ে দেওয়া যাক।

আমি কিছু অনুপস্থিত করছি? আমি মনে করি না যে এটি সম্ভব যে নোড পরিবেশের এত প্রশংসা দেওয়া হয়েছিল যখন এরকম একটি পরিষ্কার ত্রুটি রয়েছে। আমি কি খুব বেশি প্রত্যাশা করি (সর্বোপরি আমি একবারে অনেকগুলি সরঞ্জাম ব্যবহার করার চেষ্টা করেছি), নোড ভেটেরান্সকে এড়িয়ে যাওয়ার জন্য কি তুচ্ছ কিছু জানা আছে?


2
সম্পূর্ণ সম্মত, কিছু সামনের প্রকল্পের জন্য এনপিএম গাছ দেখে আমি অবাক হয়ে গেলাম। আমার ধারণা। নেট ওয়ার্ল্ডে আপনার একই জিনিস রয়েছে তবে তারা সবাই বাইনারিগুলিতে সংকলিত হয়েছে যাতে আপনি খেয়াল করেন না
ইওয়ান

2
দুর্ভাগ্যক্রমে এটি আসলে একটি সুনির্দিষ্ট এবং জবাবদিহিত প্রশ্ন নয়, সুতরাং এটি খুব শীঘ্রই বন্ধ হয়ে যাবে। আমি আপনাকে যা বলতে পারি তা হল 1) এই সমস্ত অতিরিক্ত সরঞ্জামগুলি কোনও কিছুর জন্য দরকারী তবে ক্ষুদ্র প্রকল্পগুলিতে কেবল তাদের বেশিরভাগের প্রয়োজন হয় না 2) অনুরূপ কার্যকারিতা সহ অন্যান্য সমস্ত প্রোগ্রামিং ফ্রেমওয়ার্ক একই পরিমাণে স্টাফ নিয়ে আসবে (কেবল দেখুন জেআরই বা। নেট ডাউনলোডগুলিতে) কেবলমাত্র পার্থক্য হ'ল আপনার যা প্রয়োজন তা "ডিফল্ট" বিতরণের অংশ এবং অন্যান্য প্যাকেজগুলিতে আপনাকে কতটা সন্ধান করতে হবে 3) আপনার ডেভ মেশিনে 100 এমবি কিছুই নয়
Ixrec

1
@Ixrec অবশ্যই এর জবাবদিহি, আপনি সবেই করেছেন (বা চেষ্টা করেছেন) :)। তবে তারপরে আমি আপনার দাবির পক্ষে তর্ক করতে পারি: 1) এটি একটি ক্ষুদ্র প্রকল্প হতে হবে না - তাদের নিজের জেএস ফাইল এবং স্টাইলশিট সহ কয়েকটি দর্শন সহ একটি প্রকল্প বিবেচনা করুন। আপনি sass, cssnano এবং uglify করতে চান করতে যথেষ্ট। আপনাকে এক্সপ্রেস, জেড এবং আরও কিছু করতে চাই যথেষ্ট। 2) আমার কাছে একটি শালীন। নেট প্রকল্প ছিল যা ভারী হয়ে উঠেনি (এবং অনেকগুলি ফাইলের মতো আর নেই)। 3) হতে পারে আধুনিক ডিভাইস মেশিন এটি সহজেই গ্রহণ করে তবে এটি সার্ভারের ওজনেরও হয় এবং এটি আরও সামান্য। আমি কি ভূল?
অথবা ইয়ানিভ

2
@ ওরিয়ানিভ, আপনি আমার বক্তব্য প্রমাণ করার এক ধরণের বিষয়: এটি এমন একটি বিষয় যা নিয়ে আলোচনা করা যেতে পারে তবে উত্তর দেওয়া হয়নি কারণ এটি ঠিক খুব বিস্তৃত এবং আপনি কী প্রকল্পগুলি করছেন এবং কোনটি নির্ভরতা বলে মনে করছেন তার উপর খুব বেশি নির্ভরশীল প্রয়োজন নেই। যাইহোক, আড্ডায় আলোচনাগুলি পুরোপুরি ঠিক হয়ে যায় । বা কোওরায়।
Ixrec

3
নোড.জেএসসের বিশ্বজুড়ে ফুল ফোটানো "সমস্ত বা কিছুই নয়" জগতে আপনাকে স্বাগতম, যা আসলে আপনি আগে যা ব্যবহার করেছিলেন তার চেয়ে সহজ নয় এবং ভাল নয়।
ট্রুবেনফুচস

উত্তর:


4

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

এখন ভাল নোড.জেএস প্রোগ্রামাররা ন্যূনতম অ্যাপ্লিকেশন লিখতে জানেন, যেখানে নির্ভরতা সম্পর্কিত। আপনার উপর যত কম নির্ভর করুন - তত ভাল। বাম দিকে স্ট্রিং প্যাড করা প্রয়োজন? এটিকে কোনও সহায়ক হিসাবে কোড করুন, এটি ফাঁকাগুলির সাথে কোডের 11 লাইনের। আপনার স্ট্রিং সারি সংখ্যা প্রয়োজন? এটিকে কোড করুন, এটি কোডের 100 লাইনেরও কম।

এমনকি আরও জটিল কাজের জন্য যেমন প্রকল্প পরিচালনার জন্য, আমি আপনার প্রকল্পটি যথেষ্ট সহজ থাকার সময় মেকফিলগুলিতে আটকে থাকার পরামর্শ দিই - গ্রান্ট এবং গাল্প সত্যিই, প্রচুর ভারী-উত্তোলনকারী বিশালাকৃতির প্রকল্পগুলির জন্য সত্যই কার্যকর। কিন্তু আপনার এসপিএ ব্লগের জন্য? একটি Makefile লিখুন, এটি 5 মিনিট সময় নেয় এবং আপনি কীভাবে এটি কাজ করে তা জানেন

আপনার যখন 3 লাইনের কোড লিখতে হবে কেবল প্রতিবার এনপিএম ব্রাউজ করার প্রলোভন দুর্দান্ত, তবে যখনই এটি যুক্তিযুক্ত তখন তা প্রতিরোধ করা উচিত। আপনার কাছে 3 ডিওএম ম্যানিপুলেশন থাকলে jQuery অন্তর্ভুক্ত করবেন না, সেই স্ট্যাটিক প্রোমো পৃষ্ঠার জন্য কৌনিক ব্যবহার করবেন না, সরলস্টিক সার্ভারের জন্য এক্সপ্রেস ব্যবহার করবেন না। কিন্তু আপনি একটি সিএমএস কোডিং করছেন? JQuery, আন্ডারস্কোর এবং কী নয় এমন প্যাকেজগুলি ব্যবহার না করার জন্য আপনাকে ক্রেজি হতে হবে। 10 সংগ্রহের ধরণের সাথে কাজ করা, 3 ডিবিএস এবং সারাক্ষণ জিজ্ঞাসা করা? আন্ডারস্কোর এবং আরও কয়েকজন ব্যবহার না করার জন্য আপনি উন্মাদ হবেন। শুধু ভাবুন 'আমি কি এই প্যাকেজটি ইনস্টল করে যথেষ্ট সময় সাশ্রয় করব ?' বা 'আমি কি আধা ঘন্টা বা তার বেশি সময় ধরে এটি কোড করতে পারি না?'


2
অন্য নোটে, জাভাস্ক্রিপ্ট কোডের 100 টি লাইন একটি স্ট্রিংয়ে লাইন সংখ্যা যুক্ত করতে সত্যই লাগে ?
রবার্ট হার্ভে

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

আপনি সম্ভবত এটির মতামত দিয়ে এই লাইন জিনিসটি অর্ধেক কেটে ফেলতে পারেন। এটি সমাধান করা সত্যিই একটি সাধারণ সমস্যা। (এবং এটি স্কিমের মতো ভাষার একটি লাইনার, এবং সম্ভবত আমি এখন এটি সম্পর্কে চিন্তা করি
অজগরটি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.