জাভাস্ক্রিপ্ট এর লাইব্রেরি এবং ফ্রেমওয়ার্কের মধ্যে পার্থক্য কি? - ScienceBee প্রশ্নোত্তর

বিজ্ঞান ও প্রযুক্তির প্রশ্নোত্তর দুনিয়ায় আপনাকে স্বাগতম! প্রশ্ন-উত্তর দিয়ে জিতে নিন পুরস্কার, বিস্তারিত এখানে দেখুন।

+1 টি ভোট
210 বার দেখা হয়েছে
"প্রযুক্তি" বিভাগে করেছেন (10,440 পয়েন্ট)

1 উত্তর

+1 টি ভোট
করেছেন (24,230 পয়েন্ট)
নির্বাচিত করেছেন
 
সর্বোত্তম উত্তর

 

লাইব্রেরি বনাম ফ্রেমওয়ার্ক

 

Mahruj Mugdho

 

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

 

 

শুরু করার আগে আমরা লাইব্রেরী ও ফ্রেমওয়ার্ক এর ফরমাল Definition জেনে নেই ।

লাইব্রেরী

In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development. These may include configuration data, documentation, help data, message templates, pre-written code and subroutines, classes, values or type specifications.

ফ্রেমওয়ার্ক

In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software. It provides a standard way to build and deploy applications and is a universal, reusable software environment that provides particular functionality as part of a larger software platform to facilitate development of software applications, products and solutions. Software frameworks may include support programs, compilers, code libraries, tool sets, and application programming interfaces (APIs) that bring together all the different components to enable development of a project or system.

 

 

তো এই ফরমাল Definition পড়ার পরে তা অনেকে মাথার উপর দিয়ে যাবে তবে ভয়ের কারন নেই আমরা একটি উদাহরন এর মাধ্যমে বুঝার চেস্টা করব।

 

 

 

ধরে নেই A COLA ও B COLA দুটি জনপ্রিয় কোমল পানীয় ব্র্যান্ড। এবং কাছাকাছি স্বাদের কোমল পানীয় উৎপাদন করে। তো আমরা ধরে নেই A COLA তার উৎপাদন প্রক্রিয়াতে একটি ফ্রেমওয়ার্ক ব্যবহার করে । এবং B COLA কয়েকটা লাইব্রেরী ব্যবহার করে ।A COLA এর ফ্রেমওয়ার্কে একটি উৎপাদন মেশিন আছে (যেটা অন্যকোন কোম্পানির বানানো)সেখানে নির্দিষ্ট স্থানে চিনি , পানি , ক্যাফেইন ও অন্যান্য উপাদান দিলে স্বয়ংক্রিয় ভাবে A COLA তৈরি হয়ে যায়। উপাদান গুলো মেশানো কিংবা তাপমাত্রা নিয়ন্ত্রন কোনোটা নিয়েই A COLA কোম্পানিকে ভাবতে হয় না সব মেশিনই করে দেয়।অন্যদিকে B COLA এর এমন কোনো মেশিন নেই B COLA চাইলে যেকোনো কোম্পানি থেকে চিনি ,পানি ,ক্যাফেইন ও অন্যান্য উপাদান কিনে নিজেদের বিশেষ কোনো প্রক্রিয়ায় তৈরি করতে পারে ।এবং উপাদান গুলো মেশানো কিংবা তাপমাত্রা নিয়ন্ত্রন এর জন্য তারা আলাদা আলাদা মেশিন কিনে নিয়েছে।এবং এইগুলো কোথায় কোথায় ব্যবহার হবে B COLA কোম্পানি তা ঠিক করে দেয়।তো আমরা এখন বলতে পারি A COLA এর উৎপাদন প্রক্রিয়া তার ফ্রেমওয়ার্ক দ্বারা নিয়ন্ত্রিত হচ্ছে। কারন সেখানে বলা আছে কোথায় কোন উপাদান দিতে হবে । কিন্তু অন্যদিকে B COLA এর এমন কোনো বাধ্যবাধকতা নেই ।কারন B COLA চাইলেই যেমন খুশি তেমন ভাবে উৎপাদন করতে পারে । এখন B COLA কোম্পানি যদি ডায়েট B COLA উৎপাদন করতে চায় তাহলে তার চিনির কথা না ভাবলেও চলবে অন্যদিকে A COLA এর অবশ্যই তার উৎপাদন মেশিনকে জানাবে যে তারা এখন ডায়েট A COLA বানাবে এবং মেশিনে চিনির স্থান ফাকা থাকবে।তাহলে আমরা বলতে পারি যে A COLA এর উৎপাদন প্রক্রিয়া তার ফ্রেমওয়ার্ক দ্বারা নিয়ন্ত্রিত হলেও B COLA এর উৎপাদন প্রক্রিয়া B COLA কোম্পানি নিজেই নিয়ন্ত্রণ করে।কারন এখানে B COLA তার উৎপাদন প্রক্রিয়ার বিভিন্ন প্রয়োজন মেটানোর জন্য বিভিন্ন লাইব্রেরী (তাপমাত্রা নিয়ন্ত্রন যন্ত্র / উপাদান মেশানোর যন্ত্র ও বানানোর প্রক্রিয়া) নিজেদের ইচ্ছামত ব্যবহার করতে পারে।এখানেই হচ্ছে লাইব্রেরী ও ফ্রেমওয়ার্কের ভিতরে পার্থক্য।

 

