স্ক্রিপ্টিং ভাষা বনাম প্রোগ্রামিং ভাষা


347

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

উত্তর:


466

স্ক্রিপ্টিং ভাষা হ'ল প্রোগ্রামিং ভাষাগুলি যা একটি স্পষ্ট সংকলন পদক্ষেপের প্রয়োজন হয় না।

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

আধুনিক হার্ডওয়্যার এবং আধুনিক সংকলন কৌশলগুলির সাহায্যে সংকলন এত দ্রুত হতে পারে বলে এই লাইনটি আরও বেশি ঝাপসা হয়ে আসছে। উদাহরণস্বরূপ, গুগল ক্রোমে জাভাস্ক্রিপ্ট ইঞ্জিন ভি 8, পাশাপাশি ব্রাউজারের বাইরেও প্রচুর পরিমাণে ব্যবহার করেছে, জাভা স্ক্রিপ্ট কোডটিকে ফ্লাইয়ের মেশিন কোডে ব্যাখ্যা করার পরিবর্তে সংকলন করে। (আসলে, ভি 8 হ'ল একটি অপ্টিমাইজিং দ্বি-পর্যায়ের সংকলক))

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

"স্ক্রিপ্টিং" ভাষার কয়েকটি উদাহরণ (উদাহরণস্বরূপ, স্পষ্ট সংকলন পদক্ষেপ ছাড়াই without তিহ্যগতভাবে ব্যবহৃত ভাষা ):

  • অ্যাপ্লিকেশন Lua
  • জাভাস্ক্রিপ্ট
  • ভিবিএস স্ক্রিপ্ট এবং ভিবিএ
  • পার্ল

এবং onesতিহ্যগতভাবে একটি স্পষ্ট সংকলন পদক্ষেপের সাথে ব্যবহৃত একগুলির ছোট্ট ছদ্মবেশ :

  • সি
  • সি ++
  • ডি
  • জাভা (তবে নোট করুন যে জাভা বাইটোকোডে সংকলিত হয়েছে, যা তখন রানটাইমে ব্যাখ্যা করা এবং / অথবা পুনরায় সংকলিত হয়)
  • প্যাসকেল

... এবং তারপরে আপনার কাছে পাইথনের মতো জিনিস রয়েছে যা উভয় শিবিরে বসে: পাইথনটি সংকলন পদক্ষেপ ব্যতীত ব্যাপকভাবে ব্যবহৃত হয়, তবে মূল প্রয়োগ (সিপিথন) তা করে যে অন-ফ্লাইতে বাইকোডকে সংকলন করে এবং তারপরে একটি বাইকোড চালিয়ে VM- র, এবং এটি করতে পারেন যে বাইটকোড আউট ফাইল (লিখতে .pyc, .pyo) ব্যবহারের জন্য recompiling ছাড়া।

এটি কেবলমাত্র খুব অল্প কিছু, আপনি কিছু গবেষণা করলে আপনি আরও অনেক কিছু খুঁজে পেতে পারেন।


1
দুর্দান্ত ব্যাখ্যা!
গ্ল্যাডিয়েটর

48
@ এমজি 30 আরজি: হি - স্ক্রিপ্টিং পুরোপুরি "রিয়েল" প্রোগ্রামিং হতে পারে। (আমি দেখেছি এমন কিছু বাশ স্ক্রিপ্টগুলি আপনি বিশ্বাস করবেন না ...) আমি মনে করি এটি সংজ্ঞায়নের সবচেয়ে সহজ উপায় (এবং আবার এটি কোনও ভাষার জিনিস নয়, এটি একটি পরিবেশগত বিষয়) হ'ল: রানটাইম পরিবেশ কি উত্স কোডটি দেখুন? যদি তা হয় তবে আমি "স্ক্রিপ্টিং" কল করব; যদি না, আমি না। সুতরাং সেই অর্থে, ব্রাউজার-ভিত্তিক জাভাস্ক্রিপ্ট হ'ল "স্ক্রিপ্টিং" কারণ ভি 8 এর মতো ইঞ্জিনগুলি এটি অন-ফ্লাইটি সংকলন করলেও উত্সটি রানটাইম পরিবেশে সরবরাহ করা হয়। একইভাবে শেল স্ক্রিপ্ট। একটি traditionalতিহ্যবাহী সি প্রোগ্রামের উত্স রানটাইমের হাতে সরবরাহ করা হয় না
টিজে ক্রাউডার

2
@ এমজি 30 আরজি: তবে আবার এই লাইনগুলি সমস্ত সময় ঝাপসা হয়ে আসছে। :-) জাভা বাইটকোড বিবেচনা করুন। আপনি এটি কোনও জেভিএম ব্যতীত চালাতে পারবেন না, তবে এটি উত্স কোড নয়। (এটি সাধারণত ডিকম্পাইলার দ্বারা যুক্তিসঙ্গত-উত্সের কোডে পরিণত করা যেতে পারে, তবে ...) আমি (দূরবর্তীভাবে) জাভাকে কোনও স্ক্রিপ্টিং ভাষা হিসাবে traditionalতিহ্যগত পরিবেশে ভাবি না। তবে, আমিও বিভাগগুলি নিয়ে চিন্তা করতে অনেক সময় ব্যয় করি না। :-)
টিজে ক্রোডার

