এই প্রশ্নটি এমন অনেক পেশাদারদের কাছে আসে যারা প্রকৃতপক্ষে মূল প্রযুক্তিগত নন এবং সেলেনিয়াম অটোমেশনে তাদের কর্মজীবন চালিয়ে যেতে চান। কোডিং শব্দটি নন-প্রোগ্রামারদের এমনকি অটোমেশনের মতো কিছু দিয়ে শুরু করতে কিছুটা ভয় দেখায়। একটি উপলব্ধি আছে যে একটি নন-প্রোগ্রামার অটোমেশনে পারদর্শী হতে পারে না, তবে এটি কেবল মাথায় থাকে। অনেক যোগ্য এবং সক্ষম ম্যানুয়াল পরীক্ষক সেলেনিয়াম থেকে দূরে সরে যান এই ভেবে যে এর জন্য কিছু বিশেষ দক্ষতার প্রয়োজন।
এমন অনেক ভাষা আছে যেখানে সেলেনিয়াম স্ক্রিপ্ট ডিজাইন করা হয়েছে যেমন পাইথন, রুবি, সি#, জাভাস্ক্রিপ্ট এবং জাভা তাদের মধ্যে একটি। জাভার জনপ্রিয়তা এবং ভবিষ্যৎ সম্ভাবনা জেনেও ঝোঁক এখন এর দিকেই বেশি। যদিও আজকাল পাইথন একটি গুঞ্জন।
আমরা অস্বীকার করব না যে সেলেনিয়াম শেখার জন্য জাভার মৌলিক ধারণা প্রয়োজন। দেখা যাক জাভা প্রোগ্রামিং সম্পর্কে কতটুকু জানা দরকার।
বেসিক জাভা −
শিখতে শুরু করার আগে যে বিষয়গুলো মাথায় রাখতে হবে- কোডার না হওয়ার কোনো ব্যাগেজ ছাড়াই এটা শেখার মানসিকতা।
- বেসিক লজিক বিল্ডিং
- যুক্তির ধারণা বাস্তবায়ন করা
নিচে জাভার মূল বিষয়গুলি রয়েছে, সেলেনিয়াম শিখতে এগিয়ে যাওয়ার সময় অবশ্যই মেনে চলতে হবে −
-
জাভা প্রোগ্রামিং এর কাঠামো − একটি জাভা প্রোগ্রামে বিভিন্ন বিভাগ থাকে যেমন প্যাকেজ বিভাগ যেখানে আমদানি করা সমস্ত প্যাকেজ উল্লেখ করা হয়। প্যাকেজ হল ক্লাস, ইন্টারফেস এবং সাব-প্যাকেজের সংগ্রহ। জাভাতে ডিফল্ট জাভা ল্যাং। প্যাকেজ প্রতিটি প্রোগ্রাম দ্বারা আমদানি করা হয়. বিশ্রাম প্যাকেজ আমাদের প্রয়োজনের উপর নির্ভর করে আমদানি করতে হবে। তারপরে একটি শ্রেণি বিভাগ রয়েছে যেখানে বস্তুগুলিকে সংজ্ঞায়িত করা হয় এবং পদ্ধতিগুলি বলা হয়। তারপরে আসে মূল পদ্ধতি বিভাগ যা প্রোগ্রামের শুরুর পয়েন্ট। পদ্ধতিতে ডেটা টাইপ ডিক্লেয়ারেশন এবং এক্সিকিউটেবল স্টেটমেন্ট থাকে।
-
অবজেক্ট এবং ক্লাস বোঝা (OOP- অবজেক্ট ওরিয়েন্টেড অ্যাপ্রোচ) - OOPS ধারণা হল জাভার মেরুদণ্ড। এতে বিমূর্ততা, উত্তরাধিকার, এনক্যাপসুলেশন, পলিমরফিজমের মতো বাস্তব-বিশ্বের সত্তা রয়েছে যা নিরাপত্তা বজায় রেখে যেখানে প্রয়োজন সেখানে কার্যকারিতা পুনরায় ব্যবহার করার উপায়। এইভাবে ডেটা এবং ফাংশনগুলি একসাথে আবদ্ধ থাকে যাতে কোডের অন্য কোনও অংশ সেই ফাংশন ছাড়া অন্য কোনও অংশ অ্যাক্সেস করতে না পারে৷
-
শ্রেণি − ক্লাস হল একটি টেমপ্লেট যা অবজেক্ট তৈরি করতে এবং অবজেক্ট ডেটা টাইপ এবং পদ্ধতি নির্ধারণ করতে ব্যবহৃত হয়। অবজেক্ট হল ক্লাসের একটি উদাহরণ যার নির্দিষ্ট অবস্থা এবং আচরণ আছে।
-
ভেরিয়েবল - তারা সেই মান সঞ্চয় করে যা প্রোগ্রামের কাজ করার জন্য প্রয়োজনীয়। তাই তারা মূলত মেমরি অবস্থান. এটিতে অনেক ডেটা প্রকার রয়েছে এবং এটি ব্যবহারের আগে ঘোষণা করা আবশ্যক। প্রোগ্রামে যেকোনো সময় ভেরিয়েবলের মান পরিবর্তন করা যেতে পারে।
-
পদ্ধতি - এগুলি একটি নির্দিষ্ট কাজ সম্পাদন করার জন্য তৈরি করা ফাংশনের মতো। এটি যখন ডাকা হয় তখনই চলে৷
-
উত্তরাধিকার − এটি OOPS এর একটি অংশ যা একটি শ্রেণীকে অন্য শ্রেণীর বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে প্রাপ্ত করার অনুমতি দেওয়া হয়৷
-
বিমূর্ততা − বহির্বিশ্ব থেকে অবাঞ্ছিত বিবরণ লুকিয়ে রাখা এবং শুধুমাত্র প্রয়োজনীয় বিবরণ দেওয়া বিমূর্ততার একটি অংশ৷
-
এনক্যাপসুলেশন −এনক্যাপসুলেশন মানে হল বাইরের জগত থেকে কোনো বস্তুর অভ্যন্তরীণ কাজকে রক্ষা করার জন্য কোড এবং ডেটাকে একক ইউনিটে মোড়ানো। উদাহরণ হতে পারে একটি ক্যালকুলেটর।
-
ইন্টারফেস −অন্যান্য শ্রেণী দ্বারা উত্তরাধিকারসূত্রে প্রাপ্ত ক্লাসের বিপরীতে, ইন্টারফেস অন্য শ্রেণী দ্বারা বাস্তবায়িত বা প্রসারিত হয়। এটি একটি প্রোগ্রামে একাধিক উত্তরাধিকার প্রয়োগ করতে ব্যবহৃত হয়। একটি ইন্টারফেসের সমস্ত পদ্ধতি অন্তর্নিহিতভাবে সর্বজনীন এবং বিমূর্ত। এটি সম্পূর্ণ বিমূর্ততা অর্জন করতে ব্যবহৃত হয়।
-
অ্যারে - এটি অনুরূপ ভেরিয়েবলের একটি গ্রুপ যার সংলগ্ন মেমরি অবস্থান রয়েছে। কন্ট্রোল স্টেটমেন্ট- তারা সিদ্ধান্ত গ্রহণ, শাখা তৈরি এবং লুপিং সক্ষম করে যেমন if-then-else, while loop, for loop.
-
সংগ্রহ − যেখানেই ডেটা গতিশীল, সংগ্রহ ব্যবহার করা হয়। এটা যোগ এবং উপাদান, একটি উপাদান মুছে অনুমতি দেয়.
-
পলিমরফিজম (ওভারলোডিং/ওভাররাইডিং) - পলিমরফিজম দ্বারা, আমরা বলতে পারি যে একটি নির্দিষ্ট ক্রিয়া তাদের ডেটা প্রকার এবং শ্রেণির উপর নির্ভর করে একাধিক উপায়ে সঞ্চালিত হতে পারে। পলিমরফিজম দুই প্রকার- কম্পাইল-টাইম পলিমরফিজম এবং রানটাইম পলিমরফিজম। উত্তরাধিকার বাস্তবায়নের জন্য, পলিমারফিজম প্রয়োজন। এটি প্রোগ্রামারদের একবার লিখিত, পরীক্ষিত এবং প্রয়োগ করা কোড, ক্লাস এবং পদ্ধতিগুলি পুনরায় ব্যবহার করতে সহায়তা করে।
-
ফাইল হ্যান্ডলিং - এটি আমাদের স্থানীয় ফাইল সিস্টেমে সংরক্ষিত ফাইলগুলি তৈরি করতে, পড়তে, আপডেট করতে এবং মুছতে দেয়। Java l/o (ইনপুট এবং আউটপুট) ইনপুট প্রক্রিয়াকরণ এবং আউটপুট উত্পাদন করতে ব্যবহৃত হয়।
-
ব্যতিক্রম হ্যান্ডলিং - রানটাইম ত্রুটিগুলি পরিচালনা করতে যাতে অ্যাপ্লিকেশনের স্বাভাবিক প্রবাহ বজায় রাখা যায়, ব্যতিক্রম পরিচালনা একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। বিভিন্ন ব্যতিক্রম যেমন FileNotFound Exception, IOEXception হ্যান্ডেলগুলি এটি ব্যবহার করে। এই ব্যতিক্রমগুলি পরিচালনা করে, আমরা একটি সিস্টেম জেনারেটেড ত্রুটির পরিবর্তে একটি সঠিক ত্রুটি বার্তা প্রদান করতে পারি যা বোঝা কঠিন৷
-
থ্রেডের মূল - একটি থ্রেড হল একটি প্রোগ্রামের মধ্যে কার্যকর করার একটি স্বাধীন পথ। যখন একাধিক থ্রেড একযোগে একটি প্রোগ্রামে চলে, তখন একাধিক কাজ এক সময়ে সঞ্চালিত হয়। তারা CPU এর সর্বোচ্চ ব্যবহার প্রদান করে।