তো এখন আমরা বাস্তব উদাহরন এর মাঠ ছেড়ে প্রোগ্রামিং এর মাঠে আসি। বর্তমানে জাভাস্ক্রিপ্টের জনপ্রিয় একটি ফ্রেমওয়ার্ক হচ্ছে Angular এবং জনপ্রিয় লাইব্রেরী হচ্ছে React ।এই দুটো দিয়েই ওয়েব ফ্রন্টএণ্ড ডেভেলপমেন্ট করা যায়।তো কথা হচ্ছে এদের পার্থক্য কোথায়? কেন একটা কে ফ্রেমওয়ার্ক বলা হচ্ছে এবং আরেকটা কে লাইব্রেরী ? Angular হচ্ছে ফ্রেমওয়ার্ক কারন আপনি যখন Angular ব্যবহার করবেন তখন Angular এর সাথে থাকা Routing Module , Http Module , Forms module ইত্যাদি জিনিসগুলো আপনার প্রজেক্টে যোগ হয়ে যাবে । এবং আপনার প্রজেক্টে যদি Routing Module , Http Module , Forms module এর কোনো ব্যবহার না ও থাকে তারপরেও আপনার প্রজেক্টে এইগুলো যোগ হয়ে থাকবে, তা আপনি ব্যবহার করেন আর না করেন।যা অনেকটা A COLA এর ডায়েট প্রোডাক্টের জন্য মেশিনের চিনি অংশের মত, ব্যবহার না হলেও তা থাকবে। অন্যদিকে React হচ্ছে একটি লাইব্রেরী যা কম্পোনেন্ট তৈরি করে ।আপনার যদি React প্রজেক্টে Routing,Http,Forms ইত্যাদি জিনিসগুলো আপনার প্রয়োজন হয় তাহলে আপনি তা অন্যকোনো লাইব্রেরী ব্যবহার করে আপনি তা Configure করে নিতে পারবেন। যা অনেকটা B COLA এর তাপমাত্রা নিয়ন্ত্রন যন্ত্র / উপাদান মেশানোর যন্ত্র ব্যবহার করার মত ব্যাপার। যেভাবে চাইবে সেভাবে ব্যবহার করবে না চাইলে না ব্যবহার করবে ।

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

সম্পর্কিত প্রশ্নগুচ্ছ

0 টি ভোট
2 টি উত্তর 510 বার দেখা হয়েছে
+3 টি ভোট
2 টি উত্তর 469 বার দেখা হয়েছে
+2 টি ভোট
3 টি উত্তর 290 বার দেখা হয়েছে
0 টি ভোট
2 টি উত্তর 479 বার দেখা হয়েছে
0 টি ভোট
2 টি উত্তর 118 বার দেখা হয়েছে

10,720 টি প্রশ্ন

18,363 টি উত্তর

4,729 টি মন্তব্য

240,195 জন সদস্য

80 জন অনলাইনে রয়েছে
1 জন সদস্য এবং 79 জন গেস্ট অনলাইনে
  1. Ayon Ratan Agni

    390 পয়েন্ট

  2. Al Moyaj Khondokar

    210 পয়েন্ট

  3. Vuter Baccha

    150 পয়েন্ট

  4. Mehedi_Bknowledge

    110 পয়েন্ট

  5. Monojit Das

    110 পয়েন্ট

বাংলাদেশের সবচেয়ে বড় উন্মুক্ত বিজ্ঞান প্রশ্নোত্তর সাইট সায়েন্স বী QnA তে আপনাকে স্বাগতম। এখানে যে কেউ প্রশ্ন, উত্তর দিতে পারে। উত্তর গ্রহণের ক্ষেত্রে অবশ্যই একাধিক সোর্স যাচাই করে নিবেন। অনেকগুলো, প্রায় ২০০+ এর উপর অনুত্তরিত প্রশ্ন থাকায় নতুন প্রশ্ন না করার এবং অনুত্তরিত প্রশ্ন গুলোর উত্তর দেওয়ার আহ্বান জানাচ্ছি। প্রতিটি উত্তরের জন্য ৪০ পয়েন্ট, যে সবচেয়ে বেশি উত্তর দিবে সে ২০০ পয়েন্ট বোনাস পাবে।


Science-bee-qna

সর্বাপেক্ষা জনপ্রিয় ট্যাগসমূহ

মানুষ পানি ঘুম পদার্থ - জীববিজ্ঞান এইচএসসি-উদ্ভিদবিজ্ঞান এইচএসসি-প্রাণীবিজ্ঞান পৃথিবী চোখ রোগ রাসায়নিক শরীর রক্ত আলো মোবাইল ক্ষতি চুল কী #ask চিকিৎসা পদার্থবিজ্ঞান সূর্য প্রযুক্তি প্রাণী স্বাস্থ্য বৈজ্ঞানিক মাথা গণিত মহাকাশ পার্থক্য এইচএসসি-আইসিটি #science বিজ্ঞান #biology খাওয়া শীতকাল গরম কেন #জানতে ডিম চাঁদ বৃষ্টি কারণ কাজ বিদ্যুৎ রাত রং উপকারিতা শক্তি লাল আগুন সাপ মনোবিজ্ঞান গাছ খাবার সাদা আবিষ্কার দুধ উপায় হাত মশা মাছ মস্তিষ্ক শব্দ ঠাণ্ডা ব্যাথা ভয় বাতাস গ্রহ স্বপ্ন রসায়ন তাপমাত্রা উদ্ভিদ কালো কি বিস্তারিত রঙ পা পাখি গ্যাস মন সমস্যা মেয়ে বৈশিষ্ট্য হলুদ বাচ্চা সময় ব্যথা মৃত্যু চার্জ অক্সিজেন ভাইরাস আকাশ গতি দাঁত আম বিড়াল কান্না নাক
...