2
@ সিএমই 64৪: না, মূল বাস্তবায়ন (সিপিথন) ফ্লাইতে বাইটকোড তৈরি করে একটি ভিএম-তে বাইকোড চালায়। পাইথন-টু-সি সরঞ্জামগুলি রয়েছে (সিথন এবং পাইরেক্স), সাধারণত পাইথনটি কীভাবে চালিত হয় তা নয়।
টিজে ক্রাউডার

2
ভিটিয়াতার প্রতিরক্ষা হিসাবে, ভিবিএস স্ক্রিপ্ট নোটপ্যাডে লেখা হয়েছে এবং পাঠ্য ইনপুট হিসাবে ব্যাখ্যা করা হয়েছে, যেখানে ভিবিএ কোডটি সম্পাদক-এ টাইপ করার সাথে সাথে পি-কোডে সংকলিত হয় , অর্থাত্ কোডের একটি লাইন সংশোধন করার পরে আপনি সম্পাদকে দেখতে পাবেন এমন উত্স কোড, আপনি যে কোডটি টাইপ করেছেন তা নয়, তবে অন্তর্নিহিত পি কোডটির ভিবিই'র উপস্থাপনা : ভিবিএ বনাম ভিবিএস স্ক্রিপ্টের যান্ত্রিকগুলি সম্পূর্ণ এবং সম্পূর্ণ আলাদা, এবং সেই তালিকায় তাদের একসাথে লম্পিং করা একেবারেই ঠিক মনে হয় না। ভিবিএ ভিবিএস স্ক্রিপ্টের তুলনায় ভিবি 6 এর অনেক কাছাকাছি; এটি কেবল একটি সুস্পষ্ট বিধিনিষেধ যা এটি স্ট্যান্ডোলোন এক্সিকিউটেবল নির্মাণে বাধা দেয়।
ম্যাথিউ গুইনডন

103

স্ক্রিপ্টিং ভাষা এবং প্রোগ্রামিং ভাষার মধ্যে পার্থক্য বুঝতে, স্ক্রিপ্টিং ভাষা কেন জন্মগ্রহণ করেছিল তা বুঝতে হবে।

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

একটি স্ক্রিপ্টিং ভাষা সাধারণত সংকলিত হয় না তাই আপনি অর্থপূর্ণ কিছু লেখার সাথে সাথে চলতে পারে। সুতরাং এক্সেল সি ++ ব্যবহার করে নির্মিত হতে পারে তবে এটি ব্যবহারকারীদের কার্যকারিতা সংজ্ঞায়িত করতে ভিবিএ নামে একটি স্ক্রিপ্টিং ভাষা প্রকাশ করে exp একইভাবে ব্রাউজারগুলি সি ++ / জাভা দিয়ে নির্মিত হতে পারে তবে তারা জাভাস্ক্রিপ্ট নামে কোনও স্ক্রিপ্টিং ভাষা প্রকাশ করে (কোনওভাবেই জাভা সম্পর্কিত নয়)। গেমস, সাধারণত সি ++ দিয়ে নির্মিত হয় তবে ব্যবহারকারীদের কাস্টম কার্যকারিতা সংজ্ঞায়িত করতে লুয়া নামক একটি ভাষা প্রকাশ করে।

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

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

