|
28 | 28 | - [স্পাইডার মাংকি](https://bn.wikipedia.org/wiki/SpiderMonkey) -- ফায়ারফক্স.
|
29 | 29 | - ...আরও অনেক কোডনাম রয়েছে যেমন ইন্টারনেট এক্সপ্লোরার এর বিভিন্ন ভার্সন এর জন্য "Trident" এবং "Chakra", মাইক্রোসফ্ট এজের জন্য "ChakraCore", সাফারির জন্য "Nitro" এবং "SquirrelFish" ইত্যাদি।
|
30 | 30 |
|
31 |
| -উপরের শর্তাবলী মনে রাখা ভাল, কারণ সেগুলি ইন্টারনেটে ডেভেলপার আর্টিকেলে ব্যবহৃত হয়। আমরাও সেগুলো ব্যবহার করব। উদাহরণস্বরূপ, যদি "একটি X ফিচার V8 এ সাপোর্ট করে", তবে সম্ভবত এটি ক্রোম এবং অপেরাতেও কাজ করে। |
| 31 | +উপরের টার্ম গুলি মনে রাখা ভাল, কারণ সেগুলি ইন্টারনেটে ডেভেলপার আর্টিকেলে ব্যবহৃত হয়। আমরাও সেগুলো ব্যবহার করব। উদাহরণস্বরূপ, যদি "একটি X ফিচার V8 এ সাপোর্ট করে", তবে সম্ভবত এটি ক্রোম এবং অপেরাতেও কাজ করে। |
32 | 32 |
|
33 | 33 | ```smart header="ইঞ্জিনগুলি কিভাবে কাজ করে?"
|
34 | 34 |
|
|
38 | 38 | ২. তারপরে এটি স্ক্রিপ্টটিকে মেশিনের ভাষায় রূপান্তর ("কম্পাইল") করে।
|
39 | 39 | ৩. এবং তারপরে মেশিন খুব দ্রুত কোডটি চালায়
|
40 | 40 |
|
41 |
| -ইঞ্জিন প্রক্রিয়াটির প্রতিটি ধাপে অপ্টিমাইজেশন প্রয়োগ করে। এটি চলার সাথে সাথে সংকলিত স্ক্রিপ্টটিও দেখে, এর মধ্য দিয়ে প্রবাহিত ডেটা বিশ্লেষণ করে এবং সেই জ্ঞানের উপর ভিত্তি করে মেশিন কোডটিতে অপ্টিমাইজেশন প্রয়োগ করে থাকে। এটি হয়ে গেলে, স্ক্রিপ্টগুলি বেশ দ্রুত চলে। |
| 41 | +ইঞ্জিনটি এই প্রক্রিয়ার প্রতিটি ধাপে অপ্টিমাইজেশন করে। এমনকি এটি স্ক্রিপ্ট চলার সময়ও পর্যবেক্ষন করতে থাকে, এর মধ্য দিয়ে প্রবাহিত ডেটা বিশ্লেষণ করে এবং সেই ধারনার উপর ভিত্তি করে মেশিন কোড অপ্টিমাইজ করে। অপ্টিমাইজ হয়ে গেলে, স্ক্রিপ্টগুলি বেশ দ্রুত কাজ করে। |
42 | 42 | ```
|
43 | 43 | ## জাভাস্ক্রিপ্ট ব্রাউজারে কী করতে পারে ?
|
44 | 44 |
|
45 | 45 |
|
46 |
| -আধুনিক জাভাস্ক্রিপ্ট একটি "নিরাপদ" প্রোগ্রামিং ভাষা। এটি মেমরি বা সিপিইউতে নিম্ন-স্তরের প্রবেশাধিকার সরবরাহ করে না, কারণ এটি প্রাথমিকভাবে ব্রাউজারগুলির জন্য তৈরি করা হয়েছিল যা এর প্রয়োজন হয় না। |
| 46 | +আধুনিক জাভাস্ক্রিপ্ট একটি "নিরাপদ" প্রোগ্রামিং ভাষা। এটি মেমরি বা সিপিইউতে নিম্ন-স্তরের এক্সেস দেয় না, কারণ এটি প্রাথমিকভাবে ব্রাউজারগুলির জন্য তৈরি করা হয়েছিল যার এসব এক্সেস এর প্রয়োজন হত না। |
47 | 47 |
|
48 |
| -জাভাস্ক্রিপ্টের সামর্থ যে পরিবেশে চলছে তার উপর অনেক বেশি নির্ভর করে। উদাহরণস্বরূপ, [Node.Js](https://wikipedia.org/wiki/Node.js) এমন কিছু ফাংশন সমর্থন করে যা জাভাস্ক্রিপ্ট ফাইলগুলি ইচ্ছামত পড়তে, লিখতে, নেটওয়ার্কের রিকুয়েস্ট গুলি সম্পাদন ইত্যাদি করতে পারে। |
| 48 | +জাভাস্ক্রিপ্টের সামর্থ যে এনভায়রনমেন্ট এ চলছে তার উপর অনেক বেশি নির্ভর করে। উদাহরণস্বরূপ, [Node.js](https://wikipedia.org/wiki/Node.js) এমন কিছু ফাংশন সমর্থন করে যা জাভাস্ক্রিপ্ট কে যেকোনো ফাইল পড়তে/এডিট করতে, নেটওয়ার্ক রিকুয়েস্ট ইত্যাদি করার সুবিধা দেয়। |
49 | 49 |
|
50 |
| -ব্রাউজারে জাভাস্ক্রিপ্ট ওয়েবপেজ পরিবর্তন, ব্যবহারকারীর সাথে যোগাযোগ এবং ওয়েবসারভার সম্পর্কিত সব কিছুই করতে পারে। |
| 50 | +ব্রাউজারে জাভাস্ক্রিপ্ট ওয়েবপেইজ পরিবর্তন, ব্যবহারকারীর সাথে যোগাযোগ এবং ওয়েবসার্ভার সম্পর্কিত সব কিছুই করতে পারে। |
51 | 51 |
|
52 | 52 | উদাহরণস্বরূপ, ব্রাউজারে জাভাস্ক্রিপ্ট যা করতে সক্ষম:
|
53 | 53 |
|
|
100 | 100 |
|
101 | 101 | এটি প্রত্যাশা করা উচিত, কারণ প্রজেক্ট এবং প্রয়োজনীয়তা সবার জন্য আলাদা।
|
102 | 102 |
|
103 |
| -সুতরাং সম্প্রতি নতুন ভাষাগুলির আধিক্য উপস্থিত হয়েছে, যা ব্রাউজারে চালানোর আগে জাভাস্ক্রিপ্টে *রূপান্তরিত* হয়। |
| 103 | +সুতরাং সম্প্রতি নতুন ভাষাগুলির আধিক্য উপস্থিত হয়েছে, যা ব্রাউজারে চালানোর আগে জাভাস্ক্রিপ্টে *ট্রান্সপাইল* (রূপান্তরিত) হয়। |
104 | 104 |
|
105 | 105 | আধুনিক সরঞ্জামগুলি এই প্রতিস্থাপনটিকে খুব দ্রুত এবং স্বচ্ছ করে তোলে, যা আসলে ডেভেলপার দের অন্য প্রোগ্রামিং ভাষায় কোড করার অনুমতি দেয় এবং এটিকে অভ্যন্তরে ("Under the hood") স্বয়ংক্রিয়ভাবে রূপান্তরিত করে।
|
106 | 106 |
|
107 | 107 | এই জাতীয় প্রোগ্রামিং ভাষার উদাহরণ:
|
108 | 108 |
|
109 |
| -- [কফিস্ক্রিপ্ট](http://coffeescript.org/) জাভাস্ক্রিপ্টের জন্য একটি "সিনট্যাকটিক সুগার"। এটি সংক্ষিপ্ত বাক্য গঠন উপস্থাপন করে, আমাদের আরও পরিষ্কার এবং আরও সুনির্দিষ্ট কোড লেখার অনুমতি দেয়। সাধারণত, রুবি (একটি প্রোগ্রামিং ভাষা) এটি পছন্দ করে। |
110 |
| -- [টাইপস্ক্রিপ্ট](http://www.typescriptlang.org/) "স্ট্রিক্ট ডাটা টাইপিং" এ মনোনিবেশ করেছিল ডেভেলপমেন্ট ও জটিল সমস্যা গুলোকে সহজ করার জন্য। এটি মাইক্রোসফ্ট তৈরি করেছে। |
111 |
| -- [ফ্লো](http://flow.org/) ডাটা টাইপিং যুক্ত করে, তবে অন্যভাবে। ফেইসবুক এটি তৈরি করেছিল। |
| 109 | +- [কফিস্ক্রিপ্ট](http://coffeescript.org/) জাভাস্ক্রিপ্টের জন্য একটি "সিনট্যাকটিক সুগার"। এটি সংক্ষিপ্ত সিনট্যাক্স নিয়ে আসে, আমাদের আরও পরিষ্কার এবং আরও সুনির্দিষ্ট কোড লেখার সুযোগ দেয়। সাধারণত, রুবি (একটি প্রোগ্রামিং ভাষা) ডেভেলপার রা এটি পছন্দ করে। |
| 110 | +- [টাইপস্ক্রিপ্ট](http://www.typescriptlang.org/) "স্ট্রিক্ট ডাটা টাইপিং" এ জোর দিয়েছিলো ডেভেলপমেন্ট ও জটিল সমস্যা গুলোকে সহজ করার জন্য। এটি মাইক্রোসফ্ট তৈরি করেছে। |
| 111 | +- [ফ্লো](http://flow.org/) ডাটা টাইপিং যুক্ত করে, তবে একটু অন্যভাবে। ফেইসবুক এটি তৈরি করেছে। |
112 | 112 | - [ডার্ট](https://www.dartlang.org/) একটি স্বতন্ত্র প্রোগ্রামিং ভাষা যার নিজস্ব ইঞ্জিন রয়েছে যা ব্রাউজার ছাড়াও (মোবাইল অ্যাপ্লিকেশন হিসাবে) চালানো হয়, তবে এটি জাভাস্ক্রিপ্টে স্থানান্তরিত করা যায়। এটি গুগল তৈরী করছে।
|
113 | 113 |
|
114 |
| -অবশ্য আরো আছে, আমরা যদি রূপান্তরিত ল্যাঙ্গুয়েজ গুলির মধ্যে যেকোনো একটি ব্যবহার করি তবে আমরা কী করছি তা বুঝতে আমাদের জাভাস্ক্রিপ্ট জানা উচিত। |
| 114 | +আরো অনেক আছে। যদিও আমরা যদি ট্রান্সপাইলড ল্যাঙ্গুয়েজ গুলির মধ্যে যেকোনো একটি ব্যবহার করি তবে আমরা কী করছি তা বুঝতে আমাদের জাভাস্ক্রিপ্ট জানা উচিত। |
115 | 115 |
|
116 | 116 | ## সারাংশ
|
117 | 117 |
|
|
0 commit comments