শেষ অবধি, স্ক্রিপ্টিং ভাষাগুলিকে প্রোগ্রামিং ভাষাও বিবেচনা করা হয় (যদিও কিছু লোক এটি মেনে নিতে অস্বীকার করে) - আমাদের এখানে যে শব্দটি ব্যবহার করা উচিত তা হ'ল স্ক্রিপ্টিং ভাষা বনাম সংকলিত ভাষা।


4
আপনি কি বোঝাতে চেয়েছেন না: "স্ক্রিপ্টিং ভাষা বনাম সংকলিত ভাষাগুলির" পরিবর্তে "বর্ণিত ভাষা বনাম সংকলিত ভাষা" ??
বিটসপেইন

6
"এখানে একটি উদাহরণ হ'ল জাভাস্ক্রিপ্ট আপনার ফাইল সিস্টেমে অ্যাক্সেস করতে সক্ষম হবে না", নোডেজরা হাই বলেছেন
মোহাম্মদ

@ মোহাম্মদ নোডজেএস একটি রানটাইম যা কোডারদের কোডিংয়ের জন্য জাভাস্ক্রিপ্টকে "ভাষা" হিসাবে ব্যবহার করতে দেয়। নোডজেএস 100% জাভাস্ক্রিপ্ট নয়।
জেফনহান

65

সমস্ত স্ক্রিপ্টিং ভাষা হ'ল প্রোগ্রামিং ভাষা।

ভাষাগুলি স্ক্রিপ্ট হিসাবে শ্রেণিবদ্ধ করা হয় না - এটি সম্পূর্ণরূপে সম্পাদনের পরিবেশের উপর নির্ভর করে।

যদি পরিবেশটি ব্যাখ্যা করা হয় তবে এটি সাধারণত স্ক্রিপ্টিং পরিবেশ হিসাবে বিবেচিত হয়।


18

পার্থক্যগুলি কম এবং গুরুত্বপূর্ণ হয়ে উঠছে। Ditionতিহ্যগতভাবে, স্ক্রিপ্টিং ভাষাগুলি বিদ্যমান প্রোগ্রামগুলিকে প্রসারিত করে ... আমি মনে করি এটি "স্ক্রিপ্টিং" এর মূল সংজ্ঞা এটি কোনও বিদ্যমান সত্ত্বার সম্পাদনের জন্য নির্দেশের সেট লেখার জন্য বোঝায়। যাইহোক, যেখানে স্ক্রিপ্টিং ভাষাগুলি মালিকানা এবং চলাকৃত বাক্য গঠন দ্বারা শুরু হয়েছিল, আজকাল বেশিরভাগ প্রচলিত ভাষা সি এর সাথে কিছুটা সম্পর্কযুক্ত ow

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


12

প্রোগ্রামিং ভাষা: মেশিন কোডে সংকলিত হয় এবং অন্তর্নিহিত অপারেটিং সিস্টেমের হার্ডওয়ারে চালিত হয়।

স্ক্রিপ্টিং ল্যাঙ্গুয়েজ: প্রোগ্রামিং ভাষার আনস্ট্রাকচারের উপসেট। এটি সাধারণত ব্যাখ্যা করা হয়। এটি স্টাফ করতে মূলত অন্যান্য জিনিসকে "স্ক্রিপ্টগুলি" করে। প্রাথমিক ফোকাসটি প্রাথমিকভাবে আপনার নিজস্ব অ্যাপ্লিকেশনগুলি তৈরি করছে না তবে আপনার পছন্দ মতো কাজ করার জন্য একটি বিদ্যমান অ্যাপ্লিকেশন পেয়েছে, যেমন ব্রাউজারগুলির জন্য জাভাস্ক্রিপ্ট, টিসিএল ইত্যাদি,

*** তবে এমন একটি পরিস্থিতি রয়েছে যেখানে একটি প্রোগ্রামিং ভাষা দোভাষীতে রূপান্তরিত হয় এবং উপ-পদ্যের মতো ব্যবহারের একটি সি ইন্টারপ্রেটার থাকে যেখানে আপনি 'সি' স্ক্রিপ্ট করতে পারেন। স্ক্রিপ্টগুলি সাধারণত কোনও অ্যাপ্লিকেশন আচরণ নিয়ন্ত্রণ করতে লেখা হয় যেখানে অ্যাপ্লিকেশন তৈরি করতে প্রোগ্রামিং ভাষা হিসাবে ব্যবহৃত হয়। তবে সাবধান হোন যে সীমানাটি দিন দিন অস্পষ্ট হচ্ছে - পাইথনের উদাহরণ হিসাবে এটি কোনও ভাষা কীভাবে ব্যবহার করে তার উপর নির্ভর করে।


10

স্ক্রিপ্টিং ভাষা হ'ল প্রোগ্রামিং ভাষার একটি উপসেট set

  1. স্ক্রিপ্টিং ভাষাগুলি ব্যবহারকারীর দ্বারা (পাইথন, পারল, শেল ইত্যাদি) মেশিন কোডে সংকলিত হয় না। বরং, অন্য একটি প্রোগ্রাম (দোভাষী বলা হয়, প্রোগ্রামটি চালায় এবং এর আচরণ অনুকরণ করে)
  2. কিছু প্রোগ্রামিং ল্যাঙ্গুয়েজ যা স্ক্রিপ্টিং নয় (সি, সি ++, হাস্কেল এবং অন্যান্য 'সংকলিত' ভাষা) মেশিন কোডে সংকলিত হয় এবং পরে চালিত হয়।

4

আমি মনে করি আপনি "পার্থক্য" হিসাবে যা বলছেন তা আসলে আসল পার্থক্যের পরিণতি।

আসল পার্থক্যটি লিখিত কোডের লক্ষ্য। কে এই কোড চালাচ্ছে।

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

একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ কম্পিউটিং সিস্টেমকে লক্ষ্য করে, যা একটি আসল বা ভার্চুয়াল মেশিন হতে পারে। নির্দেশাবলী মেশিন দ্বারা কার্যকর করা হয়।

অবশ্যই, একটি আসল মেশিন কেবল বাইনারি কোড বোঝে তাই আপনাকে একটি প্রোগ্রামিং ভাষার কোড সংকলন করতে হবে। তবে এটি একটি প্রোগ্রামের পরিবর্তে কোনও মেশিনকে টার্গেট করার একটি ফলাফল।

অন্যদিকে, কোনও স্ক্রিপ্টের লক্ষ্যযুক্ত সফ্টওয়্যার সিস্টেম কোড সংকলন করতে পারে বা এর ব্যাখ্যা করতে পারে। সফটওয়্যার সিস্টেম পর্যন্ত।

যদি আমরা বলি যে আসল পার্থক্যটি এটি সংকলিত কিনা বা না হয়, তবে আমাদের একটি সমস্যা আছে কারণ যখন জাভাস্ক্রিপ্ট ভি 8-তে সঞ্চালিত হয় তখন সংকলিত হয় এবং যখন এটি রাইনোতে চালিত হয় না।

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

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


4

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

ঠিক আছে, আমি মনে করি স্ক্রিপ্টিং ভাষা এবং প্রোগ্রামিং ভাষার মধ্যে কোনও পার্থক্য নেই। কাজটি শেষ করার বিষয়েই এটি। ওয়েব সম্পর্কিত কাজের ক্ষেত্রে যখন আমরা তাদের ছোট স্ক্রিপ্ট বিবেচনা করে ওয়েব স্ক্রিপ্ট বলে থাকি এবং আমরা সেই পদ্ধতিটি সিস্টেম সম্পর্কিত ওএস স্তরের স্ক্রিপ্ট এবং প্রোগ্রামিং ল্যাঙ্গুয়েজকে সেই স্ক্রিপ্টিং ল্যাঙ্গুয়েজ হিসাবে এই কার্যগুলি সম্পাদন করতে ব্যবহার করতে পারি।

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

নীচের লাইন: ভাষা নির্বাচন সম্পাদনের কাজটির প্রকৃতির উপর নির্ভর করে এবং স্ক্রিপ্টিং ল্যাঙ্গুয়েজ হিসাবে একটি ভাষার বৈষম্যমূলক আচরণ একটি মিথ হয়।


4

লিখিত ভাষা

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

স্ক্রিপ্টিং ভাষার উদাহরণ

  1. জাভাস্ক্রিপ্ট
  2. পার্ল
  3. পাইথন

স্ক্রিপ্টিং ভাষার সুবিধা:

  1. সহজ - প্রোগ্রামিং ভাষার চেয়ে স্ক্রিপ্টিং ভাষাগুলি লিখতে সহজ।

  2. কোডের কম লাইন (এলওসি)

প্রোগ্রাম করা ভাষা

জাভা এর মতো প্রোগ্রামিং ভাষাগুলি সংকলিত এবং একইভাবে অন্য অ্যাপ্লিকেশন দ্বারা ব্যাখ্যা করা যায় না।

প্রোগ্রামিং ভাষা উদাহরণ

  1. সি
  2. সি ++ এবং
  3. জাভা

আরো বিস্তারিত


স্ক্রিপ্টের ভাষায় হয় ভাষায় প্রোগ্রামিং। এছাড়াও, জাভা হয় জেভিএম নামক অন্য অ্যাপ্লিকেশন দ্বারা ব্যাখ্যা করা।
bfontaine

4

(জাভাস্ক্রিপ্ট এবং পুরাতন পিএইচপি সংস্করণ) এর মতো স্ক্রিপ্টিং ভাষায় আমরা আমাদের কাজ সম্পাদনের জন্য বিদ্যমান মৌলিক ফাংশন এবং পদ্ধতি ব্যবহার করি। একটি উদাহরণ নিতে দেয় JavaScriptআমরা ব্যবহার করতে পারি ajaxবা web-socketsশুধুমাত্র যদি তারা ব্রাউজার বা পদ্ধতি দ্বারা সমর্থিত ব্রাউজারে অস্তিত্ব বা তাদের। তবে সি বা সি ++, জাভা জাতীয় ভাষায় আমরা সেই বৈশিষ্ট্যটি স্ক্র্যাচ থেকে লিখতে পারি এমনকি সেই বৈশিষ্ট্যের জন্য কোনও লাইব্রেরি না থাকলেও আমরা জাভাস্ক্রিপ্টে এটি করতে পারি না।

আপনি কি জাভাস্ক্রিপ্টের সাহায্যে ইন্টারনেট এক্সপ্লোরার 8 বা তার আগে ওয়েব সকেটগুলিকে সমর্থন করতে পারেন তবে আপনি সি বা সি ++ বা জাভাতে একটি প্লাগইন লিখতে পারেন যা ইন্টারনেট এক্সপ্লোরার 8 এ ওয়েব সকেটের কোনও বৈশিষ্ট্য যুক্ত করতে পারে।

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

পিএইচপি এটি এমন ভাষা যা কিছুটা b / w প্রোগ্রামিং এবং স্ক্রিপ্টিং। আমরা অন্য উচ্চ স্তরের ভাষায় লিখিত সংকলিত এক্সটেনশন যুক্ত করে নতুন পদ্ধতি যুক্ত করতে পারি। আমরা সরাসরি পিএইচপি-তে নেটওয়ার্কিং বা চিত্র প্রসেসিং লাইব্রেরি তৈরির উচ্চ স্তরের বৈশিষ্ট্যগুলি যুক্ত করতে পারি না।

পিএস আমি কেবলমাত্র পিএইচপি জাভাস্ক্রিপ্টের চারপাশে আমার উত্তর ঘুরিয়ে দেওয়ার জন্য সত্যিই দুঃখিত কিন্তু আমি এই দুটি ব্যবহার করি কারণ এই দুটিতে আমার যথেষ্ট অভিজ্ঞতা রয়েছে।


4

বিশ্ব যখন তরুণ ছিল এবং পিসি জগতে আপনি .exe বা .bat থেকে পছন্দ করেছিলেন, তখন ডাইনেটেশনটি সহজ ছিল। ইউনিক্স সিস্টেমে সর্বদা শেল স্ক্রিপ্ট থাকে (/ bin / sh, / bin / csh, / bin / ksh, ইত্যাদি) এবং সংকলিত ভাষা (সি / সি ++ / ফোর্টরান)।

ভূমিকা ও দায়িত্বগুলির মধ্যে পার্থক্য করার জন্য সংকলিত ভাষাগুলি (প্রায়শই তৃতীয় প্রজন্মের ভাষা হিসাবে পরিচিত) দেখা যায় একটি 'প্রোগ্রামিং' ভাষা এবং 'স্ক্রিপ্টিং' ভাষাগুলি এমন একজনকে দেখা যেত একজন দোভাষীকে (সাধারণত ৪ র্থ জেনারেশন ল্যাঙ্গুয়েজ হিসাবে অভিহিত করা হয়) ডাকে। একাধিক কমান্ড / সংকলিত প্রোগ্রামগুলির মধ্যে সংযোগ স্থাপনের জন্য স্ক্রিপ্টিং ভাষাগুলি প্রায়শই 'আঠালো' হিসাবে ব্যবহৃত হত যাতে ব্যবহারকারীকে তাদের কাজটি সম্পাদনের জন্য কয়েকটি ধাপের সেট সম্পর্কে চিন্তা করতে না হয় - তারা একটি একক ফাইল বিকাশ করেছিলেন, যা কী পদক্ষেপগুলি বর্ণনা করেছিল? তারা অর্জন করতে চেয়েছিল এবং যে কারও অনুসরণ করার জন্য এটি 'স্ক্রিপ্ট' হয়ে উঠেছে।

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

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

এই উত্তরের ক্রেডিট জেরল্ড (জেরি) হিমানকে। আসল থ্রেড: https://www.researchgate.net/post/Is_Python_a_Programming_language_or_Scriptting_Language


3

স্ক্রিপ্টিং ভাষার ব্যাখ্যা এবং প্রোগ্রামিং ভাষা সংকলিত হয় সেই পার্থক্যটি ছাড়াও নীচের মতো আরও একটি পার্থক্য রয়েছে যা আমি অনুমান করি যে এটি মিস হয়েছে ..

একটি স্ক্রিপ্টিং ভাষা হ'ল একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ যা বিদ্যমান সিস্টেমের সুবিধাদি ব্যবহার, কাস্টমাইজ করতে এবং স্বয়ংক্রিয় করতে ব্যবহৃত হয়। এই জাতীয় সিস্টেমে, দরকারী কার্যকারিতা ইতিমধ্যে একটি ব্যবহারকারী ইন্টারফেসের মাধ্যমে উপলব্ধ এবং স্ক্রিপ্টিং ভাষা সেই কার্যকারিতাটিকে প্রোগ্রাম নিয়ন্ত্রণে প্রকাশ করার জন্য একটি প্রক্রিয়া।

স্ক্র্যাচ থেকে সিস্টেম কোড করার জন্য সাধারণত কোন প্রোগ্রামিং ভাষা ব্যবহার করা হয়।

src ECMA


2

যদি আমরা লজিকালি প্রোগ্রামিং ভাষা এবং স্ক্রিপ্টিং ভাষাটি দেখতে পাই তবে এটি 99.09% একই see কারণ আমরা লুপ, কন্ট্রোল কন্ডিশন, ভেরিয়েবল এবং সকলের মতো একই ধারণা ব্যবহার করি তাই আমরা হ্যাঁ উভয়ই একই বলতে পারি তবে তাদের মধ্যে কেবল একটি বিষয় আলাদা হয় যা সি / সি ++ এবং অন্যান্য প্রোগ্রামিং ল্যাঙ্গুয়েজে থাকে আমরা কার্যকর করার আগে কোডটি সংকলন করি। তবে পিএইচপি, জাভাস্ক্রিপ্ট এবং অন্যান্য স্ক্রিপ্টিং ভাষায় আমাদের ব্রাউজারে সরাসরি সম্পাদন করার জন্য আমাদের সংকলন করতে হবে না।

ধন্যবাদ নীতীশ কে ha


2

স্ক্রিপ্টিং ভাষা হ'ল প্রোগ্রামিং ভাষা যা লোকেরা স্ক্রিপ্টিং ভাষা হিসাবে বিবেচনা করে। এটি কোনও কৃত্রিম বিভাগ যেখানে কোনও স্পষ্ট সীমানা নেই এবং যেখানে প্রস্তাবিত নিয়মের ব্যতিক্রম রয়েছে।

যে শাস্ত্রীয় নিয়মগুলি বলত যে কোনও ভাষা একটি স্ক্রিপ্টিং ভাষা হয় তা সংজ্ঞায়িত করে না, বৈশিষ্ট্যযুক্ত হয়। কোনও ভাষা যদি বেশ কয়েকটি নিয়মকে সন্তুষ্ট করে, তবে এটির জন্য একটি স্ক্রিপ্টিং ভাষা হিসাবে বিবেচিত হওয়ার ভাল সুযোগ রয়েছে। যদি না হয়, একটি ভাল সুযোগ আছে তা না। নিয়মে সাধারণত অন্তর্ভুক্ত:

  • এটি ছোট প্রোগ্রামগুলির জন্য নয়, ছোট "স্ক্রিপ্টগুলি" জন্য উদ্দিষ্ট।
  • এটি অন্য অ্যাপ্লিকেশনটিতে এম্বেড করা হয়েছে, সেই অ্যাপ্লিকেশনটির ছোট পরিবর্তনগুলির জন্য ব্যবহৃত।
  • সংকলন না করে এটি ব্যাখ্যা করা।
  • এটি পেশাদারদের জন্য নয়, নবাগত প্রোগ্রামারদের জন্য তৈরি।
  • এর নামটি "স্ক্রিপ্ট" এ শেষ হয়।

আমি যোগ করব:

  • একটি স্ক্রিপ্টিং ভাষা হ'ল একটি প্রোগ্রামিং ভাষা যেখানে প্রায় সমস্ত ত্রুটি রানটাইমে সনাক্ত করা হয় at

এটি, এটি একটি অনুবাদিত ভাষা হতে পারে।

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

Ditionতিহ্যগতভাবে প্রচুর স্ক্রিপ্টিং ভাষাগুলি সরাসরি উত্স থেকে ব্যাখ্যা করা হয়, তবে তাদের মধ্যে আরও জনপ্রিয় আরও কার্যকর পারফরম্যান্স বাস্তবায়ন অর্জন করেছে যা পাইথনের .pycফাইলগুলির মতো কোডটিকে পূর্ববর্তন করে, বা জাভাস্ক্রিপ্ট ইঞ্জিনগুলি চালিত করার আগে দেশীয় কোডগুলিতে সংকলন করে optim

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

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

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

বেসিক একটি পুরানো প্রোগ্রামিং ল্যাঙ্গুয়েজ, যেমন সিওবিওএল এবং ফোর্টরানের মতো, কোনও ভাষা থেকেই লোকেরা স্থির বিশ্লেষণের প্রত্যাশার আগে থেকে এবং মূলত "স্ক্রিপ্টিং ল্যাঙ্গুয়েজগুলি" এমনকি একটি বিষয় ছিল।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.