Category Archives: Professional

HTML 5

Author- MD.HABIBUR RAHMAN
ওয়েব ডিজাইন বা ওয়েব ডেভেলপমেন্ট করার জন্য HTML ভাষা জানা অত্যন্ত গুরুত্বপূর্ণ। HTML ভাষা না জেনে কোন ভাবেই ওয়েব ডিজাইন বা ওয়েব ডেভেলপমেন্ট করা যায় না। আবার HTML5 হচ্ছে HTML এর নতুন সংস্করণ। এজন্য আজ আমি HTML5 সম্পর্কে কিছু উদাহরণসহ ধারণা দেব।

HTML5 সাধারণত কিছু কোড এর mgš^q| যেমনঃ-

<!DOCTYPE HTML>
<html>
<body>

<video width="320" height="240" controls>
<source src="movie.mp4" type="video/mp4">
<source src="movie.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>

</body>
</html>

এখানে <!DOCTYPE html> দ্বারা ডকুমেন্টের প্রকারকে বোঝানো হয়েছে। আবার,এখানে html দ্বারা শুরু হয়েছে এবং html দ্বারা শেষ হবে এভাবে body দ্বারা শুরু হলে body দ্বারা শেষ হবে। অর্থ্যা কোড যেটি দ্বারা শুরু হবে সেটার দ্বারাই শেষ করতে হবে।

Input Type: date
Birthday: <input type="date" name="bday">

HTML Audio - Using <object>
<object height="50" width="100" data="horse.mp3"></object>

Playing Videos in HTML
<video width="320" height="240" controls>
<source src="movie.mp4" type="video/mp4">
<source src="movie.ogg" type="video/ogg">
<source src="movie.webm" type="video/webm">
<object data="movie.mp4" width="320" height="240">
<embed src="movie.swf" width="320" height="240">
</object>
</video>

Image In HTML

<!DOCTYPE html>
<html>
<body>

<img src="w3schools.jpg" alt="W3Schools.com" width="104" height="142"></body>
</html>

HTML5 Compliant
<!--...--> Defines a comment
<!DOCTYPE> Defines the document type
<a> Defines a hyperlink
<area> Defines an area inside an image-map
<body> Defines the document's body
<center> Defines centered text
<font> Defines font, color, and size for text
<footer> Defines a footer for a document or section
<head> Defines information about the document
<html> Defines the root of an HTML document
<input> Defines an input control
<li> Defines a list item
<p> Defines a paragraph
<span> Defines a section in a document
<td> Defines a cell in a table
<textarea> Defines a multiline input control (text area)

জেনে নিন প্রয়োজনীয় কিছু বিশেষ এইচটিএমএল কোড

জেনে নিন প্রয়োজনীয় কিছু বিশেষ এইচটিএমএল কোড :

বর্তমান পৃথিবী হচ্ছে প্রযুক্তির বিশ্ব আর এই প্রযুক্তির বিশ্বে আর সব কিছু আমরা হাত বাড়ালেই পেয়ে যাই যেকোন মূহুর্তে যেকোন স্থানে। আর তাই এই বর্তমান পৃথিবী আরেক নামে ডাকা হয় ডিজিটাল পৃথিবী বলে। ডিজিটাল পৃথিবীর সবচেয়ে প্রধান অংশটির নাম হচ্ছে ইন্টারনেট। ইন্টারনেট ব্যবহারের ফলে সমস্ত বিশ্ব আমাদের হাতের মুঠোয় চলে এসেছে। আর ইন্টারনেটের প্রধান অংশ হচ্ছে ওয়েব সাইট। সমস্ত বিশ্বব্যাপী ওয়েব সাইট সমূহ জালের মতো বিস্তার করে আছে। আমাদের হয়তো এটার অনেকেরই ধারনা আছে যে একটি প্রকৃত ওয়েব সাইট তৈরির জন্য এইচটিএমএল বিষয়ে জানা অনেক গুরুত্ব পূর্ন বিষয়। আজকে আমি আপনাদের এইচটিএমএল এর কয়েকটি প্রয়োজনীয় কোড নিয়ে সংক্ষেপে কিছু আলোচনা করবো।
সাধারনত অক্ষরকে বোল্ড বা মোটা করার জন্য এইচটিএমএলে দুটি সহজ পদ্ধতি আছে, যথা:
<p style="font-weight:bold;">font-weight: bold</p>
<p style="font-weight:100;">font-weight: 100</p>
বিভিন্ন টেবিলে ব্যাকগ্রাউন্ড colure দেয়ার জন্য এইচটিএমএলে ব্যবহার করা হয় এ ধরনের ট্যাগ:
<table style="background-color:#FFFFE0;">
টেবিলটির হিডারে জন্য নিচের কোডটি অতি সহজে ব্যবহার করা যেতে পারে:
<th>Table Header</th><th>Table Header</th>
টেবিলের মাঝে সেলের পরিবর্তনের জন্য এই কোডটি ব্যবহার করা যেতে পারে:
<td>Table cell 1</td><td>Table cell 2</td>

এইচটিএমএলের সাহায্যে লিংকের সাথে বিভিন্ন ছবি ট্যাগ করার জন্য আমরা নিচের প্রচলিত কোডগুলো ব্যবহার করতে পারি।
<a href="http://www.travel-explorer.com/boracay-philippines/ target="_blank"><img src="http://www.html.am/images/html-codes/links/boracay-white-beach-sunset-300x225.jpg
সাধারনত ছবির পরিমাপ সহজে ধাবাহিক সুবিন্যস্ত করার জন্য নিচের কোডটি একই সাথে ব্যবহার করা যায়:
width="300" height="225"/></a>

ওয়েব সাইটে মূলত এইচটিএমএলের সাহায্যে টেক্সট বক্স বসানোর কোডটি এরকম হয়:
<textarea>This is where the user can enter text...</textarea>

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

2. আমি এই ওয়েব সাইট থেকে বিষয় বেছে নিয়েছি:
http://salearningschool.com

আপনার উইন্ডোজ ৮ (Windows 8) পিসি এর সুরক্ষা

আপনার উইন্ডোজ ৮(Windows 8) পিসি এর সুরক্ষা

মাইক্রোসফট এর দাবি মতে উইন্ডোজ ৮, মাইক্রোসফটের সবচেয়ে নিরাপদ অপারেটিং সিস্টেম।

চলুন আমরা দেখে নেই আপনার উইন্ডোজ ৮ পিসি নিরাপদ করার জন্য কিছু উপায়।

যেহেতু উইন্ডোজ ৮ UEFI (ইউনিফায়েড এক্সটেনসিবল ফার্মওয়্যার ইন্টারফেস) উপর নির্মিত হয়, তাই আপনি নিরাপদ বুট সুবিধা গ্রহণ করতে পারেন; এমনকি উইন্ডোজ ৮ আপনার সিস্টেম এ বুট করার আগেই স্ক্যান করতে পারেন এবং নিশ্চিত করতে পারেন সিস্টেম উপাদান গুলো ঠিক আছে কিনা।

পিন/ পাসওয়ার্ড ব্যবহার:

যথারীতি আপনি কম্পিউটার এ লগইন করতে একটি পিন / পাসওয়ার্ড সেট করতে পারেন।

এছাড়াও আপনি একটি ছবি পাসওয়ার্ড বা পিকচার পাসওয়ার্ড সেট করতে পারেন. প্রথমে একটি ছবি নির্বাচন করুন, ছবিটিতে কিছু ভঙ্গি/ইঙ্গিত (Gesture) আঁকুন বা আকৃতি তৈরি করুন যা উইন্ডোজ ৮ সংরক্ষণ করবে। লগইন এর সময়ে আপনাকে একই অঙ্গভঙ্গি অঙ্কন করতে হবে। আপনি পিকচার পাসওয়ার্ড সেট করতে পারেন যথাক্রমে PC settings->user তারপর create picture password বাটন এ ক্লিক করে, বাকিটা উপরের বর্ণনা মত অনুসরণ করুন।
এছারা উইন্ডোজ ৮ এ মুখ সনাক্তকরণ (Face Detection) এবং স্বয়ংক্রিয় লগইন / লগ অফ বৈশিষ্ট্য বা অপশন ও রয়েছে।

উইন্ডোজ ডিফেন্ডার ব্যবহার:

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

ফায়ারওয়াল ব্যবহার :

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

অ্যাকশান সেন্টার ব্যবহার :

সিকিউরিটি সেটিংস্‌ পরীক্ষা ও পরিবর্তন করতে কন্ট্রোল প্যানেল এর অ্যাকশান সেন্টার (Action center) ব্যবহার করুন। অ্যাকশান সেন্টার এর অধিনস্ত ‘User Account Control Settings’ কনফিগার করুন। আপনি আপনার সিস্টেমের সকল পরিবর্তনের জন্য বিজ্ঞপ্তি বা নোটিফিকেশান পেতে যাতে সবচেয়ে কঠোর সেটিংস ব্যবহার করুন। অ্যাকশান সেন্টার এর অপশন গুলো দেখে নিন এবং এগুলোকে উপযুক্তভাবে কনফিগার করুন যেমন Alert বা সতর্কবার্তা এবং সিস্টেম নোটিফিকেশান চেকিং বা পরীক্ষন, সংরক্ষিত মেসেজ গুলোকে পরীক্ষা ও পরিচালনা করা ,অচেনা কোন অ্যাপ্লিকেশন এবং অনুরূপ অ্যাপ্লিকেশন গুলোর সাথে কি করতে হবে তা কনফিগার করা।

প্রাইভেসি সেটিংস ব্যবহার করুন;

আপনি আপনার অবস্থান সম্পরকিত তথ্য অ্যাক্সেস করার অনুমতি না দিতে চাইলে কনফিগার করতে পারেন,আবার আপনি কেবল বেছে বেছে অনুমতি দিতে পারেন।
ব্যবহার করুন PC Settings->Privacy।

এইচটিএমএল টেবিল (HTML Table)

HTML Table

মো: আশিকুজ্জামান আশিক

রাজশাহী বিশ্ববিদ্যালয়।

 

HTML টেবিল ব্যবহার করে আমরা কোন web পেজে বিভিন্ন ধরনের পরিসংখ্যানমূলক ডেটা পাঠকের নিকট আকর্ষণীয় ভাবে উপস্থাপন করতে পারবো।

HTML টেবিলের উদাহরন

এই পর্যায়ে আমরা একটি HTML টেবিলের উদাহরন দেখব:

সিরিয়াল নাম্বার নামের প্রথম অংশ নামের শেষ অংশ নাম্বার
১. আল আমিন ৯০
২. মেহেদি হাসান ৮৫
৩. রোজিনা আক্তার ৭৭
৪. মাহফুজুর রহমান ৭৬
৫. তানজিলা আক্তার ৬৯

 

এই টেবিলটি তৈরি করার জন্য আপনি নিচের কোডটি কপি করে আপনার ব্লগে ব্যবহার করতে পারেন।


<table style="width:100%">
 <tr>
<th> সিরিয়াল নাম্বার </th>
 <th> নামের প্রথম অংশ </th>
 <th> নামের শেষ অংশ </th>
 <th>  প্রাপ্ত নাম্বার </th>
 </tr>
 <tr>
 <td> ১.</td>
 <td> আল</td>
 <td> আমিন</td>
<td> ৯০</td>
 </tr>
<tr>
 <td> ২.</td>
 <td> মেহেদি</td>
 <td> হাসান</td>
<td> ৮৫</td>
 </tr>
 </table>

 

এইভাবে আপনি <tr> থেকে </tr> পর্যন্ত অংশ পর্য়ন্ত অংশটুকু বার বার ব্যবহার করে টেবিলের সাইজ বাড়াতে পারেন।

এবার এই টেবিলে ব্যবহৃত গুরুত্বপূর্ণ ট্যাগ এর ব্যবহার সম্পর্কে কিছু তথ্য জানি।

<table> এবং </table> ট্যাগ দ্বারা কোন টেবিলের শুরু এবং শেষ চিহ্নিত করা হয়।

<tr> এবং </tr> ট্যাগ দ্বারা কোন টেবিলে ব্যবহৃত row বা সারির শুরু এবং শেষ নির্দেশ করা হয়।

<td> এবং </td> ট্যাগ দ্বারা কোন টেবিলের row বা সারিগুলোকে ছোট ছোট সেলে বিভক্ত করা হয়।

<th>  এবং </th> ট্যাগ দিয়ে কোন টেবিলের হেডিংকে চিন্হিত করা হয়। [সাধারনত এই ট্যাগ ব্যবহার করলে লেখাগুলো ‘Bold’ বা মোটা হয়ে web-পেজে দেখাবে।]

 

HTML টেবিলে Border ট্যাগ এর ব্যবহার

HTML টেবিলকে আকর্ষনিয় করতে আমরা অনেক সময় Border ট্যাগ ব্যবহার করে থাকি। এই ট্যাগ ব্যবহার করে টেবিলের বর্ডার প্রয়োজন অনুযায়ি মোটা এবং চিকন করে উপস্থাপন করতে পারবেন।

 

উদাহরন:


<table border="1" style="width:100%">
 <tr>
 <td>হাসান</td>
 <td>জামিল</td>
 <td>৫০</td>
 </tr>
 <tr>
 <td>কবির</td>
 <td>খান</td>
 <td>৯১</td>
 </tr>
</table>

এখানে “<table border="1" style="width:100%">” দ্বারা একই টেবিলের Border মোটা বা চিকন ভাবে উপস্থাপন করতে পারবেন। "1" এর মান ইচ্ছে মত পরিবর্তন করে বর্ডার পরিবর্তন করতে পারবেন।

 

MongoDB Data Modelling . MongoDB ডেটা মডেলিং

MongoDB Data Modelling : MongoDB ডেটা মডেলিং
আদনান নাহিদ
সরকারি তিতুমীর কলেজ ।
MongoDB ডেটায় একটি নমনীয় স্কিমা আছে, যার ফলে একই ধরনের ডকুমেন্টে একই ধরনের গঠনের প্রয়োজন হয় না এবং সংগহে থাকা কমন ডকুমেন্টগুলো বিভিন্নভাবে রাখা যায় ।

MongoDB তে স্কিমা ডিজাইন করার সময় কিছু বিবেচ্য বিষয় :
 ব্যবহারকারীর প্রয়োজনীয়তা অনুযায়ী আপনার স্কিমা ডিজাইন ।
 যদি আপনি চান তাহলে একই ডকুমেন্টে অবজেক্টগুলো একত্রে ব্যবহার করতে পারবেন । অন্যথায় সবগুলো আলাদা করুন (তবে সেখানে একত্রীকরণের প্রয়োজন হয়না এটি নিশ্চিত করুন) ।
 ডাটাগুলো Duplicate বা কপি করুন (কিন্তু সীমাবদ্ধ)। কারণ ডিস্কের স্থান সস্তা সময় গণনার তুলনায় ।
 লেখার সময় একত্র করুন, পড়ার সময় না ।
 ঘন ঘন ব্যবহারের ক্ষেত্রে আপনার স্কিমাগুলো অনুকূলে রাখুন ।
 জটিল স্কিমা একত্রিত করবেন না বা আলাদা রাখুন ।

উদাহরণ :
ধরুন একজন ক্লায়েন্ট তার ব্লগ ওয়েব সাইটের জন্য একটি ডাটাবেস ডিজাইনের প্রয়োজন এবং RDBMS এবং MongoDB স্কিমা নকশা মধ্যে পার্থক্য দেখতে চায় । তাহলে ওয়েবসাইটটি নিম্নলিখিত প্রয়োজনীয়তা অনুসারে হবে ;
 প্রতিটি পোস্টের একটি অনন্য শিরোনাম, বিবরণ এবং URL হবে ।
 প্রতিটি পোস্টে এক বা একাধিক ট্যাগ করতে পারেন ।
 প্রতিটি পোস্টে তার প্রকাশক এবং মোট লাইকের সংখ্যা হবে ।
 প্রতিটি পোস্টে comments কারীর নাম, বার্তা, তথ্য-সময় এবং লাইকের সংখ্যা হবে ।
 প্রতিটি পোস্টে শূন্য বা তার বেশি comments বা মন্তব্য হতে পারে ।

RDBMS উপরোক্ত প্রয়োজনীয়তা অনুসারে স্কিমা ডিজাইন করার জন্য সর্বনিম্ন তিনটি টেবিল থাকবে ।

MongoDB স্কিমা ডিজাইন করার সময় একটি কালেকশান পোস্ট হবে এবং এর কাঠামো হবে নিম্ননুসারে ;
{
_id: POST_ID
title: TITLE_OF_POST,
description: POST_DESCRIPTION,
by: POST_BY,
url: URL_OF_POST,
tags: [TAG1, TAG2, TAG3],
likes: TOTAL_LIKES,
comments: [
{
user:'COMMENT_BY',
message: TEXT,
dateCreated: DATE_TIME,
like: LIKES
},
{
user:'COMMENT_BY',
message: TEXT,
dateCreated: DATE_TIME,
like: LIKES
}
]
}

এখন RDBMS এ ডাটা দেখানোর সময় আপনাকে 3 টি tables join করতে হবে এবং ডাটা শুধুমাত্র একটি সংগ্রহ থেকে দেখাতে হবে ।

C – Operators . সি অপারেটর গুলো

আপনাকে স্বাগতম আমাদের টিটোরিয়াল সাইটে আসার জন্য। আজ আমরা আপনাকে শেখাবো অপারেটর কি।

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

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

  1. Arithmetic Operators
  2. Relational Operators
  3. Logical Operators
  4. Bitwise Operators
  5. Assignment Operators
  6. Misc Operators

এই টিউটোরিয়ালট এ পাটিগণিত, রিলেশনাল, লজিক্যাল, নিয়োগ এবং অন্যান্য অপারেটরদের একের পর এক ব্যাখ্যা করবে।

Arithmetic Operators

নিচের টেবিলের সব Arithmetic Operators সি প্রোগ্রামকে সমর্থন করে। মনে করুন পরিবর্তনশীল A 10  পরিবর্তনশীল B 20:

Operator Description Example
== Checks if the values of two operands are equal or not, if yes then condition becomes true. (A == B) is not true.
!= Checks if the values of two operands are equal or not, if values are not equal then condition becomes true. (A != B) is true.
> Checks if the value of left operand is greater than the value of right operand, if yes then condition becomes true. (A > B) is not true.
< Checks if the value of left operand is less than the value of right operand, if yes then condition becomes true. (A < B) is true.
>= Checks if the value of left operand is greater than or equal to the value of right operand, if yes then condition becomes true. (A >= B) is not true.
<= Checks if the value of left operand is less than or equal to the value of right operand, if yes then condition becomes true. (A <= B) is true.

 

 

Relational Operators

নিচের টেবিলের সব Relational Operators সি প্রোগ্রামকে সমর্থন করে। মনে করুন পরিবর্তনশীল A 10  পরিবর্তনশীল B 20:

Operator Description Example
== Checks if the values of two operands are equal or not, if yes then condition becomes true. (A == B) is not true.
!= Checks if the values of two operands are equal or not, if values are not equal then condition becomes true. (A != B) is true.
> Checks if the value of left operand is greater than the value of right operand, if yes then condition becomes true. (A > B) is not true.
< Checks if the value of left operand is less than the value of right operand, if yes then condition becomes true. (A < B) is true.
>= Checks if the value of left operand is greater than or equal to the value of right operand, if yes then condition becomes true. (A >= B) is not true.
<= Checks if the value of left operand is less than or equal to the value of right operand, if yes then condition becomes true. (A <= B) is true.

Logical Operators

নিচের টেবিলের সব Logical Operators সি প্রোগ্রামকে সমর্থন করে। মনে করুন পরিবর্তনশীল A 10  পরিবর্তনশীল B 20:

Operator Description Example
&& Called Logical AND operator. If both the operands are non-zero, then condition becomes true. (A && B) is false.
|| Called Logical OR Operator. If any of the two operands is non-zero, then condition becomes true. (A || B) is true.
! Called Logical NOT Operator. Use to reverses the logical state of its operand. If a condition is true then Logical NOT operator will make false. !(A && B) is true.

Bitwise Operators

Bitwise অপারেটর বিট উপর কাজ করে এবং বিট-দ্বারা-বিট অপারেশন সম্পাদন করে:

p Q p & q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

 

অনুমান কর যদি A = 60; এবং B = 13; নিম্নরূপ এখন বাইনারি বিন্যাসে তারা হবে:

A = 0011 1100

B = 0000 1101

-----------------

A&B = 0000 1100

A|B = 0011 1101

A^B = 0011 0001

~A  = 1100 0011

 

সি ভাষা দ্বারা সমর্থিত Bitwise অপারেটরদের নিম্নলিখিত টেবিলে তালিকাভুক্ত করা হয়. পরিবর্তনশীল একটি 60 ঝুলিতে এবং পরিবর্তনশীল বি, তারপর 13 ঝুলিতে অনুমান:

 

Operator Description Example
& Binary AND Operator copies a bit to the result if it exists in both operands. (A & B) will give 12, which is 0000 1100
| Binary OR Operator copies a bit if it exists in either operand. (A | B) will give 61, which is 0011 1101
^ Binary XOR Operator copies the bit if it is set in one operand but not both. (A ^ B) will give 49, which is 0011 0001
~ Binary Ones Complement Operator is unary and has the effect of 'flipping' bits. (~A ) will give -61, which is 1100 0011 in 2's complement form.
<< Binary Left Shift Operator. The left operands value is moved left by the number of bits specified by the right operand. A << 2 will give 240 which is 1111 0000
>> Binary Right Shift Operator. The left operands value is moved right by the number of bits specified by the right operand. A >> 2 will give 15 which is 0000

 

Assignment Operators

 

সি ভাষা দ্বারা সমর্থিত নিম্নলিখিত Assignment অপারেটর আছে:

Operator Description Example
= Simple assignment operator, Assigns values from right side operands to left side operand C = A + B will assign value of A + B into C
+= Add AND assignment operator, It adds right operand to the left operand and assign the result to left operand C += A is equivalent to C = C + A
-= Subtract AND assignment operator, It subtracts right operand from the left operand and assign the result to left operand C -= A is equivalent to C = C - A
*= Multiply AND assignment operator, It multiplies right operand with the left operand and assign the result to left operand C *= A is equivalent to C = C * A
/= Divide AND assignment operator, It divides left operand with the right operand and assign the result to left operand C /= A is equivalent to C = C / A
%= Modulus AND assignment operator, It takes modulus using two operands and assign the result to left operand C %= A is equivalent to C = C % A
<<= Left shift AND assignment operator C <<= 2 is same as C = C << 2
>>= Right shift AND assignment operator C >>= 2 is same as C = C >> 2
&= Bitwise AND assignment operator C &= 2 is same as C = C & 2
^= bitwise exclusive OR and assignment operator C ^= 2 is same as C = C ^ 2
|= bitwise inclusive OR and assignment operator C |= 2 is same as C = C | 2

Misc Operators ↦ sizeof & ternary

Sizeof  এবং সহ কয়েক অন্যান্য গুরুত্বপূর্ণ অপারেটর আছে  যা  সি ভাষা দ্বারা সমর্থিত.

Operator Description Example
sizeof() Returns the size of an variable. sizeof(a), where a is integer, will return 4.
& Returns the address of an variable. &a; will give actual address of the variable.
* Pointer to a variable. *a; will pointer to a variable.
? : Conditional Expression If Condition is true ? Then value X : Otherwise value Y

Operators Precedence in C

অপারেটর প্রাধান্য একটি অভিব্যক্তি পদ গ্রুপ নির্ধারণ করে. এই একটি অভিব্যক্তি মূল্যায়ন করা হয় কিভাবে প্রভাবিত করে. নির্দিষ্ট অপারেটরের অন্যদের তুলনায় বেশি প্রাধান্য আছে; উদাহরণস্বরূপ, গুণ অপারেটর ছাড়াও অপারেটর বেশী প্রাধান্য আছে.

 

উদাহরণস্বরূপ X = 7 + + 3 * 2; এখানে, এক্স, 13 নির্ধারিত হয় না 20 অপারেটর * + + চেয়ে বেশী প্রাধান্য আছে, তাই এটা প্রথম 3 * 2 দিয়ে গুন করা হয় এবং তারপর 7 মধ্যে যোগ করা হয়.

 

এখানে, সর্বোচ্চ প্রাধান্য দিয়ে অপারেটরদের টেবিলের শীর্ষে প্রদর্শিত হবে, সর্বনিম্ন সঙ্গে যারা নীচের অংশে প্রদর্শিত হবে. একটি অভিব্যক্তি মধ্যে বেশি প্রাধান্য, অপারেটর প্রথম মূল্যায়ন করা হবে.

Category  Operator  Associativity 
Postfix () [] -> . ++ - - Left to right
Unary + - ! ~ ++ - - (type)* & sizeof Right to left
Multiplicative * / % Left to right
Additive + - Left to right
Shift << >> Left to right
Relational < <= > >= Left to right
Equality == != Left to right
Bitwise AND & Left to right
Bitwise XOR ^ Left to right
Bitwise OR | Left to right
Logical AND && Left to right
Logical OR || Left to right
Conditional ?: Right to left
Assignment = += -= *= /= %=>>= <<= &= ^= |= Right to left
Comma , Left to right

(In Bengali) MongoDB Environment. Install MongoDB on Windows and Linux

স্বাগতম আপনাকে আমাদের টিউটোরিয়াল সাইটে। এখানে আজকে আমরা আলোচোনা করবো কিভাবে আপনি আপনার উইন্ডোজ এ এবং উবনটু তে MongoDB ইন্সটল দিবেন।

Install MongoDB On Windows

 

MongoDB ইন্সটল করতে আপনাকে আগে সর্বশেষ ভার্সন ডাউনলোড করতে হবে, যা আপনার উইন্ডোজ এর ভার্সন এর সাথে মিল থাকবে। এখানে সরাসরি ডাউনলোড এর লিংক দাওয়া হলোঃ http://www.mongodb.org/downloads আপনার উইন্ডোজ এর ভার্সন জানতে কমান্ড প্রমট এর সাহায্য নিন।

C:\>wmic os get osarchitecture

OSArchitecture

64-bit

C:\>

৩২-বিট ভার্সন এ MongoDB সাপোর্ট করে তাতে আপনার ২জিবি র‍্যাম থাকতে হবে। এগুলো থাকলে আপনি আপনার ডাউনলোড ফাইলটি ওপেন করে mongodb-win32-x86_64-[version] ফাইলটি ইন্সটল দিন।

এখন কমান্ড প্রমট এর সাহায্যে ওপেন করুন

C:\>move mongodb-win64-* mongodb

1 dir(s) moved.

C:\>

 

যদি আপনি অন্য কোন যায়গায় extract করেন তাহলে সেই যায়গায় যাবেন।

MongoDB এর নিজস্ব ফাইল সংরক্ষণ করার জন্য একটি ডাটা ফোল্ডার প্রয়োজন. তথ্য \ ডিবি \: MongoDB ডেটা ডিরেক্টরি ডিফল্ট গ. তাই আপনি যদি কমান্ড প্রম্পট ব্যবহার করে এই ফোল্ডার তৈরি করতে হবে. নিম্নলিখিত কমান্ড ক্রম সম্পাদন করে।

C:\>md dataC:\md data\db

 

 

আপনার বিভিন্ন স্থানে MongoDB ইনস্টল থাকে তাহলে আপনি mongod.exe পথ dbpath সেটিং দ্বারা \ তথ্য \ ডিবি জন্য কোন বিকল্প পথ দেখিয়ে দিতে  হবে. একই সমস্যা নিম্নলিখিত কমান্ডের জন্য

 

কমান্ড প্রম্পট-এ MongoDB ইনস্টলেশন ফোল্ডার মধ্যে উপস্থিত বিন ডিরেক্টরি নেভিগেট. ফোল্ডার ডি আমার ইনস্টলেশন ধরুন: সেট আপ \ \ MongoDB

C:\Users\XYZ>d:D:\>cd "set up"D:\set up>cd mongodbD:\set up\mongodb>cd binD:\set up\mongodb\bin>mongod.exe --dbpath "d:\set up\mongodb\data"

 

কনসোল mongod.exe প্রক্রিয়া সফলভাবে চলমান ইঙ্গিত করে যে এই সংযোগ বার্তা জন্য অপেক্ষা প্রদর্শন করা হবে.

 

এখন MongoDB চালানোর জন্য আপনি অন্য কমান্ড প্রম্পট ওপেন করুন এবং নিচের কমান্ড প্রয়োগ করতে হবে

D:\set up\mongodb\bin>mongo.exeMongoDB shell version: 2.4.6connecting to: test>db.test.save( { a: 1 } )>db.test.find(){ "_id" : ObjectId(5879b0f65a56a454), "a" : 1 }>

 

এই যে MongoDB ইনস্টল করা প্রদর্শন এবং সফলভাবে চালানো হবে.পরবর্তী সময়  আপনি শুধুমাত্র কমান্ড প্রয়োগ করে  MongoDB চালাতে পারবেন।

D:\set up\mongodb\bin>mongod.exe --dbpath "d:\set up\mongodb\data" D:\set up\mongodb\bin>mongo.exe

 

Install MongoDB on Ubuntu

 

MongoDB সার্বজনীন GPG key import করার জন্য নিম্নলিখিত কমান্ড ব্যবহার করুন:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

Create a /etc/apt/sources.list.d/mongodb.list file using the following command.

echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list

Now issue the following command to update the repository:

sudo apt-get update

Now install the MongoDB by using following command:

apt-get install mongodb-10gen=2.2.3

উপরে ইনস্টলেশন 2.2.3 বর্তমানে MongoDB সংস্করণ প্রকাশিত হয়. সবসময় সর্বশেষ সংস্করণ ইনস্টল করতে ভুলবেন না. এখন সফলভাবে MongoDB ইনস্টল করা হয়.

Start MongoDB

sudo service mongodb start

Stop MongoDB

sudo service mongodb stop

Restart MongoDB

sudo service mongodb restart

To use mongodb run the following command

mongo

 

এই mongod উদাহরণস্বরূপ চলমান সাথে সংযোগ করা হবে.

MongoDB Help

MongoDB ক্লায়েন্ট কমান্ড টাইপ db.help () এর তালিকা পাবেন. এই হিসাবে অনুসরণ করে আপনি কমান্ড তালিকা দিতে হবে:

MongoDB Statistics

MongoDB সার্ভার সম্পর্কে পরিসংখ্যান MongoDB ক্লায়েন্ট কমান্ড db.stats (টাইপ) পেতে. এই ডাটাবেস নাম প্রদর্শন ডাটাবেসের মধ্যে সংগ্রহ এবং নথি বাধা হবে. কমান্ড নীচে প্রদর্শিত হয় আউটপুট:

 

 

এইচটি এম এল ইমেজ (HTML Image)

এইচটি এম এল ইমেজ (HTML Images)

মোঃ রফিকুল ইসলাম

 

উদাহরণঃ


DOCTYPE html>
<html>
<body>

<h2>Spectacular Mountains</h2>
<img src="pic_mountain.jpg" alt="Mountain View" style="width:304px;height:228px">

</body>
</html>


 

 

ফলাফলঃ


Spectacular Mountains

pic_mountain


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

 

এইচটিএমএল ইমেজ সিনট্যাক্স

এইচটিএমএল এ ইমেজকে <img> ট্যাগ দ্বারা সংজ্ঞায়িত করা হয়।

<img> ট্যাগ এর ভিতরে শুধুমাত্র্ অ্যাট্রিবিউট থাকে এবং এর কোন ক্লোজিং ট্যাগ থাকে না।

src অ্যাট্রিবিউটম ইমেজ এর ইউআরএল (ওয়েব ঠিকানা বা ইমেজ এর অবস্থান এর ঠিকানা) কে সংজ্ঞায়িত করে।


<img src="url" alt="some_text">


 

 

Alt অ্যাট্রিবিউট

Alt অ্যাট্রিবিউট দ্বারা ওয়েব এ যদি কোন কারনে ইমেজ লোড না হতে পারে তাহলে উক্ত ইমেজ এর বিকল্প হিসেবে কি Text প্রদর্শিত হবে তা নির্ধারণ করে।

Alt অ্যাট্রিবিউট এর ভেলু (মান) হবে আপনি যে Text টি ইমেজ লোড না হলে প্রদর্শন করতে চান সেই Text.


<img src="html5.gif" alt="The official HTML5 Icon">


 

ফলাফল


The official HTML5 Icon


 

Alt অ্যাট্রিবিউট অবশ্যই প্রদান করত হবে। এটি ছাড়া একটি ওয়েব পেজ সঠিকভাবে যাচাই করা যায় না।

 

এইচটিএমএল স্ক্রিন রিডার

স্ক্রিণ রিডার সফটওয়্যারগুলো পর্দায় কি প্রদর্শিত সকলকিছু পড়তে পারে।

ওয়েব এ ব্যবহৃত এইচটিএমএল কোড Text থেকে বক্তৃতা, শব্দের আইকন বা যেকোন প্রতীকি আউটপুট পুনরুদ্ধার করতে পারে।

স্ক্রিণ রিডার সাধারণত যারা অন্ধ, দৃষ্টিপ্রতিবন্ধি, অশিক্ষিতদের জন্য ব্যবহৃত হয়।

নোট: স্ক্রিন রিডার Alt অ্যাট্রিবিউট পড়তে পারে।

 

ছবির আকার - প্রস্থ এবং উচ্চতা

ইমেজ (ছবির) width (প্রস্থ) এবং height (উচ্চতা) নির্ধারণের জন্য আপনি style অ্যাট্রিবিউট ব্যবহার করতে পারেন।

এর মান পিক্সেল দ্বারা নির্ধারণ করা হয় (মান এর পরে px লিখতে হয়):


<img src="Mountain.jpg" alt="Mountain View" style="width:128px;height:128px">


 

ফলাফল:


pic_mountain


 

 

বিকল্প হিসেবে আপনি width এবং height অ্যাট্রিবিউট ব্যবহার করতে পারেন।

এর মান পিক্সেল দ্বারা নির্ধারণ করা হয় (মান এর পরে px লিখতে হয়):


<img src="html5.gif" alt="HTML5 Icon" width="128" height="128">


 

 

Width এবং Height বা Style?

উভয় width, height, এবং style অ্যাট্রিবিউট লেটেস্ট HTML5 সাপর্ট করে।

আমরা আপনাকে style অ্যাট্রিবিউট ব্যবহারের পরামর্শ দেব। এটি স্টাইল শীটকে ইমেজ এর ডিফল্ট আকার পরিবর্তন করতে বাধা দেয়।

উদাহরণঃ


<!DOCTYPE html>
<html>
<head>
<style>
img {
width:100%;
}
</style>
</head>
<body><img src="html5.gif" alt="HTML5 Icon" style="width:128px;height:128px">
<img src="html5.gif" alt="HTML5 Icon" width="128" height="128"></body>
</html>



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


<img src="/images/html5.gif" alt="HTML5 Icon" style="width:128px;height:128px">


ব্রাউজার যদি ইমেজটি খুঁজে না পায় তাহলে সে একটি ব্রোকেন লিঙ্ক আইকন প্রদশণ করবে। উদাহরণ


<img src="wrongname.gif" alt="HTML5 Icon" style="width:128px;height:128px">


ফলাফল


HTML5 Icon


 

অন্য সার্ভারের ছবি

কিছু ওয়েব সাইট তাদের ইমেজগুলো ইমেজ সার্ভারে লোড করে রাখে, আসলে আপনি বিশ্বের যে কোনো ওয়েব ঠিকানার ইমেজ এ প্রবেশ করতে পারেন:


<img src="http://www.rasta.edu.pk/images/EducationTraining1.jpg">


ফলাফল



 

অ্যানিমেটেড ছবি

GIF ফরমেট অ্যানিমেটেড ইমেজ সমর্থন করে।


<img src="Tree.gif" alt="Rain Tree" style="width:240px;height:320px">


ফলাফল


Stormy-island-cell-phone-wallpaper-animated-240x320


নোট: অ্যানিমেটেড ইমেজ ও ননঅ্যানিমেটেড ইমেজ এর সিনটেক্স এ কোন পার্থক্য নেই।

লিঙ্ক হিসেবে ইমেজ ব্যবহার

ইমেজকে লিঙ্ক হিসেবে ব্যবহার করা খুবই সাধারণ ব্যাপার



   <img src="smiley.gif" alt="HTML tutorial" style="width:42px;height:42px;border:0">
 


ইমেজ ম্যাপ

একটি ইজেজ এর জন্য আপনি ক্লিক করা যায় এমনভাবে ইমেজ ম্যাপ তৈরি করতে পারেন।

উদাহরণ


usemap="#planetmap" style="width:145px;height:126px">

<map name="Bangladesh">
<area shape="rect" coords="0,0,82,126" alt="Sun" href="sun.htm">
<area shape="circle" coords="90,58,3" alt="Mercury" href="mercur.htm">
<area shape="circle" coords="124,58,8" alt="Venus" href="venus.htm">
</map>


 

 

ফলাফল


Planets


 

Sun Mercury Venus

 

ইমেজ ফ্লোটিং

আপনি ইজেমকে প্যারাগ্রাফ এর বাম বা ডানে ভাসমান অবস্থায় রাখতে পারেন

উদাহরণ


<p>
60px;height:40px">
A paragraph with an image. The image floats to the left of the text.
</p>


 

 

ফলাফল:


Bangladesh Flag
A paragraph with an image. The image floats to the left of the text.

 


 

 অধ্যায় সারসংক্ষেপ

  • এইচটিএমএল এ <img> এলিমেন্ট ইমেজকে সংজ্ঞায়িত করে।
  • এইচটিএমএল এ src অ্যাট্রিবিউট ইমেজ এর ফাইল নেমকে সংজ্ঞায়িত করে।
  • এইচটিএমএল এ alt অ্যাট্রিবিউট ইমেজ এর বিকল্প টেক্সকে সংজ্ঞায়িত করে।
  • এইচটিএমএল এ width এবং height অ্যাট্রিবিউট ইমেজ এর আকারকে সংজ্ঞায়িত করে।
  • সিএসএস এ width and height প্রোপার্টি ইমেজ এর আকারকে সংজ্ঞায়িত করে (বিকল্পভাবে)।
  • সিএসএস এ float প্রোপার্টি ইমেজকে ফ্লোট করতে সহায়তা করে।
  • এইচটিএমএল এ usemap অ্যাট্রিবিউট ইমেজ ম্যাপ তৈরি করতে ব্যবহৃত হয়।
  • এইচটিএমএল এ <map> এলিমেন্ট ইমেজ ম্যাপকে সংজ্ঞায়িত করতে ব্যবহৃত হয়।
  • এইচটিএমএল এ <area> এলিমেন্ট ইমেজ ম্যাপ এর কোন এরিয়া ব্যবহার করতে তা সংজ্ঞায়িত করে।

C – Strings . সি প্রোগ্রামিং এ স্ট্রিং

C - Strings
মোঃ আব্দুল্লাহ
সি প্রোগ্রামিং এ স্ট্রিং হল মুলত এক ডাইমেনশনের array যা কিনা শেষ হয় '\0' বা null character দিয়ে ।
নিম্নের বিবৃতি এবং উদ্ধৃতিটি এমন একটি স্ট্রিং তৈরী করে যা "Hello" স্ট্রিংটি ধারণ করে। array র শেষে null character কে ধারণ করার জন্য array র ধারণক্রিত পদের স্ট্রিং একের মত বড় যেন তা "Hello." স্ট্রিংটি ধারণ করতে পারে।
char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};

তুমি যদি array শুরু করার নিয়ম অনুসরণ করতে চাও তবে তুমি উপরের বিবৃতিটি নিম্নরুপে লিখতে পার।
char greeting[] = "Hello";
উপরের স্ট্রিংটি মেমোরিরে কিভাবে থাকবে তার জন্য নীচের ছবিটি দেখতে পারোঃ

বস্তুত তুমি স্ট্রিং কন্সটান্টের শেষে null characte টিকে স্থাপন কর না। সি কম্পাইলর নিজে থেকে '\0' কে স্ট্রিং এর শেষে স্থাপন করে যখন এটি array initialize করে। চলো উপরের স্ট্রিং কে প্রিন্ট করিঃ
#include <stdio.h>
int main ()
{
char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
printf("Greeting message: %s\n", greeting );
return 0;
}

যখন উপরের কোডটি কম্পাইল করে রান করা হয় তখন এটি নিম্নোক্ত ফলাফল দেয়ঃ
Greeting message: Hello

সি স্ট্রিং এর জন্য অনেক ফাংসন এর অবলম্বন করে থাকে । নিম্নে তার একটি তালিকা দেওয়া হলঃ
S.N. Function & Purpose
1 strcpy(s1, s2);
স্ট্রিং s2 কে s1 এ কপি করে।
2 strcat(s1, s2);
স্ট্রিং s1 এর শেষে স্ট্রিং s2 কে যুক্ত করে।
3 strlen(s1);
স্ট্রিং s1 এর দৈর্ঘ্য ফেরত পাঠায় ।
4 strcmp(s1, s2);
যদি s1 এবং s2 সমান হয় তবে 0; যদি s1s2 হলে 0 থেকে বেশি ফেরত দেয়।
5 strchr(s1, ch);
ch এর পয়েন্টার ফেরত পাঠায় যখন ch প্রথম স্ট্রিং s1 এ দেখা যায় ।
6 strstr(s1, s2);
স্ট্রিং s1 এর মধ্যে স্ট্রিং s2 প্রথম দেখা যায় তার পয়েন্টেরকে ফেরত দেয়।
নিম্নের উদাহরণটি উপরে দেখানো কিছু ফাংসনের ব্যবহার দেখায়ঃ
#include <stdio.h>
#include <string.h>

int main ()
{
char str1[12] = "Hello";
char str2[12] = "World";
char str3[12];
int len ;

/* copy str1 into str3 */
strcpy(str3, str1);
printf("strcpy( str3, str1) : %s\n", str3 );

/* concatenates str1 and str2 */
strcat( str1, str2);
printf("strcat( str1, str2): %s\n", str1 );

/* total lenghth of str1 after concatenation */
len = strlen(str1);
printf("strlen(str1) : %d\n", len );
return 0;
}

যখন উপরের কোডটি কম্পাইল করে এবং রান করা হয়, এটি নিম্নোক্ত ফলাফল দেয়ঃ
strcpy( str3, str1) : Hello
strcat( str1, str2): HelloWorld
strlen(str1) : 10

C – Loops

C - Loops
মোঃ আব্দুল্লাহ

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

সি প্রোগ্রামিং ভাষা লুপিং চাহিদা পরিপূরণের জন্য নিম্নের ধরনের লুপ দিয়ে থাকে। নিম্নের লিংকগুলি ক্লিক করে এর সম্পর্কে বিস্তারিত জানো।
Loop Type Description
while loop
হওয়াইল লুপ যখন প্রদত্ত যুক্তিটি সত্য তখন এটি একটি বিবৃতি বা এক গুচ্ছ বিবৃতিকে পুনরাবৃত্তি করে। এটি লুপটিকে পরিচালনার আগে বিবৃতিকে পরীক্ষা করে।
for loop
ফর লুপ বিবৃতির ধারা্টিকে একাধিকবার পরিচালনা করে এবং কোডটিকে সংক্ষেপে প্রকাশ করে যা লুপ চলকের ব্যবস্থাপনা করে।
do...while loop
ডু... হওয়াইল লুপ এটি হওয়াইল বিবৃতির মত, শুধু এটি লুপের শেষে যুক্তি পরীক্ষা করে।
nested loops
ডু... হওয়াইল লুপের জন্য তুমি এক বা একাধিক লুপকে যেকোন হওয়াইল লুপের ভিতরে ব্যবহার করতে পার।

Loop Control Statements:

লুপ নিয়ন্ত্রন বিবৃতি সাধারন ধারা থেকে পরিবর্তিত হয়ে পরিচালিত হতে পারে। যখন পরিচালনা একটি সুযোগ রেখে দেয় তখন সব বস্তু যা ওই সুযোগে নিজে থেকে সৃষ্টি হয়েছিল তা ধ্বংস হয়ে যায়।
সি নিম্নোক্ত নিয়ন্ত্রন বিবৃতিকে সমর্থন করে। নিম্নের লিঙ্কটিকে ক্লিক করে এর সম্পর্কে বিস্তারিত জানো।
Control Statement Description
break statement
ব্রেক বিবৃতি এটি লুপকে শেষ বা বিবৃতিকে পরিবর্তন করে । লুপ বা সুইচকে অনুসরণ করে বিবৃতিকে সঙ্গে সঙ্গে পরিচালনা করে।
continue statement
কনটিনিউ বিবৃতি এটি লুপকে এর অবশিষ্ট অংশকে টপকে এবং সঙ্গে সঙ্গে এর আগের যুক্তিতে ফেরত যেতে সাহায্য করে।
goto statement
গো টু বিবৃতি লেবেলেড বিবৃতিতে পরিবর্তনকে নিয়ন্ত্রণ করে। যদিও গো টু বিবৃতিতে প্রোগ্রামটিকে পরিবর্তন করার উপদেশ দেওয়া হয় না।

The Infinite Loop:
যদি কোন যুক্তি কখনও মিথ্যা না হয় তবে লুপটি ইনফিনিট লুপ হয়। এর জন্য ফর লুপটি ব্যবহৃত হয়। যদিও এই তিনটি এক্সপ্রেশনের একটিও ফর লুপের জন্য প্রয়োজন হয় না, তবুও তুমি একটি স্থায়ী লুপ বানাতে পার নির্ভরশীল এক্সপ্রেশনকে খালি রেখে।
#include <stdio.h>
int main ()
{
for( ; ; )
{
printf("This loop will run forever.\n");
}
return 0;
}

যখন নির্ভরশীল এক্সপ্রেসন অনুপস্থিত থাকে, তখন একে সত্যি ধরে নেয়া হয়। তোমার একটি প্রস্তুতিমূলক বা ক্রমবৃদ্ধি এক্সপ্রেশন থাকতে পারে , কিন্তু সি প্রোগ্রাম বেশিরভাগ ক্ষেত্রে ফর (;;) বানানোর জন্য ইনফিনিট লুপকে প্রকাশ করে।

MongoDB Sort Documents . MongoDB ডকুমেন্ট বাছাই

MongoDB ডকুমেন্ট বাছাই
নয়ন চন্দ্র দত্ত

sort() পদ্ধতি
MongoDB ডকুমেন্ট বাছাই করতে হলে আপনাকে sort() পদ্ধতি ব্যবহার করতে হবে। ক্ষেত্র তালিকা ধারণকারী এবং তাদের বাছাই ক্রমের সঙ্গে, sort() পদ্ধতি ডকুমেন্ট গ্রহণ করে।
বাছাই প্রক্রিয়া উল্লেখ করার জন্য 1 এবং -1 ব্যবহৃত হয়। 1 ক্রম ঊর্ধ্বগামীতার জন্য ব্যবহার করা হয় যখন -1 অধোগামীর জন্য ব্যবহৃত হয়।

সিনট্যাক্সঃ
sort() পদ্ধতির বেসিক সিনট্যাক্স বা বাক্য গঠন নিম্নরূপঃ

>db.COLLECTION_NAME.find().sort({KEY:1})

উদাহরণঃ
কালেকশন myycol এ নিম্নলিখিত তথ্য আছে বিবেচনা করিঃ

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

উপরের উদাহরণটিতে অধোগামীতায় টাইটেল হিসেবে ডকুমেন্ট প্রদর্শন করবেঃ

>db.mycol.find({},{"title":1,_id:0}).sort({"title":-1})
{"title":"Tutorials Point Overview"}
{"title":"NoSQL Overview"}
{"title":"MongoDB Overview"}
>

দয়া করে মনে রাখবেন, আপনি যদি বাছাই প্রক্রিয়া উল্লেখ না করেন তাহলে sort() পদ্ধতি ক্রম ঊর্ধ্বগামী হিসেবে ডকুমেন্ট প্রদর্শন করবে।

MongoDB Update Document

MongoDB আপডেট ডকু্মেন্ট
নয়ন চন্দ্র দত্ত

MongoDB এর update() এবং save() পদ্ধতি একটি কালেকশনে ডকুমেন্ট আপডেট করতে ব্যবহৃত হয়। যখন save() পদ্ধতি বিদ্যমান নথি save() পদ্ধতি্র মধ্যে গৃহীত ডকুমেন্ট সাথে প্রতিস্থাপন করে
তখন update() পদ্ধতি বিদ্যমান ডকুমেন্ট এর value বা মানকে আপডেট করে।

MongoDB update() পদ্ধতি
update() পদ্ধতি বিদ্যমান ডকুমেন্টের মানকে আপডেট করে।

সিনট্যাক্স:
update() পদ্ধতির বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

>db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA, UPDATED_DATA)

উদাহরণঃ
চলুন নিম্নলিখিত তথ্যের সাথে myycol কালেকশনটি বিবেচনা করিঃ

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

নিম্নলিখিত উদাহরণটি 'MongoDB Overview' ডকুমেন্টের নতুন টাইটেল 'New MongoDB Tutorial' সেট করবে ।

>db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}})
>db.mycol.find()
{ "_id" : ObjectId(5983548781331adf45ec5), "title":"New MongoDB Tutorial"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
>

ডিফল্টভাবে mongodb শুধুমাত্র সিঙ্গেল ডকুমেন্ট আপডেট করে। অধিক ডকুমেন্ট আপডেট করতে হলে আপনাকে একটি প্যারামিটার ( 'multi' true ) যোগ করতে হবে।
যেমন-

title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}},{multi:true})

MongoDB Save() পদ্ধতি
save() পদ্ধতি বিদ্যমান ডকুমেন্ট save() পদ্ধতির মধ্যে গৃহীত নতুন ডকুমেন্টের সাথে প্রতিস্থাপন করে।

সিনট্যাক্স:
save() পদ্ধতির বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

>db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})

উদাহরণঃ
নিম্নলিখিত উদাহরণটি _id '5983548781331adf45ec7' এর সঙ্গে ডকুমেন্টটিকে প্রতিস্থাপন করবে।

>db.mycol.save(
{
"_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point New Topic", "by":"Tutorials Point"
}
)
>db.mycol.find()
{ "_id" : ObjectId(5983548781331adf45ec5), "title":"Tutorials Point New Topic", "by":"Tutorials Point"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
>

মংগোডিবি – কুয়েরি ডোকুমেন্ট (MongoDB – Query Document)

MongoDB অনুসন্ধানমূলক বা Query ডকুমেন্ট

নয়ন চন্দ্র দত্ত

 

 

find() পদ্ধতি

MongoDB collection ডেটা অনুসন্ধান করতে আপনাকে MongoDB এর find() পদ্ধতি ব্যবহার করতে হবে।

 

সিনট্যাক্সঃ

find()  এর বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

 

>db.COLLECTION_NAME.find()

 

find() পদ্ধতি সবগুলো ডকুমেন্টকে একটি অ-কাঠামোগত ভাবে প্রদর্শন করবে।

 

 

 

 

pretty() পদ্ধতি

সুবিন্যস্তভাবে ফলাফল প্রদর্শন করার জন্য pretty() পদ্ধতি ব্যবহার করতে পারেন।

 

সিনট্যাক্সঃ

 

>db.mycol.find().pretty()

 

 

উদাহণঃ

 

>db.mycol.find().pretty()

{

"_id": ObjectId(7df78ad8902c),

"title": "MongoDB Overview",

"description": "MongoDB is no sql database",

"by": "tutorials point",

"url": "http://www.tutorialspoint.com",

"tags": ["mongodb", "database", "NoSQL"],

"likes": "100"

}

>

 

 

 

find() পদ্ধতি ছাড়াও এখানে findOne() পদ্ধতিও আছে যা শুধুমাত্র একটি ডকুমেন্টকে পুনরায় ধাবিত করে।

 

 

 

 

 

MongoDB এর মধ্যে RDBMS যেখানে Clause বা ধারা সমতুল্য

কিছু অবস্থার ভিত্তিতে ডকুমেন্ট অনুসন্ধান করতে আপনি নিম্নলিখিত অপারেশন ব্যবহার করতে পারেন।

 

অপারেশনঃ সমতা

সিনট্যাক্সঃ {<key>:<value>}

উদাহণঃ db.mycol.find({"by":"tutorials point"}).pretty()

RDBMS সমতুল্যতাঃ যেখানে by = 'tutorials point'

 

অপারেশনঃ ছোট

সিনট্যাক্সঃ {<key>:{$lt:<value>}}

উদাহণঃ db.mycol.find({"likes":{$lt:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes < 50

 

অপারেশনঃ সমান বা ছোট

সিনট্যাক্সঃ {:{$lte:}}

উদাহণঃ db.mycol.find({"likes":{$lte:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes <= 50

 

অপারেশনঃ বড়

সিনট্যাক্সঃ {<key>:{$gt:<value>}}

উদাহণঃ db.mycol.find({"likes":{$gt:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes > 50

 

অপারেশনঃ সমান বা বড়

সিনট্যাক্সঃ {:{$gte:}}

উদাহণঃ db.mycol.find({"likes":{$gte:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes >= 50

 

অপারেশনঃ অসমান

সিনট্যাক্সঃ {:{$ne:}}

উদাহণঃ db.mycol.find({"likes":{$ne:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes != 50

 

 

 

 

 

MongoDB তে AND

সিনট্যাক্সঃ

find() পদ্ধতিতে যদি আপনি একাধিক কী ( ',' )দিয়ে পৃথক করে পাস করেন তাহলে MongoDB এটাকে AND শর্তের ন্যায় আচরন করায়। AND এর বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

 

>db.mycol.find({key1:value1, key2:value2}).pretty()

 

 

উদাহণ

উল্লিখিত নীচের উদাহরণটি 'tutorials point' দ্বারা লিখিত সব টিউটোরিয়াল এবং যার টাইটেল 'MongoDB Overview'  প্রদর্শন করবে।

 

>db.mycol.find({"by":"tutorials point","title": "MongoDB Overview"}).pretty()

{

"_id": ObjectId(7df78ad8902c),

"title": "MongoDB Overview",

"description": "MongoDB is no sql database",

"by": "tutorials point",

"url": "http://www.tutorialspoint.com",

"tags": ["mongodb", "database", "NoSQL"],

"likes": "100"

}

>

 

 

 

উপরে উল্লিখিত উদাহরণটি সমান হবে যেখানে clause টি ' where by='tutorials point' AND title='MongoDB Overview'  হবে।

 

 

 

 

 

 

MongoDB তে OR

সিনট্যাক্সঃ

OR শর্তের উপর ভিত্তি করে ডকুমেন্ট খোজতে আপনাকে $or কীওয়ার্ড ব্যবহার করতে হবে। OR এর বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

 

>db.mycol.find(

{

$or: [

{key1: value1}, {key2:value2}

]

}

).pretty()

 

 

 

উদাহণ

উল্লিখিত নীচের উদাহরণটি 'tutorials point' দ্বারা লিখিত সব টিউটোরিয়াল এবং যার টাইটেল 'MongoDB Overview'  প্রদর্শন করবে।

 

 

>db.mycol.find({$or:[{"by":"tutorials point"},{"title": "MongoDB Overview"}]}).pretty()

{

"_id": ObjectId(7df78ad8902c),

"title": "MongoDB Overview",

"description": "MongoDB is no sql database",

"by": "tutorials point",

"url": "http://www.tutorialspoint.com",

"tags": ["mongodb", "database", "NoSQL"],

"likes": "100"

}

>

 

 

 

 

একত্রে AND এবং OR  এর ব্যবহার

উদাহণঃ

উল্লিখিত নীচের উদাহরণটি ১০০ এর চেয়ে বড় এবং যার টাইটেল 'MongoDB Overview' বা 'tutorials point' । এসকিউএল সমান হবে যেখানে 'where likes>10 AND (by = 'tutorials point' OR title = 'MongoDB Overview')'  । যেমনঃ-

 

>db.mycol.find("likes": {$gt:10}, $or: [{"by": "tutorials point"}, {"title": "MongoDB Overview"}] }).pretty()

{

"_id": ObjectId(7df78ad8902c),

"title": "MongoDB Overview",

"description": "MongoDB is no sql database",

"by": "tutorials point",

"url": "http://www.tutorialspoint.com",

"tags": ["mongodb", "database", "NoSQL"],

"likes": "100"

}

>

 

 

 

http://Bangla.SaLearningSchool.com

মঙ্গোডিবি – ইন্সার্ট ডোকুমেন্ট (MongoDB – Insert Document)

MongoDB - ডকুমেন্ট সন্নিবেশন
সন্নিবেশ পদ্ধতি
MongoDB সংগ্রহে ডাটা সন্নিবেশন বা প্রবেশ করতে হলে আপনাকে MongoDB এর সন্নিবেশ পদ্ধতি ব্যবহার করতে হবে ।
শব্দবিন্যাস
শব্দবিন্যাস সন্নিবেশন বা প্রবেশের প্রাথমিক নির্দেশনা নিম্নে দেয়া হল :
>db.COLLECTION_NAME.insert(document)
উদাহরণ
>db.mycol.insert({
_id: ObjectId(7df78ad8902c),
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'tutorials point',
url: 'http://www.tutorialspoint.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
})
পূর্ববর্তী টিউটোরিয়াল অনুসারে এখানে mycol আমাদের সংগ্রহের নাম । ডকুমেন্টগুলো ডাটাবেসের মধ্যে উপস্থিত না থাকলে, MongoDB তে সংগ্রহ বা কালেকশন তৈরি করুন এবং তারপর ডকুমেন্টগুলো প্রবেশ করুন ।
যদি সন্নিবেশকৃত ডকুমেন্টগুলোর মধ্যে নির্দিষ্ট _id parameter বা স্থিতিমাপ না থাকে তাহলে MongoDB এই নথির জন্য একটি আদর্শ লক্ষ্য নির্ধারণ করতে হবে ।
_id 12 বাইট হেক্সাডেসিমেল সংখ্যা প্রতিটি ডকুমেন্টের জন্য আদর্শ সংখ্যা । 12 বাইটকে নিম্নোক্ত ভাবে ভাগে করা হয় :
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
একক অনুসন্ধানে একাধিক ডকুমেন্ট প্রবেশ করার জন্য, আপনি ডকুমেন্টে অ্যারের কমান্ডের মাধ্যমে পাস করতে পারেন ।
উদাহরণ
>db.post.insert([
{
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'tutorials point',
url: 'http://www.tutorialspoint.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
},
{
title: 'NoSQL Database',
description: 'NoSQL database doesn't have tables',
by: 'tutorials point',
url: 'http://www.tutorialspoint.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 20,
comments: [
{
user:'user1',
message: 'My first comment',
dateCreated: new Date(2013,11,10,2,35),
like: 0
}
]
}
])
এছাড়াও আপনি db.post.save ব্যবহার করতে পারেন নথি (ডকুমেন্ট) প্রবেশ করার জন্য । যদি আপনি নথিতে নির্দিষ্ট _id উল্লেখ না করেন, তাহলে সংরক্ষণ পদ্ধতি সন্নিবেশ পদ্ধতি হিসাবে একই কাজ করবে । আর যদি আপনি নির্দিষ্ট _id উল্লেখ করেন তাহলে এটি সমস্ত ডকুমেন্ট প্রতিস্থাপন করবে যেভাবে সংরক্ষণ পদ্ধতি সংরক্ষিত হয়েছিল ।

এইচটিএমএল লিঙ্ক (HTML Link)

এইচ টি এম এল লিঙ্ক

স্বর্ণা আখতার

সম্পাদনাঃ মোঃ রফিকুল ইসলাম

 

প্রায় সকল ওয়েবপেজ এ লিঙ্ক রয়েছে। লিঙ্ক এ ক্লিক করার মাধ্যমে ব্যবহারকারী এক পেজ থেকে অন্য পেজে যেতে পারে।

এইচটিএমএল লিঙ্ক - হাইপারলিঙ্ক

হাইপারলিঙ্ক হচ্ছে একটি Text, বা ছবি যার উপর ক্লিক করার মাধ্যমে আপনি অন্য আরেকটি ওয়েবপেজে/ডকুমেন্ড এ চলে যেতে পারে।

 

এইচটিএমএল লিঙ্ক - সিনট্যাক্স

এইচ টি এম এল এ লিঙ্ক সিনট্যাক্সগুলো কিভাবে গঠিত হয় নিচে তাঁর উদাহরন তুলে ধরা হল, <a> ট্যাগ দ্বারা লিঙ্ককে সঙ্গায়িত করা হয়।

লিঙ্ক সিনট্যাক্স


<a href="url">link text</a>


উদাহরনঃ


<a href="http://bangla.salearningschool.com/html/">Visit our HTML tutorial</a>


 

ফলাফলঃ


Visit our HTML tutorial


এখানে href অ্যাট্রিবিউট ওয়েব পেজ এর গন্তব্যকে নির্দেশ করে করে যেমন, http://bangla.salearningschool.com/html/
আর link text (Visit our HTML tutorial) হল প্রদর্শিত অংশ যার উপর ক্লিক করলে আপনি একটি নির্দিষ্ট ওয়েব পেজ এ স্থানান্তিরিত হবেন।

নেটঃ link text সবসময়ই টেক্স হতে হবে এমন কোন কথা নেই, এটি ছবি বা এইচটিএমএল এর যেকোন উপাদান হতে পারে।

 

লোকাল লিঙ্ক

উপরের উদাহরণে একটি সংয়সম্পূর্ণ ওয়েব এড্রেস (URL) ব্যবহার করা হয়েছে।

একটি লোকাল লিঙ্ক (একই ওয়েব সাইটের লিঙ্ক) নির্দিষ্ট করা হয় আপেক্ষিক URL এর সাহায্যে (http://www.... ব্যতীত)

যেমনঃ


<a href="html_images.asp">HTML Images</a>


 

এইচটিএমএল লিঙ্ক - কালার এবং আইকন

আপনি যখন কোন লিঙ্ক এর উপর নিয়ে যান তখন সাধারণত দুপ্রকার ঘটনা ঘটতে পারেঃ

১. মাউস এর তীর টিহ্নটি একটা ছোট হাতের রুপ নিতে পারে।
২. লিঙ্ক এর বিষয়বস্তু যেমন লিঙ্ক টেক্সট ইত্যাদির কালার পরিবর্তন হয়ে থাকে।

সাধারনত লিঙ্কগুলো যে কোন ব্রাউজার এ নিম্নোক্তভাবে দেখা যায়

১. অদেখা লিঙ্কগুলোর নিচে আন্ডার লাইন এবং এদের কালার নীল হয়।
২. দেখা লিঙ্কগুলোর নিচেও আন্ডার লাইন থাকে কিন্তু এদের কালার সাধারনত রক্তবর্ণ হয়।
৩. একটা সচল লিঙ্কএর নিচেও একইভাবে আন্ডার লাইন কিন্তু লাল কালারের হয়ে থাকে।

আপনি style ব্যবহার করে ডিফল্ট কালার ও আন্ডারলাইন পরিবর্তন করতে পারেন।

উদাহরণঃ


<style>
a:link   
{color:#000000; background-color:transparent; text-decoration:none}
a:visited {color:#000000; background-color:transparent; text-decoration:none}
a:hover   {color:#ff0000; background-color:transparent; text-decoration:underline}
a:active  {color:#ff0000; background-color:transparent; text-decoration:underline}
</style>

এইচটিএমএল লিঙ্ক - টার্গেট অ্যাট্রিবিউট

target অ্যাট্রিবউট নির্দারণ করে ডকুমেন্টটি কোথায় খুলবে।

উদাহরণস্বরূপ ডকুমেন্টটি একই উইন্ডোতে খুলতে পারে বা নতুন ট্যাব এও খুলতে পারেঃ


<a href="http://bangla.salearningschool.com/html/" target="_blank">Visit our HTML tutorial</a>


 

ফলাফল


Visit our HTML tutorial


 

Target Value বিবরণ
_blank লিঙ্ককৃত ডকুমেন্টটি নতুন একটি উইন্ডো বা ট্যাব এ খোলে
_self লিঙ্ককৃত ডকুমেন্টটি যে ফ্রেমে ক্লিক করেছেন সেই একই ফ্রেমে খুলবে (এটিই ডিফল্ট হিসেবে থাকে)
_parent লিঙ্ককৃত ডকুমেন্টটি মুল ফ্রেমে খোলে
_top লিঙ্ককৃতডকুমেন্টটি সম্পূর্ণ উইন্ডো জুড়ে খোলে
framename লিঙ্ককৃত ডকুমেন্টটি নির্দিষ্ট নামের ফ্রেমে খোলে

 

আপনার ওয়েব পেজটি যদি একটি ফ্রেম লক করা থাকে, তাহলে target="_top" ব্যহার করে লক ভেঙ্গে ফেলতে পারেন।

উদাহরণঃ


<a href="http://bangla.salearningschool.com/html/" target="_top">Visit our HTML tutorial</a>


 

ফলাফলঃ


Visit our HTML tutorial


 

এইচটিএমএল লিঙ্ক - ইমেজ/ছবি লিঙ্ক হিসেবে ব্যবহার

ইমেজকে লিঙ্ক হিসেবে ব্যবহার করা খুবই সাধারণ

উদাহরণঃ


<a href="default.asp">
<img src="smiley.gif" alt="HTML tutorial" style="width:42px;height:42px;border:0">
</a>

 

ফলাফলঃ


smiley


 

এইচটিএমএল লিঙ্ক - id অ্যাট্রিবিউট

<a> এলিমেন্ট এর সাথে একটি id অ্যাট্রিবউট যোগ করুন


<a id="tips">Useful Tips Section</a>


 

<a> এলিমেন্ট এ একটি লিঙ্ক সংযুক্তকরণ


<a href="#tips">Visit the Useful Tips Section</a>


 

<a> এলিমেন্ট এ অন্য পেজ এর একটি লিঙ্ক যুক্তকরণ


<a href="http://bangla.salearningschool.com/html_links.htm#tips">Visit the Useful Tips Section</a>


 

 

সারসংক্ষেপ

• এইচটিএমএল <a> এলিমেন্ট এর ব্যবহার লিঙ্ককে সঙ্গালিত করে

• এইচটিএমএল href অ্যাট্রিবউট এর ব্যবহার লিঙ্ক এর এড্রেসকে সঙ্গায়িত করে

• এইচটিএমএল target অ্যাট্রিবউট এর ব্যবহার  লিঙ্কটি কোথায় খুলবে তা বোঝায়

• এইচটিএমএল <img> এলিমেন্ট এর ব্যবহার ইমেজ/ছবিকে লিঙ্ক সিহেবে ব্যবহার করে

• এইচটিএমএল id অ্যাট্রিবউট (id="value") এর ব্যবহার বুকমার্ক ডিফাইন করার জন্য ব্যবহৃত হয়

• এইচটিএমএল href অ্যাট্রিবউট (href="#value") এর ব্যবহার বুকমার্ক এ ঠিকানা বুঝায়

 

এইচটিএমএল এর সিএসএস (HTML Style – CSS)

শরিফুল ইসলাম
Php Coder

 

HTML Styles - CSS

 উদাহরণ


<!DOCTYPE html>
<html>
<head>
<style>
body {background-color:lightgray}
h1   {color:blue}
p    {color:green}
</style>
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

 

সিএসএস দ্বারা এইচটিএমএল কে স্টাইল করা

সিএসএস(css) এর পূর্ণ নাম হল Cascading Style Sheets ।

তিনভাবে স্টাইল কে এইচটিএমএল এর সাথে যুক্ত করা যায়

• Inline-স্টাইল attribute ব্যবহার করে এইচটিএমএল এর সাথে যুক্ত করা যায়

• Internal- <style> এলিমেন্ট এইচটিএমএল এর head সেকশন এর মধ্যে যুক্ত করা যায়

• External- এক বা একাধিক বাইরের সিএসএস ফাইল যুক্ত করে কাজ করা যায়।

তবে সব থেকে কমন হল বাইরে থেকে একটি সিএসএস ফাইল যুক্ত করা। কিন্তু আমরা এইখানে internal স্টাইল ব্যবহার করব। কারন এতে আমাদের জন্য স্টাইল এর জন্য ভিন্ন ভিন্ন ফাংশন গুলো বুজতে ঝুব সুবিধা হবে।

 

সিএসএস syntax

সিএসএস স্টাইলিং এর জন্য নিন্মোক্ত সিনটেক্স ব্যবহার করা হয়


element { property:value ; property:value }


 

এই element হল এইচটিএমএল এর একটি উপাদানের নাম। property হল সিএসএস একটি প্রপার্টি। value হল সিএসএস প্রপার্টি এর একটি মান।

অনেকগুলো স্টাইল থাকলে তাহলে সেগুলো সেমিকোলন দিয়ে আলাদা করতে হয়।

 

Inline স্টাইল (inline css)

এইচটিএমএল উপাদানের ক্ষেত্রে একটি ইউনিক স্টাইল এর জন্য inline styling খুবই উপযোগী। এই উদাহরনে ইনলাইন স্টাইল এর মাধ্যমে একটি ইউনিক heading এর টেক্সট এর কালার পরিবর্তন করা হচ্ছে

উদাহরণ


<h1 style="color:blue">This is a Blue Heading


 

 

Internal স্টাইল (internal css)

একটি পেজ এর সকল এইচটিএমএল উপাদানের জন্য একটি কমন স্টাইল ব্যবহার করা হয়েছে আর তা হল internal style sheet।

সাধারনত এটি <style> এলিমেন্ট এর সাহায্যে হেড সেকশন এর মধ্যে ইনক্লুড করতে হয়।

উদাহারন


<!DOCTYPE html>
<html>
<head>
<style>
body {background-color:lightgrey}
h1   {color:blue}
p    {color:green}
</style>
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

 

External স্টাইল (External সিএসএস)

অনেকগুলো পেজ এর স্টাইল নিয়ন্ত্রণ করার জন্য এই পধতি চালানো হয়। এই ক্ষেত্রে মাত্র সিএসএস ফাইল এর একটি উপাদান পরিবর্তন করার মাধ্যমে বাকি সবগুলো পেজ এর পরিবর্তন করা সম্ভব। হেড সেকশন এর মধ্যে external সিএসএস ফাইল এর লিঙ্ক করে দিতে হয়।

উদাহরণ


<!DOCTYPE html>
<html>
<head>
   <link rel="stylesheet" href="styles.css">
 </head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>


 

সিএসএস ফন্টস

সিএসএস এর color প্রপার্টি দ্বারা এইচটিএমএল পেজ এর টেক্সট এর কালার কি হবে তা ডিফাইন করা হয়। সিএসএস এর font-family দ্বারা টেক্সট এর ফন্ট কোন ফন্ট হবে তা ডিফাইন করে। সিএসএস এর font-size প্রপার্টি দ্বারা টেক্সট এর আকার কতটুকু হবে তা ডিফাইন করে।

উদাহরণ


<!DOCTYPE html>
<html>
<head>
<style>
h1 {
    color:blue;
    font-family:verdana;
    font-size:300%;
}
p  {
    color:red;
    font-family:courier;
    font-size:160%;
}
</style>
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

তবে <font> ট্যাগ টি এইচটিএমএল এর পুরাতন ভার্সন এ কাজ করে এইচটিএমএল৫ এ কাজ করে না।

 

সিএসএস বক্স মডেল

প্রত্যেকটি এইচটিএমএল এর উপাদানের জন্য একটি বক্স নির্দিষ্ট করা থাকে কিন্তু আমরা তখনি এটা দেখতে পারব যখন আমরা সিএসএস এর মধ্যে border প্রপার্টি ঘোষণা করব

উদাহরণ


p {
    border:1px solid black;
}

border এর মধ্যে ফাকা তৈরি করার জন্য আমরা padding প্রপার্টি ব্যবহার করব

উদাহারন


p {
    border:1px solid black;
    padding:10px;
}

বর্ডার এর বাইরে মার্জিন এর জন্য আমরা margin প্রপার্টি ব্যবহার করব

উদাহরণ


p {
    border:1px solid black;
    padding:10px;
    margin:30px;
 }

সিএসএস উদাহরণ এ px ব্যবহার করা হয়েছে এতে পিক্সেল বুঝায়

 

ID Attribute

উপরের সবগুলো উদাহরণ এ সিএসএস এর সাধারন নিয়ম ব্যবহার করা হয়েছে।

যদি কোন একটি নির্দিষ্ট স্টাইল নির্দিষ্ট কোন এইচটিএমএল এর উপাদানের ক্ষেত্রে প্রয়োগ করতে হয় তাহলে id attribute প্রথমে এইচটিএমএল এর মধ্যে যোগ করতে হবে

উদাহরণ


<p id="p01">I am different</p>


 

এরপর id কে সিএসএস এর মধ্যে কল করে স্টাইল যোগ করতে হবে

উদাহরণ


p#p01 {
    color:blue;
}


 

Class attribute

কোন নির্দিষ্ট উপাদানের ধরন পরিবর্তন করার জন্য ক্লাস (class) attribute এইচটিএমএল এর উপাদানের মধ্যে যোগ করতে হয়

উদাহরণ


<p class="error">I am different</p>


একন আপনি নির্দিষ্ট ক্লাস এর সাথে সকল এলিমেন্ট এ ভিন্ন ভিন্ন স্টাইল দিতে পারবেন।

উদাহরণ


p.error {
    color:red;
}

নোটঃ id ব্যবহার করা হয় একটি ইউনিক উপাদানের জন্য এবং class ব্যবহার করা হয় একটি এলিমেন্ট এর গ্রুপ এর জন্য।

 

সীমাবদ্ধতা

পুরাতন এইচটিএমএল ভার্সন এর অনেক ট্যাগস এবং attributes ব্যবহার করা হয় স্টাইল documents এ। কিন্রু এইগুলো এইচটিএমএল ৫ এ সাপোর্ট করে না।

যে উপাদান বা elements গুলো বাদ দিতে হবে ব্যবহার করা বাদ দিতে হবে: <font>, <center> এবং <strike>.

যে attribute গুলো বাদ দিতে হবে: color এবং bgcolor

 

একনজরে প্রপার্টি গুলো

Inline styling এ এইচটিএমএল এর স্টাইল attribute এর ব্যবহার

Internal css এ এইচটিএমএল এর <style> এলিমেন্ট এর ব্যবহার

External css এ এইচটিএমএল এর <link> উপাদানের ব্যবহার

সেকশন এ <style> এবং <link> elements যুক্ত করার জন্য এইচটিএমএল এর <head> এলিমেন্ট এর ব্যবহার

Text কালার করার জন্য এ সিএসএস এর কালার প্রপার্টি এর ব্যবহার

Text এর ফন্ট নির্দারণের জন্য সিএসএস এর font-family প্রপার্টি এর ব্যবহার

Text এর ফন্ট সািইজ নির্দারণের জন্য সিএসএস এর font-size প্রপার্টি এর ব্যবহার

উপাদানের বর্ডার দেখানোর জন্য সিএসএস এর border প্রপার্টি এর ব্যবহার

বর্ডার এর ভিতরে স্পেস নির্দারনের জন্য সিএসএস এর padding প্রপার্টি এর ব্যবহার

বর্ডার এর বাহিরের দিকের স্পেস নির্দারনের জন্য সিএসএস এর margin প্রপার্টি এর ব্যবহার

এইচটিএমএল স্টাইল ট্যাগ

<style> - একটি document মধ্যে সমস্ত স্টাইল এর তথ্যকে সঙ্গায়িত করে

<link> -  document এবং external রিসোর্স ফাইল এর মধ্যে সম্পর্ক নির্দারণ করে

ইন্টারনেটে সংযোগ

ইন্টারনেটে সংযোগ

The Connect to the Internet উইজার্ডটি ইন্টারনেট সংযোগ স্থাপনের ধাপগুলো দেখাবে।

  • প্রথমে Start বাটনে ক্লিক করুন এবং এর পর Control Panel ক্লিক করুন এবং সর্বশেষে The Connect to the Internet এ ক্লিক করুন। The Connect to the Internet উইজার্ডটি খুলবে। সার্চ বক্স এ network লিখুন, Network and Sharing Center এ ক্লিক করুন, Set up a new connection or network এ ক্লিক করুন এবং তারপর Connect to the Internet এ দুইবার ক্লিক করুন।

 

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

ইলাস্ট্রেটরে তৈরি করুন টাইপোগ্রাফিক লোগো

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

Housing logo
Housing logo

১. প্রথমেই টাইপ টুলের সাহায্যে EBL লেখাটি টাইপ করুন। এই লেখাটিকেই আমরা টেনেটুনে ঘরের আকৃতি প্রদান করব। এজন্য লেখাটিকে রিসাইজ করে যথেষ্ট বড় করুন এবং পছন্দের ফন্ট নির্বাচন করুন। টাইপোগ্রাফির ক্ষেত্রে ফন্ট নির্বাচন খুবই গুরুত্বপূর্ণ। তবে আমি এখানে Myriad ফন্ট দিয়েই কাজ চালিয়ে নিচ্ছি। কারণ এখানে সিম্পল একটা ফন্ট হলেই চলবে।

1
২. এখন লেখাটি সিলেক্ট করে মাউস এর রাইট বাটন ক্লিক করে Create outline ক্লিক করুন। লেখাটি একটি পাথে পরিণত হবে এবং একে এখন টেনেটুনে বিভিন্ন আকৃতি দেয়া যাবে।

2
৩. কিবোর্ডের A বাটন চেপে Direct selection tool চালু করুন। এবার লেখার উপর ক্লিক করলে অনেকগুলো অ্যংকর পয়েন্ট দেখতে পাবেন।

৪. প্রথমে E এর ডানদিকের উপরের অ্যাংকর পয়েন্টকে সরিয়ে উপরের দিকে নিন।

3

এভাবে লাল অ্যারো চিহ্নিত দিকে বাকি অ্যাংকর পয়েন্টগুলোকে সরিয়ে নিন।

4

৫. এবার B এর পালা। B এর উপরের পৃষ্ঠের আকৃতি গোলাকার হওয়ায় এখানকার অ্যাংকর পয়েন্টগুলোকে কনভার্ট করে নিতে হবে। এজন্য পেন টুলের উপর ক্লিক করে কয়েক সেকেন্ড ধরে রাখুন। Convert anchor point ক্লিক করুন। এবার B উপরের পৃষ্ঠে থাকা বাম দিকের অ্যাংকর পয়েন্ট দুটিতে ক্লিক করুন।

5

তাহলে অ্যাংকর পয়েন্ট দুটি কনভার্ট হয়ে যাবে। আবার কিবোর্ডের A বাটন চেপে মাঝের অ্যাংকর পয়েন্টটিকে সরিয়ে ডান দিকের প্রান্তের কাছাকাছি আনুন।

7

৬. বাম পাশের অ্যাংকর পয়েন্টে ক্লিক করে শিফট চেপে এইমাত্র ডানে সরিয়ে নেয়া অ্যাংকর পয়েন্টের উপর ক্লিক করুন। এবার কিবোর্ডের আপ অ্যারো চেপে অ্যাংকর পয়েন্ট দুটিকে উপরের দিকে উঠাতে থাকুন। এভাবে E এর সর্বোচ্চ চুড়ায় উঠা পর্যন্ত উঠাতে থাকুন।

9

৭. এবার এই দুটি অ্যাংকর পয়েন্টের মাঝে আরেকটি অ্যাংকর পয়েন্ট যোগ করতে হবে। এজন্য পেন টুলে ক্লিক করে ধরে রাখুন। Add anchor point ক্লিক করে অ্যাংকর পয়েন্ট দুটির মাঝখানে ক্লিক করুন। নতুন একটি অ্যাংকর পয়েন্ট যুক্ত হবে।

৮. নতুন অ্যাংকর পয়েন্টটিকে ড্রাগ করে আরও উপরে নিন যাতে তা E এর ঢালের সাথে সামঞ্জস্যপূর্ণ হয়।

10

৯. খেয়াল করুন B এর ডান পাশের চূড়া কিছুটা আঁকাবাঁকা হয়ে গেছে। একটি Rectangle দিয়ে এই অংশকে এমনভাবে ঢেকে দিন যাতে বোঝা না যায়।

11
১০. এবার L এর অ্যাংকর পয়েন্টগুলিকেও অ্যারো এর নির্দেশানুযায়ী সরিয়ে নিন।

12

13

১১. এবার ঘরের বাড়তি ছাউনী তৈরি করতে হবে। এজন্য P চেপে স্ক্রিনশটের মত করে তিনটি বিন্দুতে ক্লিক করুন। একটি ত্রিভুজ তৈরি হবে। এটিকে E এর প্রান্তের সাথে লাগিয়ে দিন। প্রয়োজনে Direct selection tool (A) এর সাহায্যে কিছুটা অ্যাডজাস্টমেন্ট করে নিন।

15

একইভাবে L এর সাথেও এরকম বাড়তি ছাউনী তৈরি করুন।

16

১২. ঘরের পাদদেশে একটি আনুভূমিক রেকটাংগল এমনভাবে আঁকুন যাতে তা ঘরের চেয়ে একটু বড় হয়। এটিকে কিছুটা উপরে তুলে অক্ষর তিনটির নিচের সামান্য অংশকে ঢেকে দিন।

17

১৩. Ctrl+A চেপে পাথফাইন্ডার প্যালেটের Unite বাটনে ক্লিক করুন। পাথফাইন্ডার খুঁজে না পেলে Window>Pathfinder ক্লিক করুন।

18

১৪. লোগো তৈরির প্রক্রিয়া শেষ। এবার একে পছন্দমত রং ও ইফেক্টের মাধ্যমে সৌন্দর্য বৃদ্ধি করুন।
প্রথমবার প্র্যাকটিস করার পর এটি দেখে সরাসরি পেন টুলের সাহায্যে আরেকবার ট্রাই করুন। তাহলে ২য়টি আরও ভালো হবে।

এইচটিএমএল কমেন্ট (HTML Comment)

রাজু (DU)

 

এইচ টি এম এল এ কমেন্ট করার জন্য কমেন্ট ট্যাগ <!-- এবং --> ব্যবহার করা হয়।

HTML Comment Tags এইচটিএমএল কমেন্ট ট্যাগ

HTML source  এ আপনি নিম্নোক্ত syntax ব্যাবহার করে comments করতে পারেনঃ


<!-- এখানে  আপনার Comment লিখুন -->


নোটঃ এখানে অবশ্যই মনে রাখতে হবে যে একটি  বিস্ময় সূচক চিহ্ন (!)  শুরুর ট্যাগ এ ব্যাবহার করা হয়েছে। কিন্তু সমাপ্তি ট্যাগ হিসেবে কোন (!) ব্যবহার করা হয়নি।

 

Comments গুলি browser এ প্রদর্শিত হয় না কিন্তু তারা HTML document এ সাহায্য করে থাকে।

Comments দ্বারা আপনি আপনার HTML এ  notifications and reminders ঠিক করে দিতে পারবেন।

উদাহরনঃ


<!-- এখানে  আপনার Comment লিখুন -->

<p>এখানে  আপনার paragraph লিখুন .</p>

<!-- কোন information মনে রাখার জন্য এখানে যোগ করুন -->


 

 

HTML debugging এর জন্য comment  অসাধারন কাজ করে, কেননা আপনি HTML code line এর বাইরে comment করতে পারেন এবং কমেন্ট দেখে ত্রুটি খুজে বের করতে পারবেন।

উদাহরনঃ


<!-- Do not display this at the moment

<img border="0" src="pic_mountain.jpg" alt="Mountain">

-->


 

 

Conditional Comments (শর্তাধীন Comment)

HTML এ Conditional Comment ব্যাবহারে আপনি বাধার সম্মুখীন হতে পারেনঃ


<!--[if IE 8]>

.... some HTML here ....

endif]-->


Conditional comment সংবলিত HTML tag কেবলমাত্র Internet Explorer দ্বারা ই কার্যকর হতে পারে।

 

Software Program Tags

HTML comment tag গুলি বিভিন্ন HTML software program দ্বারা তৈরি হতে পারে।

উদাহরণসরূপঃ  <!--webbot bot-->  tag টি  HTML comment এর ভিতরে FrontPage এবং Expression Web দ্বারা মোড়ান থাকে।

নিয়ম হিসেবে এইসব tag কে রেখে দেয়া হয় software টিকে সহায়তা করার জন্য, যা দ্বারা এটি তৈরি করা হয়েছে।

AngularJS Templates এর নিরাপত্তা।

URL of translated tutorial
http://sitestree.com/securing-your-angularjs-applications/
Paste written translation here
AngularJS Templates এর নিরাপত্তা।
Md. Shahinoor Islam
যদি আপনি চান তবে আপনি এটা ($templateCache caches templates) ব্যবহার করতে পারেন। প্রত্যেক user কে login করার সময় cache টা remove করতে হবে।
নিচের উদাহরনটি আপনাকে সাহায্য করবে,
Cache-Control: no-cache, no-store, must-revalidate
Pragma : no-cache
Expires : 0
https ব্যবহার snooping এর জন্য সুবিধাজনক , না করলে মাঝখানে কিছু অসুবিধা হতে পারে।
আপনাকে JSON Injection এর আক্রমন প্রতিরোধ করতে হবে।
প্রতিরোধ করতে আপনি নিচের উধাহরনটি লক্ষ্য করুন।
আপনার JSON এর পুর্বে লিখুন এটি )]}’, যদিও এটা বৈধ নয়।
client side থেকে XSS এর আক্রমন দূর করতে হবে।
AngularJS সব HTML প্রদর্শন করে যা ng-bind directive, or template interpolation এর মাধমে text এর ভিতর দেখা দেখা যায় (that is text in {{curly braces}}).

AngularJS এর performance উন্নতি

http://sitestree.com/performance-improvement-of-angularjs-applications-writing-robust-angulajs-applications/
Paste written translation here
AngularJS এর performance উন্নতি
Application: জোরালো AngulaJS application লেখা।
Md. Shahinoor IslamAngularJS এর performance উন্নতি, Application: জোরালো AngulaJS application লেখা।
মুলত আপনার যোগ্যতা পরিমাপ করতে হবে এবং ফলাফলের উপর কৌশল প্রয়োগ করে আবেদন করতে হবে।
আপনার জানাটা ভুল হতে পারে যদি আপনি এটা বাস্তব জীবনে প্রয়োগ না করেন। তাছাড়া যোগ্যতার পরিক্ষায় real অথবা simple Data আপনাকে সাহায্য করতে পারে এটি Application এর উপর নির্ভর করে।এটা ঠিক যে, আমার খুব একটা অভিঞতা নেই কিন্তু সঠিক পরামর্শ হল যে, আপনাকে $digest loops ব্যবহার সম্পর্কে সাবধান হতে হবে। 50 loops or 100 loops এর বেশি পুনরাবৃত্তি আপনার application কে অচল করে দিতে পারে।
$digest loops এর ভিতরের watch number গুলো এবং তাড়াতাড়ি সেগুলো কাজ করতে পারে, এগুলো application এর যোগ্যতার প্রভাব ফেলে দেয়। আপনি number of watches কমাতে পারেন অথবা দ্রুত গতি সুম্পর্ন করতে পারেন। আপনি মনিটর মেমরি ব্যবহার করতে পারেন। মেমরির ব্যবহার কমিয়ে দিলে আপনার application দ্রুতগতি সম্পুর্ন হতে পারে।
ng-repeat directive টি খুব ক্ষমতা সম্পুর্ন। যদি আপনি 100s ধরনের কাজ করার জন্য ng-repeat ব্যবহার করেন তবে এটি আপনার application কে অচল করে দিতে পারে। তাই আপনার collections টি সীমিত করুন অথবা আপনার উদ্দেশ্য সফল করার জন্য custom directives দিয়ে লিখুন। অন্যথায় এমন ভাবে কাজটি করুন যাতে আপনাকে খুব বেশি চাপ প্রয়োগ না করে, যা আপনাকেই ভাবতে হবে

AngularJS এ নিজের/Custom Directives তৈরি। building-your-own-directives-in-angularjs

AngularJS এর মাধ্যমে নিজের Directives তৈরি।
Md. Shahinoor Islamনিজের Directives তৈরি।
HTML উপাদান, মন্তব্য বা CSS classes দিয়ে Directives প্রদর্শন করতে পার। উদাহরনঃ

<my-directive></my-directive>
<input my-directive>
<!– directive: my-directive–>
<input>

একটি Directive এর ধারনা
angular.module(‘app’, []).directive(‘myDir’, function() {
return myDirectiveDefinition;
});

একটি Button Directive লেখা
escribe(‘button directive’, function () {
var $compile, $rootScope;
beforeEach(module(‘directives.button’));
beforeEach(inject(function(_$compile_, _$rootScope_) {
$compile = _$compile_;
$rootScope = _$rootScope_;
}));
it(‘adds a “btn” class to the button element’, function() {
var element = $compile(‘<button></button>’)($rootScope);
expect(element.hasClass(‘btn’)).toBe(true);
});
});
});

button directive ব্যবহার
<button type=”submit”
>Click Me!</button>

একটি Custom Validation Directives প্রবর্তন
একটি Custom Validation directive প্রবর্তন

এই জায়গায় আমাদের একটা test আছে, সুতরাং আমরা directive এর কার্যকারিতা বাস্তবায়ন করতে পারিঃ

myModule.directive(‘validateEquals’, function() {
return {
require: ‘ngModel’,
link: function(scope, elm, attrs, ngModelCtrl) {
function validateEqual(myValue) {
var valid= (myValue === scope.$eval(attrs.validateEquals));
ngModelCtrl.$setValidity(‘equal’, valid);
return valid ? myValue : undefined;
}
ngModelCtrl.$parsers.push(validateEqual);
ngModelCtrl.$formatters.push(validateEqual);
scope.$watch(attrs.validateEquals, function() {
ngModelCtrl.$setViewValue(ngModelCtrl.$viewValue);
});
}
};
});

Angular স্থানীয়করণ (Localization) সমর্থন: AngularJS আন্তর্জাতিক অ্যাপ্লিকেশনের লেখা। Localization Support in Angular : Writing International Applications in AngularJS

URL of translated tutorial
http://sitestree.com/841/
Paste written translation here
Angular স্থানীয়করণ সমর্থন: AngularJS আন্তর্জাতিক অ্যাপ্লিকেশনের লেখা।
Md. Shahinoor IslamAngular স্থানীয়করণ সমর্থন: AngularJS আন্তর্জাতিক অ্যাপ্লিকেশনের লেখা।
AngularJS লাইব্রেরি অধীনে en-US লোকেল সম্পর্কিত তথ্য রাখা হয় যেখানে একটি ফোল্ডার i18n আছে। আপনি একটি ভিন্ন লোকেল ব্যবহার করতে চান তাহলে নিম্নরূপ আপনি এটি করতে পারেন। Fr_ca লোকেলর জন্য সমর্থন lib/angular/angular-locale_fr-ca.js সঙ্গে স্ক্রিপ্ট ট্যাগ লক্ষ্য করুন। নীচে যেভাবে দেয়া আছে JS ফাইল সে ভাবে হতে হবে।
angular.module(‘locale’, [‘ngLocale’]) : module definition with a dependency on the ngLocale
angular.module (‘locale’, [‘ngLocale’]) : ngLocale মডিউলের উপর মডিউলের সংজ্ঞা নির্ভর করে।
<!doctype html>
<html ng-app=”locale”>
<head>
<meta charset=”utf-8″>
<script src=”lib/angular/angular.js”></script>
<script src=”lib/angular/angular-locale_fr-ca.js”></script>
<script src=”locale.js”></script>
</head>
<body ng-controller=”LocaleCtrl”>

</body>

সম্পর্কিত উদাহরণ:
{{now | date:’fullDate’}}সেট হিসাবে সম্পূর্ণ তারিখ ফিরে আসবে লোকেলর উপর ভিত্তি করে
{{100 | currency:’€’}}
{{1000.5 | number}}
অনুবাদ হ্যান্ডলিং: টেক্সট বিভিন্ন ভাষার জন্য অনুবাদ করতে হবে।

প্রাথমিক ধারণা হচ্ছে, বিভিন্ন লোকেইলের জন্য key value pairs সহ আপনার JSON structure থাকতে হবে।আপনি ইউজার লোকেল দিয়ে যেখানে অনুবাদ করতে চাচ্ছেন সেখানে কী গুলো ব্যবহার করুন।

উদাহরনঃ
{
‘crud.user.remove.success': ‘A user was removed successfully.’,
‘crud.user.remove.error': ‘There was a problem removing a user.’
. . .
}
In your HTML, you can write something like below
<span>Hello, !</span>
to
<span>{{‘greetings.hello’ | i18n}}, !</span>

greetings.hello key সহ লোকেলের জন্য আপনার প্রয়োজনীয় JSON আপনি বুঝতে পেরেছেন।

MVVM: মডেল : Angular JS

URL of translated tutorial
http://sitestree.com/mvvm-model-view-viewmodel/
Paste written translation here
MVVM: মডেল দেখুন ViewModel
অনুবাদক শেখ সোয়াইব

MVVM: এই ধরনের Angular.JS এবং Knockout.js হিসেবে
http://en.wikipedia.org/wiki/Model_View_ViewModel
KnockOut.js
http://en.wikipedia.org/wiki/Knockout.js
মার্টিন ফাওলার দ্বারা উপস্থাপনা মডেল
http://martinfowler.com/eaaDev/PresentationModel.html (theory behind: MVVM)

Angular.JS বিষয় : সম্পর্কিত জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক স্টাফ . Angular.JS resources : Related JavaScript framework Stuff

Angular.JS বিষয় : সম্পর্কিত জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক স্টাফ

Source: http://sitestree.com/angular-js-resources-related-javascript-framework-stuff/ (by Sayed Ahmed)
By শেখ সোয়াইব

কেন Angular? এবং কেন Angular না
http://www.sitepoint.com/10-reasons-use-angularjs/
কেন এই Angular.js Rock?
http://angular-tips.com/blog/2013/08/why-does-angular-dot-js-rock/
অনুচ্ছেদ এবং ই এস পি বিভাগের সম্পুর্ন পড়ুন : কেন Augular নয়?কেন নয় BackBone ,কেন নয় Ember । এ সম্প্রর্কিত বিষয় পড়তে এখানে ক্লিক করুন । https://moot.it/blog/technology/frameworkless-javascript.html

এই অনুচ্ছেদটি ও গুরুত্বপুর্ন : http://angular-tips.com/blog/archives/
স্লপ সাইজের ওয়েব ডেভল্ভমেন্ট ট্রেনিং এর সাথে Angular : https://egghead.io/
ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্ট এর সাথে Angular নিয়ন্ত্রণ : http://www.packtpub.com/angularjs-web-application-development/book
CRUD অ্যাপ্লিকেশন Angular ডেমো : https://github.com/angular-app/angular-app
Angular.JS উইকিপিডিয়া : https://github.com/angular/angular.js/wiki

এইচটিএমএল কম্পিউটার কোডের উপাদান (HTML Computer Code Elements)

HTML Computer Code Elements

AbuJubair Mahin

Computer Code

var person = {
     firstName:"John",
     lastName:"Doe",
     age:50,
     eyeColor:"blue"
}

এইচটি এম এল কম্পিউটার কোডের উপাদান (HTML Computer Code Elements)

সাধারণত, এইচটিএমএল পরিবর্তনশীল letter size, এবং পরিবর্তনশীল letter spacing ব্যবহার করে।

কম্পিউটার কোড এর উদাহরণ প্রদর্শনের সময় এটি ঘটা আশানুরূপ নয় ।

সকল <kbd>, <samp>, and <code> উপাদানগুলো স্থায়ী letter size এবং spacing সাপোর্ট করে ।

 

HTML Keyboard Formatting

এইচটিএমএল <kbd> উপাদান কীবোর্ড ইনপুট কে সংজ্ঞায়িত করে:

উদাহরনঃ


<p>To open a file, select:</p>

<p><kbd>File | Open...</kbd></p>


 

ফলাফলঃ


To open a file, select:

File | Open...


 

HTML Sample Formatting

এইচটিএমএল <samp> উপাদান কম্পিউটার আউটপুট কে সংজ্ঞায়িত করে:

উদাহরনঃ


<samp>
demo.example.com login: Apr 12 09:10:17
Linux 2.6.10-grsec+gg3+e+fhs6b+nfs+gr0501+++p3+c4a+gr2b-reslog-v6.189
</samp>


 

ফলাফলঃ


demo.example.com login: Apr 12 09:10:17
Linux 2.6.10-grsec+gg3+e+fhs6b+nfs+gr0501+++p3+c4a+gr2b-reslog-v6.189


 

HTML Code Formatting

এইচটিএমএল <code> উপাদান প্রোগ্রামিং কোড কে সংজ্ঞায়িত করে:

উদাহরনঃ


<code>
var person = { firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"}
</code>


 

ফলাফলঃ


var person = { firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"}


 

<code> উপাদান অতিরিক্ত হোয়াইটস্পেস এবং লাইন ব্রেক সংরক্ষণ করে না:

উদাহরনঃ


<p>Coding Example:</p>

<code>
var person = {
    firstName:"John",
    lastName:"Doe",
    age:50,
    eyeColor:"blue"
}
</code>

 


 

ফলাফলঃ


Coding Example:


var person = {
firstName:"John",
lastName:"Doe",
age:50,
eyeColor:"blue"
}


 

এই সমস্যা সমাধানের জন্য, কোডগুলোকে <pre> এলিমেন্টে এর ভিতরে রাখতে হবে:

উদাহরনঃ


<p>Coding Example:</p>

<code>
<pre>
var person = {
    firstName:"John",
    lastName:"Doe",
    age:50,
    eyeColor:"blue"
}
</pre>
</code>

 

ফলাফলঃ


Coding Example:

var person = {
    firstName:"John",
    lastName:"Doe",
    age:50,
    eyeColor:"blue"
}

 

HTML Variable Formatting

এইচটিএমএল <var> উপাদান গাণিতিক ভেরিয়েবলকে সংজ্ঞায়িত করে:

উদাহরনঃ


<p>Einstein wrote:</p>

<p><var>E = m c<sup>2</sup></var></p>


 

ফলাফলঃ


Einstein wrote:

E = m c2


 

এইচটিএমএল Computer Code এলিমেন্টস

Tag বিবরণ
<code> প্রোগ্রামিং কোড কে সংজ্ঞায়িত করে
<kbd> কীবোর্ড ইনপুট কে সংজ্ঞায়িত করে
<samp> কম্পিউটার আউটপুট কে সংজ্ঞায়িত করে
<var> গাণিতিক ভেরিয়েবল কে সংজ্ঞায়িত করে
<pre> পূর্ববিন্যাসিত টেক্সট কে সংজ্ঞায়িত করে

 

C – Command Line Arguments (কমান্ড লাইন আর্গুমেন্ট)

C - Command Line Arguments

মোঃ আব্দুল্লাহ

একটি সি প্রোগ্রাম রান করার সময় কমান্ড লাইন থেকে কিছু ভেল্যু বা মান পাস করা সম্ভব । এই ভেল্যু বা মান গুলোকে কমান্ড লাইন আর্গুমেন্ট বলা হয় । অনেক সময় এই কমান্ড লাইন আর্গুমেন্ট অনেক গুরুত্বপূর্ণ এবং প্রয়োজনীয় হয়ে উঠে কারন এই কমান্ড লাইন আর্গুমেন্ট দিয়ে একটি সি প্রোগ্রামকে বাহির থেকে নিয়ন্ত্রণ করা যায় যা কিনা প্রোগ্রামের ভিতরের হার্ড কোডেড ভেল্যু বা মান তুলনায় বেশী কার্যকরী।
কমান্ড লাইন আর্গুমেন্ট এর আর্গুমেন্ট গুলি main( int argc, char *argv[]) ফাংশন এর আর্গুমেন্ট হিসেবে ব্যবহৃত হয়ে থাকে, যেখানে argc উল্লেখ করে কতগুলি আর্গুমেন্ট পাঠানো হয়েছে এবং argv[] হল pointer array যা কিনা যেই আর্গুমেন্ট গুলি পাঠানো হয়েছে তার দিকে point করে থাকে । নিম্নে একটি সহজ উদাহরণ তুলে ধরা হল যার দ্বারা পরীক্ষা করা যাবে যে প্রোগ্রামে কোন আর্গুমেন্ট পাঠানো হয়েছে কিনা এবং যদি পাঠানো হয়ে থাকে তাহলে ঐ অনুযায়ী কাজ করাঃ

#include <stdio.h>

int main( int argc, char *argv[] )
{
printf("Program name %s\n", argv[0]);

if( argc == 2 )
{
printf("The argument supplied is %s\n", argv[1]);
}
else if( argc > 2 )
{
printf("Too many arguments supplied.\n");
}
else
{
printf("One argument expected.\n");
}
}

 

উপরের প্রোগ্রামটি কম্পাইল করে যখন একটি কমান্ড লাইন আর্গুমেন্ট দিয়ে যখন রান করা হবে, তখন নিম্নোক্ত আউটপুট দেখাবেঃ
$./a.out testing
The argument supplied is testing

যখন দুইটি কমান্ড লাইন আর্গুমেন্ট দিয়ে যখন রান করা হবে, তখন নিম্নোক্ত আউটপুট দেখাবেঃ
$./a.out testing1 testing2
Too many arguments supplied.

যখন কোন আর্গুমেন্ট না দিয়ে যখন রান করা হবে, তখন নিম্নোক্ত আউটপুট দেখাবেঃ
$./a.out
One argument expected

এইখানে উল্লেখ্য যে, argv[0] তে যেই প্রোগ্রামটি কম্পাইল করে রান করা হবে তার নাম সংরক্ষিত হয়ে থাকবে এবং argv[1] হল pointer যা কিনা প্রথম আর্গুমেন্টকে point করে থাকবে এবং *argv[n] সর্বশেষ আর্গুমেন্টকে point করে থাকবে । যদি কোন আর্গুমেন্ট না পাঠানো হয় তাহলে argc এর মান হবে ১ এবং যদি একটি আর্গুমেন্ট হয় তাহলে argc এর মান হবে ২ ।
কমান্ড লাইন আর্গুমেন্ট এর প্রত্যেকটি আর্গুমেন্ট একটি স্পেস দিয়ে আলাদা করে পাঠানো হয়ে থাকে অথবা যদি কোন আর্গুমেন্টেই স্পেস থাকে তাহলে ডাবল কোটেশন ("") বা সিংগেল কোটেশন ('') দিয়ে পাঠাতে হয় ।
নিম্নের প্রোগ্রামটির মাধ্যমে আমরা প্রোগ্রামটির নাম এবং স্পেসসহ কোন আর্গুমেন্ট যদি দিতে চাই তা কিভাবে দিবো তা দেখবঃ
#include <stdio.h>

int main( int argc, char *argv[] )
{
printf("Program name %s\n", argv[0]);

if( argc == 2 )
{
printf("The argument supplied is %s\n", argv[1]);
}
else if( argc > 2 )
{
printf("Too many arguments supplied.\n");
}
else
{
printf("One argument expected.\n");
}
}

উপরের প্রোগ্রামটি কম্পাইল করে যখন একটি কমান্ড লাইন আর্গুমেন্ট দিয়ে যখন রান করা হবে, তখন নিম্নোক্ত আউটপুট দেখাবেঃ
$./a.out "testing1 testing2"

Progranm name ./a.out
The argument supplied is testing1 testing2

উল্লেখ যে, এইখানে একটি আর্গুমেন্টই স্পেসসহ পাঠানো হয়েছে ।

জাভাস্ক্রিপ্ট রেগুলার এক্সপ্রেশন (JavaScript Regular Expressions in Bangla)

দীপঙ্কর সাহা

 

আজকে আপনাদের মাঝে একটি বিষয় শেয়ার করার জন্য হাজির হলাম।তা হল কিভাবে Java Script Regular  Expressions korte hoi. একটি রেগুলার এক্সপ্রেশন হল একটি অনুসন্ধান প্যাটার্ন যেটা টেক্সট এবং টেক্সট অপারেশন প্রতিস্তাপনের জন্য ব্যাবহার করা হয় বা ব্যাবহার করা যেতে পারে। এই রেগুলার এক্সপ্রেশন হল একটি অক্ষর বা একটি জটিল প্যাটার্ন ও হতে পারে। এই রেগুলার এক্সপ্রেশনটা টেক্সট অনুসন্ধানের সব ধরনের সঞ্চালন এবং টেক্সট অপারেশন প্রতিস্থাপনে ব্যাবহার করা যেতে পারে।

Syntax


Var patt = /bangle.SalearningSchool/ i

 

এই উধাহরনের বিষয় টা ব্যাখ্যা হল  /bangle.SalearningSchool/ i   একটি রেগুলার এক্সপ্রেশন

bangle.SalearningSchool  হল একটি অনুসন্ধান প্যাটার্ন যা অনিসন্ধান বক্স এ ব্যাবহার করা যেতে পারে।আর I হল একটি পরিবর্তক বা অনুসন্ধান বক্স হতে পরিবর্তন হয়।

 

স্ট্রিং মেথড এর ব্যবহার

জাভাস্ক্রিপ্ট, রেগুলার এক্সপ্রেশন এ প্রায়ই দুই স্ট্রিং পদ্ধতি ব্যবহার করা হয়। তা হল search() এবং replace()।

সার্চ মেথড বা পদ্ধতি এমন একটি ম্যাচ অনুসন্ধান করার জন্য একটি অভিব্যক্তি ব্যবহার করে, এবং ম্যাচ অবস্থান প্রদান করে.

রিপ্লেস মেথড বা পদ্ধতি এমন যা প্যাটার্ন প্রতিস্থাপিত হয় যেখানে একটি পরিবর্তিত স্ট্রিং প্রদান করে।

 

রেগুলার এক্সপ্রেশন এর সাথে search() স্ট্রিং এর ব্যবহার

এখানে অনুসন্ধান পদ্ধতি সার্চ যুক্তি হিসাবে একটি স্ট্রিং গ্রহণ করতে হবে. স্ট্রিং যুক্তি একটি রেগুলার এক্সপ্রেশন রূপান্তরিত করা হবে। উদাহরন সরুপ

একটি স্ট্রিং সার্চ এর ব্যাবহার নিচে দেখানো হলঃ


var str = "Visit W3Schools";
var n = str.search(/bangle.SalearningSchool/i);

 

রেগুলার এক্সপ্রেশন এর সাথে পরিবর্তন বা replace() স্ট্রিং এর ব্যবহার

উদাহরন সরুপ একটি স্ট্রিং রিপ্লেস এর ব্যাবহার নিচে দেখানো হলঃ


var str = "Visit Microsoft!";
 var res = str.replace(/bangle.SalearningSchool/i, "bangle.SalearningSchool");

 

রেগুলার এক্সপ্রেশন মোডিফায়ারস

মোডিফায়ারস বর্ণনা
i এটা অসংবেদি বা ইনসেনসিটিভ সঞ্চালন করতে বেবহারিত হয়।
g একটি আন্তর্জাতিক ম্যাচ সঞ্চালন করতে ব্যবহৃত হয়
m একাধিক সঞ্চালন করতে ব্যবহৃত হয়

 

রেগুলার এক্সপ্রেশন প্যাটার্নস

এক্সপ্রেসন্স বর্ণনা
[abc] বন্ধনীর মধ্যে অক্ষর কোন খুঁজুন
[0-9] বন্ধনীর মধ্যে সংখ্যার কোন খুঁজুন
(x/y) পৃথক বিকল্প কোনো খুঁজুন

 

Metacharacters একটি বিশেষ অর্থ দিয়ে অক্ষর

Metacharacters বর্ণনা
/d একটি সংখ্যা খুজা হয়
/s একটি হোয়াইটস্পেস অক্ষর খুঁজুন
/b শুরুতে বা একটি শব্দের শেষে একটি মিল খুঁজুন
/uxxxx হেক্সাডেসিমেল সংখ্যা xxxx দ্বারা নির্দিষ্ট ইউনিকোড অক্ষর খুঁজুন

 

Quantifiers define quantities

Quantifiers বর্ণনা
n+ অন্তত এক এন রয়েছে যে কোনো স্ট্রিং ম্যাচ
n* এন শূন্য বা তার বেশি দৃষ্টিগোচর রয়েছে যে কোনো  স্ট্রিং ম্যাচ
n? এন শূন্য বা একটি ঘটনার মধ্যে রয়েছে যে যেকোনো স্ট্রিং ম্যাচ

 

JavaScript typeof, null, and undefined. জাভাস্ক্রিপ্ট টাইপঅফ, নাল এবং আনডিফাইন্ড

জাভাস্ক্রিপ্ট টাইপঅফ, নাল এবং আনডিফাইন্ড

জাভাস্ক্রিপ্ট টাইপঅফ অপারেটর:
জাভাস্ক্রিপ্টে কোনো ডাটার টাইপ জানার জন্য টাইপঅফ অপারেটর ব্যবহার করা হয়।
উদাহরণ:
typeof "John" // Returns string
typeof 3.14 // Returns number
typeof false // Returns boolean
typeof [1,2,3,4] // Returns object
typeof {name:'John', age:34} // Returns object

নাল:
জাভাস্ক্রিপ্টে নাল মানে কিছুই নয়। এটা এমন কিছুকে বোঝায় যা এখন আর বিদ্যমান নেই।
জাভাস্ক্রিপ্টে নালকে একটি অবজেক্ট হিসেবে বিবেচনা করা হয়।
কোন ভেরিযবলকে নাল হিসেবে ডিক্লেয়ার করে খালি একটি অবজেক্ট তৈরী করা যায়।
var person = null; // Value is null, but type is still an object
একটি ভেরিযবলকে আনডিফাইন্ড হিসেবে ডিক্লেয়ার করেও খালি একটি অবজেক্ট তৈরী করা যায়।
var person = undefined; // Value is undefined, type is undefined

আনডিফাইন্ড:
জাভাস্ক্রিপ্টে আনডিফাইন্ড হলো একটি ভেরিযবল যার কোনো ভেলু নেই।
var person; // Value is undefined, type is undefined
একটি ভেরিযবলকে আনডিফাইন্ড ডিক্লেয়ার করার মাধ্যমেও ভেরিযবলের ভেলু খালি করা যায়।
person = undefined; // Value is undefined, type is undefined

আনডিফাইন্ড এবং নালের মধ্যে পার্থক্য:
typeof undefined // undefined
typeof null // object
null === undefined // false
null == undefined // true

জাভাস্ক্রিপ্ট সিনট্যাক্স (JavaScript Syntax)

জাভাস্ক্রিপ্ট সিনট্যাক্স

জাভাস্ক্রিপ্ট সিনট্যাক্স হলো কিছু নিয়মের সমষ্টি, এই প্রোগ্রাম কিভাবে কাজ করে সিনট্যাক্সের মাধ্যমে তাই নির্দেশ করা হয়।

 

জাভাস্ক্রিপ্ট প্রোগ্রাম

কম্পিউটার প্রোগ্রাম হলো কম্পিউটারের মাধ্যমে কোন কাজ সম্পাদন করার জন্য প্রয়োজনীয় নির্দেশসমূহের লিস্ট। প্রোগ্রামিং লেঙ্গুয়েজের এ সকল নির্দেশসমূহকে বলা হয় স্টেটমেন্ট।
জাভাস্ক্রিপ্টও একটি প্রোগ্রামিং লেঙ্গুয়েজ।
জাভাস্ক্রিপ্টের স্টেটমেন্টগুলোকে সেমিকোলন দ্বারা একটি থেকে অন্যটিকে আলাদা করা হয়।
উদাহরণ:
var x = 5;
var y = 6;
var z = x + y;

জাভাস্ক্রিপ্ট স্টেটমেন্টস

জাভাস্ক্রিপ্ট স্টেটমেন্টে নিম্নের বিষয়গুলো অন্তর্ভূক্ত রয়েছে।
ভেলু, অপারেটর, এক্সপ্রেসন, কীওয়ার্ড এবং কমেন্ট।

জাভাস্ক্রিপ্ট ভেলু

জাভাস্ক্রিপ্টে দুই ধরনের ভেলু রয়েছে: ফিক্সড ভেলু এবং ভেরিয়েবল ভেলু।
ফিক্সড ভেলুকে লিটারেল বলা হয় এবং ভেরিযবল ভেলুকে ভেরিয়েবল বলা হয়।

জাভাস্ক্রিপ্ট লিটারেলস

ফিক্সড ভেলু লেখার সবচেয়ে গুরুত্বপূর্ণ নিয়মটি হচ্ছে:
দশমিকসহ অথবা দশমিক ছাড়া শুধু নাম্বার লিখা।
10.50
1001
স্ট্রিংকে ডাবল কোটেশন অথবা সিঙ্গেল কোটেশনের মধ্যে লেখা।
"John Doe"
'John Doe'
এক্সপ্রেসনে শুধুমাত্র ফিক্সড ভেলু ব্যবহার করা।
5 + 6
5 * 10

জাভাস্ক্রিপ্ট ভেরিযবল

প্রোগ্রামিং লেঙ্গুয়েজে ডাটাকে স্টোর করার জন্য ভেরিযবল ব্যবহার করা হয়।
জাভাস্ক্রিপ্টে ভেরিযবলকে ডিফাইন করার জন্য var কীওয়ার্ড ব্যবহার করা হয়।
ভেরিযবলে ভেলু এসাইন করার জন্য সমান (=) চিহ্ন ব্যবহার করা হয়।
নিচের উদাহরণে x কে ভেরিযবল হিসেবে ডিফাইন করা হয়েছে এবং পরে x ভেরিযবলে ভেলু 6 এসাইন করা হয়েছে।
var x;
x = 6;

জাভাস্ক্রিপ্ট অপারেটর

কোনো ভেলুকে ভেরিযবলে এসাইন করার জন্য জাভাস্ক্রিপ্ট এসাইনমেন্ট অপারেটর ব্যবহার করে।
var x = 5;
var y = 6;
ভেলুর হিসাব করার জন্য জাভাস্ক্রিপ্ট এরেথমেটিক অপারেটর ব্যবহার করে।
(5 + 6) * 10

জাভাস্ক্রিপ্ট কীওয়ার্ডস

কি ধরনের কাজ সম্পাদন করতে হবে তা জাভাস্ক্রিপ্ট কীওয়ার্ডসের মাধ্যমে ডিফাইন করা হয়।
var কীওয়ার্ডের মাধ্যমে নতুন ভেরিযবল তৈরির নির্দেশনা দেয়া হয়।
var x = 5 + 6;
var y = x * 10

জাভাস্ক্রিপ্ট কমেন্টস

জাভাস্ক্রিপ্টের সকল স্টেটমেন্টই সম্পাদিত হয় না। // এর পরের কোড অথবা /* এবং */ এর ভেতরের কোডগুলো কমেন্ট হিসেবে নির্ধারিত হয়। যে কোনো কমেন্টকে বাতিল বলে গন্য করা হয় এবং তা সম্পাদিত হয় না।
var x = 5; // I will be executed
// var x = 6; I will NOT be executed

জাভাস্ক্রিপ্ট একটি কেস সেনসেটিভ লেঙ্গুয়েজ

জাভাস্ক্রিপ্টের সকল আইডেনটিফায়ার কেস সেনসেটিভ। lastName এবং lastname এই ভেরিযবল দুটি সম্পূর্ণ আলাদা।
lastName = "Doe";
lastname = "Peterson";
জাভাস্ক্রিপ্ট কখনোই কীওয়ার্ড var এর পরিবর্তে VAR অথবা Var কে গ্রহণ করবে না।

জাভাস্ক্রিপ্ট কারেক্টার সেট

জাভাস্ক্রিপ্ট ইউনিকোড কারেক্টার সেট ব্যবহার করে যার মধ্যে পৃথিবীর সকল কারেক্টার, পানচুয়েশন, সিম্বল রয়েছে।

জাভাস্ক্রিপ্ট ভেরিয়েবল (JavaScript Variables)

জাবাস্ক্রিপ্ট ভেরিয়েবল

মোঃ রফিকুল ইসলপাম

 

জাবাস্ক্রিপ্ট ভেরিইয়েবল হচ্ছে তথ্য্যের মান সংরক্ষণের জন্য একটি কনটেইনার ।

ভেরিয়েবলস কে নিচে x, y, z  এর সাহায্যে উদাহরণ হিসাবে দেয়া হল ।


Var x = 5;

Var y = 6;

Var z = x+y;


 

উপরের উদাহরণে যাহা বুঝায় তা হলঃ-

X এর মান হচ্ছে 5

Y এর মান হচ্ছে 6

Z এর  মান হচ্ছে 11

 

বীজগণিতের মত

নিচের উদাহরণে ভেরিয়েবল হচ্ছেঃ price1, price2 এবং total


Var  price1 = 5;

Var price2 = 6;

Var total = price1+ price2;


 

প্রোগ্রামিংটা হচ্ছে প্রায় বীজগনিতের মত। আমরা ভেরিয়েবল ব্যবহার করি (যেমন price1 এর মত) মূল্য  নির্ধারণের জন্য ।

প্রোগ্রামিংটা হচ্ছে প্রায় বীজগনিতের মত। আমরা এক্সপ্রেশনে ( যেমন total=price1+price2) এ ভেরিয়েবল ব্যবহার করি ।

 

জাভাস্ক্রিপ্ট শনাক্তকারী JavaScript Identifiers

সকল জাভস্ক্রিপ্ট ভেরিয়েবলকে অবশ্যিই অনন্য নাম দ্বারা চিহ্নিত করতে হবে।

এই অনন্য নামগুলোকে বলা হয় আইডেন্টিফায়ার (শনাক্তকারী)

আইডেন্টিফায়ার ছোট নাম দ্বারা (যেমন x এবং y) অথবা বিস্তারিতভাবে (যেমন age, sum, totalVolume) চিহ্নিত করা যেতে পারে।

ভেরিয়েবল এর নামের কাঠামোর সাধারণ নিয়ম হচ্ছে (অনন্য আইডেন্টিফায়ার):

  • নামে অক্ষর, সংখ্যা, আন্ডারস্কোর(_), এবং ডলার ($) এর চিহ্ন ব্যবহার করা যেতে পারে ।
  • নাম অবশ্যই অক্ষর দ্বারা শুরু করতে হবে।
  • নাম $ এবং _ চিহ্ন দ্বারাও শুরু করা যেতে পারে । (কিন্তু আমরা এই টিউটোরিয়াল এ এগুলো ব্যবহার করিনি।)
  • নাম কেস সংবেদনশীল (y এবং Y একই ভেরিয়েবল নয়)
  • সংরক্ষিত শব্দ (যেমন জাভাস্ক্রিপ্ট কীওয়ার্ড) নাম হিসাবে ব্যবহার করা যাবে না।

 

অ্যাসাইনমেন্ট অপারেটর

জাভাস্ক্রিপ্ট এ সমান চিহ্ন (=) হচ্ছে অ্যাসাইনমেন্ট অপারেটর, সমান সমান (equal to) অপারেটর নয়।

এটি বীজগণিতের নিয়ম মেনে চলে না। নিচের উদাহরণটি বীজগণিতে কোন অর্থ বহন করে না।


x = x + 5


জাভাস্ক্রিপ্টে এটি যথাযথ অর্থ বহন করে: এটি x এর মান x + 5 নির্ধারণ করে ।

(এটি x + 5 এর মান নির্ণয় করে এবং x এর স্থলে উক্ত মান বসায়। ফলে x এর মান 5 বৃদ্ধি পেয়েছে।)

নোট: “সমান সমান” (equal to) অপারেটর লেখার জন্য জাভাস্ক্রিপ্টে == ব্যবহার করা হয়।

জাভাস্ক্রিপ্ট ডেটা টাইপ

জাভাস্ক্রিপ্ট ভেরিয়েবল সংখ্যা যেমন 100 এবং টেক্সট যেমন "John Doe" ধারণ করতে পারে।

প্রোগ্রামিং এ টেক্সট এর মানকে টেক্সট স্ট্রিং বলা হয়।

জাভাস্ক্রিপ্ট অনেক ধরণের ডেটা পরিচালনা করতে পারে। কিন্তু এখনকার মত সংখ্যা এবং স্ট্রিং নিয়ে ভাবুন।

স্ট্রিং ডবল বা সিঙ্গেল কোটেশন এর ভিতরে লিখা হয়। সংখ্যা লিখতে কোন কোটেশন লাগে না।

যদি আপনি কোন সংখ্যার দুপাশে কোটেশন দেন তাহলে এটি স্ট্রিং হিসেবে বিবেচিত হবে।

উদাহরণ


var pi = 3.14;
var person = "John Doe";
var answer = 'Yes I am!';


 

 

জাভাস্ক্রিপ্ট ভেরিয়েবল ঘোষণা (তৈরি) করা

জাভাস্ক্রিপ্ট এ ভেরিয়েবল তৈরি করাকে বলা হয় ভেরিয়েবল ডিক্লেয়ার করা।

var কীওয়ার্ড এর সাহায্যে জাবাস্ক্রিপ্টে ভেরিয়েবল ডিক্লেয়ার করা যায়:


var carName;


ডিক্লিয়ারেশন করার পর ভেরিয়েবলটি খালি অবস্থায় থাকে (এর কোন মান নেই)
ভেরিয়েবল এর মান নির্ধারণের জন্য সমান চিহ্ন ব্যবহার করতে হয়:


carName = "Volvo";


আপনি ভেরিয়েবল ডিক্লেয়ার করার সময়ও মান নির্ধারণ করে দিতে পারেন:


var carName = "Volvo";


নিচের উদাহরণে আমরা একটি ভেরিয়েবল তৈরি করেছি এবং এর মান "Volvo" নির্ধারণ করে দিয়েছি।
এরপর id="demo" এর মাধ্যমে একটি এইচটিএমএল এর প্যারাগ্রাফের ভিতরে এর মান প্রদর্শন করেছি।


<p id="demo"></p>
<script>
var carName = "Volvo";
document.getElementById("demo").innerHTML = carName;
</script>

 

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

 

একটি স্টেটমেন্ট, অনেকগুলো ভেরিয়েবল

আপনি একটি স্টেটমেন্ট এর মধ্যে অনেকগুলো ভেরিয়েবল ডিক্লেয়ার করতে পারেন।

স্টেটমেন্টটি var দিয়ে শুরু করুন এবং ভেরিয়েবলগুলো কমা দিয়ে পৃথক করুন:


var person = "John Doe", carName = "Volvo", price = 200;


ডিক্লেয়ারেশন একাধিক লাইনে ভেঙ্গেও লেখা যেতে পারে:


var person = "John Doe",
carName = "Volvo",
price = 200;


মান = অনির্দিষ্ট

কম্পিউটার প্রোগ্রাম এ প্রায়শই মান ছাড়াই ভেরিয়েবল ডিক্লেয়ার করা হয়। এই মান এমনকিছু যা নির্ণয় করে পাওয়া যাবে বা এমনকিছু যা পরবর্তীতে নির্ধারণ করে দেয়া হবে, যেমন ব্যবহারকারীর ইনপুট।

মান ব্যতীত কোন ভেরিয়েবল ডিক্লেয়ার করলে তা অনির্দিষ্ট (undefined) হিসেবে থাকে।

স্টেটমেন্টটি কার্যেপরিণত করার পর carName ভেরিয়েবলটির মান অনির্দিষ্ট অবস্থায় আছে:


var carName;


 

 

জাভাস্ক্রিপ্ট ভেরিয়েবল পূণ-ডিক্লেয়ার করা

যদি আপনি কোন ভেরিয়েবলকে পুণ-ডিক্লেয়ার করেন তাহলে এর মান অপরিবর্তিত অবস্থায় থোকে।
স্টেটমেন্টটি কার্যে পরিণত করার পরও carName ভেরিয়েবলটির মান এখনও "Volvo" ই আছে।
যেমন:


var carName = "Volvo";
var carName;


গাণিতিক জাভাস্ক্রিপ্ট

বীজগণিতিক নিয়ম অনুসারে জাভাস্ক্রিপ্ট ভেরিয়েবল দিয়ে = এবং + এর মতো অপারেটর দিয়ে গাণিতিক কাজগুলো করা যায়:


var x = 5 + 2 + 3;


আপনি স্ট্রিংও ব্যবহার করতে পারেন, কিন্তু সেগুলো শৃঙ্খলাবদ্ধ হতে হবে (added end-to-end)।

 

এইচটিএমএল এর কোটেশন (HTML Quotation and Citation Elements)

HTML Quotation and Citation Elements

শরিফুল ইসলাম
Job category-Php Coder
Email-bappiislam1988@gmail.com
Mob-01722806467

 

এইচটিএমএল এর কোটেশন (HTML Quotation and Citation Elements)

 

এইচটিএমএল <q> সংক্ষিপ্ত উদ্ধৃতি এর জন্য

সংক্ষিপ্ত উদ্ধৃতি এর জন্য এর জন্য <q> এলিমেন্ট ব্যবহার করা হয়। ব্রাউজার নিজে নিজে এই উদ্ধৃতির চিহ্ন বসিয়ে দেয়।

উদাহরণঃ


<p>WWF's goal is to: <q>Build a future where people live in harmony with nature.</q></p>



ফলাফলঃ


WWF's goal is to: Build a future where people live in harmony with nature.


 

এইচটিএমএল <blockquote> বড় উদ্ধৃতি এর জন্য

বড় উদ্ধৃতর জন্য <blockquote> ব্যবহার করা হয়। ব্রাউজার সাধারণত <blockquote> এর ভিতরের অংশ প্রদর্শন করে।

উদাহরণ


<p>Here is a quote from WWF's website:</p>
<blockquote cite="http://www.worldwildlife.org/who/index.html">
For 50 years, WWF has been protecting the future of nature.
The world's leading conservation organization,
WWF works in 100 countries and is supported by
1.2 million members in the United States and
close to 5 million globally.
</blockquote>


ফলাফলঃ


Here is a quote from WWF's website:

For 50 years, WWF has been protecting the future of nature.
The world's leading conservation organization,
WWF works in 100 countries and is supported by
1.2 million members in the United States and
close to 5 million globally.


 

সংক্ষিপ্ত রূপ প্রকাশের জন্য এইচটিএমএল <abbr> এর ব্যবহার

কোন কিছুর সংক্ষিপ্ত রূপ প্রকাশ করার জন্য এইচটিএমএল এর <abbr> ব্যবহার করা হয়। ব্রাউজারে উক্ত আন্ডার লাইন করা শব্দ/শব্দসমষ্টি এর উপর মাউস পয়েন্টার নিলে উক্ত শব্দ/শব্দসমষ্টিি এর সম্পর্কিত বিস্তারিত তথ্য প্রদান করে। ফলে এটি ব্রাউজার, অনুবাদ এবং search engine এর ক্ষেত্রে গুরুত্তপূর্ণ তথ্য দেয়।

উদাহরণ


<p>The <abbr title="World Health Organization">WHO</abbr> was founded in 1948.</p>


 

ফলাফলঃ


The WHO was founded in 1948.


 

যোগাযোগ এর ঠিকানা প্রকাশে এইচটিএমএল <address>

কোন আর্টিকেল এর মালিক এর যোগাযোগ এর তথ্য দেওয়ার ক্ষেত্রে আমরা <address> ব্যবহার করব। সাধারনত এটি ইতালিক আকারে দেখায়। প্রায় প্রত্যেক ব্রাউজার কোন লেখার শুরুতে এবং শেষে লাইন ব্রেক যুক্ত করে

উদাহরণঃ


<address>

Written by Jon Doe.<br>
Visit us at:<br>
Example.com<br>
Box 564, Disneyland<br>
USA
</address>


ফলাফলঃ

Written by Jon Doe.Visit us at:Example.comBox 564, DisneylandUSA

 

কাজের শিরোনাম লেখার জন্য <cite>

কোন কাজের শিরোনাম দেওয়ার ক্ষেত্রে আমরা <cite> ব্যবহার করব। প্রায় প্রত্যেক ব্রাউজার সাধারনভাবে এটিকে ইতালিক এ প্রদর্শন করে।

উদাহরণ


<p><cite>The Scream</cite> by Edward Munch. Painted in 1893.</p>


 

ফলাফলঃ


The Scream by Edward Munch. Painted in 1893.


 

এইচটিএমএল <bdo>

দ্বি মুখী লেখার জন্য এই উপাদান ব্যবহার করা হয়। যদি এটি ব্রাউজার সাপোর্ট করে তাহলে লেখাকে ডান পাস থেকে বাম দিকে অল্টাভাবে প্রদর্শন করে।

উদাহরণঃ


<bdo dir="rtl">This text will be written from right to left</bdo>


 

ফলাফলঃ


This text will be written from right to left


 

 

এইচটিএমএল উদ্ধৃতি, তলব এবং ডেফিনিশন এলিমেন্ট এর নাম এবং তাদের বর্ণনা নিচে দেওয়া হলঃ
ট্যাগ বর্ণনা
<abbr> সংক্ষিপ্ত রূপ বুঝায়
<address> কোন ডকুমেন্ট এর লেখকের যোগাযোগের ঠিকানা প্রকাশ করতে ব্যবহৃত হয়
<bdo> টেক্সট এর অভিমুখ পরিবর্তন করার জন্য
<blockquote> কটেশন মার্ক যুক্ত অংশ যা অন্য কোন উৎস থেকে এসেছে
<dfn> কোন শব্দের সংজ্ঞা
<q> সংক্ষিপ্ত ইনলাইন কোটেশন এর ক্ষেত্রে।
<cite> কোন কাজের শিরোনাম।

 

 

 

এইচটিএমএল এর টেক্সট ফরমেটিং (HTML Text Formatting Elements)

HTML Text Formatting Elements

শরিফুল ইসলাম
Job category-Php Coder
Email-bappiislam1988@gmail.com
Mob-01722806467

এইচটিএমএল ফরম্যাটিং elements (HTML Formatting Element)

গত অধ্যায়ে আপনারা জেনেছেন, HTML Style Attribute দ্বারা কিভাবে HTML Style কে পরিবর্তন করা যায়।

এ অধ্যায়ে আমরা HTML Formatting Element সম্পর্কে জানব। নিম্নে HTML Text  Formatting  Elements গুলোকে উদাহরণসহ তুলে ধরা হল-

এইচটিএমএল এর কিছু গুরুত্তপূর্ণ উপাদান আছে যা দিয়ে টেক্সট কে বিভিন্নরুপে সাজানো যায়।

যেমন আমরা বোল্ড এবং ইতালিক টেক্সট পাওয়ার জন্য ব্যবহার করব <b> এবং <i>। ফরম্যাটিং উপাদান দ্বারা কি ধরনের টেক্সট হতে পারে তা নিচে দেওয়া হল

  • Bold text
  • Important text
  • Italic text
  • Emphasized text
  • Marked text
  • Small text
  • Deleted text
  • Inserted text
  • Subscripts
  • Superscripts

 

এইচটিএমএল Bold এবং strong ফরম্যাট এর উদাহরণ

<b> এলিমেন্ট Text কে বোল্ড করে, Text কে কোন বিশেষ গুরুত্ব প্রদান করে না।

উদাহরণঃ


<!DOCTYPE html>
<html>
<body>

<p>This text is normal.</p>

<p><b>This text is bold.</b></p>

</body>
</html>


 

ফলাফলঃ


This text is normal.

This text is bold.


 

এইচটিএমএল এর <strong> এলিমেন্ট strong টেক্সট ডিফাইন করে যা শব্দ বা বাক্যটিকে বিশেষ গুরুত্ব প্রদান করে।

উদাহরণঃ


<p><strong>This text is strong</strong>.</p>


 

ফলাফলঃ


This text is strong.


 

 

এইচটিএমএল italic এবং emphasized ফরম্যাট

এইচটিএমএল এ <i> উপাদান দিয়ে ইতালিক টেক্সট ডিসপ্লে করা হয় কোন অতিরিক্ত গুরুত্ত প্রদান করা ব্যতীত।

উদাহরণঃ


<p><i>This text is italic</i>.</p>


 

ফলাফলঃ


This text is italic.


 

গুরুত্ব সহকারে emphasized টেক্সট দেখানোর জন্য <em> উপাদান ব্যবহার করা হয়

উদাহরণঃ


<p><em>This text is emphasized</em>.</p>


 

ফলাফলঃ


This text is emphasized.


 

দ্রষ্টব্য: ব্রাউজার গুলো <strong> কে <b> এবং <em> কে <i> আকারে ডিসপ্লে করে
যদিও এই ট্যাগ গুলোর মধ্যে অর্থগত ভিন্নতা রয়েছেঃ এখানে <b> এবং <i> বোল্ড এবং ইতালিক টেক্সট বুঝায় কিন্ত <strong> এবং <em> ট্যাগ বুঝায় যে টেক্সগুলো গুরুত্বপূর্ণ।

 

 এইচটিএমএল small ফরম্যাটিং

<small> ট্যাগ ব্যবহার করে এইচটিএমএল এ ছোট আকারের লেখা দেখানো যায়

উদাহরণ


<h2>HTML <small>Small</small> Formatting</h2>


 

ফলাফলঃ


HTML Small Formatting


 

 

এইচটিএমএল marked ফরম্যাটিং:

হাইলাইট করা কোন টেক্সট ডিসপ্লে করার জন্য ব্যবহার করা হয় <mark> ট্যাগ

উদাহরণ


<h2>HTML <mark>Marked</mark> Formatting</h2>


 

ফলাফলঃ


HTML Marked Formatting


 

 

এইচটিএমএল deleted ফরম্যাটিং

কোন টেক্সট কে বাদ দেয়া বা মুছে ফেলা হয়েছে বুঝাতে টেক্সট এর গায়ে কাটা চিহ্ন দেখানোর জন্য <del> ট্যাগ ব্যবহার করা হয় ।

উদাহরণ


<p>My favorite color is <del>blue</del> red.</p>


 

ফলাফলঃ


My favorite color is blue red.


 

এইচটিএমএল inserted ফরম্যাটিং

কোন নতুন টেক্সট যুক্ত করা হয়েছে বূঝাতে টেক্সট এর নিচে দাগ দেখানোর জন্য আমরা <ins> ট্যাগ ব্যবহার করা হয়।

উদাহরণ


<p>My favorite <ins>color</ins> is red.</p>


 

ফলাফল


My favorite color is red.


 

এইচটিএমএল subscripts ফরম্যাটিং

সাধারন লাইনের নিচে কোন টেক্সট কে ডিসপ্লে করার জন্য আমরা <sub> ট্যাগটি ব্যবহার করব

উদাহরণ


<p>This is <sub>subscripted</sub> text.</p>


 

ফলাফলঃ


This is subscripted text.


 

 

এইচটিএমএল superscripts ফরম্যাটিং

সাধারন লাইনের উপরে কোন টেক্সট কে দেখানোর জন্য আমরা <sup> এই ট্যাগ টি ব্যবহার করা হয়

উদাহরণ


<p>This is <sup>superscripted</sup> text.</p>


 

ফলাফলঃ


This is superscripted text.


 

 

এইচটিএমএল এর টেক্সট ফরম্যাটিং এর জন্য ট্যাগ গুলো নিচে পর্যায় ক্রমে দেখানো হলঃ

 

Tag Description (বর্ণনা)
<b> কোন text কে bold করতে এ tag ব্যবহার করা হয়।
<strong> গুরুত্বপূর্ণ Text কে তুলে ধরতে এই tag ব্যবহৃত হয়।
<i> কোন text কে italic করতে এই tag ব্যবহৃত হয়।
<em> Emphasized  text কে তুলে ধরতে এটি ব্যবহৃত হয়।
<small> ছোট কোন Text কে তুলে ধরা এই tag এর দ্বারা।
<u> Text কে underline করতে একে ব্যবহার করা হয়।
<mark> কোন text কে হাইলাইট করতে <mark> tag ব্যবহার করা হয়।
<del> Text কে remove করতে এই tag ব্যবহৃত হয়।
<ins> কোন text কে add করতে এটি ব্যবহৃত হয়।
<sub> Subscripted  text কে চিহ্নিত করতে এই element ব্যবহৃত হয়।
<sup> Superscripted  text কে চিহ্নিত করতে এই element ব্যবহৃত হয়।

 

এইচটিএমএল এর স্টাইল (HTML Styles)

এইচটিএমএল এর স্টাইল (HTML Styles)

নাম-শরিফুল ইসলাম
Job category-PHP Coder
Email-bappiislam1988@gmail.com
Mob-01722806467
বিষয়- HTML Styles

এইচটিএমএল স্টাইল

প্রত্যেকটি এইচটিএমএল উপাদানের জন্য একটি ডিফল্ট বা নির্দিষ্ট স্টাইল থাকে পিছনের কালার বা ব্যাকগ্রাউন্ড কালার সাদা এবং টেক্সট এর কালার কালো। স্টাইল attribute এর মাধ্যমে আমরা এই ডিফল্ট কালার কে পরিবর্তন করতে পারি। নিচের উদাহরণ এ ব্যাকগ্রাউন্ড কালার ডিফল্ট সাদা থেকে light gray কালার এ পরিবর্তনকরা হয়েছে।

উদাহরণ


<!DOCTYPE html>
<html>
<body style="background-color:lightgrey">

<h1>This is a heading</h1>

<p>This is a paragraph.</p>

</body>
</html>


 

This is a heading

This is a paragraph.

Bgcolor attribute পুরাতন এইচটিএমএল ভার্সন এ সাপোর্ট করে কিন্তু এইচটিএমএল ৫ এ সাপোর্ট করে না

এইচটিএমএল স্টাইল attribute

এইচটিএমএল স্টাইল attribute নিম্নোক্ত syntax মেনে চলে


style="property:value"


এই প্রপার্টি হল সিএসএস এর প্রপার্টি এবং ভ্যালু হল সিএসএস এর ভ্যালু।

 

এইচটিএমএল টেক্সট কালার

এইচটিএমএল এর টেক্সট কালার পরিবর্তন করার জন্য color প্রপার্টি ব্যবহার করা হয়।
উদাহরণ


<body>
<h1 style="color:blue">This is a heading
<p style="color:red">This is a paragraph.</p>
</body>


 

ফলাফল


This is a heading

This is a paragraph.


 

এইচটিএমএল ফন্টস

Font-family প্রপার্টি দ্বারা ফন্টের ধরন পরিবর্তন করা হয়।
উদাহরণ


<body>
<h1 style="font-family:verdana">This is a heading</h1>
<p style="font-family:courier">This is a paragraph.</p>
</body>


 

 

ফলাফল


This is a heading

This is a paragraph.


পুরাতন এইচটিএমএল এ <font> ট্যাগ সাপোর্ট করে কিন্তু এইচটিএমএল ৫ এ সাপোর্ট করে না।

 

এইচটিএমএল টেক্সট সাইজ

Font-size প্রপার্টি দ্বারা টেক্সট এর আকার পরিবর্তন করা হয়।
উদাহরণ


<body>
<h1 style="font-size:300%">This is a heading</h1>
<p style="font-size:160%">This is a paragraph.</p>
</body>


 

ফলাফল


This is a heading

This is a paragraph.


 

এইচটিএমএল টেক্সট alignment

Text-align প্রপার্টি দ্বারা টেক্সট horizontal ভাবে কোন দিকে অবস্থান করবে তা নির্দেশ দেওয়া হয়
উদাহরণ


<body>
<h1 style="text-align:center">Centered Heading</h1>
<p>This is a paragraph.</p>
</body>


 

 

ফলাফল


 

Centered Heading

This is a paragraph.


 

<center> ট্যাগ পুরাতন এইচটিএমএল ভার্সন এ কাজ করে নতুন এইচটিএমএল এ কাজ করে না।

 

একনজরে প্রপার্টি গুলো

• স্টাইল attribute এর ব্যবহার

• background-color এর ব্যবহার

• color এর সাহায্যে টেক্সট কালার এর ব্যবহার

• টেক্সট এর ফন্ট এর জন্য font-family এর ব্যবহার

• টেক্সট এর আকার এর জন্য font-size এর ব্যবহার

এবং

• text-align এর ব্যবহার।

এএসপি ডট নেট এমভিসি ASP.NET MVC কন্ট্রোলার

রিদওয়ান বিন শামীম
এএসপি ডট নেট এমভিসিতে কন্ট্রোলার যোগ করতে যে প্রক্রিয়া প্রয়োজন তা অনেকটা এরকম, প্রথমে কন্ট্রোলার ফোল্ডার তৈরি করতে হবে। কন্ট্রোলার ফোল্ডারে কন্ট্রোলার ক্লাসেস (controller classes) থাকে, যা ব্যবহারকারীর ইনপুট ও রেসপন্স নির্ধারণ করে। MVC তে সব কন্ট্রোলারের নামের শেষে "Controller"এক্সটেনশন থাকতে হয়। উদাহরণ স্বরূপ বলা যায়
ভিজুয়াল ওয়েব ডেভলপাররা কোন ফাইল তৈরি করলে : হোমপেজ ও এবাউট পেজের নাম দেবে HomeController.cs এবং লগ অন পেজের নাম দেবে AccountController.cs । যেটা সার্ভারের ডিফল্ট ডিরেক্টরিতে "default.asp" নামে দেখানো হবে। কিন্তু MVC framework এ কন্ট্রোলার ক্লাসের মাধ্যমে এই কাজটি করা হয়। কন্ট্রোলার দ্বারা ডাটা, রিকুয়েস্ট, ইনপুট ও রেসপন্স নির্ধারণ করা হয়। হোম কন্ট্রোলার ফাইল ইনডেক্স ও এবাউট কন্ট্রোলদুটি ঠিক রাখে। HomeController.cs ফাইল যে ধরণের কোড ব্যবহার করে তা নিচে দেয়া হল। using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcDemo.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{return View();}

public ActionResult About()
{return View();}
}
}
ভিউ ফোল্ডারের Index.cshtml এবং About.cshtml ফাইল গুলো কন্ট্রোলারের ActionResult views Index() এবং About() in the controller ইত্যাদি নির্দেশ করে।

জাভাস্ক্রিপ্ট বলেন্স (JavaScript Booleans)

শরিফুল ইসলাম
Job category-Php Coder

 

Javascript বুলিয়ান এ মাত্র দুটি ভ্যালু আছে সত্য অথবা মিথ্যা (true or false)

 

বুলিয়ান ভ্যালু

প্রায়সময় প্রোগ্রামিং এ আপনার এমন ধরনের ডাটা টাইপ এর দরকার পরতে পারে যাতে একটি বা দুটি ভ্যালু থাকতে পারে যেমন

  • Yes/no
  • On/off
  • True/false

এইজন্য javascript এ বুলিয়ান ডাটা টাইপ আছে যেমন true এবং false

 

Boolean() ফাংশন

কোন একটি এক্সপ্রেশন বা একটি variable সত্য কিনা তা Boolean() ফাংশন ব্যবহার করে বাহির করা সম্ভব।

উদাহরণ

Boolean(10 > 9) সত্য দেখাবে

 

আরও যদি সোজাভাবে দেখি

উদাহরণ

10 > 9) সত্য দেখাবে

 

Comparisons এবং conditons

উদাহরনের কিছু তালিকা

অপারেটর

বর্ণনা

উদাহরণ

== equal to if (day == "Monday")
> greater than if (salary > 9000)
< less than if (age < 18)

 

বাস্তব ভ্যালু এর সাথে সবকিছু সত্য :

উদাহরণ


 100

3.14

-15

"Hello"

"false"

7 + 1 + 3.14

5 < 6

 

বাস্তব ভ্যালু ছাড়া সবকিছু মিথ্যা

বুলিয়ান ভ্যালু 0 হচ্ছে false
উদাহরণ


var x = 0;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু -0 হচ্ছে false
উদাহরণ


 var x = -0;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু “ফাকা” হচ্ছে false
উদাহরণ


var x = “”;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু undefined হচ্ছে false
উদাহরণ


var x ;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু null হচ্ছে false
উদাহরণ


var x = null;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু false হচ্ছে false
উদাহরণ


var x = false;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু NaN হচ্ছে false
উদাহরণ


var x = 10/”H”;
 Boolean(x);// false আসবে

 

বুলিয়ান প্রপার্টিজ এবং মেথড

প্রিমিটিভ ভ্যালু যেমন true or false, এদের কোন প্রপার্টিজ বা মেথড হয় না (কারন তারা কোন অবজেক্ট নয়)। কিন্তু javascript এ প্রিমিটিভ ভ্যালুতে প্রপার্টিজ এবং মেথড আছে। কারন javascript প্রিমিটিভ ভ্যালুকে অবজেক্ট হিসেবে গ্রহন করে যখন প্রপার্টিজ এবং মেথড গণনা করা হয়।

জাভাস্ক্রিপ্ট স্টেটমেন্ট (JavaScript Statements)

জাভাস্ক্রিপ্ট স্টেটমেন্ট (JavaScript Statements)

শরিফুল ইসলাম
Job category-Php Coder

 

এইচটিএমএল এ javascript statement হল কিছু নির্দেশনা যা ওয়েব ব্রাউজার দ্বারা গণনা করা হয়।

 

জাভাস্ক্রিপ্ট স্টেটমেন্ট Javascript statements

এই statement ব্রাউজার কে বলবে এইচটিএমএল এর একটি উপাদান id=”demo” এর মধ্যে Hello Dolly প্রিন্ট করার জন্য
উদাহরণ


document.getElementById("demo").innerHTML = "Hello Dolly.";


জাভাস্ক্রিপ্ট প্রোগ্রাম

প্রায় প্রত্যেক javascript প্রোগ্রাম এ অনেকগুলো statement থাকে । এই statement গুলো একের পর এক গণনা করে। এই উদাহরণ এ x,y,z এর ভ্যালু দেওয়া আছে , সবশেষে z প্রিন্ট করবে
উদাহরণ


var x = 5;
var y = 6;
var z = x + y;
document.getElementById("demo").innerHTML = z;


নোট: javascript প্রোগ্রামস (এবং javascript statements) কে বলা হয় javascript কোড।

 

 

সেমিকোলন  ;

সেমিকোলন javascript statement কে আলাদা করে । প্রত্যেকটি statement এর পরে সেমিকোলন যোগ করতে হয়।


a = 5;
b = 6;
c = a + b;


যখন আমরা সেমিকোলন ব্যবহার করব statement গুলোকে এক লাইনে লেখা যাবে


a = 5; b = 6; c = a + b;


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

 

জাভাস্ক্রিপ্ট ফাঁকা স্থান Javascript white space

Javascript একইসাথে একাধিক ফাকা স্পেস বাতিল করে । আমরা জাবাস্ক্রিপ্টকে সহজে পাঠ্য করার জন্য দরকার অনুযায়ী স্পেস যোগ করতে পারি।

যেমন


var person = "Hege";
var person="Hege";
JavaScript Line Length and Line Breaks:


 

জাভাস্ক্রিপ্ট লাইন এর দৈর্ঘ্য এবং লাইন ব্রেক

সবচেয়ে বেশি সুপাঠ্য করার জন্য প্রোগ্রামার রা একটি লাইনে ৮০ ক্যারেক্টার এর বেশি কোন কোড লিখেন না। যদি javascript statement একটি লাইনে না হয় তবে অপারেটর এর পরে ভেঙে নতুন লাইনে লেখা যাবে
উদাহরণ


document.getElementById("demo").innerHTML =
"Hello Dolly.";


 

Javascript কোড ব্লক

কোড ব্লক এর ভিতর javascript statements গুলো একসাথে গ্রুপ হিসেবে হতে পারে, যা দ্বিতীয় বন্ধনীর {….} ভিতর থাকবে। কোড ব্লক এর লক্ষ্য হল একসাথে statements গুলো গণনা করা। javascript ফাংশন এ এক জায়গায় ব্লক এর মধ্যে গ্রুপ statement গুলো একসাথে খুজে পাবেন।
উদাহরণ


function myFunction() {
     document.getElementById("demo").innerHTML = "Hello Dolly.";
     document.getElementById("myDIV").innerHTML = "How are you?";
 }


 

জাভাস্ক্র্টি কীওয়ার্ড Javascript keywords

javascript statement কোন না কোন কি-ওয়ার্ড দিয়ে শুরু হয়। যাতে সে সঠিকভাবে পারফর্ম করতে পারে। এদের লিস্টগুলি নিচে দেওয়া হল

break কোন সুইচ বা লুপ কে নষ্ট করে
continue একটি লুপ থেকে জাম্প করে আবার উপর থেকে শুরু করে
debugger javascript এর গননাকে থামিয়ে দেয়, ডিবাগিং ফাংশন কাল করে (যদি থাকে)
do ... while- একটি ব্লক statement কে গণনা করে এবং ব্লক কে পুনরাবৃত্তি করে যতক্ষণ না কন্ডিশন সত্য হয়।
for কন্ডিশন সত্য করার ক্ষেত্রে কোন ব্লক এর statement কে চিহ্নিত করে এবং গণনা করে
function একটি ফাংশন ঘোষণা করে
if ... else কন্ডিশন অনুযায়ী কোন ব্লক এর statement কে চিহ্নিত করে এবং গণনা করে
return একটি ফাংশন থেকে বের হয়ে যায়
switch বিভিন্ন কেস অনুযায়ী কোন ব্লক এর statement কে চিহ্নিত করে এবং গণনা করে
try ... catch কোন ব্লক statement এর এরর নিয়ন্ত্রণ করে
var-variable ভেরিয়েবল ঘোষণা করে

 

জাভাস্ক্রিপ্ট সুইচ বিবৃতি (JavaScript Switch Statement in Bangla)

শরিফুল ইসলাম
Job category-Php Coder

ভিন্ন ভিন্ন শর্তে ভিন্ন ভিন্ন কাজ পারফর্ম করার জন্য এই switch statement ব্যবহার করা হয়।

জাভাস্ক্রিপ্ট সুইচ বিবৃতি

Switch statement এর মাধ্যমে অনেকগুলো ব্লক কোড থেকে শর্ত অনুযায়ী একটি কোড পছন্দ করবে এবং সে অনুযায়ী কাজ করবে

Syntax


switch(expression) {
    case n:
        code block
        break;
    case n:
        code block
        break;
    default:
        default code block
}

  • এই expression একবার মূল্যায়ন করা হয়
  • এই expression যতগুলো কেস আছে তাদের মধ্যে তুলনা করে
  • যদি কোনটা মিলে যায় তবে তবে সেই কোড গণনা করে।

 

উদাহরণ

সপ্তাহের দিনের সংখ্যা দিয়ে আমরা সপ্তাহের নাম বের করব Sunday=0, Monday=1, Tuesday=2 ...


switch (new Date().getDay()) {
    case 0:
        day = "Sunday";
        break;
    case 1:
        day = "Monday";
        break;
    case 2:
        day = "Tuesday";
        break;
    case 3:
        day = "Wednesday";
        break;
    case 4:
        day = "Thursday";
        break;
    case 5:
        day = "Friday";
        break;
    case 6:
        day = "Saturday";
        break;
}

 

ফলাফল আসবে


Sunday


 

Break কীওয়ার্ড

Javascript কোড যখন break কি-ওয়ার্ড এ পৌঁছে তখন সে switch ব্লক কে ভেঙে দেয়। তখন অতিরিক্ত কোড গণনা করা ছেড়ে দেয়, বা ব্লকের ভিতর কোড টেস্ট করা থামিয়ে দেয়। যখন কোন statement মিলে যায় , তখন কাজ সম্পূর্ণ হয়, সে আর তখন অতিরিক্ত কোন টেস্টিং করে না।

 

ডিফল্ট কি-ওয়ার্ড

যদি কোন কেস না মিলে তাহলে ডিফল্ট ভাবে একটা কি ওয়ার্ড ডিসপ্লে করে যদি সেটি আমরা উল্লেখ করে দেই

উদাহরণ

যদি আজকে শনিবার বা রবিবার না হয় তাহলে ডিফল্ট মেসেজ ডিসপ্লে করবে


switch (new Date().getDay()) {
    case 6:
        text = "Today is Saturday";
        break;
    case 0:
        text = "Today is Sunday";
        break;
    default:
        text = "Looking forward to the Weekend";
}

 

ফলাফল


Looking forward to the Weekend


 

প্রচলিত কোড এবং fall through

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

উদাহরণ


switch (new Date().getDay()) {
    case 1:
    case 2:
    case 3:
    default:
        text = "Looking forward to the Weekend";
        break;
    case 4:
    case 5:
       text = "Soon it is Weekend";
        break;
    case 0:
    case 6:
       text = "It is Weekend";
}

যদি সুইচ ব্লকে ডিফল্ট ভাবে শেষ কেস না হয় , তাহলে মনে রাখতে হবে ব্রেক দিয়ে এর কাজ শেষ করতে হবে।

 

জাভাস্ক্রিপ্ট If…Else বিবৃতি (JavaScript If…Else Statements)

শরিফুল ইসলাম
Job category-Php Coder

Conditional statement ব্যবহার করা হয় ভিন্ন ভিন্ন শর্তে ভিন্ন ভিন্ন কোড পারফর্ম করার জন্য।

 

শর্তাধীন বিবৃতি

প্রায় আমরা যখন কোড লিখি তাতে আমরা ভিন্ন ভিন্ন শর্ত জুড়ে দেই যাতে সে শর্ত অনুযায়ী কাজ করতে পারে। এই statement ব্যবহার করার নিয়মগুলি নিচে দেওয়া হল

  • If ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি শর্ত সত্য হয়,
  • else ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি একই শর্ত সত্য না হয়,
  • Else if নতুন শর্ত টেস্ট করবে , যদি প্রথম শর্ত মিথ্যা হয়,
  • অনেকগুলো আলটারনেটিভ ব্লক কোড থেকে সঠিক কোড গণনা করার জন্য switch ব্যবহার করা হয়।

 

 

If statement syntax

If ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি শর্ত সত্য হয় ,


if (condition) {
    block of code to be executed if the condition is true
}

 

যদি if এর বদলে IF (বড় হাতের লেটার) ব্যবহার করা হয় তাহলে এরর আসবে

উদাহরণ

যদি ঘণ্টা ১৮ এর চেয়ে কম হয় তাহলে ডিসপ্লে করবে good day


if (hour < 18) {
    greeting = "Good day";
}

 

ফলাফল


Good day


 

Else statement

else ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি একই শর্ত সত্য না হয়,


if (condition) {
    block of code to be executed if the condition is true
} else {
    block of code to be executed if the condition is false
}

 

উদাহরণ

যদি ঘণ্টা ১৮ এর চেয়ে কম হয় তাহলে দেখাবে good day এবং যদি তা না হয় তাহলে দেখাবে good evening


if (hour < 18) {
greeting = "Good day";
} else {
greeting = "Good evening";
}


 

ফলাফল


Good day


 

Else if statement

Else if নতুন শর্ত টেস্ট করবে , যদি প্রথম শর্ত মিথ্যা হয়
Syntax


if (condition1) {
    block of code to be executed if condition1 is true
} else if (condition2) {
    block of code to be executed if the condition1 is false and condition2 is true
} else {
    block of code to be executed if the condition1 is false and condition2 is false
}

 

উদাহরণ

যদি সময় ১০ থেকে কম হয় তাহলে দেখাবে good morning ,যদি ২০ থেকে কম হয় তাহলে দেখাবে good day ,যদি তা না হয় তাহলে দেখাবে good evening


if (time < 10) {
    greeting = "Good morning";
} else if (time < 20) {
    greeting = "Good day";
} else {
    greeting = "Good evening";
}

 

ফলাফল


Good day


 

এইচটিএমএল এর অণুচ্ছেদ (HTML Paragraphs)

এইচটিএমএল প্যারাগ্রাফ বা অনুচ্ছেদ

নয়ন চন্দ্র দত্ত

 

এইচটিএমএল ডকুমেন্ট বিভিন্ন অনুচ্ছেদে ভাগ করা হয়। এর জন্য বিভিন্ন ট্যাগ রয়েছে যেগুলো ব্যবহারে দুটি লাইনকে পৃথক করা যায়।

 

এইচটিএমএল প্যারাগ্রাফ

এইচটিএমএল < p> উপাদান একটি অনুচ্ছেদ সংজ্ঞায়িত করে।

যেমনঃ-
<p>This is a paragraph</p>
<p>This is another paragraph</p>
[* ব্রাউজার স্বয়ংক্রিয়ভাবে অনুচ্ছেদের আগে ও পরে একটি খালি লাইন যোগ করে। ]

 

এইচটিএমএল প্রদর্শন

আপনি নিশ্চিত হতে পারবেন না যে কিভাবে এইচটিএমএল দেখানো হবে।

বড় বা ছোট পর্দা, এবং পরিবর্তিত windows ভিন্ন ফলাফল তৈরি করবে।

এইচটিএমএল এ, আপনি অতিরিক্ত স্পেস যোগ করা আউটপুট পরিবর্তন করতে পারবেন না।

ব্রাউজার অতিরিক্ত স্পেস এবং অতিরিক্ত লাইন মুছে ফেলবে যখন পেজটি প্রদর্শিত হয়। যেকোন স্পেস সংখ্যা এবং নতুন লাইন একটিমাত্র স্পেস হিসেবে গণনা করা হবে।

 

উদাহরণ


<p>
This paragraph
contains a lot of lines
in the source code,
but the browser
ignores it.
</p>

<p>
This paragraph
contains         a lot of spaces
in the source         code,
but the        browser
ignores it.
</p>


 

 

ফলাফল


This paragraph contains a lot of lines in the source code, but the browser ignores it.

This paragraph contains a lot of spaces in the source code, but the browser ignores it.

The number of lines in a paragraph depends on the size of the browser window. If you resize the browser window, the number of lines in this paragraph will change.


 

 

শেষ ট্যাগ দিতে ভুলে যাবেন না। যদি আপনি শেষ ট্যাগ দিতে ভুলে যান তবুও অনেক ব্রাউজার সঠিকভাবে এইচটিএমএল প্রদর্শন করে।

যেমনঃ-

<p>This is a paragraph
<p>This is another paragraph

উপরের উদাহণটি অধিকাংশ ব্রাউজারে প্রদর্শন করবে কিন্তু কিন্তু এটার উপর নির্ভর করবেন না। শেষ ট্যাগ অবশ্যই দিবেন।

শেষ ট্যাগ এর না হওয়া অপ্রত্যাশিত ফলাফল বা ত্রুটি দেখাতে পারে।

HTML এর Stricter সংস্করণ যেমন-এক্সএইচটিএমএল এ আপনাকে শেষ ট্যাগ skip করতে দিবে না। শেষ ট্যাগ অবশ্যই দিতে হবে।

 

এইচটিএমএল লাইন ব্রেক

এইচটিএমএল <br> উপাদান একটি লাইন বিরতি দিতে ব্যবহৃত হয়।

প্যারাগ্রাফ ব্যবহার না করে <br> ব্যবহার করুন যদি আপনার নতুন একটি লাইনের দরকার হয়।

যেমনঃ-
<p>This is<br>a para<br>graph with line breaks</p>

<br> উপাদান একটি খালি এইচটিএমএল উপাদান। এর কোন শেষ ট্যাগ নেই।

 

কবিতা সমস্যা

উদাহরণ


<p>In HTML, spaces and new lines are ignored:</p>

<p>

My Bonnie lies over the ocean.

My Bonnie lies over the sea.

My Bonnie lies over the ocean.

Oh, bring back my Bonnie to me.

</p>


 

 

ফলাফল


In HTML, spaces and new lines are ignored:

My Bonnie lies over the ocean. My Bonnie lies over the sea. My Bonnie lies over the ocean. Oh, bring back my Bonnie to me.


 

 

 

এইচটিএমএল <pre> উপাদান

<pre> এলিমেন্ট পূর্ববিন্যাসিত টেক্সটকে সংজ্ঞায়িত করে।

<pre> এলিমেন্ট এর ভিতরের টেক্সগুলো নির্দিশ্ট পরিমান প্রসস্থ ফন্ট স্পেস এবং লাইন ব্রেক উভয় অপরিবর্তিত রেখে প্রদর্শন করে।

যেমনঃ-


<p>The pre tag preserves both spaces and line breaks:</p>

<pre>
My Bonnie lies over the ocean.

My Bonnie lies over the sea.

My Bonnie lies over the ocean.

Oh, bring back my Bonnie to me.
</pre>


 

 

ফলাফল


 

The pre tag preserves both spaces and line breaks:

   My Bonnie lies over the ocean.

   My Bonnie lies over the sea.

   My Bonnie lies over the ocean.
   
   Oh, bring back my Bonnie to me.


 

এইচটিএমএল ট্যাগ রেফারেন্স

ট্যাগঃ <p>
ব্যাখ্যাঃ প্যারাগ্রাফ সজ্ঞায়িত করে।

ট্যাগঃ <br>
ব্যাখ্যাঃ একটি লাইন বিরতি দেয়।

ট্যাগঃ <pre>
ব্যাখ্যাঃ প্রাক ফরম্যাট টেক্সট সজ্ঞায়িত করে।

JavaScript Hoisting

জাভাস্ক্রিপ্ট হোস্টিং
ডাটা টাইপ ডিক্লেয়ারেশনের জন্য হোস্টিং জাভাস্ক্রিপ্টের একটি ডিফল্ট বেবস্থা।

জাভাস্ক্রিপ্টে ডিক্লেয়ারেশন হোস্ট পদ্ধতিতে হয়:
জাভাস্ক্রিপ্টে একটি ভেরিয়েবলকে ডিক্লেয়ার করার পূর্বে এটি বেবহার করা যায়।
অর্থাৎ ভেরিযবল টাইপ ডিক্লেয়ার করার আগেই তা বেবহার করা যায়।
নিচের উদাহরণ ১ এবং উদাহরণ ২ এর আউটপুট একই হবে:
উদাহরণ ১:
x = 5; // Assign 5 to x
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x; // Display x in the element
var x; // Declare x
উদাহরণ ২:
var x; // Declare x
x = 5; // Assign 5 to x
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x; // Display x in the element
উপরোক্ত উদাহরণগুলো বোঝার জন্য প্রথমে হোস্ট সম্পর্কে ভালো ধারণা থাকতে হবে।
হোস্টিং হলো জাভাস্ক্রিপ্টের একটি ডিফল্ট বেবস্থা যা কোনো একটি কারেন্ট ফাংশন বা স্ক্রিপ্টের সকল ডিক্লেয়ারেশন প্রথমেই ঠিক করে রাখে।

জাভাস্ক্রিপ্টে ইনিশিয়ালাইজ হোস্ট পদ্ধতিতে করা যায় না:
জাভাস্ক্রিপ্ট শুধুমাত্র ডিক্লেয়ারেশনকে হোস্ট করে ইনিশিয়ালাইজেশনকে হোস্ট করে না।
নিচের উদাহরণ ১ এবং উদাহরণ ২ এর আউটপুট এক হবে না:
উদাহরণ ১:
var x = 5; // Initialize x
var y = 7; // Initialize y
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x + " " + y; // Display x and y
উদাহরণ ২:
var x = 5; // Initialize x
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x + " " + y; // Display x and y
var y = 7; // Initialize y

উদাহরণ ২ এ y প্রথমে ইনিশিয়ালাইজ করা হয়নি তাই y এখানে আনডিফাইনড দেখাবে।
উদাহরণ ২ কে নিচের উপায়ে লিখতে হবে:
var x = 5; // Initialize x
var y; // Declare y
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x + " " + y; // Display x and y
y = 7; // Assign 7 to y

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

জাভাস্ক্রিপ্ট While Loop

মোঃ আব্দুল্লাহ

 

যতক্ষণ পর্যন্ত একটি নির্দিষ্ট বিবৃতি সত্য ততক্ষণ পর্যন্ত লুপ একটি কোডের ব্লক পরিচালনা করতে পারে।

Syntax


while (condition বা চলক ) {
         আপনার কোড
 }

উদাহরণ
নিম্নের উদাহরণে যতক্ষণ পর্যন্ত চলকের মান (এই ক্ষেত্রে i এর মান) ১০ এর কম, কোডের লুপটি চলতে থাকবে ।


while (i < 10) {
    text += "The number is " + i;
    i++;
}

 

উল্লেখ্য যে, যদি কখনও ভুল করে চলকের মান বৃদ্ধি না করা হয় তবে লুপটি কখনই শেষ হবে না এবং প্রোগ্রামটি ক্রাশ করবে ।

 

The Do/While Loop

Do/While লুপ হল একটি চলক লুপ। এই লুপটি একবার বিবৃতিটির সত্যতা যাচাই করে ব্লকটি পরিচালনা করবে, এরপর লুপটি যতক্ষণ পর্যন্ত বিবৃতিটির সত্য ততক্ষণ পর্যন্ত লুপটি বারবার পরিচালনা করবে।
Syntax


do {
    code block to be executed
}
while (condition);

 

 

উদাহরণ
নিম্নের উদাহরণটি একটি ডু /হয়াইল লুপ। এই লুপটি সর্বদা একবার পরিচালিত হবে যদিও বিবৃতিটি ভুল হয়, কারন বিবৃতি যাচাই এর আগেই কোডের ব্লকটি পরিচালিত হয়।


do {
    text += "The number is " + i;
    i++;
}
while (i < 10);

 

উল্লেখ্য যে, চলকের মান বৃদ্ধির কথা ভুলে গেলে হবে না, নাহলে লুপটি কখনই শেষ হবে না।

 

For এবং While এর মধ্যে তুলনা

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

নিম্নের উদাহরণে ফর লুপ ব্যবহার করে cars নামক array থেকে গাড়ির নাম খুজে বের করা হয়েছে ।


var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i = 0;
var text = "";

for (;cars[i];) {
    text += cars[i] + "<br>";
    i++;
}

 

নিম্নে হয়াইল লুপের একটি উদাহরণ যা cars নামক array থেকে গাড়ির নাম খুজে বের করার জন্য ব্যবহ্রত হয়েছে ।


var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i = 0;
var text = "";

while (cars[i]) {
    text += cars[i] + "<br>";
    i++;
}

 

জাভাস্ক্রিপ্ট ডেট মেথড (JavaScript Date Methods)

ডেট মেথডের সাহায্যে ডেট ভেলু পাওয়া যায় এবং তা বেবহার করা যায়, যেমন বছর, মাস, দিন, মিনিট, সেকেন্ড, মিলিসেকেন্ড।

 

Date Get মেথড

একটি ডেটের কোন একটি অংশকে পাওয়ার জন্য ডেট গেট মেথড বেবহার করা হয়:

মেথড বর্ণনা
getDate() ডেট নাম্বার পাওয়ার জন্য যেমন: ১-৩১
getDay() সপ্তাহ নাম্বার পাওয়ার জন্য
getFullYear() বছরের সবগুলো ডিজিট পাওয়ার জন্য যেমন: ২০১৫
getHours() ঘন্টা জানার জন্য
getMilliseconds() মিলিসেকেন্ড হিসেবের জন্য
getMinutes() মিনিট হিসেবের জন্য
getMonth() মাস হিসেবের জন্য
getSeconds() সেকেন্ড হিসেবের জন্য
getTime() ১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে হিসেবের জন্য

 

getTime() মেথড

১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে হিসেবের জন্য এই মেথড বেবহৃত হয়।
উদাহরণ:


 <script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getTime();
</script>

 

getFullYear() মেথড

বছরের সবগুলো ডিজিট পাওয়ার জন্য এই মেথড বেবহৃত হয়।
উদাহরণ:


 <script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getFullYear();
</script>

 

getDay() মেথড

সপ্তাহ নাম্বার পাওয়ার জন্য এই মেথড বেবহৃত হয়।
উদাহরণ:


 <script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getDay();
</script>


এরে বেবহার করেও এই মেথডে দেখানো যায়:


 <script>
var d = new Date();
var days = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
document.getElementById("demo").innerHTML = days[d.getDay()];
</script>

 

Date Set মেথড

একটি ডেটের গেট মেথড বেবহার করে পাওয়া কোন একটি অংশকে সেট করার জন্য ডেট সেট মেথড বেবহার করা হয়:

মেথড বর্ণনা
setDate() ডেট নাম্বার সেট করার জন্য যেমন: ১-৩১
setFullYear() বছরের সবগুলো ডিজিট সেট করার জন্য যেমন: ২০১৫
setHours() ঘন্টা জানার জন্য
setMilliseconds() মিলিসেকেন্ড সেট করার জন্য
setMinutes() মিনিট সেট করার জন্য
setMonth() মাস সেট করার জন্য
setSeconds() সেকেন্ড সেট করার জন্য
setTime() ১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে সেট করার জন্য

 

setFullYear() মেথড

বছরের সব তথ্য সেট করার জন্য এই মেথড বেবহৃত হয়। উদাহরণ হিসেবে ১৪ই জানুয়ারী ২০২০ কে দেখানো হয়েছে।
উদাহরণ:


<script>
var d = new Date();
d.setFullYear(2020, 0, 14);
document.getElementById("demo").innerHTML = d;
</script>

 

setDate() মেথড

ডেট নাম্বার সেট করার জন্য এই মেথড বেবহৃত হয়।
উদাহরণ ১:


<script>
var d = new Date();
d.setDate(20);
document.getElementById("demo").innerHTML = d;
</script>


উদাহরণ ২:


<script>
var d = new Date();
d.setDate(d.getDate() + 50);
document.getElementById("demo").innerHTML = d;
</script>

 

ডেট ইনপুট-পার্সিং

ডেট ইনপুট এর মাধ্যমে কোনো ডেটের ভেলু নিয়ে তাকে Date.parse() মেথডের সাহায্যে মিলিসেকেন্ডে কনভার্ট করা যায়, Date.parse() মেথড কোনো একটি ভেলু/ডেট এবং ১৯৭০ থেকে সেই পর্যন্ত সময়কে মিলিসেকেন্ডে কনভার্ট করে।
উদাহরণ ১:


<script>
var msec = Date.parse("March 21, 2012");
document.getElementById("demo").innerHTML = msec;
</script>


উদাহরণ ২:


<script>
var msec = Date.parse("March 21, 2012");
var d = new Date(msec);
document.getElementById("demo").innerHTML = d;
</script>


 

ডেট কম্পেয়ার

দুইটি ডেটের মধ্যে খুব সহজেই কম্পেয়ার করা যায়।
উদাহরণ:


var today, someday, text;
today = new Date();
someday = new Date();
someday.setFullYear(2100, 0, 14);

if (someday > today) {
    text = "Today is before January 14, 2100.";
} else {
    text = "Today is after January 14, 2100.";
}
document.getElementById("demo").innerHTML = text;

 

হিন্টস: জাভাস্ক্রিপ্টে মাস গনণা শূন্য থেকে শুরু হয়, জানুয়ারী ০ ডিসেম্বর ১১

 

জাভাস্ক্রিপ্ট ম্যাথ অবজেক্ট (JavaScript Math Object)

জাভাস্ক্রিপ্ট ম্যাথ অবজেক্ট (JavaScript Math Object)

ম্যাথ অবজেক্টের সাহায্যে সংখা ও ম্যাথমেটিকাল টার্ম নিয়ে কাজ করা যায়।

 

ম্যাথ অবজেক্ট

ম্যাথ অবজেক্টের সাহায্যে ম্যাথমেটিকাল টার্ম নিয়ে কাজ করা যায়।

ম্যাথ অবজেক্টে অনেকগুলো ম্যাথমেটিকাল মেথড অন্তর্ভুক্ত রয়েছে।

ম্যাথ অবজেক্টের একটি সাধারণ কাজ হলো রেন্ডম নাম্বার তৈরি করা:


Math.random();        // returns a random number

 

 

Math.min() ও Math.max() মেথড

Math.min() ও Math.max() মেথড সর্বচ্চো ও সর্বনিম্ন নাম্বার বের করার জন্য বেবহৃত হয়:
উদাহরণ ১:


Math.min(0, 150, 30, 20, -8);        // returns -8

উদাহরণ ২:


Math.max(0, 150, 30, 20, -8);        // returns 150

 

 

Math.random() মেথড

Math.random() মেথড ০ এবং ১ এর মধ্যে যে কোনো একটি নাম্বার নেয়ার জন্য বেবহৃত হয়।
উদাহরণ:


Math.random();           // returns a random number

 

 

Math.round() মেথড

Math.round() মেথড এর সাহায্যে একটি সংখ্যার রাউন্ডঅফ ভেলু বের করা যায়।
উদাহরণ:


Math.round(4.7);       // returns 5
 Math.round(4.4);      // returns 4

 

 

Math.celi() মেথড

Math.celi() মেথড এর সাহায্যে একটি সংখ্যাকে নিকটস্ত সর্বচ্চো সংখ্যাতে রাউন্ড করা হয়।
উদাহরণ:


Math.ceil(4.4);       // returns 5

 

 

Math.floor() মেথড

Math.floor() মেথড এর সাহায্যে একটি সংখ্যাকে নিকটস্ত সর্বনিম্ন সংখ্যাতে রাউন্ড করা হয়।
উদাহরণ:


Math.floor(4.7);      // returns 4

Math.floor() এবং Math.random() মেথড একত্রে বেবহার করে ১ থেকে ১০ এর মধ্যে রেন্ডম নাম্বার তৈরী করা যায়।
উদাহরণ:


Math.floor(Math.random() * 11);       // returns a random number between 0 and 10

 

 

ম্যাথ কন্সটেন্টস

ম্যাথ অবজেক্ট হিসেবে বেবহার করার জন্য জাভাস্ক্রিপ্টে ৮টি ম্যাথমেটিকাল কন্সটেন্ট রয়েছে।

 Math.E;         // returns Euler's number
 Math.PI         // returns PI
 Math.SQRT2      // returns the square root of 2
 Math.SQRT1_2    // returns the square root of 1/2
 Math.LN2        // returns the natural logarithm of 2
 Math.LN10       // returns the natural logarithm of 10
 Math.LOG2E      // returns base 2 logarithm of E
 Math.LOG10E     // returns base 10 logarithm of E

 

ম্যাথ অবজেক্ট মেথডস

 

মেথড বর্ণনা
abs(x) x এর এবসুলেট ভেলু বের করে
acos(x) x এর arccosine রেডিয়ানে বের করে
asin(x) x এর arcsine রেডিয়ানে বের করে
atan(x) x এর arctangent রেডিয়ানে বের করে
atan2(y,x) x এর arctangent বের করে
ceil(x) x কে নিকটস্ত সর্বচ্চো সংখ্যাতে রাউন্ড করে
cos(x) x এর cosine রেডিয়ানে বের করে
exp(x) Ex এর মান বের করে>/td>
floor(x) x কে নিকটস্ত সর্বনিম্ন সংখ্যাতে রাউন্ড করে
log(x) x এর লগারিদম বের করে
max(x,y,z,...,n) সর্বচ্চো নাম্বার বের করে
min(x,y,z,...,n) সর্বনিম্ন নাম্বার বের করে
pow(x,y) x এর উপর y এর পাওয়ার বের করে
random() ০ এবং ১ এর মধ্যে যে কোনো একটি রেন্ডম নাম্বার নেয়ার জন্য বেবহৃত হয়
round(x) নিকটস্ত পূর্ণসংখাতে রাউন্ড অফ করে
sin(x) x এর sine রেডিয়ানে বের করে
sqrt(x) x এর স্কয়াররুট বের করে
tan(x) x এর tangent এর মান বের করে

জাভাস্ক্রিপ্ট স্কোপ (JavaScript Scope)

জাভাস্ক্রিপ্ট স্কোপ (JavaScript Scope)

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

লোকাল জাভাস্ক্রিপ্ট ভেরিয়েবল

জাভাস্ক্রিপ্টের ফাংশনের ভেতরে যেসব ভেরিযবল ডিক্লেয়ার করা হয় তা ঐ ফাংশনেগুলো লোকাল ভেরিযবল এবং এর স্কোপ লোকাল। এই ভেরিযবল শুধুমাত্র ঐ ফাংশনে ব্যবহার করা যাবে।
উদাহরণ:


// code here can not use carName
 
 function myFunction() {
     var carName = "Volvo";
 
     // code here can use carName
 
 }

যেহেতু লোকাল ভেরিয়েবল শুধুমাত্র নির্দিষ্ট ফাংশনে ব্যবহৃত হয় তাই একই নামের ভেরিয়েবল বিভিন্ন ফাংশনে ব্যবহার করা যাবে। একটি ফাংশন কল করা হলে লোকাল ভেরিয়েবল তৈরী হয় এবং ফাংশন শেষে ধ্বংশ হয়ে যায়।

গ্লোবাল জাভাস্ক্রিপ্ট ভেরিয়েবল

ফাংশনের বাহিরে যেসব ভেরিযবল ডিক্লেয়ার করা হয় সেগুলো গ্লোবাল ভেরিযবল। গ্লোবাল ভেরিযবলের স্কোপ গ্লোবাল থাকে, ওয়েবপেজের সকল স্ক্রিপ্ট এবং ফাংশন থেকে তা একসেস করা যায়।
উদাহরণ:


var carName = " Volvo";
 
 // code here can use carName
 
 function myFunction() {
 
     // code here can use carName 
 
 }

 

 

অটোমেটিক গ্লোবাল

আপনি যদি কোন ভেরিয়েবল এর মান নির্ধারণ করে দেন যা আগে ডিক্লেয়ার করা হয়নি এটি সয়ংক্রিয়ভাবে গ্লোবাল ভেরিয়েবল এ পরিণত হয়।

এই  উদাহরণ এ carName কে গ্লোবাল ভেরিয়েবল হিসেবে ডিক্লেয়ার করা হয়েছে।


// code here can use carName
 
 function myFunction() {
     carName = "Volvo";
 
     // code here can use carName
 
 }

 

 

জাভাস্ক্রিপ্ট ভেরিযবলের লাইফটাইম

কোন ভেরিযবল ডিক্লেয়ার করার সময় থেকেই জাভাস্ক্রিপ্ট ভেরিযবলের লাইফটাইম শুরু হয়।

কোন ফাংশন কমপ্লিট হওয়ার পর লোকাল ভেরিযবলের লাইফটাইম শেষ হয়ে যায়।

পেজ ক্লোজ করার পর গ্লোবাল ভেরিযবলের লাইফটাইম শেষ হয়ে যায়।

 

ফাংশনাল আর্গুমেন্ট

ফাংশনাল আর্গুমেন্ট ফাংশনের ভেতরে লোকাল ভেরিযবল হিসেবে কাজ করে।

 

HTML এ গ্লোবাল ভেরিযবল

HTML এ গ্লোবাল ভেরিযবল বলতে উইন্ডো অবজেক্টকে বোঝানো হয়, সকল গ্লোবাল ভেরিযবল উইন্ডো অবজেক্টের অন্তর্গত।
উদাহরণ:


// code here can use window.carName
 
 function myFunction() {
     carName = "Volvo";
 }

 

 

নোট: গ্লোবাল ভেরিয়েয়েবল বা ফাংশন, আপনার উইন্ডোজ ভেরিয়েবল বা ফাংশনকে অভাররাইট করতে পারে।

 

জাভাস্ক্রিপ্ট পরিচিতি (JavaScript Introduction)

জাভাস্ক্রিপ্ট পরিচিতি

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

জাভাস্ক্রিপ্ট HTML এর কন্টেন্টকে পরিবর্তন করতে পারে

একটি অন্যতম HTML মেথড হল document.getElementById()
এই উদাহরণের সাহায্যে HTML কন্টেন্ট থেকে আইডি (id="demo") এর সাহায্যে কোনো কন্টেন্ট খুঁজে বের করা যায় এবং তা পরিবর্তন করা যায় (innerHTML)।
উদাহরণ:


document.getElementById("demo").innerHTML = "Hello JavaScript";


 

জাভাস্ক্রিপ্ট HTML এর এট্রিবিউটকে পরিবর্তন করতে পারে

যেমন কোনো HTML <img> কন্টেন্টের সোর্স পরিবর্তন করে ইমেজ পরিবর্তন করা।

যেমন:


<h1>JavaScript Can Change Images</h1>

<img id="myImage" onclick="changeImage()" src="pic_bulboff.gif" width="100" height="180">

<p>Click the light bulb to turn on/off the light.</p>

<script>
function changeImage() {
    var image = document.getElementById('myImage');
    if (image.src.match("bulbon")) {
        image.src = "pic_bulboff.gif";
    } else {
        image.src = "pic_bulbon.gif";
    }
}
</script>

 

ফলাফলঃ


JavaScript Can Change Images

pic_bulboff

Click the light bulb to turn on/off the light.


 

জাভাস্ক্রিপ্ট HTML এর স্টাইলকে(CSS) পরিবর্তন করতে পারে

HTML এর স্টাইলকে পরিবর্তন করা অনেকটা HTML এর এট্রিবিউটকে পরিবর্তন করার মতোই।
উদাহরণ:


document.getElementById("demo").style.fontSize = "25px";


 

জাভাস্ক্রিপ্ট ডাটার ভেলিডিটি চেক করতে পারে

ডাটা টাইপ এবং অন্যান্য ডাটা ভেলিডেশনের ক্ষেত্রে জাভাস্ক্রিপ্ট বেবহার করা হয়।

জাভাস্ক্রিপ্ট সম্পর্কে আরো তথ্য

জাভাস্ক্রিপ্ট এবং জাভা কনসেপ্ট ও ডিজাইন সকল দিক থেকে সম্পূর্ণ আলাদা দুইটি লেঙ্গুয়েজ
১৯৯৫ সালে ব্রেন্দেন ইক নামক একজন বেক্তি এই লেঙ্গুয়েজ আবিষ্কার করেন এবং ১৯৯৭ সালে এটি ECMA স্ট্যান্ডার্ড লাভ করে
এর অফিসিয়াল নেম হচ্ছে ECMA-262 এবং ECMAScript 5 (JavaScript 1.8.5 - July 2010) হচ্ছে লেটেস্ট স্ট্যান্ডার্ড

উইন্টোজ 8.1 টিউটোরিয়াল: অনড্রাইভ (OneDrive)

উইন্টোজ টিউটোরিয়াল 11 এর 11

আপনার জীবনের সবকিছু এক জায়গায়

উইন্ডোজ 8.1 এবং উইন্ডোজ আরটি 8.1 এ, আপনি সহজেই আপনার সকল ফাইল OneDrive এ রেখে দিতে পারেন এবং যেকোন ডিভাইস থেকে তাদের সংগ্রহ করতে পারেন, যেমন আপনার পিসি, টেবলেট বা ফোন।

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

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

 

 

OneDrive এ ফাইল যোগ করা

OneDrive এ ফাইল সংরক্ষণের ভিন্ন ভিন্ন পন্থা রয়েছে। প্রথমে সিদ্ধান্ত নিন যে আপনি আপনার মূল ফাইল পিসিতে রেখেদিবেন কিনা এবং একটি কপি OneDrive এ রাখবেন কিনা। বা পিসি থেকে মুছে (মুভ করে) OneDrive এ সংরক্ষণ করবেন কিনা।

OneDrive অ্যাপ্লিকেশন ব্যবহার করে ফাইল OneDrive এ কপি করা

Add Fileধাপ 1: Start Screen এ OneDrive অ্যাপ্লিকেশন খোলার জন্য OneDrive এ টোকা দিন বা ক্লিক করুন।

 

 

 

 

 

 

 

 

 

 

One Driveধাপ 2: টোকা দিয়ে বা ক্লিক করে OneDrive এর কোন ফোল্ডার এ ফাইল রাখতে চান সেখানে যান।

 

 

 

 

 

 

 

 

 

 

Add Filesধাপ 3: অ্যাপ কমান্ড খোলার জন্য সুইপ করে পর্দার উপরের বা নিচের প্রান্তে যান বা ডান-ক্লিক করুন এবং তারপর Add files এ টোকা দিন বা ক্লিক করুন।

 

 

 

 

 

 

 

 

 

Add Filesধাপ 4: আপনি যে ফাইল আপলোড করতে চান ব্রাইজ করে সেই ফাইল এ যান, তাদের সিলেক্ট (নির্বাচন) করার জন্য টোকা দিন বা ক্লিক করুন এবং তারপর Copy to OneDrive এ টোকা দিন বা ক্লিক করুন।

 

 

 

 

 

 

 

 

 

OneDrive অ্যাপ্লিকেশন ব্যবহার করে ফাইল OneDrive এ মুভ করা

যখন আপনি কোন ফাইল মুভ করবেন তখন আপনার ফাইল পিসি থেকে মুছে OneDrive এ যোগ হবে।

ধাপ 1: OneDrive এ নেক্সট চিহ্নিত তীর এ টোকা দিন বা ক্লিক করুন।

ধাপ 2: আপনি যে ফাইল আপলোড করতে চান ব্রাইজ করে সেই ফাইল এ যান, তাদের সিলেক্ট (নির্বাচন) করার জন্য টোকা দিন বা ক্লিক করুন এবং তারপর Copy to OneDrive এ টোকা দিন বা ক্লিক করুন।

ধাপ 3: Cut এ টোকা দিন বা ক্লিক করুন।

ধাপ 4: This PC এ যেতে নেক্সট চিহ্নিত তীর এ টোকা দিন বা ক্লিক করুন, এবং OneDrive এর ফোল্ডার ব্রাউজ করার জন্য OneDrive নির্বাচন করুন।

ধাপ 5: অ্যাপ কমান্ড খোলার জন্য পর্দার উপর বা নিচের দিকের প্রান্তে সুইপ করে যান বা ডান-ক্লিক করুন এবং তারপর Paste এ টোকা দিন বা ক্লিক করুন।

File Explorer এর মাধ্যমে OneDrive এর ফাইল মুভ করা

যখন আপনি কোন ফাইল মুভ করবেন তখন আপনার ফাইল পিসি থেকে মুছে OneDrive এ যোগ হবে। ডান পাশের প্যানেল থেকে ফাইল চেপে ধরে বাম পাশের OneDrive প্যানেলে ছেড়ে দিন।

File Explorer

কোন অ্যাপ্লিকেশন থেকে OneDrive এ ফাইল সংরক্ষণ করা

আপনি আপনার অ্যাপ্লিকেশন থেকে সরাসরি ফাইল OneDrive এ সংরক্ষণ করতে পারেন। আপনি আপনার পিসি সহ OneDrive বা অন্য কোন স্থানে ফাইল সংরক্ষণ পছন্ন করতে পারেন। আপনি কোথায় সংরক্ষণ করতে চান তার স্থান পরিবর্তন করতে OneDrive এর উপরের দিকের বাম প্রান্তের তীর চিহ্নে টোকা বা ক্লিক করতে পারেন (যদি এটি ইতোমধ্যেই নির্বাচন করা না থাকে)।

Using App

তারপর OneDrive এর কোন ফোল্ডার এ ফাইল সংরক্ষণ করতে চান তা নির্বাচন করুন, ফাইলের একটি নাম লিখুন এবং তারপর Save এ টোকা দিন বা ক্লিক করুন।

ডেস্কটপ এর কোন অ্যাপ্লিকেশন থেকে OneDrive এ কোন ফাইল সংরক্ষণ করা

যখন আপনি ডেস্কটপ অ্যাপ্লিকেশন ব্যবহার করছেন, যেমন- মাইক্রোসফট অফিস বা পেইন্ট, আপনি এখান থেকেও সরাসরি OneDrive এ ফাইল সংরক্ষণ করতে পারেন। আপনি যে অ্যাপ্লিকেশন ব্যবহার করছেন সেটি থেকে Save এ ক্লিক করুন। এবং তারপর বাম পাশের প্যানেল থেকে OneDrive এ টোকা দিন বা ক্লিক করুন।

Desktop App

তারপর OneDrive এর কোন ফোল্ডার এ ফাইল সংরক্ষণ করতে চান তা নির্বাচন করুন, ফাইলের একটি নাম লিখুন এবং তারপর Save এ টোকা দিন বা ক্লিক করুন।

সয়ংক্রিয়ভাবে OneDrive এ ফাইল সংরক্ষণ করা

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

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. ডকুমেন্ট এর জন্য OneDrive এ টোকা দিন বা ক্লিক করুন এবং তারপর Save documents to OneDrive by default চালু করুন।
3. ছবির এর জন্য OneDrive এ টোকা দিন বা ক্লিক করুন এবং তারপর Upload photos at good quality পছন্দ করুন বা বেশি resolution এর ছবির জন্য Upload photos at best quality পছন্দ করুন।

OneDrive এ আপনার ফাইল এর নিরাপত্তা সম্পর্কিত তথ্যের জন্য দেখুন “OneDrive এ আপনার ফাইল এর নিরাপত্তা”।

টিপস: আপনি OneDrive এ বিনা মূল্যে স্টোরেজ পান, কিন্তু আপনার যদি আরো বেশি স্টোরেজ এর প্রয়োজন হয় তাহলে আপনি তা ক্রয় করতে পারেন। PC settings খুলুন, OneDrive এ টোকা দিন বা ক্লিক করুন এবং তারপর Buy more storage এ টোকা দিন বা ক্লিক করুন।

যেকোন স্থান থেকে আপনার ফাইল দেখা এবং সংগ্রহ করা

যখন আপনার ফাইল OneDrive এ আছে, আপনি যেকোন ডিভাইস থেকে এটি পেতে পারেন, এমনকি আপনার পিসিতে কোন সমস্যা দেখা দিলেও। আপনি OneDrive এর ওয়েব সাইটে যেতে পারেন বা এনড্রয়েড, আইওএস বা উইন্ডোজ ফোনের যেকোন একটি মোবাইল অ্যাপ্লিকেশন ব্যবহার করতে পারেন।

যখন আপনি অফলাইন এ থাকবেন তখন ফাইলগুলো পেতে

উইন্ডোজ 8.1 এবং উইন্ডোজ আরটি 8.1 এ, আপনি যখন ইন্টারনেটের সাথে সংযুক্ত থাকবেন না তখনও আপনার সকল ফাইল ব্রাউজ করতে পারবেন। আপনার যখন ইন্টারনেট কানেকশন থাকবে না তখন যদি আপনি ফাইলগুলো খুলতে এবং সম্পাদনা করতে চান তাহলে আপনাকে ঐ ফাইলগুলো অফলাইনে ব্যবহারযোগ্য করে রাখতে হবে। ফাইলগুলো অফলাইনে ব্যবহারযোগ্য করার জন্য OneDrive অ্যাপ্লিকেশন বা File Explorer ব্যবহার করতে পারেন।

OneDrive অ্যাপ্লিকেশন ব্যবহার করে ফাইলগুলো অফলাইনে ব্যবহারযোগ্য করা

ফাইলটি নির্বাচন করতে সুইপ করে নিচের দিকে যান বা এর উপর ডান-ক্লিক করুন, তারপর Make offline এ টোকা দিন বা ক্লিক করুন। যদি আপনি আপনার পিসিতে খুব বেশী স্থান দখল হয়ে যাওয়া সম্পর্কে উদ্বিগ্ন হন তাহলে কিছু সংখ্যক ফাইলকে অফলাইনে ব্যবহারযোগ্য বানান অথবা যদি কিছু ফাইল অফলাইনে ব্যবহারের কোন প্রয়োজন না হয়, তাহলে এদেরকে online-only হিসেবে পরিবর্তন করুন।

যদি আপনার পিসির space কোন উদ্বেগের বিষয় না হয়, তাহলে আপনি আপনার সম্পূর্ণ OneDrive অফলাইনে ব্যবহারযোগ্য করে রাখতে পারেন:

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. Options এ টোকা দিন বা ক্লিক করুন এবং তারপর Access all files offline চালু করুন।

File Explorer ব্যবহার করে ফাইলগুলোকে অফলাইনে ব্যবহারযোগ্য করা

ফাইলের উপর চাপ দিন এবং ধরে রাখুন বা ডান-ক্লিক করুন এবং তারপর Make available offline পছন্দ করুন। আপনার OneDrive অফলাইনে ব্যবহারযোগ্য বানাতে বাম পাশের প্যানেল এ OneDrive এর উপর চাপ দিন এবং ধরে রাখুন বা ডান-ক্লিক করুন এবং তারপর Make available offline পছন্দ করুন।

ফাইল শেয়ারিং

OneDrive এ ফাইল শেয়ার করা এবং হোম নেটওয়ার্ক এ ফাইল শেয়ার করার সেটিং করা প্রায় সাদৃশ্যপূর্ণ, এবং ইমেইল এ ফাইল পাঠানো বা একটি USB ফ্ল্যাশ ড্রাইভ ব্যবহার করা থেকে আরো বেশি সংগঠিত এবং দক্ষ ।

OneDrive অ্যাপ্লিকেশন ব্যবহার করে ফাইল এবং ফোল্ডার শেয়ার করা

1. ফাইল বা ফোল্ডার নির্বাচন করার জন্য সুইপ করে নিচের দিকে যান বা ডান-ক্লিক করুন।
2. Share এ টোকা দিন বা ক্লিক করুন।
3. নির্দিষ্ট ব্যক্তি বা দলের সাথে শেয়ার করার জন্য Invite people পচন্দ করুন। আপনি ব্যক্তিগতভাবে জানেন না এমন প্রচুর সংখ্যক লোকর সাথে শেয়ার করার জন্য Get a link পছন্দ করুন। শেয়ারিং সম্পর্কে আরো বিস্তারিত জানতে দেখুন “OneDrive এ আমি কিভাবে আমার ফাইল এবং ফোল্ডার শেয়ার করতে পারি?

উইন্ডোজ 8.1 টিউটোরিয়াল: পিসিকে নিজের পছন্দ মতো সাজানো (Personalize your PC)

উইন্ডোজ 8.1 টিউটোরিয়াল 11 এর 10

আপনার পছন্দসমূহ সমন্বিত করা (Featuring your favorites)

উইন্ডোজ 8.1 এবং উইন্ডোজ আরটি 8.1 দিয়ে বিভিন্নভাবে আপনি আপনার পিসিকে পছন্দের অ্যাপ্লিকেশন, ব্যক্তি, ছবি, রং ইত্যাদি দিয়ে নিজের মতো করে সাজাতে পারেন।

যদি আপনি আপনার পিসিতে মাইক্রোসফট একাউন্ট দিয়ে Sign in করে থাকেন, আপনি যতকিছু দিয়ে আপনার পিসিকে নিজস্বতা দান (personalize) করেছেন তার সবটাই সবসময় আপনার সঙ্গেই থাকবে। আপনি যদি এই একই মাইক্রোসফট একাউন্ট দিয়ে অন্য পিসি বা ডিভাইস এ Sign in করেন, তাহলে আপনার একই ছবি, কন্টাক্ট এবং সেটিংস উক্ত পিসিতে দেখতে পারবেন। এবং যদি অন্য কেউ আপনার পিসি ব্যবহার করে, তারা তাদের নিজেদের মাইক্রোসফট একাউন্ট দিয়ে Sign in করতে পারবে, সুতরাং তারা তাদের পছন্দের অ্যাপ্লিকেশন, ব্যক্তি, ছবি এবং রং দিয়ে নিজের মতো করে পিসিকে সাজাতে পারবে (আপনার কোনকিছু পরিবর্তন না করেও)।

পিকচার পাসওয়ার্ড (Picture Password) ব্যবহার করে Sign in করা

Picture Password এর সাহায্যে, একটি মনে রাখা কষ্টকর পাসওয়ার্ড এর পরিবর্তে আপনার পছন্দের কোন ছবি দিয়ে পিসিতে Sign in করতে পারবেন। আপনি একটি ছবি নির্বাচন করেছেন, যা ইঙ্গিত করে - বৃত্ত, সোজা লাইন, বা ফোটার সমন্ময় - আপনি ব্যবহার করুন এবং ছবিটি যেখানে আছে তা ট্রেস করুন। আপনি একটি Picture Password অঙ্কন করতে পারেন সরাসরি টাচ স্ক্রিণের উপরে আঙ্গুলের সাহায্যে, অথবা আপনি ছবি (কোন আকৃতি) আকার জন্য মাউস ব্যবহার করতে পারেন। আপনার পিসিতে যাদের মাইক্রোসফট একাউন্ট আছে তাদের সবাই তাদের নিজস্ব Picture Password তৈরি করতে পারে।

Picture Password তৈরি করার জন্য

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. Accounts এ টোকা দিন বা ক্লিক করুন এবং তারপর Sign-in options এ টোকা দিন বা ক্লিক করুন।
3. Picture password এর অধীনে Add এ টোকা দিন বা ক্লিক করুন।
4. আপনার মাইক্রোসফট একাউন্ট এর তথ্য দিয়ে Sign in করুন, এবং তারপর পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন।

 

টিপস: সাধারণ পাসওয়ার্ড এর থেকে Picture Password অনেক বেশি নিরাপদ, কেননা এগুলো অনুমান করা কঠিন।

 

 

 

Sign in করার পর আপনি কোথায় যেতে চান

ডিফল্ট হিসেবে, অধিকাংশ মানুষ যখন তাদের পিসিতে Sign in করে তখন ডেস্কটপ এ যায়, কিন্তু আপনি আপনি যখন আপনার পিসিতে Sign in করবেন তখন Desktop, Start Screen, বা App View এর মধ্যে যেকোনটি পছন্দ করতে পারেন, এক্ষেত্রে আপনি কি ধরনের যন্ত্র (ডিভাইস) ব্যবহার করছেন তা কোন বিবেচ্য বিষয় নয়।

ডেস্কটপ এ বুট করার জন্য

1. প্রথমে, পর্দার ডান পাশে সুইপ করার মাধ্যমে টাস্কবার ও নেভিগেশন প্রোপার্টিজ খুলুন, Search এ টোকা দিন, সার্চ বক্স এ Taskbar লিখুন, এবং তারপর ফলাফল থেকে Taskbar and Navigation এ টোকা দিন বা ক্লিক করুন।

2. Navigation ট্যাব এ টোকা দিন বা ক্লিক করুন এবং তারপর When I sign in or close all apps on a screen, go to the desktop instead of Start চেক বক্স নির্বাচন করুন । OK তে টোকা দিন বা ক্লিক করুন। আপনি যখন পরবর্তীতে পিসি Sign in করবেন তখন ডেস্কটপ দেখা যাবে।

স্টার্ট এ বুট করার জন্য

1. প্রথমে, পর্দার ডান পাশে সুইপ করার মাধ্যমে টাস্কবার ও নেভিগেশন প্রোপার্টিজ খুলুন, Search এ টোকা দিন, সার্চ বক্স এ Taskbar লিখুন, এবং তারপর ফলাফল থেকে Taskbar and Navigation এ টোকা দিন বা ক্লিক করুন।
2. Navigation ট্যাব এ টোকা দিন বা ক্লিক করুন এবং তারপর When I sign in or close all apps on a screen, go to the desktop instead of Start চেক বক্স নির্বাচন উঠিয়ে দিন । OK তে টোকা দিন বা ক্লিক করুন। আপনি যখন পরবর্তীতে পিসি Sign in করবেন তখন ডেস্কটপ এর বদলে Start Screen দেখা যাবে।

 

 

একাউন্ট পিকচার পরিবর্তন করার জন্য

Microsoft accountআপনার অ্যাকাউন্ট পিকচার আপনার মাইক্রোসফট একাউন্ট এর সাথে সংযুক্ত, সুতরাং আপনি পিসিতে এবং Start Screen এ Sign in করলে উক্ত ছবি দেখতে পারবেন। সেইসাথে আপনার বন্ধু-বান্ধব এবং পরিবার যারা পরিচিত হিসেবে তালিকাভুক্ত আছে (আপনার কন্টাক্ট লিস্ট এ আছে) তারা আপনার ছবি দেখতে পারবে।

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

 

 

 

 

অ্যাকাউন্ট পিকচার পরিবর্তন করার জন্য

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. Accounts এ টোকা দিন বা ক্লিক করুন এবং তারপর Your account এ টোকা দিন বা ক্লিক করুন
3. নিচের যেকোন একটি পন্থা অনুসরণ করুন:

একটি পছন্দের ছবি খুজে বের করা। যদি আপনি একটি পছন্দের ছবি খুজতে চান তাহলে Browse এ টোকা দিন বা ক্রিক করুন। আপনি আপনার পিসিতে বা অনড্রাইভে ফটো নেভিগেট করতে পারেন। একটি ছবি নির্বাচন করার জন্য টোকা দিন বা ক্লিক করুন, তারপর Choose Image এ টোকা দিন বা ক্লিক করুন।

অ্যাপ্লিকেশন ব্যবহার করে ছবি তৈরি বা সম্পাদনা করা। আপনি যদি ছবি তৈরি বা সম্পাদনা করার জন্য কোন অ্যাপ্লিকেশন ব্যবহার করতে চান, আপনি যে অ্যাপ্লিকেশনটি ব্যবহার করতে চান তার উপর টোকা দিন বা ক্লিক করুন, তারপর পর্দায় প্রদর্শিত নির্দেশনা অনুসরন করুন। আপনার পিসিতে ইনস্টল করা ছবি সম্পাদনা করা যায় এমন সকল অ্যাপ্লিকেশন এর তালিকা এখানে দেখা যাবে। আপনি যে অ্যাপ্লিকেশনটি ব্যবহার করতে চান তা যদি এখানে দেখা না যায় তাহলে কিভাবে একটি সংগ্রহ করবেন তা জানতে দেখুন “পিসির জন্য অ্যাপ্লিকেশন সংগ্রহ”।

একটি ছবি তোলা বা একটি ভিডিও ক্লিপ তৈরি করা। যদি আপনি একটি ছবি তুলতে চান বা একটি ভিডিও ক্লিপ তৈরি করতে চান তাহলে Camera এ টোকা দিন বা ক্লিক করুন। তারপর একটি ছবি তুলুন বা ভিডিও ক্লিপ তৈরি করার জন্য video mode এ সুইচ করুন।

 

 

 

স্টার্টকে নিজের পছন্দ অনুসারে সাজানো

আপনি Start Screen এ টাইলস, রং এবং ছবি বাছাই করতে পারেন এবং আপনার অ্যাপ্লিকেশনগুলো সাজাতে পারেন। যদি অন্যেরা আপনার পিসি ব্যবহার করে, তাহলে নিশ্চিত হয়ে নিন যে তারা সকলে তাদের নিজেদের মাইক্রোসফট একাউন্ট ব্যবহার করে কিনা। এভাবে তারা প্রত্যেকের তাদের নিজস্ব কাস্টমাইজড Start Screen থাকতে পারে। আরো জানতে দেখুন “স্টার্ট স্ক্রিণ”।

ব্যাকগ্রাউন্ড পরিবর্তন করার জন্য

Backgraund1. স্টার্ট খোলার জন্য সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং তারপর Start এ টোকা দিন।
2. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং তারপর Settings এ টোকা দিন।
3. Personalize এ টোকা দিন বা ক্লিক করুন এবং তারপর background, background Colour এ টোকা দিন বা ক্লিক করুন, ব্যাকগ্রাউন্ড কালার, এবং আপনার প্রয়োজন অনুসারে রঙ অ্যাকসেন্ট করুন। ব্যাকগ্রাউন্ড কালার এবং আপনি যে রঙ অ্যাকসেন্ট করেছেন তা অন্য কিছু জায়গাতেও দেখা যাবে, যেমন- চার্ম এবং সাইন ইন স্ক্রিণ।

 

 

 

 

স্টার্ট এ ডেস্কটপ ব্যাকগ্রাউন্ড দেখার জন্য

আপনি ডেস্কটপ ব্যাকগ্রাইন্ড পিকচার কে Start Screen এর ব্যাকগ্রাউন্ড হিসেবেও ব্যবহার করতে পারেন। যখন ডেস্কটপ ব্যাকগ্রাউন্ড পরিবর্তন করা হবে তখন স্টার্টও সয়ংক্রিয়ভাবে আপডেট হবে।

1. স্টার্ট খোলার জন্য সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং তারপর Start এ টোকা দিন।
2. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং তারপর Settings এ টোকা দিন।
3. Personalize এ টোকা দিন বা ক্লিক করুন এবং তারপর আপনার ডেস্কটপ ব্যাকগ্রাউন্ড এর প্রিভিউ থেকে আপনার পছন্দমত একটিকে টোকা দিন বা ক্লিক করুন।

 

 

যেসকল অ্যাপলিকেশন আপনি প্রায়ই ব্যবহার করেন সেগুলোকে পিন করে রাখা

দ্রুততার সাথে খোলার জন্য আপনি আপনার পছন্দের অ্যাপলিকেশনগুলোকে Start Screen বা টাস্কবার এর সাথে পিন করে রাখতে পারেন এবং টাইলস এ এক নজরে আপডেটগুলো দেখতে পারেন।

ধাপ 1 App View দেখার জন্য আপনার হাতের আঙুলের সাহায্যে Start Screen এর মাঝ বরাবর থেকে উপরের দিকে স্লাইড করুন অথবা Start Screen এর নিচের দিকে বাম পাশের অ্যারো Arrow এ ক্লিক করুন।

ধাপ 2 যে অ্যাপলিকেশন কে পিন করতে চান তার উপর চাপ দিন বা ধরে রাখুন বা রাইট ক্লিক করুন। আপনি একাধিক অ্যাপলিকেশন বাছাই করতে পারেন এবং সবগুলোকে একই সাথে পিন করতে পারেন।

ধাপ 3 টোকা দিন বা ক্লিক করুন Pin to Start অথবা Pin to taskbar এর উপর। যে অ্যাপলিকেশনগুলো পিন করেছেন তা Start Screen এর শেষে বা ডেস্কটপ টাস্কবারে দেখা যাবে।

স্টার্ট থেকে অ্যাপলিকেশন আনপিন করা

আপনি যদি সিদ্ধান্ত নিয়ে থাকেন যে আপনার Start Screen এ একটি টাইল আর থাকবে না, আপনি একে স্টার্ট থেকে আনপিন করতে পারেন। অ্যাপলিকেশন আনপিন করা, অ্যাপলিকেশন আনইনস্টল করা থেকে ভিন্নতর - যদি আপনি একটি অ্যাপলিকেশন কে Start Screen থেকে আনপিন করেন, অ্যাপলিকেশনটি সার্চ করলে (খোজা হলে) তখনও দেখা যাবে এবং এটি অ্যাপলিকেশন ভিউ এও দেখা যাবে।

স্টার্ট থেকে একটি অ্যাপ আনপিন করা

1. শুরুর পর্দায় যে টাইলস কে আনপিন করতে চান তার উপর চাপ দিন বা ধরে রাখুন বা রাইট ক্লিক করুন।
আপনি একাধিক অ্যাপলিকেশন বাছাই করতে পারেন এবং সবগুলোকে একই সাথে আনপিন করতে পারেন। আপনার নির্বাচন বাদ দেওয়ার জন্য Start Screen এর উপর অথবা App View ফাঁকা এর স্থানে এ টোকা দিন বা ক্লিক করুন, অথবা Customize এ টোকা দিন বা ক্লিক করুণ।

2. Unpin from Start এ টোকা দিন বা ক্লিক করুন।
আপনি যে অ্যাপ্লিকেশনগুলোকে বাছাই করেছিলেন তা Start Screen থেকে মুছে যাবে, কিন্তু তখনও App View এ দেখা যাবে এবং সার্চ (খোঁজা হলে) করলে পাওয়া যাবে।

Start Screen এর একটি টাইল সরাতে
1। শুরুর পর্দায় যে টাইলস কে সরাতে চান তার উপর চাপ দিন বা ক্লিক করুন এবং ধরে রাখুন।
2। যেখানে এটিকে রাখতে চান সেখানে এটিকে টেনে নিয়ে যান।

টাইলস কে ছোট বড় করা
1। শুরুর পর্দায় যে টাইলস কে ছোট বড় করতে চান তার উপর চাপ দিন বা ক্লিক করুন এবং ধরে রাখুন।
2। Resize এ টোকা দিন বা ক্লিক করুন।
3। আপনার চাহিদামত সাইজ পছন্দ করুন।

 

 

 

আপনার লক স্ক্রিন কাস্টমাইজ করা

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

যদি আপনি কিছু বিনামূল্যে প্রাপ্ত ছবি ব্যবহার করতে চান, তাহলে Personalization Gallery থেকে ছবি ডাউনলোড করতে পারেন।

Lock Screen

Lock Screen এ ছবি যোগ করতে

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. PC and devices এ টোকা দিন বা ক্লিক করুন এবং তারপর Lock screen এ টোকা দিন বা ক্লিক করুন।
3. যদি আপনি শুধুমাত্র একটি ছবিকে Lock Screen এ ব্যবহার করতে চান তাহলে Browse এ টোকা দিন বা ক্লিক করুন এবং তারপর আপনার চাহিদামত ছবি পছন্দ করুন (আপনি আপনার পিসি বা অনড্রাইভ থেকে ছবি পছন্দ করতে পারেন)।
4. যদি আপনি একটি স্লাইড শো কে আপনার পিসির Lock Screen এ দেখতে চান তাহলে এটি চালু করার জন্য Play a slide show on the lock screen টোকা দিন বা ক্লিক করুন।
5. Add a folder এ টোকা দিন বা ক্লিক করুন এবং আপনার পিসি বা অনড্রাইভ এ একটি ফোল্ডার কে ব্রাউজ করুন।
6. এটি নির্বাচন করার জন্য ফোল্ডারটির উপর টোকা দিন বা ক্লিক করুন এবং OK তে টোকা দিন বা ক্লিক করুন। আপনি দশটি পর্যন্ত ফোল্ডার নির্বাচন করতে পারবেন।

Lock Screen এর নিচে অ্যাপ্লিকেশন আনার জন্য

Lock Screen AppLock Screen এর নিচে স্থাপনের জন্য আপনি কিছু সংখ্যক অ্যাপ পছন্দ করতে পারেন যাতে আপনি পিসি লক থাকা সত্ত্বেও আপনার পিসিতে কি ঘটছে তা দেখতে পারেন।

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. PC and devices এ টোকা দিন বা ক্লিক করুন এবং তারপর Lock screen এ টোকা দিন বা ক্লিক করুন।
3. Lock screen apps এ মধ্যে plus button Plusএ টোকা দিন বা ক্লিক করুন। তারপর তালিকা হতে নির্বাচনের জন্য একটি অ্যাপ এ টোকা দিন বা ক্লিক করুন।

 

 

Lock Screen এ কোন অ্যাপ্লিকেশনের বিস্তারিত তথ্য দেখার জন্য

Lock Screen এ আপনি একটি অ্যাপ নিতে পারেন যাতে Lock Screen এ অবস্থান করেও কোন বিষয় সম্পর্কে বিস্তারিত তথ্য পেতে পারেন যেমন- আপনার ক্যালেন্ডারের পরবর্তী অ্যাপয়েন্টমেন্ট বা স্কাইপিতে কে আপনাকে কল করছে তা জানতে পারেন।

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. PC and devices এ টোকা দিন বা ক্লিক করুন এবং তারপর Lock screen এ টোকা দিন বা ক্লিক করুন।
3. Choose an app to display detailed status এর অধীন plus button Plusএ টোকা দিন বা ক্লিক করুন। তারপর তালিকা হতে নির্বাচনের জন্য একটি অ্যাপ এ টোকা দিন বা ক্লিক করুন।

 

টিপস: ডিফল্ট হিসেবে উইন্ডোজ সেইসকল ছবি লক স্কিণের স্লাইড শো এ ব্যবহার করে যেগুলো পর্দার সাথে ভালভাবে ফিট হয়। কিন্তু যদি আপনি আপনার নির্বাচিত ফোল্ডার এর সকল ছবি স্লাইড শো এ ব্যবহার করতে চান তাহলে Only use the pictures that will fit best on my screen এ টোকা দিন বা ক্লিক করুন।

 

 

আপনার সেটিংস সিঙ্ক (Sync) করা।

যদি আপনি একটি মাইক্রোসফট একাউন্ট ব্যবহার করতে থাকেন, আপনি আপনার lock screen এর ছবি, Start screen এবং themes সিঙ্ক করতে পারবেন। এভাবে আপনি যখন অন্য পিসি বা ডিভাইস এ Sign in করবেন, তখন আপনার ব্যক্তিগতকৃত (personalized) সব কিছুই সেখানে দেখতে পারবেন।

সেটিংস সিঙ্ক (Sync) করতে

1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
(আপনি যদি মাউস ব্যবহার করতে চান তাহলে মাউস পয়েন্টার পর্দার ডান পাশের নিচের দিকে নিয়ে যান, একটু উপরের দিকে উঠুন, Settings এ ক্লিক করুন এবং তারপর Change PC settings এ ক্লিক করুন।)
2. OneDrive এ টোকা দিন বা ক্লিক করুন এবং তারপর Sync settings এ টোকা দিন বা ক্লিক করুন।
3. এটি অন করতে Sync your settings on this PC এ টোকা দিন বা ক্লিক করুন।
4. Personalization settings এর অধীনে আপনি যেভাবে সিঙ্ক করতে চান সেভাবে সেটিংস পছন্দ করুন।

নোট: আপনি সেখানে Sign in করেছেন সেখানকার Start Screen এ আপনার সকল অ্যাপ্লিকেশন এর টাইলস দেখতে পারবেন। কিন্তু একটি অ্যাপ্লিকেশন অন্য ডিভাইস এ ব্যবহার করার জন্য উক্ত ডিবাইস এ অ্যাপ্লিকেশনটি ইনস্টল করতে হবে।। আরো জানার জন্য দেখুন “একাধিক পিসিতে অ্যাপ্লিকেশন ইন্সটল করার জন্য মাইক্রোসফট একাউন্ট ব্যবহার করুন”।

 

 

ডেস্কটপ কাস্টমাইজ করা

ডেস্কটপ কাস্টমাইজ করতে আপনি থিম, ডেস্কটপ ব্যাকগ্রাউন্ড, উইন্ডো কালারস এবং স্ক্রিণ সেভার ব্যবহার করতে পারেন। আপনি বিনামূল্যে কিছু থিম এবং ডেস্কটপ ব্যাকগ্রাউন্ড ব্যবহার করতে চান তাহলে Personalization Gallery এ বিশাল সংখ্যয় এগুলো পাবেন। ডেস্কটপ ব্যক্তিগতকৃতকরণ সম্পর্কে আরো বিস্তারিত জানতে দেখুন Get started with themes.

Random Short Notes on Project Management (PMI)

ব্যবস্থাপনার উপর কিছু সংক্ষিপ্ত নোটঃ
রিদওয়ান বিন শামীম

প্রকল্পের সুযোগ ব্যবস্থাপনার পরিকল্পনাঃ

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

একটি প্রকল্প শুরু করাঃ

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

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

ডবলুবিএস সার্ভের উদ্দেশ্যঃ

ডবলুবিএস সার্ভে পুরো বিষয়টি চূড়ান্ত ভাবে খতিয়ে দেখে, এই ডবলুবিএস সার্ভের কয়েকটি উদ্দেশ্য আছে। সেগুলো হলঃ পূর্বে নিরুপিত সম্ভাব্যতা কতটুকু নির্ভুল তা জানা, নিয়ম নিষ্ঠা ও দায়িত্ববোধ মেনে চলাকে সহজ করা, প্রকল্পের সফলতার একটি মানদণ্ড তৈরি করা ইত্যাদি। এভাবেই প্রকল্প ব্যবস্থাপনার কাজ এগিয়ে চলে।
তথ্যসুত্রঃ (Andy Crowe, the PMP Exam.)

এইচটিএমএল শিরোনাম (HTML Headings)

HTML Headings

HTML Documents এর ক্ষেত্রে Headings খুবই গুরুত্বপূর্ণ। <h1> থেকে <h6> tags দ্বারা Heading কে তুলে ধরা হয়।

<h1> tag দ্বারা সবচেয়ে গুরুত্বপূর্ণ ও <h6> tag দ্বারা অপেক্ষাকৃত কম গুরুত্বপূর্ণ Heading কে তুলে ধরা হয়।

 

উদাহরণস্বরূপঃ

<h1> এই হল একটি শিরোনাম </h1>

<h2> এই হল একটি শিরোনাম </h2>

<h3> এই হল একটি শিরোনাম </h3>

<h4> এই হল একটি শিরোনাম </h4>

<h5> এই হল একটি শিরোনাম </h5>

<h6> এই হল একটি শিরোনাম </h6>


 

 

ফলাফল:

এই হল একটি শিরোনাম

এই হল একটি শিরোনাম

এই হল একটি শিরোনাম

এই হল একটি শিরোনাম

এই হল একটি শিরোনাম
এই হল একটি শিরোনাম

 

বিশেষ দ্রষ্টব্যঃ প্রত্যেক Heading এর আগে ও পরে browser স্বয়ংক্রিয়ভাবে কিছু empty space যোগ করে দেয়।

 

শিরোনাম (Heading) খুব গুরুত্বপূর্ণ

HTML Headings কে কেবল Heading এর জন্য ব্যবহার করতে হবে, কোন Text কে বড় (big) অথবা Bold করার জন্য Heading কে ব্যবহার করা যাবে না। আপনার web page গুলোর structure এবং content এর সূচি বানানোর জন্য সার্চিঞ্জিনগুলো আপনার headings কে ব্যবহার করে। User রা Heading এর দ্বারা আপনার web page এর সারমর্ম বুঝে নেয়। Document এর structure দেখানোর জন্যও Heading ব্যবহার করা গুরুত্বপূর্ণ। <h1> Heading হল প্রধান শিরোনাম, <h2> অপেক্ষাকৃত গৌন, <h3> তার চেয়ে কম গুরুত্বপূর্ণ এভাবেই ক্রমান্বয়ে ব্যবহৃত হয়।

 

HTML Horizontal Rules (আনুভূমিক নিয়ম)

HTML page এ <hr> tag আনুভূমিক রেখা তৈরি করে। বিষয়বস্তুকে চিহ্নিত করার জন্য <hr > element ব্যবহার করা হয়।

যেমনঃ


<!DOCTYPE html>
<html>
<body>

<p>The hr tag defines a horizontal rule:</p>
<hr>
<p>This is a paragraph.</p>
<hr>
<p>This is a paragraph.</p>
<hr>
<p>This is a paragraph.</p>

</body>
</html>


 

 

ফলাফল

 

 

The hr tag defines a horizontal rule:


This is a paragraph.


This is a paragraph.


This is a paragraph.

 

 


 

 

 

HTML এর <head> element

HTML এর <head> element টির HTML Headings এর সাথে কিছু করার নেই। <head> element meta data ধারণ করে। আর meta data web page এ দৃশ্যায়িত হয় না। <html> tag ও <body> tag এর মধ্যখানে HTML element অবস্থান করে।

উদাহরণস্বরূপঃ

<!DOCTYPE html>
<html>

<head>

<title>My First HTML</title>
<meta charset="UTF-8">

</head>

<body>

<p>The HTML head element contains meta data.</p>

<p>Meta data is data about the HTML document.</p>

</body>
</html>


 

 

ফলাফল

The HTML head element contains meta data.

Meta data is data about the HTML document.


 

 

 HTML এর title element

HTML এর title element হল meta data। এটা HTML Documents এর title হিসেবে চিহ্নিত হয়। Document এ title কখনও প্রদর্শিত হয় না।

 

HTML এর meta element

HTML এর <meta> element ও আরেকটি meta data। HTML Document এর অন্যান্য তথ্য ও চরিত্র সেটকে তুলে ধরতে এটি ব্যবহৃত হয়।

এইচটিএমএল এট্রিবিউট (HTML Attributes)

HTML Attributes এইচটিএমএল এট্রিবিউট

নয়ন চন্দ্র দত্ত

 

এট্রিবিউট হচ্ছে ট্যাগ এর বৈশিষ্ট বা মান। এট্রিবিউট এইচটিএমএল উপাদান সম্পর্কে অতিরিক্ত তথ্য প্রদান করে।

এইচটিএমএল এট্রিবিউট

• এইচটিএমএল এলিমেন্টে বা উপাদানের এট্রিবিউট বা বৈশিষ্ট্যাবলী থাকতে পারে।

• এট্রিবিউট একটি উপাদান সম্পর্কে অতিরিক্ত তথ্য প্রদান করে।

• এট্রিবিউট সবসময় শুরু ট্যাগ এ উল্লেখ করা হয়।

• এট্রিবিউট নাম/মান জোড়ায় জোড়ায় আসে। যেমনঃ name="value"

lang এট্রিবিউট

ডকুমেন্টের ল্যাংগুয়েজ <html> ট্যাগে declare করা যেতে পারে। ল্যাংগুয়েজ lang এট্রিবিউটে declare করা হয়।

একটি ল্যাংগুয়েজ declare করা বিশেষ ব্যবহারকারীদের জন্য ( accessibility) তৈরি অ্যাপ্লিকেশন( স্ক্রিন রিডার ) এবং সার্চ ইঞ্জিন এর জন্য খুব গুরুত্বপূর্ণ।

উদাহরণঃ


<!DOCTYPE html>
<html lang="en-US">
<body>

<h1>My First Heading</h1>

<p>My first paragraph.</p>

</body>
</html>


 

প্রথম দুটি অক্ষর ভাষা নির্ধারণ করে (en) । যদি উপভাষা থাকে, তবে আরো দুটি অক্ষর (US) ব্যবহার করুন।

Title Attribute শিরোনাম অ্যাট্রিবিউট

এইচটিএমএল অনুচ্ছেদ <p> ট্যাগ দিয়ে নির্দেশিত হয়। এই উদাহরণে, <p> এলিমেন্ট এর একটি টাইটেল অ্যাট্রিবিউট আছে। টাইটেল অ্যাট্রিবিউটের মান হচ্ছে "About bangla learning school" ।

উদাহরণঃ


<p title="About bangla learning school">
salearningschoolis a web developer's site.
It provides tutorials and references covering
many aspects of web programming,
including HTML, CSS, JavaScript, XML, SQL, PHP, ASP, etc.
</p>


 

 

ফলাফল


salearningschool is a web developer's site.
It provides tutorials and references covering
many aspects of web programming,
including HTML, CSS, JavaScript, XML, SQL, PHP, ASP, etc.


[আপনি যখন element এর উপর দিয়ে মাউসকে move করাবেন তখন টাইটেল একটি tooltip হিসাবে প্রদর্শন করবে। ]

 

 

href অ্যাট্রিবিউট

এইচটিএমএল লিঙ্ক <a> ট্যাগ দিয়ে নির্ধারিত। লিঙ্ক এড্রেস href অ্যাট্রিবিউটে উল্লেখ করা হয়।

যেমনঃ-


<a href="http://bangla.salearningschool.com">This is a link</a>


 

 

ফলাফল


This is a link


 

আপনারা লিঙ্ক এবং <a> ট্যাগ সম্পর্কে এই টিউটোরিয়ালে পরবর্তীতে আরো জানতে পারবেন।

 

Size বা আকার অ্যাট্রিবিউট

এইচটিএমএল ইমেজ <img> ট্যাগ দিয়ে নির্ধারিত। উৎস ফাইলের নাম (src) এবং ইমেজের আকার (width এবং height) সব অ্যাট্রিবিউট হিসেবে নির্দেশিত হয়। যেমনঃ-

<img src="http://bangla.salearningschool.com/wp-content/uploads/2015/04/bangla.salearning.png" width="960" height="198">

ছবির আকার পিক্সেলে উল্লেখ করা হয়েছে। width="960" এর মানে পর্দা 960 পিক্সেল চওড়া।

আপনারা ইমেজ এবং <img> ট্যাগ সম্পর্কে এই টিউটোরিয়ালে পরবর্তীতে আরো জানতে পারবেন।

 

Alt অ্যাট্রিবিউট

যখন একটি এইচটিএমএল উপাদান প্রদর্শন করা যায় না তখন Alt অ্যাট্রিবিউট নির্দিষ্ট একটি বিকল্প টেক্সট ব্যবহার করতে সাহায্য করে। "screen readers" দ্বারা অ্যাট্রিবিউটের মান পড়া যায়।

উদাহরণঃ


<img src="http://bangla.salearningschool.com/wp-content/uploads/2015/04/bangla.salearning.png" alt="salearningschool.com" width=660" height="150">


 

 

ফলাফল


salearningschool.com


 

 

আমার সুপারিশ: সর্বদা ছোট হাতের অক্ষর ব্যবহার করবেন।

এইচটিএমএল ৫ স্ট্যান্ডার্ড এর ছোট হাতের অ্যাট্রিবিউট নাম প্রয়োজন হয় না। টাইটেল অ্যাট্রিবিউট ছোট বা বড় হাতের লেখা যেতে পারে, যেমন- Title বা TITLE ।

ছোট হাতের সবচেয়ে কমন এবং ছোট হাতের অক্ষর লেখাও সহজ।

আমার সুপারিশ : সর্বদা Quote Attribute মান ব্যবহার করবেন।

এইচটিএমএল ৫ স্ট্যান্ডার্ড এ অ্যাট্রিবিউট মান এ Quote দেওয়ার প্রয়োজন হয় না। উপরে প্রদর্শিত href অ্যাট্রিবিউট, এভাবেও লেখা যেতে পারেঃ


<a href=http://salearningschool.com>


 

 

এইচটিএমএল 4 Quote ব্যবহারের বিশেষ পরামর্শ দেওয়া হচ্ছে এবং এক্সএইচটিএমএল (XHTML) এর মত ডকুমেন্ট Quote ব্যবহারের দাবি রাখে।


<p title=About bangl learnings chool>


 

 

[quote এর ব্যবহার করাটা খুবই সাধারণ ব্যাপার। quotes বাদ দিয়ে লিখলে ত্রুটি তৈরী হতে পারে। ]

 

সিঙ্গেল বা ডাবল quote ?

ডাবল quote এর ব্যবহার এইচটিএমএল এ খুবই সাধারণ, কিন্তু একক quote ও ব্যবহার করা যেতে পারে।

অনেকসময়, যখন অ্যাট্রিবিউট মান নিজেই ডাবল quotes (উদ্ধৃতি চিহ্ন) ধারণ করে তখন একক সিঙ্গেল quotes (উদ্ধৃতি চিহ্ন) ব্যবহার করা প্রয়োজন হয়ে পরে।

যেমনঃ-


<p title='John "ShotGun" Nelson'>


 

 

বা উলটাভাবে


<p title="John 'ShotGun' Nelson">


 

 

 

অধ্যাযয়ের সারমর্ম

১। সমস্ত এইচটিএমএল উপাদানের অ্যাট্রিবিউট থাকতে পারে।

২। এইচটিএমএল টাইটেল অ্যাট্রিবিউট অতিরিক্ত "টুল - টিপ" তথ্য প্রদান করে।

৩। এইচটিএমএল href অ্যাট্রিবিউট লিঙ্কের জন্য ঠিকানা ও তথ্য প্রদান করে।

৪। এইচটিএমএল width এবং height অ্যাট্রিবিউটন ইমেজের জন্য আকার বিষয়ক তথ্য প্রদান করে।

৫। এইচটিএমএল Alt অ্যাট্রিবিউট পাঠকদের জন্য টেক্সট প্রদান করে।

৬। এইচটিএমএল এট্রিবিউট নামে সবসময় ছোট হাতের অক্ষর ব্যবহার করা ভাল।

৭। quote এট্রিবিউট এ সবসময় ডাবল quote ব্যবহার করা ভাল।

 

এইচটিএমএল এট্রিবিউট

নীচে এইচটিএমএল এ প্রায়ই ব্যবহৃত হয় এমন কিছু এট্রিবিউট এর একটি বর্ণানুক্রমিক তালিকা দেওয়া হল:

এট্রিবিউটঃ alt
ব্যাখ্যাঃ ইমেজের জন্য একটি বিকল্প টেক্সট উল্লেখ করে

এট্রিবিউটঃ disabled
ব্যাখ্যাঃ একটি ইনপুট উপাদান নিষ্ক্রিয় করা হবে উল্লেখ করে

এট্রিবিউটঃ href
ব্যাখ্যাঃ লিঙ্ক এর জন্য URL (ওয়েব ঠিকানা) উল্লেখ করে

এট্রিবিউটঃ id
ব্যাখ্যাঃ একটি উপাদানের জন্য একটি unique আইডি উল্লেখ করে

এট্রিবিউটঃ src
ব্যাখ্যাঃ ইমেজের জন্য URL (ওয়েব ঠিকানা) উল্লেখ করে

এট্রিবিউটঃ style
ব্যাখ্যাঃ একটি উপাদানের জন্য ইনলাইন সিএসএস স্টাইল উল্লেখ করে

এট্রিবিউটঃ title
ব্যাখ্যাঃ একটি উপাদান সম্পর্কে ( টুল টিপ হিসেবে প্রদর্শিত) অতিরিক্ত তথ্য উল্লেখ করে

এট্রিবিউটঃ value
ব্যাখ্যাঃ ইনপুট উপাদানের জন্য মান ( টেক্সট কন্টেন্ট ) উল্লেখ করে করে

MongoDB Java

Done By Raju(DU)

MongoDB Java

Installation পদ্ধতিঃ

Java program এ MongoDB ব্যাবহার করার পূর্বে আমাদেরকে নিশ্চিত করতে হবে যে MongoDB JDBC
Driver এবং Java আমাদের machine এ পূর্বে থেকেই রয়েছে। আপনি আরও Java tutorial দেখতে পারেন আপনার
machine এ Java installation করার জন্য। এখন দেখবে কিভাবে MongoDB JDBC driver টি আপনার machine
এ setup করবেন।
১। প্রথমে আপনাকে একটি jar ফাইল দরকার পড়বে সেটি mongodb/mongo-java-driver/downloads> Download mongo.jar
থেকে নামিয়ে নিতে হবে এবং নিশ্চিত হতে হবে সেটি যেন নতুন সংস্করণের হয়।
২। আপনাকে অবশ্যই mongo.jar কে আপনার classpath এ সংযুক্ত করতে হবে ।

Connect to database( Database এ Connect করণ)
---------------------------------------------------
Database এ connect করার জন্য আপনাকে database name নির্দিষ্ট করতে হবে, যদি database এর কোন অস্তিত্ব না
থাকে তবে mongodb নিজেই তা তৈরি করে নিবে।

Database এ connect করার কিছু Code নিম্নরুপঃ

import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;

public class MongoDBJDBC{
public static void main( String args[] ){
try{
// To connect to mongodb server
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
// Now connect to your databases
DB db = mongoClient.getDB( "test" );
System.out.println("Connect to database successfully");
boolean auth = db.authenticate(myUserName, myPassword);
System.out.println("Authentication: "+auth);
}catch(Exception e){
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
}
}
}

এখন database পরীক্ষা করার জন্য উপরের program টি সঙ্কলন এবং চালানো যাক। আপনার প্রয়োজন মত আপনি
path পরিবর্তন করে নিতে পারেন। আমরা JDBC driver mongo-2.10.1.jar ব্যাবহার করে বর্তমান path টি পাওয়া যায়।

যেমনঃ
$javac MongoDBJDBC.java
$java -classpath ".:mongo-2.10.1.jar" MongoDBJDBC
Connect to database successfully
Authentication: true

যদি আমরা machine টিতে Windows OS ব্যাবহার করি তবে আমরা code কে নিম্নরুপে compile and run করেতে
পারিঃ

$javac MongoDBJDBC.java
$java -classpath ".;mongo-2.10.1.jar" MongoDBJDBC
Connect to database successfully
Authentication: true

এইখানে auth এর Value হবে true, যদি user name এবং password টি নির্দিষ্ট database এর জন্য valid হয়।

Create a collection:(collection তৈরি করন)
-----------------------------
একটি collection তৈরি করার জন্য com.mongodb.DB class এর createCollection( ) পদ্ধতি ব্যাবহার করতে হয়।
Collection তৈরি করার জন্য code গুলি নিম্ন রুপঃ
import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;

public class MongoDBJDBC{
public static void main( String args[] ){
try{
// To connect to mongodb server
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
// Now connect to your databases
DB db = mongoClient.getDB( "test" );
System.out.println("Connect to database successfully");
boolean auth = db.authenticate(myUserName, myPassword);
System.out.println("Authentication: "+auth);
DBCollection coll = db.createCollection("mycol");
System.out.println("Collection created successfully");
}catch(Exception e){
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
}
}
}

যখন program টি compiled and executed হবে তখন এটি নিম্নরূপ ফলাফল দিবে-
Connect to database successfully
Authentication: true
Collection created successfully

Getting/ selecting a collection(collection নির্দিষ্ট করন):
----------------------------------------------------
একটি collection কে database এ নির্দিষ্ট করতে com.mongodb.DBCollection class টির
getCollection() পদ্ধতি ব্যাবহার করা হয়।

Code গুলি নিম্নরূপঃ
import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;

public class MongoDBJDBC{
public static void main( String args[] ){
try{
// To connect to mongodb server
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
// Now connect to your databases
DB db = mongoClient.getDB( "test" );
System.out.println("Connect to database successfully");
boolean auth = db.authenticate(myUserName, myPassword);
System.out.println("Authentication: "+auth);
DBCollection coll = db.createCollection("mycol");
System.out.println("Collection created successfully");
DBCollection coll = db.getCollection("mycol");
System.out.println("Collection mycol selected successfully");
}catch(Exception e){
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
}
}
}

যখন program টি compiled and executed হবে তখন এটি নিম্নরূপ ফলাফল দিবে-
Connect to database successfully
Authentication: true
Collection created successfully
Collection mycol selected successfully

Insert a document (একটি document প্রবেশ করণ):
-------------------------------------------------
mongodb তে একটি document কে প্রবেশ করাতে com.mongodb.DBCollection class এর
insert() পদ্ধতি ব্যাবহার করা হয়।

Code গুলি নিম্নরূপঃ
import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;

public class MongoDBJDBC{
public static void main( String args[] ){
try{
// To connect to mongodb server
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
// Now connect to your databases
DB db = mongoClient.getDB( "test" );
System.out.println("Connect to database successfully");
boolean auth = db.authenticate(myUserName, myPassword);
System.out.println("Authentication: "+auth);
DBCollection coll = db.getCollection("mycol");
System.out.println("Collection mycol selected successfully");
BasicDBObject doc = new BasicDBObject("title", "MongoDB").
append("description", "database").
append("likes", 100).
append("url", "http://www.tutorialspoint.com/mongodb/").
append("by", "tutorials point");
coll.insert(doc);
System.out.println("Document inserted successfully");
}catch(Exception e){
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
}
}
}

যখন program টি compiled and executed হবে তখন এটি নিম্নরূপ ফলাফল দিবে-

Connect to database successfully
Authentication: true
Collection mycol selected successfully
Document inserted successfully

Retrieve all documents(document এর পুনরুদ্ধার করন):
-----------------------------------------------------
collection এর সকল document কে নির্বাচন করতে com.mongodb.DBCollection class এর
find() পদ্ধতি টি ব্যাবহার করা হয়। এই পদ্ধতি টি cursor কে বদলে দেয়, তাই আপনাকে তা পুনরুদ্ধার
করার প্রয়োজন পরবে।

Code গুলি নিম্নরূপঃ
import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;

public class MongoDBJDBC{
public static void main( String args[] ){
try{
// To connect to mongodb server
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
// Now connect to your databases
DB db = mongoClient.getDB( "test" );
System.out.println("Connect to database successfully");
boolean auth = db.authenticate(myUserName, myPassword);
System.out.println("Authentication: "+auth);
DBCollection coll = db.getCollection("mycol");
System.out.println("Collection mycol selected successfully");
DBCursor cursor = coll.find();
int i=1;
while (cursor.hasNext()) {
System.out.println("Inserted Document: "+i);
System.out.println(cursor.next());
i++;
}
}catch(Exception e){
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
}
}
}

যখন program টি compiled and executed হবে তখন এটি নিম্নরূপ ফলাফল দিবে-

Connect to database successfully
Authentication: true
Collection mycol selected successfully
Inserted Document: 1
{
"_id" : ObjectId(7df78ad8902c),
"title": "MongoDB",
"description": "database",
"likes": 100,
"url": "http://www.tutorialspoint.com/mongodb/",
"by": "tutorials point"
}

Update document( document এর হালনাগাদ):
---------------------------------------------
collection থেকে document কে হালনাগাদ করার জন্য com.mongodb.DBCollection class
এর update() পদ্ধতি ব্যাবহার করা হয়।

Code গুলি নিম্নরূপঃ

import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;

public class MongoDBJDBC{
public static void main( String args[] ){
try{
// To connect to mongodb server
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
// Now connect to your databases
DB db = mongoClient.getDB( "test" );
System.out.println("Connect to database successfully");
boolean auth = db.authenticate(myUserName, myPassword);
System.out.println("Authentication: "+auth);
DBCollection coll = db.getCollection("mycol");
System.out.println("Collection mycol selected successfully");
DBCursor cursor = coll.find();
while (cursor.hasNext()) {
DBObject updateDocument = cursor.next();
updateDocument.put("likes","200")
col1.update(updateDocument);
}
System.out.println("Document updated successfully");
cursor = coll.find();
int i=1;
while (cursor.hasNext()) {
System.out.println("Updated Document: "+i);
System.out.println(cursor.next());
i++;
}
}catch(Exception e){
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
}
}
}

যখন program টি compiled and executed হবে তখন এটি নিম্নরূপ ফলাফল দিবে-

Connect to database successfully
Authentication: true
Collection mycol selected successfully
Document updated successfully
Updated Document: 1
{
"_id" : ObjectId(7df78ad8902c),
"title": "MongoDB",
"description": "database",
"likes": 100,
"url": "http://www.tutorialspoint.com/mongodb/",
"by": "tutorials point"
}

Delete first document( প্রথম document মুছে ফেলা):
--------------------------------------------------
collection থেকে প্রথম document মুছে ফেলার জন্য প্রথমে com.mongodb.DBCollection class
এর findOne() পদ্ধতি এবং পরে remove পদ্ধতি ব্যাবহার করা হয়।

Code গুলি নিম্নরূপঃ
import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;

public class MongoDBJDBC{
public static void main( String args[] ){
try{
// To connect to mongodb server
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
// Now connect to your databases
DB db = mongoClient.getDB( "test" );
System.out.println("Connect to database successfully");
boolean auth = db.authenticate(myUserName, myPassword);
System.out.println("Authentication: "+auth);
DBCollection coll = db.getCollection("mycol");
System.out.println("Collection mycol selected successfully");
DBObject myDoc = coll.findOne();
col1.remove(myDoc);
DBCursor cursor = coll.find();
int i=1;
while (cursor.hasNext()) {
System.out.println("Inserted Document: "+i);
System.out.println(cursor.next());
i++;
}
System.out.println("Document deleted successfully");
}catch(Exception e){
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
}
}
}

যখন program টি compiled and executed হবে তখন এটি নিম্নরূপ ফলাফল দিবে-
Connect to database successfully
Authentication: true
Collection mycol selected successfully
Document deleted successfully

mongodb এর বাকি পদ্ধতি যেমন save(), limit(), skip(), sort() একই ভাবে কাজ করে ।

MongoDB সীমাবদ্ধ রেকর্ডস

MongoDB সীমাবদ্ধ রেকর্ডস
নয়ন চন্দ্র দত্ত

* Limit() পদ্ধতি
MongoDB তে রেকর্ডকে সীমাবদ্ধ করতে হলে limit() মেথড বা পদ্ধতি ব্যবহার করতে হবে। Limit() পদ্ধতি এক নাম্বারের টাইপ সমর্থন করে যা ডকুমেন্টের নাম্বার এবং আপনি প্রদর্শন করতে চাইছেন।

সিনট্যাক্সঃ
limit() এর বেসিক সিনট্যাক্স নিম্নরূপঃ

>db.COLLECTION_NAME.find().limit(NUMBER)

উদাহরণঃ
নিম্নলিখিত তথ্যের সাথে myycol কালেকশনটি বিবেচনা করুনঃ

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

ডকুমেন্ট quering এর সময় নিচের উদাহরণটি কেবলমাত্র ২টি ডকুমেন্ট প্রদর্শন করবেঃ

>db.mycol.find({},{"title":1,_id:0}).limit(2)
{"title":"MongoDB Overview"}
{"title":"NoSQL Overview"}
>

যদি আপনি Limit() পদ্ধতিতে ডকুমেন্টের নাম্বার উল্লেখ না করেন তাহলে এটি কালেকশনের সকল ডকুমেন্ট প্রদর্শন করবে।

* MongoDB Skip() পদ্ধতি
এছাড়াও limit() পদ্ধতি ছাড়া আরও একটি পদ্ধতি skip() আছে যা ডকুমেন্টের সংখ্যার টাইপ সমর্থন করে এবং সেই নাম্বারের ডকুমেন্ট এড়িয়ে(skip) চলে।

সিনট্যাক্সঃ
skip() এর বেসিক সিনট্যাক্স নিম্নরূপঃ

>db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)

উদাহরণঃ
নিম্নলিখিত উদাহণটি শুধু দ্বিতীয় ডকুমেন্ট প্রদর্শন করবেঃ

>db.mycol.find({},{"title":1,_id:0}).limit(1).skip(1)
{"title":"NoSQL Overview"}
>

অনুগ্রহ করে লক্ষ্য করুন- skip() পদ্ধতিতে ডিফল্ট মান ০ ।

A Modern Web Dev’s Toolkit . ওয়েব ডেভেলপার দের আধুনিক টুলস

A Modern Web Dev's Toolkit . ওয়েব ডেভেলপার দের আধুনিক টুলস

নোড এবং এন পি এমঃ

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

একটি ওয়েব সার্ভার তৈরি করা অত্যন্ত সহজ যদি নিম্নক্ত লাইনগুলো অনুসরণ করা যায়।

var http = require('http');

http.createServer(function (req, res) {

res.writeHead(200, {'Content-Type': 'text/plain'});

res.end('Hello World\n');

}).listen(1337, '127.0.0.1');

console.log('Server running at http://127.0.0.1:1337/');

 

এটি চালানোর জন্য করতে হবে

$ node start

Server running at http://172.0.0.1:1337/

 

নোড এর অন্নতম একটি বিষয় হলো এর গুরুত্বপূর্ণ কমিউনিটি, যা NPM ডিরেক্টরি, নোড প্যাকেজ ম্যানেজার তৈরি করে এবং তথাকথিত নোড মডিউল প্রকাশ করে। বর্তমানে এ সম্পর্কে 90,000 মডিউল আছে এবং গত মাসে প্রায় 390,000 ডাউনলোড করা হয়েছে।

নোড ইনস্টলিং এর নিয়মঃ

শুরুতেই আপনাকে প্রথমে নোড রানটাইম ইনস্টল করতে হবে। এটি স্বয়ংক্রিয়ভাবে আপনার মেশিনে NPM ইনস্টল করবে।

এটি সম্পন্ন হলে, লিখতে হবে

$ node -v

নোড প্যাকেজ ইনস্টলিং এর নিয়মঃ

একটি নোড প্যাকেজ ইনস্টল করা সহজ।

$ npm install grunt

 

এটি node_modules নামক একটি ফোল্ডারে ইনস্টল হবে।

একটি প্যাকেজ আন-ইনস্টল করতেঃ

একটি প্যাকেজ আনইনস্টল করতে নিম্নক্ত পদ্ধতি অবলম্বন করুন।

$ npm uninstall --save-dev grunt

এর ফলে package.json থেকে প্যাকেজটি মুছে যাবে।

 

বিশ্বব্যাপী প্যাকেজসমূহঃ

প্যাকেজ ইনস্টলের পাশাপাশি dev বা রানটাইম নির্ভর করে।

$ npm install grunt –g

 

প্যাকেজ পুনরুদ্ধারের নিয়মঃ

আপনার VCS করতে node_modules ফোল্ডার কমিট করবেন না।

রুট ডিরেক্টরিতে নির্বাহ করতেঃ

$ npm install

সংস্করণ করাঃ

  • একটি সংস্করণ সংখ্যা হলো MINOR.PATCH
  • যখন আপনি অসামঞ্জস্যপূর্ণ মেজর সংস্করণ করেন, তখন API- র পরিবর্তন হয়।
  • ক্ষুদ্র সংস্করণ হয় যখন আপনি পিছন দিকে একটি উপযুক্ত পদ্ধতিতে কার্যকারিতা যোগ করেন, এবং যখন আপনি পিছন দিকে-সামঞ্জস্যপূর্ণ বাগ সংশোধন করেন, তখন প্যাচ সংস্করণ হয়।
  • NPM 1.3.5: প্যাকেজ (সবচেয়ে নিয়ন্ত্রণমূলক) দেওয়া সংস্করণ ব্যবহার করতে বলে।
  • বাড়তি প্যাচ সংস্করণের (সাধারণত বাগ) জন্য3.5 বা 1.3.x: NPM শুধুমাত্র আপগ্রেড দেওয়া প্যাকেজকে এভাবে উল্লেখ করে => = 1.3.5-0
  • 4.0-0: NPM এটি সংজ্ঞায়িত করে এভাবে ~ 1.3.5
  • ^ 1.3.5: <2.0.0: এটি প্রধান রিলিজের চেয়ে পরবর্তী কোনো সংস্করণে আপগ্রেড করতে NPM এভাবে উল্লেখ করেঃ :<2.0.0 ।
  • যখন আপনি নোড প্যাকেজ ইনস্টল করবেন তখন নতুন NPM 1.3.5 ডিফল্ট সিস্টেম এভাবে টা প্রদর্শন করবে => = 1.3.5-0 <2.0.0-0

 

 

বোয়ারঃ

এটা একটি প্যাকেজ ম্যানেজার যা আপনার সামনের শেষ উন্নয়ন লাইব্রেরি যেমন jQuery, বুটস্ট্র্যাপ এর জন্য।

$ npm install -g bower

 

একটি bower.json ফাইলের উদাহরণ।

একটি প্যাকেজ আন-ইনস্টল করতে হলে এই পদ্ধতি অনুসরণ করুনঃ

$ bower uninstall --save jquery

ইওম্যানঃ

ইওম্যান এক ধরণের জেনারেটর দ্বারা ।

ইওম্যান এর জেনারেটরগুলো একটি নোড মডিউল হিসাবে বিতরণ করা হয়।

এটি ইনস্টল করতেঃ

$ npm install -g yo

Gruntfile.js :

Gruntfile.js সেই স্থান যেখানে আপনি আপনার প্রকল্পের কাজটি কনফিগার করবেন এই ফাইলটি সহজে শুরু করতে:

module.exports = function(grunt) {

// Do grunt-related things in here

};

গ্রান্ট মডিউলসঃ

গ্রান্ট মডিউল নোড এর NPM ডিরেক্টরির মাধ্যমে বিতরণ করা হয় গ্রান্ট মডিউলসই  ইনস্টল করতে আমার দেখানো পদ্ধতি অনুসরণ করুনঃ

$ npm install --save-dev grunt-contrib-uglify

গ্রান্ট টাস্কের কারণ বিশ্লেষণঃ

আপনি বিল্ড টাস্ক নির্ধারণ শুরু করতে চাইলে আমার আগে উল্লেখ করা গ্রান্ট বইটির উদাহরণস্বরূপ stringCheck টাস্কটিকে অনুসরণ করবেন

module.exports = function(grunt){

...

grunt.initConfig({

stringCheck: {

file: './src/somefile.js',

string: 'console.log('

}

});

}

আপনি দেখতে পাবেন, একটি টাস্ক কেবলি একটি ফাংশন যা আপনি রেজিস্টার করবেন গ্রান্ট এর সাথে

module.exports = function(grunt){

grunt.registerTask('stringCheck', function() {

//fail if configuration is not provided

grunt.config.requires('stringCheck.file');

grunt.config.requires('stringCheck.string');

 

//retrieve filename and load it

var file = grunt.config('stringCheck.file');

var contents = grunt.file.read(file);

 

//retrieve string to search for

var string = grunt.config('stringCheck.string');

 

if(contents.indexOf(string >= 0))

grunt.fail.warn('"' + string + '" found in "' + file + '"');

});

}

একাধিক টাস্কঃ

গ্রান্ট আপনাকে দিচ্ছে একটি টাস্ক সঞ্চালনের গ্রুপ।নিম্নক্তঃ

module.exports = function(grunt){

...

grunt.initConfig({

stringCheck: {

target1: {

file: './src/somefile.js',

string: 'console.log('

},

target2: {

file: './src/somefile.js',

string: 'eval('

}

}

});

}

 

 

গ্লোবিং:

 

ফাইল গ্লোবিং বা ওয়াইল্ডকার্ড সাদৃশ্যকরণ  একটি বড় গ্রুপের ফাইল ক্যাপচার করার একটি পদ্ধতি।

চলমান কর্মঃ

আপনি যদি একটি টাস্ক রান করতে চাইলে নিম্নের পদ্ধতি অনুসরণ করুনঃ

$ grunt task1 task2

যদি আপনার একাধিক টাস্কের উদ্দেশ্য থাকে, তাহলে নিম্নক্ত পদ্ধতি অনুসরণ করুনঃ

$ grunt task:target1

আপনি যদি এর পরিবর্তে গ্রান্ট চালান, তাহলে ডিফল্ট টাস্ক চলতে থাকবে যা আপনি নিম্নরূপ কনফিগার করতে পারেনঃ

module.exports = function(grunt) {

grunt.registerTask('build', function() {

console.log('building...');

});

 

grunt.registerTask('test', function() {

console.log('testing...');

});

 

grunt.registerTask('default', ['build', 'test']);

};

 

গাল্পঃ

নোড কখনই পূর্ণতা পাবে না, যদি আমরা গাল্পকে উল্লেখ না করি গাল্প হলো জাভা স্ক্রিপ্ট টাস্কের এর আগত নতুন সঞ্চালক যা Node.js প্রবাহের উপর নির্মিত এটি স্ক্রিপ্টকে সহজে নির্মাণের লক্ষেঅনুরক্ত কনফিগারেশন  কোড”  ব্যবহার করা হয়

এসইও – ডিজাইন ও লেআউট বা বিন্যাস । SEO – Design & Layout

নয়ন চন্দ্র দত্ত

 

ওয়েবসাইট ডিজাইন এবং বিন্যাস আপনার সাইট সম্পর্কে প্রথম ছাপ ফেলে। অনেক সাইট আছে যা খুব অভিনব এবং নিয়মিত নেট surfers ঐ সাইটে পৌঁছায় এবং তৈরি করা ছাড়াই একটি ক্লিকেই এসে পড়ে।

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

প্রকৃত পেজে কন্টেন্ট প্রায় 10% এর একটি শব্দ ঘনত্ব থাকতে হবে এবং প্রায় 200 শব্দ এ তৈরী করা উচিত কিন্তু এসইও বিশেষজ্ঞদের এই সম্পর্কে অনেক মতামত আছে। অনেকে বলে, শব্দ ঘনত্ব 5% হতে হবে আবার অনেকে বলে এটা 20% হতে হবে। আপনি 10% সঙ্গে যেতে পারেন যা যথেষ্ট ভাল।

এখানে কয়েকটি নির্দেশিকা আছে যা একটি ওয়েব পেজ নকশা করার সময় আপনি মনে রাখতে পারেনঃ

  1. আপনার HTML element এর চেয়ে বেশি টেক্সট কন্টেন্ট থাকতে হবে
  2. কোন ফ্রেম নয় তারা সার্চ ইঞ্জি্নের শত্রু এবং সার্চ ইঞ্জিন ফ্রেমের শত্রু
  3. যদি সম্ভব হয় তাহলে কোন বিজ্ঞাপন দিবেন না কারণ বিজ্ঞাপনগুলো বেশীরভাগ জাভা - স্ক্রিপ্ট ব্যবহার করে যা পরামর্শ দেওয়া হয় না
  4. কোন জাভাস্ক্রিপ্ট না। যদি জাভাস্ক্রিপ্ট প্রয়োজন হয় তাহলে HTML ফাইল এ কোড ডাম্পিং চেয়ে একটি বহিরাগত ফাইল থেকে নিন
  5. টপিক পেজে কিছু নিবেন না যা পুরোপুরি মিশবে না
  6. কোন অপ্রয়োজনীয় ডিরেক্টরি দিবেন না। যথাসম্ভব রুটের কাছাকাছি আপনার ফাইল রাখুন।
  7. যদি না অত্যাবশ্যক হয় তাহলে কোন অভিনব জিনিস নয়। যেমন- ফ্ল্যাশ , স্প্ল্যাশ, প্রাণবন্ত gifs , rollovers , ইত্যাদি ।

সি প্রোগ্রামিং ল্যাংগুয়েজ পরিচিতি (C – Language Overview)

সি প্রোগ্রামিং ল্যাঙ্গুয়েজ
নাফিরুল ইসলাম

সি প্রোগ্রামিং ল্যাঙ্গুয়েজ প্রথম উদ্ভাবিত হয়েছিল ডেনিশ এম রিচসি এর মাধ্যমে যার প্রধান লক্ষই ছিল উনিক্স অপারেটিং সিস্টেম ব্যবহার উন্নত পর্যায়ে নিয়ে যাওয়া। DEC PDP-11 কম্পিউটারে ১৯৭২ এই সি প্রোগ্রামিং ল্যাঙ্গুয়েজ এর ব্যবহার প্রথম লক্ষ্য করা যায়।

১৯৭২ সালে ব্রায়ান কারনিঘান এবং ডেনিশ রিচসি দুজনে মিলে সি প্রোগ্রামিং ল্যাঙ্গুয়েজ প্রথম বিবরণ বের করেন যা এখন K&R Standard নামে পরিচিত।

উনিক্স অপারেটিং সিস্টেম, সি কম্পাইলার এবং উনিক্স অপারেটিং সিস্টেম এর সব গুরুত্বপূর্ণ প্রোগ্রামগুলো সি প্রোগ্রামিং ল্যাঙ্গুয়েজ এ রচিত। এখন তা বিভিন্ন কারনে টেকনোলজি বিশ্বে জনপ্রিয়তা অর্জন করেছে। এগুলোর মধ্যে উল্লেখযোগ্য কিছু কারন হল,
১. এটা সহজেয় শেখা যায়।
২. এটা একটা সুগঠিত প্রোগ্রামিং ভাষা।
৩. এটা সাবলীল প্রোগ্রাম তৈরিতে ব্যবহার করা হয়।
৪. এটা ল-লেভেল কাজ গুলো রক্ষা করতেও ব্যবহার করা হয়।
৫. এটা কম্পিউটার এর বিভিন্ন প্লাটফর্মে প্রয়োগ করা যাবে।

সি ল্যাঙ্গুয়েজ সম্পর্কে যা কিছু সত্যি

১. এটা প্রধানত উনিক্স অপারেটিং সিস্টেম তৈরিতে প্রথম উদ্ভাবন করা হয়েছিল।
২. ১৯৭০ সালের বি ল্যাঙ্গুয়েজ এর উত্তরসরি হল সি ল্যাঙ্গুয়েজ।
৩. এটা ১৯৮৮ সালে American National Standard Institute এর দ্বারা প্রাতিষ্ঠানিক রূপ দেয়া হয়েছিল।
৪. ১৯৭৩ সালে উনিক্স অপারেটিং সিস্টেম এর পুরোটাই সি ল্যাঙ্গুয়েজ এ তৈরি করা হয়েছিল।
৫. আজকের অতীব জনপ্রিয় অপারেটিং সিস্টেম লিনাক্স এর অপারেটিং সিস্টেম এবং RBDMS মাইএসকিউএল সি ল্যাঙ্গুয়েজ এ রচিত হয়েছে।

জাভাস্ক্রিপ্ট অপারেটরস (JavaScript Operators)

জাভাস্ক্রিপ্ট অপারেটরস (JavaScript Operators)

উদাহরণ
দুটি ভ্যালুকে variable হিসেবে ঘোষণা করে তাদের যোগ করা হয়েছে
var x = 5; // এইখানে ৫ কে x ঘোষণা করা হয়েছে
var y = 2; // এইখানে ২ কে y ঘোষণা করা হয়েছে
var z = x + y; // ফলাফল ৭ কে z = x + y এর মাধ্যমে ঘোষণা করা হয়েছে

 

JavaScript Arithmetic Operators

+ যোগ
- বিয়োগ
* গুন
/ ভাগ
% Modulus
++ Increment (বাড়া)
-- Decrement (কমা)

Addition অপারেটর(+) ভ্যালু যোগ করে
যোগ

var x = 5;
var y = 2;
var z = x + y;

subtract অপারেটর (-) বিয়োগ করে

subtracting

var x = 5;
var y = 2;
var z = x - y;

multiplication অপারেটর (*) ভ্যালু গুন করে

Multiplying

var x = 5;
var y = 2;
var z = x * y;

division অপারেটর (/) ভ্যালু ভাগ করে

dividing

var x = 5;
var y = 2;
var z = x / y;

modulus অপারেটর (%) ভাগের পর ভাগশেষ ডিসপ্লে করে

Modulus

var x = 5;
var y = 2;
var z = x % y;

increment (++) অপারেটর ভ্যালু বাড়ায়

Incrementing

var x = 5;
x++;
var z = x;

Decrement (--) অপারেটর ভ্যালু কমায়

decrementing

var x = 5;
x--;
var z = x;

 

javascript Assignment অপারেটর

অপারেটর এর উদাহরণ একইরকম

= x = y x = y
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y

(=) assignment অপারেটর একটি ভ্যালুকে variable এ ঘোষণা করে

var x = 10;

(+=)assignment অপারেটর variable এর ভ্যালুকে যোগ করে

var x = 10;
x += 5;

(-=)assignment অপারেটর variable এর ভ্যালুকে বিয়োগ করে

var x = 10;
x -= 5;

(*=)assignment অপারেটর variable কে গুন করে

var x = 10;
x *= 5;

(/=)assignment অপারেটর variable কে ভাগ করে

var x = 10;
x /= 5;

(%=)assignment অপারেটর ভাগ করার পর ভাগশেষ বের করে

var x = 10;
x %= 5;

javascript strings অপারেটর

স্ট্রিং কে যোগ করতে + অপারেটর ব্যবহার করা হয়। এটিকে concatenation অপারেটর বলা হয়
উদাহরণ
একসাথে অনেকগুলো স্ট্রিং যোগ করার ক্ষেত্রে এই অপারেটর ব্যবহার করা হয়

txt1 = "What a very";
txt2 = "nice day";
txt3 = txt1 + txt2;

ফলাফল

What a verynice day

স্পেস যোগ করার জন্য প্রথম স্ট্রিং এ ফাকা বা স্পেস দিতে হবে
উদাহরণ

txt1 = "What a very ";
txt2 = "nice day";
txt3 = txt1 + txt2;

ফলাফল

What a very nice day

অথবা একটি স্পেস expression হিসেবে দিতে হবে
উদাহরণ

txt1 = "What a very";
txt2 = "nice day";
txt3 = txt1 + " " + txt2;

ফলাফল

What a very nice day

+= অপারেটর দিয়েও concatenation স্ট্রিং এর কাজ করা যায়
উদাহরণ

txt1 = "What a very ";
txt1 += "nice day";

ফলাফল

What a very nice day

 

স্ট্রিং এবং নাম্বার যোগ করা

দুইটি নাম্বার যোগ করলে যোগফল পাওয়া যাবে কিন্তু নাম্বার এবং স্ট্রিং যোগ করলে একটি স্ট্রিং পাওয়া যাবে
উদাহরণ

x = 5 + 5;
y = "5" + 5;
z= "Hello" + 5;

x,y,z এর ফলাফল হবে

10
55
Hello5

জাভাস্ক্রিপ্ট কমেন্ট (JavaScript Comments)

জাভাস্ক্রিপ্ট মন্তব্য (কমেন্ট) (JavaScript Comments)

জাভাস্ক্রিপ্ট comments জাভাস্ক্রিপ্ট কোড ব্যাখ্যা করতে, এবং এটি আরো পাঠযোগ্য করতে ব্যবহার করা হয়।
জাভাস্ক্রিপ্ট comment , execution দূর করে যখন বিকল্প কোড পরীক্ষা করা হয় ।

Single Line Comments

Single line comments // দিয়ে শুরু হয় ।

কোনো টেক্সট // এবং একটি লাইন শেষ হয়ে যাবে তার মধ্যে জাভাস্ক্রিপ্ট দ্বারা উপেক্ষা করা হবে
(will not be executed)

কোড ব্যাখ্যা করতে এই উদাহরনে প্রত্যেক লাইনের এর পূর্বে single line comment ব্যবহার করা হয়

উদাহরনঃ


// Change heading:
document.getElementById("myH").innerHTML = "My First Page";
// Change paragraph:
document.getElementById("myP").innerHTML = "My first paragraph.";


 

 

কোড ব্যাখ্যা করতে এই উদাহরনে প্রত্যেক লাইনের এর শেষে single line comment ব্যবহার করা হয়

উদাহরনঃ


var x = 5;        // Declare x, give it the value of 5
var y = x + 2;    // Declare y, give it the value of x + 2

এখানে x , ৫ এর মান নির্দেশ করে

এবং Y , x + 2 এর মান নির্দেশ করে

 

Multi-line Comments

Multi-line comments /* দিয়ে শুরু হয় এবং */ দিয়ে শেষ হয় ।

কোনো টেক্সট এর মধ্যে / * এবং * / জাভাস্ক্রিপ্ট দ্বারা উপেক্ষা করা হবে ।

কোড ব্যাখ্যা করতে , এই উদাহরনে a multi-line comment ব্যবহার করা হয়েছে

উদাহরনঃ


/*
The code below will change
the heading with id = "myH"
and the paragraph with id = "myP"
in my web page:
*/
document.getElementById("myH").innerHTML = "My First Page";
document.getElementById("myP").innerHTML = "My first paragraph.";


 

 

কোড কার্যকর করা প্রতিরোধ করতে মন্তব্য (কমেন্ট) এর ব্যবহার

কোড কার্যকর করা প্রতিরোধ করতে মন্তব্য (কমেন্ট) ব্যবহার করা যায়, এটি কোড পরীক্ষার সময় ব্যবহার করা যেতে পারে।

একটি কোড লাইন সামনে // যোগ করলে, কোড লাইন এক্সিকিউটেবল লাইন থেকে  comment এ পরিবর্তন হয়ে যায়।

এই উদাহরষণ কোড এর একটি লাইন কার্যকর হওয়া প্রতিরোধ করার জন্য  // ব্যবহার করা হয়েছে।

উদাহরনঃ


//document.getElementById("myH").innerHTML = "My First Page";
document.getElementById("myP").innerHTML = "My first paragraph.";


 

 

এই উদাহরণ Comment Block এর মাধ্যমে একাধিক লাইন কার্যকারিতা প্রতিরোধ করে।

উদাহরনঃ


/*
document.getElementById("myH").innerHTML = "My First Page";
document.getElementById("myP").innerHTML = "My first paragraph.";
*/


 

 

ধন্যবাদ, আশা করি বিষয়টি সকলেই বুঝতে পেরেছেন 🙂

জাভাস্ক্রিপ্ট কোথায় কিভাবে লিখবেন (JavaScript Where To)

জাভাস্ক্রিপ্ট কোথায় কিভাবে লিখবেন (JavaScript Where To)

এইচটিএমএল পেজ এর মধ্যে javascript কে হেড এবং বডি সেকশন এ রাখতে হয়।

<script> ট্যাগ

এইচটিএমএল এ javascript কোড অবশ্যই <script> এবং </script> ট্যাগ এর মধ্যে লিখতে হয়।

উদাহরণ


<script>
document.getElementById("demo").innerHTML = "My First JavaScript";
</script>


পুরাতন উদাহরণ গুলোতে টাইপ attribute পাওয়া যেতে পারে:  <script type="text/javascript">
কিন্তু নতুনগুলোতে এইচটিএমএল এর মধ্যে javascript ডিফল্ট language হিসেবে থাকে।

Javascript ফাংশন এবং ইভেন্ট

Javascript ফাংশন হল একটি javascript এর ব্লক কোড। যখন তাকে চাওয়া হবে তখন সে কাজ করবে উদাহরণস্বরূপ যখন একটি ইভেন্ট এর সময় আসবে তখন সে কাজ করবে যেমন কোন ইউজার কোন নির্দিষ্ট বাটন ক্লিক করার পর কাজ হবে।

Jvascript <heat> বা <body> এর মধ্যে থাকবে

html ডকুমেন্ট এ যেকোন সংখ্যক বার script রাখা যাবে। script <body> বা <hect> বা উভয় স্থানেই রাখতে পারেন।

তবে সবথেকে ভাল হল সকল কোড এক জায়গায় রাখা

Javascript <heat> সেকশন এ রাখা

এই উদাহরণ এ javascript কে head সেকশন এ রাখা হয়েছে। এটি একটি বাটন এ ক্লিক করার পর কাজ করবে।
উদাহরণ


<!DOCTYPE html>
<html>
<head>
 <script>
 function myFunction() {
     document.getElementById("demo").innerHTML = "Paragraph changed.";
 }
 </script>
 </head>
<body>
<h1>My Web Page</h1>
<p id="demo">A Paragraph</p>
<button type="button" onclick="myFunction()">Try it</button>
</body>
 </html>

ফলাফল


JavaScript in Body

A Paragraph.


 

Javascript <body> সেকশন এ রাখা

এই উদাহরণ এ javascript কে body সেকশন এ রাখা হয়েছে। একটি বাটন এ ক্লিক করার পর কাজ হবে
উদাহরণ


 

<!DOCTYPE html>
 <html>
 <body> 

<h1>My Web Page</h1>
 
<p id="demo">A Paragraph</p>
 
<button type="button" onclick="myFunction()">Try it</button>
 
<script>
 function myFunction() {
    document.getElementById("demo").innerHTML = "Paragraph changed.";
 }
 </script>
 
</body>
 </html>

 

ফলাফল


My Web Page

A Paragraph


সবথেকে ভাল উপায় হল body এলিমেন্ট এর নিচের দিকে javascript কোড কে রাখা। এতে পেজ ভালভাবে লোড হবে, কেননা ‍HTML লোড হওয়া script ত্রুটির কারণে বন্ধ হবে না।

External javascript

External ফাইল এর মধ্যে script কে রাখতে হয়। এই ফাইল এর এক্সটেনশন হল .js. external script ব্যবহার করতে চাইলে এই script ফাইল এর নাম
tag এর মধ্যে source attribute (src) দিয়ে লিখতে হয়।
উদাহরণ


 

<!DOCTYPE html>
<html>
 <body>
 <script src="myScript.js"></script>
 </body>
 </html>

External script আপনি বডি বা হেড যেকোনো জায়গায় রাখতে পারেন। যদি সঠিক পাথ অনুযায়ী এই ফাইল থাকে তাহলেই এটি কাজ করবে। এক্সটারনাল script এর মধ্যে কোন
ট্যাগ থাকে না।

এক্সটারনাল javascript এর সুবিধা

ইহা এইচটিএমএল এবং কোড কে আলাদা রাখে, এইচটিএমএল এবং javascript কে পরতে এবং রক্ষণাবেক্ষণ করতে আরও সহজ হয়। Cached javascript ফাইল পেজ কে দ্রুত লোড করতে সাহায্য করে।

 

MongoDB Projection

MongoDB প্রজেকশন
নয়ন চন্দ্র দত্ত

MongoDB প্রজেকশন
MongoDB প্রজেকশনের অর্থ হচ্ছে একটি ডকুমেন্টের সকল তথ্য নির্বাচন না করে বরং শুধুমাত্র প্রয়োজনীয় তথ্য নির্বাচন করা। যদি একটি ডকুমেন্টের ৫টি ক্ষেত্র থাকে এবং আপনার ৩টি দেখানোর প্রয়োজন হয় তাহলে এদের মধ্য
থেকে শুধু ৩টি সিলেক্ট করুন।

find() পদ্ধতি
MongoDB এর find() পদ্ধতি নিয়ে আগের টিউটোরিয়ালে আলোচনা (দ্বিতীয় অপশনাল প্যারামিটার বাদে) করা হয়েছে। আপনি যখন MongoDB তে find() পদ্ধতি সম্পাদন করেন তখন একটি ডকুমেন্টের সব ক্ষেত্র প্রদর্শন করে।
এটিকে সীমাবদ্ধ করার জন্য আপনার মান 1 বা 0 ক্ষেত্র-তালিকা সেট করার প্রয়োজন হবে। ১ ক্ষেত্র প্রদর্দন করার জন্য এবং ০ ক্ষেত্র আড়াল করতে ব্যবহার করা হয়।

সিনট্যাক্স:
প্রজেকশন দিয়ে বেসিক সিনট্যাক্স বা বাক্য গঠন () পদ্ধতি নিম্নরূপঃ

>db.COLLECTION_NAME.find({},{KEY:1})

উদাহরণ
নিম্নলিখিত কালেকশন myycol তথ্য পর্যালোচনা করুনঃ

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

ডকুমেন্ট quering এর সময় নিম্নলিখিত উদাহরণে ডকুমেন্টের টাইটেল প্রদর্শন করবেঃ

>db.mycol.find({},{"title":1,_id:0})
{"title":"MongoDB Overview"}
{"title":"NoSQL Overview"}
{"title":"Tutorials Point Overview"}
>

দয়া করে নোট করে রাখুন- find() পদ্ধতি নির্বাহের সময় _id field সবসময় প্রদর্শন করে। যদি আপনি এই ক্ষেত্রটি না চান তাহলে আপনাকে এটি 0 সেট করতে হবে।

MongoDB Overview. MongoDB এর সংক্ষিপ্ত বিবরণ

MongoDB এর সংক্ষিপ্ত বিবরণ
নয়ন চন্দ্র দত্ত

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

ডেটাবেস
ডেটাবেস কালেকশনের জন্য একটি শারীরিক ধারক। ফাইল সিস্টেমে প্রতিটি ডেটাবেস ফাইলের নিজস্ব সেট পায়। একটি একক MongoDB সার্ভারের সাধারণত একাধিক ডেটাবেস থাকে।

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

ডকুমেন্ট
ডকুমেন্ট হচ্ছে কী-মান জোড়ার একটি সেট। ডকুমেন্টের গতিশীল স্কিমা আছে। গতিশীল স্কিমা বলতে একই কালেকশনের মধ্যের সব ডকুমেন্টের একই ক্ষেত্র বা কাঠামো জোড়ার প্রয়োজন নেই।
কালেকশন ডকুমেন্টের মধ্যে একটি সাধারণ ক্ষেত্র বিভিন্ন ধরনের তথ্য জমা রাখতে পারে।
নিচে MongoDB এর সাথে RDBMS টেকনোলজির সম্পর্ক দেখানো হলঃ

RDBMS: ডেটাবেস
RDBMS: ডেটাবেস

RDBMS: টেবিল
RDBMS: কালেকশন

RDBMS: Tuple / সারি
RDBMS: ডকুমেন্ট

RDBMS: কলাম
RDBMS: ক্ষেত্র

RDBMS: টেবিল জয়েন
RDBMS: এমবেডেড ডকুমেন্টস

RDBMS: প্রাথমিক কী
RDBMS: প্রাথমিক কী ( ডিফল্ট কি _id যা MongoDB দ্বারা যোগান হয় )

ডাটাবেস সার্ভার ও ক্লায়েন্ট

RDBMS: Mysqld / ওরাকল
RDBMS: mongod

RDBMS: মাইএসকিউএল / sqlplus
RDBMS: mongo

নমুনা ডকুমেন্ট
উল্লিখিত নীচের উদাহরণে একটি ব্লগ সাইটের ডকুমেন্টের গঠন দেখানো হয়েছে যেখানে কেবলমাত্র একটি কমা দিয়ে কী-মান জোড়াকে পৃথক করা হয়েছেঃ

{
_id: ObjectId(7df78ad8902c)
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'tutorials point',
url: 'http://www.tutorialspoint.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100,
comments: [
{
user:'user1',
message: 'My first comment',
dateCreated: new Date(2011,1,20,2,15),
like: 0
},
{
user:'user2',
message: 'My second comments',
dateCreated: new Date(2011,1,25,7,45),
like: 5
}
]
}

_id একটি 12 বাইটের হেক্সাডেসিমেল সংখ্যা যা প্রতিটি ডকুমেন্টের স্বতন্ত্রতা বজায় রাখে। ডকুমেন্ট ডুকানোর সময় _id দিতে পারেন। যদি আপনি দিতে না চান তবে MongoDB প্রতিটি ডকুমেন্টের জন্য একটি ইউনিক আইডি প্রদান করবে।
এই 12 বাইট প্রথম 4 বাইট বর্তমান টাইমস্ট্যাম্প এর জন্য, পরবর্তী 3 বাইট মেশিন আইডির জন্য, পরবর্তী 2 বাইট MongoDB সার্ভারের প্রক্রিয়াকরণ ID এর জন্য এবং বাকী ৩ বাইট হচ্ছে সহজ ক্রমবর্ধমান মান।

এইচটি এম এল এর উপাদান সমূহ (HTML Elements)

এইচটি এম এল এর উপাদান সমূহ (HTML Elements)

Md. Atik Hasan

Webpage Design & Developer

 

এইচটিএমএএল এলিমেন্ট (HTML Element):

এইচটিএমএএল এলিমেন্ট (Element) দ্বারাই HTML Document বর্ণনা করা হয়। একটি HTML Document – এর চারটি মৌলিক Element থাকে। যথাঃ html, head, title, body।

এছাড়াও আরও অনেক Element রয়েছে।

HTML Element শুরু হয় Opening tag (<html>) দিয়ে এবং শেষ হয় closing tag (</html>) দিয়ে।

Opening tag এবং closing tag এর মাঝখানে যা থাকে তাই হচ্ছে Element।

যেমনঃ

 


<p>This is Element</p>

<h1>This is also an Element<h1>

<title>This is an element too</title>


 

 ফলাফল


This is Element

This is also an Element

This is an element too


 

Nested HTML Element:

Nested HTML Element হল একটি এলিমেন্ট এর আন্ডারে আরও এলিমেন্ট থাকা।

যথাঃ


<html>

<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>

</html>


 

 

ফলাফল


My First Heading

My first paragraph.


 

এই উদাহরণে দেখা যাচ্ছে যে html এলিমেন্টের মাঝে body এলেমেন্ট রয়েছে।

<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>

এবং body এলিমেন্টের এর মাঝে আরও দুইটি এলেমেন্ট p এবং h1 রয়েছে।

<h1>My First Heading</h1>
<p>My first paragraph.</p>

 

Empty HTML Element:

যে সকল এলেমেন্টের কোন কন্টেন্ট থাকে না তাদেরকে Empty element বলা হয়।

<br> হচ্ছে একটি empty element যার কোন closing tag নাই।

 

HTML Element- এর বৈশিষ্ট্যঃ

  • Start/Opening tag দিয়ে শুরু হয়।
  • End/Closing tag দিয়ে শেষ হয়।
  • Start tag এবং End tag এর মাঝে Element থাকে।
  • কিছু ক্ষেত্রে Element Content নাও থাকতে পারে।
  • কিছু Element এর End/closing ট্যাগ নাও থাকতে পারে।
  • Empty Element start ট্যাগের মাঝে শেষ করা হয়।

 

এইচটিএমএল এর মৌলিক বিষয় (HTML Basic Example)

এইচ টি এম এল এর সাধারন বিষয়াবলী

স্বর্ণা আখতার

 

(টিউটোরিয়াল টি পড়ার আগে অবশ্যই আপনাকে এইচ টি এম এল ট্যাগ এর ব্যবহার সম্পর্কে জানতে হবে। পরবর্তী অধ্যায় এ ট্যাগ সম্পর্কে আলোচনা করা হয়েছে।)

 

এইচ টি এম এল ডকুমেন্ট

সকল এইচ টি এম এল ডকুমেন্ট অবশ্যই ডকুমেন্ট এর টাইপ ঘোষণা এর মাধ্যমে শুরু করতে হয়। যেমন, <DOCTYPE html>

এইচ টি এম এল এর শুরু হয় <html> ট্যাগ দিয়ে এবং শেষ হয় </html> এর মাধ্যমে।

<body> এবং </body> এর মধ্যে প্রদর্শিত টেক্সট এইচ টি এম এল ডকুমেন্ট এর বিষয়বস্তু হিসাবে গণ্য হয়।

উদাহরনের সাহায্যে নিচে দেখানো হল


<!DOCTYPE html>
<html>
<body>

<h1>My First Heading</h1>

<p>My first paragraph.</p>

</body>
</html>


 

 

ফলাফল


My First Heading

My first paragraph.


 

 

এইচ টি এম এল এর শিরোনাম

এইচ টি এম এল এর শিরোনাম গুলো <h1> এবং <h6> ট্যাগ দ্বারা নির্ধারণ করা হয়।

যেমন,


<h1>This is a heading</h1>
<h2>This is a heading</h2>
<h3>This is a heading</h3>


 

 

ফলাফল


This is a heading

This is a heading

This is a heading


 

এইচ টি এম এল প্যারাগ্রাফ

এইচ টি এম এল প্যারাগ্রাফগুলোকে <p> ট্যাগে দ্বারা নির্ধারণ করা হয়।

যেমন,


<p>This is a paragraph.</p>
<p>This is another paragraph.</p>


 

 

ফলাফল


This is a paragraph.

This is another paragraph.


 

এইচ টি এম এল লিঙ্ক

এইচ টি এম এল এর লিঙ্কগুলো <a> ট্যাগের মাধ্যমে লিখা হয়।

যেমন,


<a href="http://bangla.salearningschool.com">This is a link</a>


 

 

ফলাফল


This is a link


 

এখানে, লিঙ্ক এড্রেস গুলো কি রকম হবে তা নির্ভর করে “href” attribute এর উপর। আর অ্যাট্রিবিউট গুলো এইচ টি এম এল এর উপাদানগুলো সম্পর্কে বিস্তারিত বিবরণ প্রদান করে।

এইচ টি এম এল ইমেজ

এইচ টি এম এল ইমেজগুলোকে <img> ট্যাগের মাধ্যমে লিখা হয়। আর এখানে src, alt, height এবং width গুলো অ্যাট্রিবিউট হিসাবে ব্যবহার করা হয়।

উদাহরনের মাধ্যমে দেখানো হল,


<img src="http://bangla.salearningschool.com/wp-content/uploads/2015/04/bangla.salearning.png" alt="http://bangla.salearningschool.com" width="660" height="150">


 

 

ফলাফল


http://bangla.salearningschool.com


এইচটিএমএল এডিটর (HTML Editor)

এইচ টি এম এল এডিটর (HTML Editors)

এইচটিএমএল সম্পাদক

নয়ন চন্দ্র দত্ত

নোটপ্যাড বা TextEdit ব্যবহার করে এইচটিএমএল লিখা

পেশাদারী এইচটিএমএল এডিটর ব্যবহার করেও এইচটিএমএল সম্পাদনা করা যেতে পারে। যেমনঃ-

• Adobe Dreamweaver
• Microsoft Expression Web
• CoffeeCup HTML Editor

তবে, এইচটিএমএল শেখার জন্য আমরা নোটপ্যাড (পিসি) বা TextEdit (ম্যাক) মত টেক্সট এডিটর সুপারিশ করি।

আমরা বিশ্বাস করি একটি সাধারণ টেক্সট এডিটর ব্যবহার করে এইচটিএমএল শিখাটা সবচেয়ে ভাল।

নোটপ্যাড দিয়ে আপনার প্রথম ওয়েব পেজ তৈরি করতে নিম্নোক্ত ৪টি ধাপ অনুসরণ করুনঃ

ধাপ ১: নোটপ্যাড খোলা

উইন্ডোজ 7 বা তার আগের ভার্সন এ নোটপ্যাড ওপেন করতেঃ

ক্লিক Start (নীচে পর্দার বাম দিকে)। ক্লিক All Programs । ক্লিক Accessories । ক্লিক Notepad

Windows 8 বা তার পরের ভার্সন এ নোটপ্যাড খুলুনঃ

Start Screen ( উইন্ডো প্রতীক আপনার পর্দার নিচে বাম দিকে রয়েছে ) ওপেন করুন এবং Notepad টাইপ করুন।

ধাপ ২: কিছু এইচটিএমএল লিখুন

লিখুন বা নোটপ্যাডের মধ্যে কিছু এইচটিএমএল কপি করুন।

<DOCTYPE html>
<html>
<body>

<h1>My First Heading</h1>

<p>My first paragraph.</p>

</body>
</html>

notepad

স্টেপ ৩: এইচটিএমএল পেজ সংরক্ষণ(Save) করুন

আপনার কম্পিউটারে ফাইলটি সংরক্ষণ করুন।

নোটপ্যাড মেনু থকে File > Save as সিলেক্ট করুন। ফাইলটির নাম "index.htm" দিন বা আপনার পছন্দমত অন্য কোন নাম দিয়ে এর পর .htm দিয়ে সেভ করুন।

UTF-8, এইচটিএমএল ফাইলের জন্য পছন্দসই এনকোডিং । ANSI এনকোডিং মার্কিন জুড়ে এবং পশ্চিম ইউরোপের শুধুমাত্র অক্ষর (characters) ।

saveas

ধাপ ৪: ব্রাউজারে আপনার এইচটিএমএল ফাইলটি দেখুন

আপনার প্রিয় ব্রাউজারে সংরক্ষিত এইচটিএমএল ফাইলটি খুলুন।

ব্রাউজারে ফাইলটি ওপেন করতে ফাইলের উপর মাউস পয়েন্টার রেখে ডাবল ক্লিক করুন বা মাউসের দান বাটন এ ক্লিক করে Open with এ মাউস পয়েন্টার রেখে ব্রাউজার চয়েজ করুন এবং ফাইল ওপেন করুন।

chrome

এইচটিএমল লেখার টুল (tool) । HTML Editors সম্পর্কে আলোচনা

আজকে আমরা এইচটিএমল লেখার টুল (tool) এবং HTML Editors সম্পর্কে আলোচনা করব।

Adobe Dreamweaver, Microsoft Expression Web, এবং CoffeeCup প্রভৃতি Professional HTML Ediotor ব্যবহার করে HTML কে edit করা যায়।তবে আমরা HTML শেখার জন্য Notepad অথবা Textedit কে Text editor হিসেবে সমর্থন করি। আমরা বিশ্বাস করি যে, একটি সাধারণ Text Editor ব্যবহার করেই HTML ভালোভাবে শেখা যায়। Notepad ব্যবহার করে web page তৈরি করতে হলে আপনাকে নিম্নের ৪ টি পর্যায় অনুসরণ করতে হবে।

 

পর্যায় ১ঃ Notepad খুলুন।

Windows 7 অথবা তার আগের ভার্সনে Notepad খুলতে(open)গেলে প্রথমে কম্পিউটারের screen এর বামপাশে অবস্থিত start এ click করবেন, এরপর All Programmes এ click করে Notepad এ click করবেন।

Windows 8 অথবা তার পরের ভার্সনে Notepad খুলতে(open)গেলে আপনার কম্পিউটারের start screen এ click করে Notepad type করবেন।

 

পর্যায় ২ঃ কিছু HTML লিখুন।

Notepad এ কিছু HTML লিখতে অথবা কপি করতে পারেন।

উদাহরণস্বরূপ-

<!DOCTYPE html>

<html>

<body>

<h1> আমার প্রথম শিরোনাম </h1>

<p> আমার প্রথম অনুচ্ছেদ </p>

</body>

</html>

পর্যায় ৩ঃ HTML Page টিকে সংরক্ষণ করুন।

আপনার কম্পিউটারে HTML Page কে সংরক্ষণ করতে গেলে Notepad Menu এর file option এ গিয়ে save as কে select করুন। file extention হিসেবে আপনি .htm অথবা .html ব্যবহার করতে পারেন, কারন দুটোর মাঝে কোন পার্থক্য নেই।

 

পর্যায় ৪ঃ আপনার browser এ HTML Page টিকে দেখুন।

আপনার সংরক্ষিত HTML file এ double click করুন এবং দেখবেন এর ফলাফল এরকম হবে।

 

আমার প্রথম শিরোনাম

আমার প্রথম অনুচ্ছেদ

 

 

যদিও এই উদাহরণে ব্যবহৃত tag গুলো সম্পর্কে আপনারা এখনও জানেননা তবে উদ্বিগ্ন হবার কিছু নেই, পরবর্তী অধ্যায়ে আপনারা এগুলো সম্পর্কে জানবেন।

উইন্ডোজ 8.1 টিউটোরিয়াল: ইন্টারনেট এক্সপ্লোরার 11 : ওয়েব ব্রাউজিং (Internet Explorer 11 – Browsing the web)

উইন্ডোজ 8.1 টিউটোরিয়াল 11 এর 9

ইন্টারনেট এক্সপ্লোরার 11 দিয়ে শুরু করা

Windows 8.1 এবং Windows RT 8.1 আপডেট এর সাথে Internet Explorer 11 অন্তরর্ভুক্ত রয়েছে। Internet Explorer ওয়েব এর যেকোন স্থানে যাওয়ার পথ সহজ করে তোলে এবং আপনাকে ওয়েব এর সবচেয়ে ভাল মানের প্রচুর বিষয়বস্তু দেখতে সাহায্য করে। কিছু সাধারণ ইঙ্গিত ও ট্রিকস শেখার দ্বারা আপনি সহজই আপনার এই নতুন ব্রাউজার ব্যবহার করতে পারবেন এবং আপনার প্রিয় সাইটগুলোর অধিকাংশই খুঁজে পেতে সক্ষম হবেন।

নোট: আপনি যদি আপনার Windows 8.1 বা Windows RT 8.1 এ Internet Explorer 11 ব্যবহার না করে থাকেন তাহলে “Internet Explorer 11 ডাউনলোড” এ যান।

প্রাথমিক ব্রাউজিং

শুরু করা যাক। Internet Explorer 11 খোলার জন্য Start Screen এর Internet Explorer টাইলস এ টোকা দিন বা ক্লিক করুন।

এড্রেস বার ব্যবহারের তিনটি উপায় রয়েছে।

ওয়েবসাইট ব্রাউজিং শুরু হয় এড্রেস বার থেকে। এড্রেস বার এবং সার্চ বক্স (সমন্নিত) এর মাধ্যমে সার্ফ, অনুসন্ধান বা পরামর্শ একই স্থান থেকে পেতে পারেন। আপনি যখন কোন সাইট খোলেন এবং ব্যবহার না করে অন্য সাইট নিয়ে কাজ করেন তখন উক্ত সাইটটি tucked out অবস্থায় থাকে, ফলে চলমান সাইটগুলো ভালোভাবে ব্যবহারের সুযোগ তৈরি হয় । Address Bar দেখার জন্য পর্দার নিচ থেকে উপরের দিকে সুইপ করে যান বা যদি আপনি মাউস ব্যবহার করতে চান তাহলে পর্দার নিচের দিকের বার এ ক্লিক করুন। এখানে এটি ব্যবহারের তিনটি পন্থা দেওয়া হলো।

 

Address barসার্ফ (Surf)। সরাসরি ওয়েব সাইটে যাওয়ার জন্য এড্রেস বার এ ওয়েব সাইটের ইউআরএল (URL) টাইপ করুন বা প্রায়ই ব্যবহৃত সাইটগুলো দেখার জন্য এড্রেস বার এ টোকা দিন বা ক্লিক করুন।

সার্চ (Search)। এড্রেস বারে একটি শব্দ লিখুন এবং ডিফল্ট সার্চ ইঞ্জিন এর সাহায্যে অনুসন্ধান করার জন্য Go goএ টোকা দিন বা ক্লিক করুন।

পরামর্শ নেন (Get suggestions)। আপনি জানেন না আপনি কোথায় যেতে চান? ওয়েব সাইট, অ্যাপ্লিকেশন খুঁজে পাওয়ার জন্য এড্রেস বার এ একটি শব্দ লিখুন এবং এড্রেস বার এর উপরের যেকোন একটি পরামর্শ (suggestion) এ টোকা দিন বা ক্লিক করুন।

ট্যাব এবং উইন্ডোজ দিয়ে একধিক কাজ সম্পন্ন করা

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

নতুন ট্যাব খোলা বা একটি থেকে আরেকটিতে যাওয়া

switching

নতুন ট্যাব খুলতে New tab বাটন 20115ec8-1c18-4399-bd4b-ba435ce4eeca_10এ টোকা দিন বা ক্লিক করুন। তারপর একটি URL লিখুন বা খুজুন বা আপনার পছন্দের সাইটগুলো থেকে একটি নির্বাচন করুন। যখন আপনি একাধিক ট্যাব খুলবেন তখন একটি থেকে আরেকটিতে যাওয়ার জন্য ট্যাব বারের খোলা ট্যাবগুলোতে টোকা দিন বা ক্লিক করুন। আপনি একটি উইন্ডোতে 100 টি পর্যন্ত ট্যাব খুলতে পারবেন। ট্যাবগুলো বন্ধ করতে প্রতিটি ট্যাব এর Close Closeপ্রতীকে টোকা দিন বা ক্লিক করুন।

multiple browsing windows

 

Internet Explorer 11 এ একাধিক উইন্ডো ও খুলতে পারেন এবং এদের দুইটিকে পাশাপাশি দেখতে পারেন। নতুন উইন্ডো খুলতে Start Screen এর Internet Explorer টাইলস এ চাপ দিন এবং ধরে রাখুন এবং Open new window এ ক্লিক করুন।

আপনার পর্দার উপর দুইটি উইন্ডোকে পাশাপাশি দেখতে পারেন। একটি উইন্ডো খুলুন এবং পর্দার উপরের প্রান্তের বাম অথবা ডান প্রান্তে টেনে নিয়ে যান। তারপর আরেকটি উইন্ডোকে পর্দার বাম প্রান্ত থেকে টেনে নিয়ে যান।

 

 

 

 

টিপস: ওয়েব সাইটে দ্রুত যাওয়ার জন্য এড্রেস বার এবং ট্যাব কে ব্রাউজারের নিচের দিকে প্রদর্শন করে রাখতে পারেন। Charm থেকে Settings এ যান, Appearance এ এড্রেস বার এবং ট্যাব সবসময় দেখার জন্য Always show the address bar and tabs এ টোকা দিন বা ক্লিক করুন।

আপনার ব্রাউজিং কাস্টমাইজ করুন

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

হোম পেজ (শুরুর পাতা) পছন্দ করা

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

1. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং Settings এ টোকা দিন। (যদি আপনি মাউস ব্যবহার করতে চান তাহলে, মাউস পয়েন্টার পর্দার ডান প্রান্তের নিচের দিকে নিয়ে যান এবং একটু উপেরের দিকে উঠে Settings এ ক্লিক করুন)।

2. Options এ টোকা দিন বা ক্লিক করুন এবং Home pages এর অধীন Manage এ টোকা দিন বা ক্লিক করুন।

3. আপনি যে সাইটটিকে হোম পেজ হিসেবে চান তার URL (ঠিকানা) প্রবেশ করান অথবা আপনি যে সাইটটিকে হোম পেজ হিসেবে রাখতে চান সেটি ব্রাউজারে চলমান অবস্থায় থাকলে Add current site এ ক্লিক করুন।

পছন্দের সাইটগুলো Favorite হিসেবে সংরক্ষণ করা

আপনার পছন্দের সাইটগুলো মনে রাখার সহজ উপায় হচ্ছে সাইটগুলোকে পছন্দের সাইট (favorite) হিসেবে সংরক্ষণ করে রাখা। (যদি আপনি উইন্ডোজ 8 থেকে Windows 8.1 এ আপডেট করে থাকেন এবং আপনার মাইক্রোসফট একাউন্ট দিয়ে Sign in করা অবস্থায় থাকেন, তাহলে সকল পছন্দের সাইটগুলো সয়ংক্রিয়ভাবে আপনার ব্রাউজারে পছন্দের সাইট (favorite) হিসেবে সংযুক্ত হয়ে যাবে।)

Favarite tab

1. আপনি যে ওয়েব সাইট যোগ করতে চান সেটি খুলুন।

2. Application Command প্রদর্শনের জন্য পর্দার নিচের প্রান্ত থেকে উপরের দিকে সুইপ করে যান, তারপর Favorites বার দেখার জন্য Favorites বাটন Favariteএ টোকা দিন বা ক্লিক করুন।

3. Add to favorites Add Favariteএ টোকা দিন বা ক্লিক করুন। এবং তারপর Add এ টোকা দিন বা ক্লিক করুন।

সাইটকে Start Screen এ পিন করা

কোন সাইটকে Start Screen এ পিন করলে তা একটি টাইলস তৈরি করে, এবং আপনাকে একবার স্পর্শের মাধ্যমে সাইটে প্রবেশের সুবিধা প্রদান করে। কিছু পিন করা সাইট নটিফিকেশন দেখায়, সুতরাং কখন নতুন বিষয়বস্তু (content) পাওয়া যাবে তা আপনি জানতে পারেন । আপনি যত খুশি ততগুলো সাইট পিন করে রাখতে পারবেন এবং Start Screen এ গ্রুপ হিসেবে সাজিয়ে রাখতে পারবেন।

Start Screen

1. Application Command প্রদর্শনের জন্য পর্দার নিচের প্রান্ত থেকে উপরের দিকে সুইপ করে যান।

2. Favorites বাটন Favariteএ টোকা দিন বা ক্লিক করুন, Pin site বাটন Pinএ টোকা দিন বা ক্লিক করুন এবং তারপর Pin to Start এ টোকা দিন বা ক্লিক করুন।

 

টিপস: Favorites বাটন Favariteবা Tabs বাটন Tab battonএ টোকা বা ক্লিক করার মাধ্যমে আপনি দ্রুত ফেবারিট এবং ট্যাব এর মধ্যে সুইচ (একটি থেকে আরেকটিতে যাওয়া) করতে পারেন।

 

ওয়েব কন্টেন্ট পড়া, সংরক্ষন করে রাখা এবং অন্যের সাথে শেয়ার করা

যখন আপনি আপনার পছন্দের অনলাইন কন্টেন্ট (বিষয়বস্তু) দেখেন তখন এড্রেস বার এর Reading view আইকনে Reading Viewক্লিক করুন। Reading view বিশৃঙ্খলাগুলো (clutter) দূরে সরিয়ে দেয় - যেমন বিজ্ঞাপণ- সুতরাং বিবরণ সামনে চলে আসে এবং কেন্দ্রিভূত হয়। পেজটিকে Reading view এ দেখার জন্য উক্ত আইকনে টোকা দিন বা ক্লিক করুন। যখন আপনি আবার ব্রাউজিং ভিউ এ ফিরে যেতে চান তখন আবার উক্ত আইকনে টোকা দিন বা ক্লিক করুন।

 

Brawsing View
Reading view বন্ধ থাকা অবস্থায় একটি ওয়েব কলাম

 

Reading View
Reading view চালু অবস্থায় একটি ওয়েব কলাম

 

Reading view এর জন্য আপনার সেটিং নতুনভাবে সাজানো

1. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং Settings এ টোকা দিন। (যদি আপনি মাউস ব্যবহার করতে চান তাহলে, মাউস পয়েন্টার পর্দার ডান প্রান্তের নিচের দিকে নিয়ে যান এবং একটু উপেরের দিকে উঠে Settings এ ক্লিক করুন)।

2. Options এ টোকা দিন বা ক্লিক করুন এবং Reading view এর অধীন font style এবং text size পছন্দ করুন।

এখানে কিছু ভিন্ন ভিন্ন ধরনের অপশন আপনার পছন্দের জন্য দেওয়া হলো

Reading option 088b5d6c-100a-4e4b-b7a6-907d8176500a_22 56927be9-53da-492a-9602-70372f9c2d24_25

রিডিং লিস্ট এ পেজ সংরক্ষণ করে রাখা

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

1. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং Share এ টোকা দিন। (যদি আপনি মাউস ব্যবহার করতে চান তাহলে, মাউস পয়েন্টার পর্দার ডান প্রান্তের নিচের দিকে নিয়ে যান এবং একটু উপেরের দিকে উঠে Share এ ক্লিক করুন)।

2. Reading List এ টোকা দিন বা ক্লিক করুন এবং তারপর Add এ টোকা দিন বা ক্লিক করুন। আপনার কন্টেন্ট (বিষয়বস্তু) এর লিঙ্ক Reading List এ সংরক্ষিত হবে।

আপনার গোপনীয়তা রক্ষা করতে সাহায্য করা

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

InPrivate Browsing ব্যবহার। আপনার ব্রাউজিং অভিজ্ঞতা উন্নত করার জন্য ব্রাউজার আপনার তথ্য যেমন অনুসন্ধানের ইতিহাস ইত্যাদি সংরক্ষণ করে রাখে। যখন আপনি InPrivate tab ব্যবহার করবেন তখন আপনি সাধারনভাবেই ব্রাউজ করতে পারবেন, কিন্তু যখন আপনি ব্রাউজার বন্ধ করবেন তখন আপনার পাসওয়ার্ড, অনুসন্ধান ইতিহাস এবং ওয়েব পেজ হিস্টোরি ইত্যাদি মুছে যাবে। ইনপ্রাইবেট ট্যাব খোলার জন্য - Application Command দেখার জন্য পর্দার নিচের প্রান্ত থেকে উপরের দিকে সুইপ করে যান, Tab tools বাটন এ টোকা দিন বা ক্লিক করুন এবং তারপর New InPrivate tab এ ক্লিক করুন।

ট্রেকিং প্রোটেকশন ব্যবহার করা এবং আপনার গোপনীয়তা রক্ষা করার জন্য ট্রেক না করা। ট্রেকিং বলতে বোঝায় ওয়েবসাইট, থার্ড-পার্টি কন্টেন্ট পরিবেশক, বিজ্ঞাপণ দাতা  এবং অন্যেরা আপনি কিভাবে সাইটগুলোর সাথে যোগাযোগ রক্ষা করেন তা সম্পর্কে যেভাবে ধারণা লাভ করে। এর মধ্যে অন্তর্ভুক্ত হতে পারে আপনি কোন কোন পেজ ভিজিট করছেন, কোন লিঙ্ক এ ক্লিক করছেন এবং কোন পণ্য ক্রয় করছেন বা পুনর্বিবেচনার জন্য রেখে দিচ্ছেন। Internet Explorer এ আপনি Tracking Protection ব্যবহার করতে পারেন এবং Do Not Track ব্যবহার করতে পারেন যাতে তৃতীয় পক্ষের হাত থেকে আপনার ব্রাউজিং এবং আপনার ভিজিট করা সাইটগুলোর গোপনীয়তা প্রকাশ হয়ে যাওয়াকে সীমাবদ্ধ করা যায়।

এইচটিএমএল টিউটোরিয়াল পরিচিতি (HTML tutorial Introduction)

HTML পরিচিতি

HTML কি?

HTML হল একটি মার্কআপ ল্যাঙ্গুয়েজ যার মাধ্যমে একটি ওয়েব পেজের কন্টেন্ট গুলোকে বর্ণনা করা হয়।

  • HTML এর পূর্ণরূপ হল Hyper Text Markup Language
  • মার্কআপ ল্যাঙ্গুয়েজ হল অনেকগুলো মার্কআপ ট্যাগের সমষ্টি
  • HTML এর ডকুমেন্টস HTML ট্যাগ দ্বারা বর্ণনা করা হয়
  • প্রত্যেকটি HTML ট্যাগ ডকুমেন্টের ভিন্ন ভিন্ন কন্টেন্টকে বর্ণনা করে

উদাহরণ


<!DOCTYPE html>

<html>
<head>
<title>Page Title</title>
</head><body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body></html>

ফলাফল :


My First Heading

My first paragraph.


উদাহরণের বর্ণনা

  • প্রথমের DOCTYPE ঘোষণা করে যে ডকুমেন্টটির প্রকার হচ্ছে : HTML
  • <html> এবং </html> এই ট্যাগের ভিতরের টেক্সটগুলো HTML ডকুমেন্টকে বর্ণনা করে
  • <head> এবং </head>এই ট্যাগের ভিতরের টেক্সটগুলো HTML ডকুমেন্টটি কি প্রকারের সেই তথ্য ধারণ করে
  • <title> এবং </title> এই ট্যাগের ভিতরের টেক্সটগুলো HTML ডকুমেন্টের টাইটেল ধারণ করে
  • <body> এবং </body> এই ট্যাগের ভিতরের টেক্সটগুলো ওয়েবপেজ ব্রাউজারে যেসব কন্টেন্ট শো করবে তা ধারণ করে
  • <h1> এবং </h1> এই ট্যাগের ভিতরের টেক্সট হেডিংকে বর্ণনা করে
  • <p> এবং </p>এই ট্যাগের ভিতরের টেক্সটগুলো প্যারাগ্রাফকে ডিক্লেয়ার করে

HTML ট্যাগ

HTML ট্যাগ হল এঙ্গেল বন্ধনী <> দ্বারা আবদ্ধ কতগুলো কীওয়ার্ড

  • HTML ট্যাগগুলো সাধারণত জোড়ায় জোরায় হয়ে থাকে, যেমন <p> এবং </p>
  • জোড়ার প্রথম অংশকে বলা হয় স্টার্ট ট্যাগ এবং শেষ অংশকে বলা হয় ইন্ড ট্যাগ
  • ইন্ড ট্যাগ স্টার্ট ট্যাগের মতই হয় শুধু ট্যাগ নেমের পূর্বে একটি অতিরিক্ত স্লেস (/) হয়

হিন্টসঃ স্টার্ট ট্যাগকে প্রায়ই ওপেনিং ট্যাগ বলা হয় এব ইন্ড ট্যাগকে বলা হয় ক্লোজিং ট্যাগ

ওয়েব ব্রাউজার

ওয়েব ব্রাউজার যেমন (Chrome, IE, Firefox, Safari) এগুলোর কাজ হচ্ছে HTML ডকুমেন্টসকে পড়া এবং তা ডিসপ্লে করা। ব্রাউজার কখনো HTML এর ট্যাগগুলোকে ডিসপ্লে করে না কিন্তু কোন কন্টেন্টকে কিভাবে ডিসপ্লে করতে হবে তার জন্য ট্যাগগুলোকে ব্যাবহার করে।

chrome

HTML পেজ স্ট্রাকচার

HTML পেজ কিভাবে ব্রাউজারে ডিসপ্লে হয় তার একটি স্ট্রাকচার নিচে দেয়া হল

<html>

<head>

<title>Page title</title>

</head>

 

<body>

<h1>This is a heading</h1>

 

<p>This is a paragraph.</p>

 

<p>This is another paragraph.</p>

</body>

</html>

শুধুমাত্র বডি এরিয়ার ভিতরে যা থাকে তাই ব্রাউজারে ডিসপ্লে হয়

<!DOCTYPE> ঘোষণা

<!DOCTYPE> ঘোষণা করলে ব্রাউজার ওয়েব পেজের উপাদানগুলো সঠিকভাবে প্রদর্শন করতে পারে।

ওয়েবসাইটে বিভিন্ন ধরনের ডকুমেন্টস থাকে।

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

ডিক্লেয়ারেশন কেস সেনসেটিভ হয় না, সকল ধরনের কেস এখানে গ্রহণযোগ্য।


<!DOCTYPE html>

<!DOCTYPE HTML>

<!doctype html>

<!Doctype Html>


কমন ডিক্লেয়ারেশনস

HTML5

<!DOCTYPE html>

HTML 4.01

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

XHTML 1.0

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

HTML ভার্সনস

ওয়েবের যুগের সূচনা থেকেই HTML এর অনেকগুলো ভার্সন বের হয়েছে:

ভার্সন সাল
HTML 1991
HTML 2.0 1995
HTML 3.2 1997
HTML 4.01 1999
XHTML 2000
HTML5 2012

MongoDB Aggregation

MongoDB সীমাবদ্ধ রেকর্ডস
নয়ন চন্দ্র দত্ত

* Limit() পদ্ধতি
MongoDB তে রেকর্ডকে সীমাবদ্ধ করতে হলে limit() মেথড বা পদ্ধতি ব্যবহার করতে হবে। Limit() পদ্ধতি এক নাম্বারের টাইপ সমর্থন করে যা ডকুমেন্টের নাম্বার এবং আপনি প্রদর্শন করতে চাইছেন।

সিনট্যাক্সঃ
limit() এর বেসিক সিনট্যাক্স নিম্নরূপঃ

>db.COLLECTION_NAME.find().limit(NUMBER)

উদাহরণঃ
নিম্নলিখিত তথ্যের সাথে myycol কালেকশনটি বিবেচনা করুনঃ

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

ডকুমেন্ট quering এর সময় নিচের উদাহরণটি কেবলমাত্র ২টি ডকুমেন্ট প্রদর্শন করবেঃ

>db.mycol.find({},{"title":1,_id:0}).limit(2)
{"title":"MongoDB Overview"}
{"title":"NoSQL Overview"}
>

যদি আপনি Limit() পদ্ধতিতে ডকুমেন্টের নাম্বার উল্লেখ না করেন তাহলে এটি কালেকশনের সকল ডকুমেন্ট প্রদর্শন করবে।

* MongoDB Skip() পদ্ধতি
এছাড়াও limit() পদ্ধতি ছাড়া আরও একটি পদ্ধতি skip() আছে যা ডকুমেন্টের সংখ্যার টাইপ সমর্থন করে এবং সেই নাম্বারের ডকুমেন্ট এড়িয়ে(skip) চলে।

সিনট্যাক্সঃ
skip() এর বেসিক সিনট্যাক্স নিম্নরূপঃ

>db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)

উদাহরণঃ
নিম্নলিখিত উদাহণটি শুধু দ্বিতীয় ডকুমেন্ট প্রদর্শন করবেঃ

>db.mycol.find({},{"title":1,_id:0}).limit(1).skip(1)
{"title":"NoSQL Overview"}
>

অনুগ্রহ করে লক্ষ্য করুন- skip() পদ্ধতিতে ডিফল্ট মান ০ ।

মংগোডিবি ডাটাটাইপ (MongoDB Data Types)

MongoDB ডেটাটাইপ্স
নয়ন চন্দ্র দত্ত

MongoDB অনেক ডেটাটাইপ্স সমর্থন করে যার তালিকা নিচে দেওয়া হলঃ

১। স্ট্রিং এই সবচেয়ে বেশি ব্যবহৃত ডেটাটাইপ যা তথ্য সংরক্ষণ করার কাজে ব্যবহার করা হয়। MongoDB স্ট্রিং UTF-8 বৈধ হতে হবে।

২। ইন্টিজারঃ একটি সংখ্যাগত মান সংরক্ষণ করার জন্য এই টাইপ ব্যবহার করা হয়। পূর্ণসংখ্যা 32 বিট বা 64 বিট আপনার সার্ভারের উপর নির্ভর করে হতে পারে।

৩। বুলিয়ানঃ এই ধরনের টাইপ একটি বুলিয়ান (সত্য / মিথ্যা ) সংরক্ষণ করতে ব্যবহৃত হয়।

৪। ডাবলঃ এই ধরনের টাইপ ফ্লোটিং পয়েন্ট মান ধারণ করার জন্য ব্যবহৃত হয়।

৫। মিন/মেক্স কীঃ এই ধরনের টাইপ সর্বনিম্ন মানের বিরুদ্ধে একটি মানকে এবং সর্বোচ্চ BSON উপাদানকে তুলনা করতে ব্যবহৃত হয়।

৬। অ্যারেঃ এই ধরনের টাইপ অ্যারে বা লিস্ট বা একাধিক মান একটা key এর মধ্যে ধারণ করার জন্য ব্যবহৃত হয়।

৭। টাইমস্ট্যাম্পঃ যখন একটি ডকুমেন্ট পরিবর্তন বা যোগ করা হয় তখন এটি রেকর্ডিং এর জন্য সুবিধাজনক ।

৮। অবজেক্টঃ এই ডেটাটাইপ এমবেডেড ডকুমেন্ট এর জন্য ব্যবহৃত হয়।

৯। নালঃ এই ধরনের টাইপ একটি নাল মান ধারণ করার জন্য ব্যবহার করা হয়।

১০। সিম্বল বা প্রতীকঃ এই ডেটাটাইপ অনুরূপভাবে একটি স্ট্রিং এ ব্যবহার করা হয় কিন্তু, এটা সাধারণত এমন ভাষার জন্য সংরক্ষিত আছে যা একটি নির্দিষ্ট প্রতীক টাইপ ব্যবহার করে।

১১। ডেট বা তারিখঃ এই ডেটাটাইপ ইউনিক্স সময় বিন্যাসে বর্তমান তারিখ বা সময় সংরক্ষণে ব্যবহৃত হয়। তারিখের অবজেক্ট তৈরি করে এবং তাতে দিন , মাস, বছর দিয়ে আপনার নিজের তারিখ ও সময় নির্দিষ্ট করতে পারেন।

১২। অবজেক্ট আইডিঃ এই ডেটাটাইপ ডকুমেন্ট আইডি সংরক্ষণ করতে ব্যবহৃত হয়।

১৩। বাইনারি ডেটাঃ এই ডেটাটাইপ বাইনারি তথ্য সংরক্ষণ করতে ব্যবহৃত হয়।

১৪। কোডঃ এই ডেটাটাইপ ডকুমেন্টে জাভাস্ক্রিপ্ট কোড সংরক্ষণ করতে ব্যবহৃত হয়।

১৫। রেগুলার এক্সপ্রেশনঃ এই ডেটাটাইপ রেগুলার এক্সপ্রেশন সংরক্ষণ করতে ব্যবহৃত হয়।

MongoDB Replication (প্রতিলিপিকরণ)

Mir Rasel
Jahangirnagar University
Dhaka, Bangladesh

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

প্রতিলিপিকরণ কেনো দরকার?

• আপনার ডাটা নিরাপদ রাখার জন্য
• ডাটার উপস্থিতি (২৪/৭) রাখা
• দুর্যোগের সময় পুনরুদ্ধার করার জন্য
• কোনো ডাউনটাইম রক্ষণাবেক্ষণের দরকার নাই ( যেমনঃ ব্যাকআপ, ইন্ডেক্স পুন্রায় গঠন, কম্প্যাকশন)
• রিড স্কেলিং ( পড়ার জন্য অতিরিক্ত রাখা)
• প্রতিলিপি সেট অ্যাপ্লিকেশনের জন্য স্বচ্ছ রাখা

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

সাধারণত mongodb এর একটি নকশা দেখানো হয় যে ক্লায়েন্ট এপ্লিকেশন সবসময় প্রাথমিক নোডের সাথে যোগাযোগ রাখে এবং প্রাথমিক নোড এরপরে মাধ্যমিক নোডে ডাটা প্রতিলিপি করে।

রেপ্লিকা সেটের ফিচারসমূহঃ
• একটি ক্লাস্টার এন নোড
• যেকোনো নোড প্রাথমিক হতে পারে
• সকল লেখা অপারেশন প্রাথমিকে যায়
• সয়ংক্রিয় ফেইলঅভার
• সয়ংক্রিয় রিকোভারি
• প্রাথমিক নির্বাচনের ঐক্য

[In Bengali] MongoDB Drop Collection . MongoDB ড্রপ কালেকশন

MongoDB ড্রপ কালেকশন
নয়ন চন্দ্র দত্ত

কেমন আছেন সবাই? আজ আমি আপনাদের জন্য নিয়ে এলাম একটি নতুন টিউটোরিয়াল - MongoDB ড্রপ কালেকশন । তাহলে চলুন আজকের টিউটোরিয়াল সম্পর্কে ।

drop() পদ্ধতি
MongoDB এর ডেটাবেস থেকে একটি কালেকশন ড্রপ করতে db.collection.drop() ব্যবহৃত হয়।

সিনট্যাক্স:
drop() কমান্ডের বেসিক সিনট্যাক্স বা বাক্য গঠন নিম্নরূপঃ

db.COLLECTION_NAME.drop()

উদাহরণ:
প্রথমত, আপনার mydb ডেটাবেসের মধ্যে available আছে এমন কালেকশন চেক করে নিন।

>use mydb
switched to db mydb
>show collections
mycol
mycollection
system.indexes
tutorialspoint
>

এখন mycollection এই নাম দিয়ে কালেকশনটি ড্রপ করুন।

>db.mycollection.drop()
true
>

আবারো ডেটাবেস এর মধ্যে কালেকশনের লিস্ট চেক করে নিন।

>show collections
mycol
system.indexes
tutorialspoint
>

drop() পদ্ধতি সত্য দেখাবে যদি সিলেক্টকরা কালেকশনগুলো সঠিকভাবে ড্রপ হয়। অন্যথায় এটি মিথ্যা দেখাবে ।

 

 

মঙ্গোডিবি ড্রপ কালেকশন

drop() মেথড:
মঙ্গোডিবিতে db.collection.drop() এর মাধ্যমে ডাটাবেস থেকে কোনো কালেকশনকে ড্রপ করা যায়/ফেলে দেয়া যায়।

সিনট্যাক্স:
drop() কমান্ডের বেসিক সিনট্যাক্সটি হলো:
db.COLLECTION_NAME.drop()

উদাহরণ:
প্রথমে mydb ডাটাবেসের কালেকশনকে গুলোকে চেক করা হলো।
>use mydb
switched to db mydb
>show collections
mycol
mycollection
system.indexes
hometech
>
তারপর কালেকশন থেকে mycollection নামের কালেকশনটিকে ড্রপ করা হলো।
>db.mycollection.drop()
true
>
পুনরায় ডাটাবেসের কালকেশনকে চেক করা হলো।
>show collections
mycol
system.indexes
hometech
>

সিলেক্টেড কোনো কালেকশন যদি সঠিকভাবে ড্রপ হয় তাহলে drop() মেথড True ভেলু রিটার্ন করে অন্যথায় False ভেলু রিটার্ন করে।

MongoDB Drop Database । MongoDB ড্রপ ডেটাবেস

MongoDB Drop Database

MongoDB ড্রপ ডেটাবেস
নয়ন চন্দ্র দত্ত

dropDatabase() পদ্ধতি
MongoDB এর db.dropDatabase() কমান্ড একটি বিদ্যমান ডেটাবেস ড্রপ করতে ব্যবহৃত হয়।

সিনট্যাক্স:
dropDatabase() কমান্ডের বেসিক সিনট্যাক্স বা বাক্য গঠন নিম্নরূপঃ

db.dropDatabase()

এটি সিলেক্ট করা ডেটাবেস ডিলিট করবে। যদি আপনি কোন ডেটাবেস সিলেক্ট না করেন তাহলে এটি ডিফল্ট 'test' ডেটাবেস ডিলিট করবে।

উদাহরণ:
প্রথমত, show dbs কমান্ড ব্যবহার করে লিস্ট available ডেটাবেস চেক করে নিনঃ

>show dbs
local 0.78125GB
mydb 0.23012GB
test 0.23012GB
>

আপনি যদি নতুন ডেটাবেস <mydb> কে ডিলিট করতে চান তাহলে dropDatabase() কমান্ড নিম্নরূপ হবেঃ

>use mydb
switched to db mydb
>db.dropDatabase()
>{ "dropped" : "mydb", "ok" : 1 }
>

এখন ডেটাবেস এর লিস্ট চেক করুন

>show dbs
local 0.78125GB
test 0.23012GB
>

MongoDB Advantages . MongoDB এর উপকারিতা

MongoDB এর উপকারিতা

নয়ন চন্দ্র দত্ত

 

কোন রিলেশনাল ডাটাবেস এর একটি সাধারণ স্কিমা ডিজাইন বা নকশা আছে যা টেবিলের সংখ্যা এবং এই সমস্ত টেবিলের মধ্যে সম্পর্ক দেখায়।

RDBMS এর উপর MongoDB এর উপকারিতা

১। স্কিমা হ্রাসঃ MongoDB একটি ডকুমেন্ট ডেটাবেস যেখানে একটি কালেকশন ভিন্ন ভিন্ন ডকুমেন্টে ধারণ করে। ডকুমেন্টের ক্ষেত্র সংখ্যা, কন্টেন্ট, আকার এক ডকুমেন্ট থেকে অন্য ডকুমেন্টে ভিন্ন হতে পারে।

২। একটি একক বস্তুর গঠন স্পষ্ট হয়।

৩। কোন জটিল যোগদান থাকে না।

৪। গভীর অনুসন্ধান-ক্ষমতা। ডকুমেন্ট-ভিত্তিক অনুসন্ধান ল্যংগুয়েজ যা প্রায় এসকিউএল এর মত শক্তিশালী, এর ব্যবহারে ডকুমেন্টগুলোতে MongoDB এর গতিশীল অনুসন্ধান সমর্থন করে ।

৫। Tuning বা সুরকরণ

৬। বাধাপ্রাপ্ত স্কেল-আউটঃ MongoDB এর আকার পরিবর্তন করা সহজ ।

৭। অ্যাপ্লিকেশন অবজেক্টকে ডেটাবেস অবজেক্টে রূপান্তর করার প্রয়োজন নেই। দ্রুত তথ্য এক্সেস সক্রিয় করতে, কাজের সেট জমা করার জন্য অভ্যন্তরীণ মেমরি ব্যবহার করুন ।

 

MongoDB কেন ব্যবহার করা উচিত

১। ডকুমেন্ট ভিত্তিক সংগ্রহস্থলঃ JSON স্টাইল ডকুমেন্টে তথ্য জমা হবে।

২। যেকোন অ্যাট্রিবিউট এর ইন্ডেক্সকরণ

৩। প্রতিলিপি এবং উচ্চ সহজলভ্যতা

৪। সমৃদ্ধশালী অনুসন্ধান বা Queries

৫। দ্রুত ক্ষেত্র আপডেট করা

৬। MongoDB দ্বারা পেশাগত সাপোর্ট প্রদান

 

কোথায় MongoDB ব্যবহার করা উচিত?

১। বড় ডেটা

২। কনটেন্ট ম্যানেজমেন্ট এবং ডেলিভারি

৩। মোবাইল এবং সামাজিক অবকাঠামো

৪। ব্যবহারকারীর ডেটা ব্যবস্থাপনা এবং

৫।তথ্যের হাব(Hub)

 

http://Bangla.SaLearningSchool.com

উইন্ডোজ টিউটোরিয়াল 8.1: সার্চ, শেয়ার, প্রিন্ট এবং অন্যান্য (Search, share, print, and more)

উইন্ডোজ টউটোরিয়াল: পৃষ্ঠা 11 এর ৬

Charm ব্যবহার করে যে সকল কাজ আপনি প্রায়ই করে থাকেন তা সম্পন্ন করা

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

Using Charm
পর্দার ডান প্রান্তে সুইপ করে যান। Search, Share, Start, Devices, বা Settings এ টোকা দিন বা ক্লিক করুন।
আপনি কীবোর্ড থেকে উইন্ডোজ এর প্রতীক Windows Logo + C চেপেও Charm এ যেতে পারেন।

 

সার্চ

Search Charm, Bing Smart Search ব্যবহার করে। সুতরাং আপনি আপনার পিসি, ওয়েব এবং অনড্রাইভ এ সার্চ করতে পারেন, সেইসাথে কিছু App এবং Windows Store এও সার্চ করতে পারেন।

পিসি, ওয়েব এবং অনড্রাইভ এ কিছু খোজার জন্য Bing Smart Search এর ব্যবহার

1. পর্দার ডান প্রান্তে সুইচ করে যান এবং Search এ টোকা দিন।
2. আপনি যা সার্চ করতে চান তা লিখুন। আপনার লেখা অনুসারে অনুসন্ধান ফলাফল এবং পরামর্শ এর তালিকা দেখা যাবে।
3. আপনি যে অ্যাপ, ফাইল বা সেটিং খুজছেন তা যদি দেখতে পান তাহলে এটি খুলতে এর উপর টোকা দিন বা ক্লিক করুন। আপনি যদি বিং এর ওয়েব ফলাফল সহ সকল ফলাফল দেখতে চান, তাহলে অনুসন্ধান ফলাফল পাতার Search বাটন Search Buttonএ টোকা দিন বা ক্লিক করুন। আপনি Search Suggetion এও ক্লিক করতে পারেন।
4. অনুসন্ধান ফলাফল পৃষ্ঠায়, একটি অনুসন্ধান ফলাফল খোলার জন্য ফলাফলটিতে টোকা দিন বা ক্লিক করুন।

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

ফলাফল পাতায় ফিরে যাওয়া
যদি আপনি একটি ফলাফল খুলেন এবং দেখেন যে আপনি যা খুজছেন তা এটি নয় তাহলে আবার না খুজে ফলাফল পাতায় ফিরে যেতে পারেন। Touch দ্বারা, সুইপ করে পর্দার বাম প্রান্তের দিকে যান। (মাউস দ্বারা, মাউস পয়েন্টার পর্দার বাম পার্শ্বের উপরের দিকে নিয়ে যান এবং ক্লিক করুন।)

অনুসন্ধানের ফলাফল সঙ্কুচিত করা
Search Charm সয়ংক্রিয়ভাবে আপনার পিসির অ্যাপ, ফাইল এবং সেটিংস এবং অনড্রাইভ ও ওয়েবে খোজে। কিন্তু আপনি যেকোন এক প্ররার ফলাফল খুজতে পারেন, যেমন ওয়েব এ সেটিংস বা ছবি। এবং কিছু App এ, আপনি শুধুমাত্র উক্ত App খোজার অপশন সিলেক্ট করতে পারেন।
1. পর্দার ডান প্রান্তে সুইপ করে যান এবং Search এ টোকা দিন।
2. Search বক্স এর তীর তীর এ টোকা দিন বা ক্লিক করুন এবং তারপর আপনি যে ক্যাটাগরি চান সেটিতে টোকা দিন বা ক্লিক করুন।

Search এর সেটিংস পরিবর্তন করতে
আপনি ফলাফল ইতিহাস পরিস্কার করতে পারেন, নির্বাচন করুন আপনার অনুসন্ধান তথ্য কিভাবে বিং এর সঙ্গে শেয়ার (ভাগ করা হয়) করবেন, এবং SafeSearch options (নিরাপদ অনুসন্ধান অপশন) পরিবর্তন করবেন যা আপনার অনুসন্ধান ফলাফল থেকে প্রাপ্তবয়স্ক বিষয়বস্তু ফিল্টার (ছেঁকে বাদ দেয়) করে। শুধুমাত্র আপনার পিসি এবং অনড্রাইভ এ অনুসন্ধান করার জন্য আপনি যদি চান তাহলে ওয়েব সার্চ বন্ধ করে দিতে পারেন । (যদি আপনি Metered Internet সংযোগ ব্যবহার করে থাকেন তাহলে এই কাজ করতে চাইতে পারেন।)
1. পর্দার ডান প্রান্তে সুইপ করে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
2. Search and apps এ টোকা দিন বা ক্লিক করুন এবং তারপর Search এ টোকা দিন বা ক্লিক করুন।
3. আপনার প্রয়োজন অনুসারে সেটিং পরিবর্তন করুন।

শেয়ার (ভাগ করা)

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

আপনি Share Charm এর মাধ্যমে অধিকাংশ App এর জিনিস শেয়ার করতে পারেন। যদি আপনি ডেস্কটপ থেকে কিছু শেয়ার করতে চান, তাহলে আপনি ই-মেইল এর মাধ্যমে শেয়ার করতে পারেন অথবা এর সাহায্যে ফাইল এবং ছবি শেয়ার করতে পারেন।

Share

ফাইল শেয়ার করতে
1. একটি App এ, আপনি যেটি চান সেই আইটেমটি সিলেক্ট করার জন্য সুইপ করুন।
2. সুইপ করে পর্দার ডান প্রান্তের দিকে নিয়ে যান এবং তারপর Share এ টোকা দিন।
3. লোকটি বা অ্যাপ বা ডিভাইস যার সাথে শেয়ার করতে চান তার উপর টোকা দিন বা ক্লিক করুন এবং পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন।

একটি লিঙ্ক শেয়ার করতে
1. একটি অ্যাপ্লিকেশন খুলুন এবং আপনি যে ওয়েবসাইট, নিবন্ধ বা ম্যাপ শেয়ার করতে চান তা ব্রাউজ করুন।
2. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং Share এ টোকা দিন।
3. ব্যক্তি বা অ্যাপ বা ডিভাইস যার সাথে শেয়ার করতে চান তার উপর টোকা দিন বা ক্লিক করুন এবং পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন।

Share Settings পরিবর্তন করার জন্য
Share Charm এ কোন অ্যাপ্লিকেশনগুলো তালিকাভুক্ত এবং কিভাবে তারা প্রদর্শিত হবে আপনি তা পরিবর্তন করতে পারবেন ।
1. সুইপ করে পর্দার ডান প্রান্তে যান, Settings এ টোকা দিন, এবং তারপর Change PC settings এ টোকা দিন।
2. Search and apps এ টোকা দিন বা ক্লিক করুন এবং তারপর Share এ টোকা দিন বা ক্লিক করুন।
3. আপনার প্রয়োজন অনুসারে Settings পরিবর্তন করুন।

স্টার্ট

আপনি উইন্ডোজ এর যেখানেই থাকেন না কেন Start Charm ব্যবহার করে Start Screen খুলতে পারবেন। অথবা যদি আপনি Start এই থেকে থাকেন তাহলে এটি ব্যবহার করে শেষ ব্যবহৃত অ্যাপ্লিকেশন এ যেতে পারবেন।

Start
Start খুলতে, সুইপ করে পর্দার ডান প্রান্তে যান এবং Start এ টোকা দিন।

ডিভাইসেস

আপনার পিসির সাথে সংযুক্ত ডিভাইস এ ফাইল এবং তথ্য পাঠানোর জন্য Device Charm হচ্ছে একটি দ্রুততম উপায়, যেমন আপনার প্রিন্টার, Xbox, ফোন, স্পিকার, টিভি বা প্রোজেক্টর। আপনার কোন কোন ডিভাইস আছে এবং তা পিসির কোথায় সংযুক্ত আছে তার উপর নির্ভর করে ডিভাইস এর তালিকা Device Charm এ থাকে। ডিভাইস Set up সম্পর্কে আরো বিস্তারিত জানতে, দেখুন ডিভাইস এবং প্রিন্টার সংযুক্তকরণ, বিচ্ছিন্নকরণ এবং নিয়ন্ত্রণ

Device Charm ব্যবহার করতে
1. একটি অ্যাপ্লিকেশন খুলুন এবং এটি বা ফাইল যা কোন ডিভাইস এ পাঠাতে চান তা নির্বাচন করার জন্য সুইপ করুন।
2. পর্দার ডান প্রান্তে সুইপ করে যান এবং তারপর Devices এ টোকা দিন।
3. নিচের অপশনগুলো থেকে একটি অনুসরণ করুন।

Stream videos, music, or a photo slide show অন্য ডিভাইস এ নিয়ে যাওয়ার জন্য (যেমন টিভি, স্টেরিও)। Play এ টোকা দিন বা ক্লিক করুন এবং পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন। কিভাবে Play সেটআপ করবেন তা সম্পর্কে বিস্তারিত জানতে দেখুন Stream pictures, video, and music using Play.

Print a document, photo, or email. Print এ টোকা দিন বা ক্লিক করুন এবং পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন। আরো বিস্তারিত তথ্যের জন্য দেখুন How to print.

Project what’s on your PC (যেমন- একটি প্রেজেন্টেশন এর জন্য, একটি স্লাইড শো করার জন্য)। Project এ টোকা দিন বা ক্লিক করুন এবং পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন।

সেটিংস

কিছু সাধারণ সেটিংসকে দ্রুত সমন্বয় করার জন্য Settings Charm ব্যবহার করা হয় (যেমন-উজ্জ্বলতা (brightness) এবং ভলিউম)। আপনার পিসির জন্য সেটিং খুজে বের করুন (যেমন- প্রেজেন্টেশন, ইউজার একাউন্ট এবং ডিভাইসেস) ‍এবং আপনি যে অ্যাপ্লিকেশন ব্যবহার করছেন তার  Settings পরিবর্তন করুন।

সাধারণ সেটিংস দ্রুত সমন্বয় করার জন্য
Change PC settings
এখানে কিছু সাধারণ PC Settings আছে- যেমন ভলিউম, পাউয়ার এবং নেটওয়ার্ক সংযোগ- এরা সবসময়ই Settings Charm এ থাকে।
1. পর্দার ডান প্রান্তে সুইপ করে যান এবং তারপর Settings এ টোকা দিন।
2. আপনি যে Settings পরিবর্তন করতে চান সিটিতে টোকা দিন বা ক্লিক করুন।

 

 

 

 

 

 

আপনার পিসির সেটিংস পরিবর্তন করার জন্য
PC settings থেকে বেশির ভাগ সেটিংস পরিবর্তন করতে পারবেন (Control Panel (কন্ট্রোল প্যানেল) এর পরিবর্তে), যেমন- বিভিন্ন বস্তু ব্যক্তিগতকরণ এবং সেটিংস পরিবর্তন করার জন্য যেমন- ডিভাইসেস, ইউজার একাউন্ট, অনড্রাইভ, নেটওয়ার্ক সংযোগ এবং ভাষা।
1. সুইপ করে পর্দার ডান প্রান্তে যান এবং Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।
2. যে ক্যাটাগরির Settings পরিবর্তন করতে চান সেটিতে টোকা দিন বা ক্লিক করুন।

অ্যাপ্লিকেশন এর জন্য সেটিংস পরিবর্তন করার জন্য
app settings
1. একটি অ্যাপ্লিকেশন খুলুন অথবা Start বা Desktop এ যান।
2. সুইপ করে পর্দার ডান প্রান্তে যান এবং Settings এ টোকা দিন।
3. আপনি যে সেটিং পরিবর্তন করতে চান সেটিতে টোকা দিন বা ক্লিক করুন। যদি আপনি কোন অ্যাপ্লিকেশন ব্যবহার করতে থাকেন এবং দেখতে না পান কি করতে হবে, তাহলে PC settings এ খুজুন- কিছু অ্যাপ্লিকেশন এর Settings এখান থেকেও করতে পারবেন।

উইন্ডোজ 8.1 টিউটোরিয়াল : পিসির জন্য অ্যাপ্লিকেশন সংগ্রহ (Getting apps for your PC)

 উইন্ডোজ টিউটোরিয়াল 11 এর 7

উইন্ডোজ স্টোর হচ্ছে অ্যাপ্লিকেশন এর দুনিয়া

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

নোট: Windows Store থেকে অ্যাপ্লিকেশন ইনস্টল বা দেখতে, আপনার Windows 8.1 বা Widows RT 8.1 প্রয়োজন হবে। যদি আপনার Windows 8.1 বা Widows RT 8.1 না থাকে তাহলে আপনি Windows Store এর জনপ্রিয় অ্যাপ্লিকেশন লিঙ্কটিতে খুঁজে দেখতে পারেন।

অ্যাপ্লিকেশন ইনস্টল করা

অ্যাপ্লিকেশন Install করার জন্য Windows Store থেকে Apps খুজে পেতে স্টার্ট স্ক্রিণ বা টাস্কবার থেকে Store এ টোকা দিন বা ক্লিক করুন। Store খোলার জন্য আপনাকে ইন্টারনেট এর সাথে সংযুক্ত থাকতে হবে এবং মাইক্রোসফট একাউন্ট এ Sign in করা অবস্থায় থাকতে হবে।

যখন আপনি Windows Store এ থাকবেন, একাধিক উপায়ে আপনি অ্যাপ্লিকেশন খুঁজতে পারবেন:

ফিচার্ড অ্যাপ (বিশেষ অ্যাপ্লিকেশন) এবং অ্যাপ্লিকেশন তালিকা ব্রাউজ করা: আপনার কি ধরনের অ্যাপ্লিকেশন লাগবে তা যদি নিশ্চিত না হন তাহলে শুরু করার সবচেয়ে ভাল উপায় হচ্ছে Store এর featured apps। জনপ্রিয়, নতুন আগত, অধিক বিক্রিত অথবা বিনামূল্যে প্রদত্ত অ্যাপ্লিকেশনগুলো দেখার জন্য ডান থেকে স্ক্রলিং শুরু করুন। (বিশেষ তালিকার থেকে সকল Apps দেখার জন্য, তালিকার নামের উপর টোকা দিন বা ক্লিক করুন)। আবার, আপনার যে অ্যাপ্লিকেশনগুলো আছে এবং আপনি রেট করেছেন তার উপর ভিত্তি করে Picks for you এ ব্যক্তিগতকৃত অ্যাপ্লিকেশন সুপারিশ দেখতে পারেন।

বিভাগ অনুসারে অন্বেষণ যদি আপনি একটি নির্দিষ্ট ধরনের অ্যাপ্লিকেশন খুঁজেন (বিনোদন অ্যাপ্লিকেশন অথবা গেম), আপনি Store এর বিভিন্ন বিভাগে ক্যাটাগরি অনুসারে অন্বেষণ করতে পারবেন।

অ্যাপ্লিকেশন খোজা যদি আপনি অ্যাপ্লিকেশন এর নাম জানেন বা নির্দিষ্ট পাবলিশার এর অ্যাপ্লিকেশন খুজেন তাহলে তার নাম Store এর উপরের দিকের ডান প্রান্তের সার্চ বক্স এ লিখুন। আপনার সার্চ এর সাথে সাদৃশ্যপূর্ণ সকল অ্যাপ্লিকেশন দেখতে পারবেন।

যখন আপনার প্রয়োজন অনুসারে অ্যাপ্লিকেশন পেয়ে যাবেন তখন যদি ক্রয় করতে হয় তাহলে Buy অথবা Try (ফ্রি ট্রায়য়াল) এ টোকা দিন বা ক্লিক করুন, অথবা বিনা মূল্যে প্রদত্ত Apps হলে Install এ টোকা দিন বা ক্লিক করুন।

 

পরামর্শ: অ্যাপ্লিকেশন এর তালিকা, ক্যাটাগরি, আপনার একাউন্ট এর তথ্য, অথবা Store এর মূল পাতায় ফিরে যাবার জন্য Windows Store এর উপরের দিকের মেনু ব্যবহার করুন।

 

অ্যাপ্লিকেশন পিন করে রাখা

অ্যাপ স্টোর থেকে কোন Apps ইনস্টল করার পর App View এ আপনার পিসির অন্যান্য অ্যাপ্লিকেশন এর সাথে তালিকাভুক্ত অবস্থায় অ্যাপ্লিকেশনটি দেখতে পাবেন। সহজে খুঁজে বের করার জন্য এবং পরবর্তীতে সহজে ব্যবহারের জন্য আপনি অ্যাপ্লিকেশনটি স্টার্ট স্ত্রিণের সাথে বা ডেস্কটপ টাস্কবার এর সাথে পিন করে রাখতে পারেন।

ধাপ 1
Trart Screen
App View দেখার জন্য আপনার হাতের আঙুলের সাহায্যে Start Screen এর মাঝ বরাবর থেকে উপরের দিকে স্লাইড করুন অথবা Start Screen এর নিচের দিকে বাম পাশের অ্যারো Arrow এ ক্লিক করুন।

 

 

 

 

 

 

 

 

ধাপ 2
h
যে অ্যাপ্লিকেশন কে পিন করতে চান তার উপর চাপ দিন বা ধরে রাখুন বা রাইট ক্লিক করুন। আপনি একাধিক অ্যাপ্লিকেশন বাছাই করতে পারেন এবং সবগুলোকে একই সাথে পিন করতে পারেন।

 

 

 

 

 

 

 

ধাপ 3
i
টোকা দিন বা ক্লিক করুন Pin to Start অথবা Pin to taskbar এর উপর। যে অ্যাপ্লিকেশনগুলো পিন করেছেন তা Start Screen এর শেষে বা Desktop Taskbar এ দেখা যাবে।

 

তারপর আপনি পিন করা অ্যাপ্লিকেশনগুলোকে পুনরায় সাজাতে পারবেন। Start Screen এ আপনি টাইলসগুলো ছোট বড় করতে পারবেন এবং একই প্রকার অ্যাপ্লিকেশনগুলোর গ্রুপ তৈরি করতে পারবেন। কিভাবে করবেন তা শিখতে দেখুন Start Screen.

অ্যাপ্লিকেশন ব্যবহার করা

একটি অ্যাপ্লিকেশন ব্যবহার শুরু করার জন্য Start Screen বা টাস্কবার এ অ্যাপ্লিকেশনটির উপর টোকা দিন বা ক্লিক করুন।

Apps এর কমান্ডগুলো দেখা

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

Apps এ Charm এর ব্যবহার
Using Charms
অনেক অ্যাপ্লিকেশন এ Search (কোন কিছু খোজার জন্য), Share (কোন কিছু ভাগ করার জন্য), প্রিন্টার বা অন্য ডিভাইস এ ফাইল পাঠানো, এবং Settings পরিবর্তন করার জন্য Charm ব্যবহার করতে পারেন। অ্যাপ্লিকেশন এ Charm ব্যবহার করার জন্য, পর্দার ডান প্রান্তের দিকে সুইপ করুন, এবং তারপর আপনার যে Charm প্রয়োজন তাতে টোকা দিন। আরো তথ্যের জন্য দেখুন Search, share, print, and more.

একইসাথে একাধিক অ্যাপ্লিকেশন ব্যবহার করা
apps together
যখন আপনি একাধিক অ্যাপ্লিকেশন ব্যবহার করেন, আপনি দ্রুত একটি হতে অপরটিতে যেতে পারেন এবং চারটি পর্যন্ত অ্যাপ্লিকেশন একইসাথে পর্দায় প্রদর্শন করতে পারেন (পিসির রেজুলেশন এর উপর ভিত্তি করে)। কিভাবে উইন্ডোজে একাধিক অ্যাপ্লিকেশন ব্যবহার করবেন তা সম্পর্কে আরো তথ্যের জন্য দেখুন “পিসির সাথে অন্তরঙ্গতা বাড়ান”।

অ্যাপ্লিকেশন বন্ধ করা
Close an app
Windows Store এর অ্যাপ্লিকেশনগুলো উইন্ডোজ এর সাথে সংগতি রেখেই নির্মিত, সুতরাং খোলা অবস্থাতেও যখন এদের ব্যবহার না করবেন তখন এরা আপনার পিসির গতিও কমাবে না। যখন আপনি একটি অ্যাপ্লিকেশন ব্যবহার বন্ধ করবেন, উইন্ডোজ এটি ব্যাকগ্রাইন্ডে চলমান অবস্থায় রাখবে না এবং কিছু সময় পর এটিকে সয়ংক্রিয়ভাবে বন্ধ করে দেবে। কিন্তু আপনি যদি Touch ব্যবহার করে একে বন্ধ করতে চান তাহলে এটিকে চাপ দিয়ে ধরে উপর থেকে একেবারে পর্দার নিচের প্রান্তে নিয়ে ছেড়ে দিন। যদি আপনি মাউস ব্যবহার করেন তাহলে মাউস পয়েন্টার অ্যাপ্লিকেশন এর উপরের প্রান্তে নিয়ে যান এবং টাইটেল বার এর ক্লোজ (Close) বাটন এ ক্লিক করুন।

পরামর্শ:
যদি আপনি মাউস ব্যবহার করেন এবং অ্যাপ্লিকেশন এর উপরের দিকে মাউস পয়েন্টার নিয়ে যেয়ে ক্লোজ বাটন দেখতে না পান, তাহলে আপনার সম্ভবত উইন্ডোজ 8.1 এবং উইন্ডোজ আরটি 8.1 এর সর্বশেষ আপডেট নেই। উইন্ডোজ 8.1 “এর সর্বশেষ আপডেট Install করুন”।

পিসিতে Apps স্নিঙ্ক করা

Windows Store থেকে Apps ইনস্টল করার পরে, যখন আপনি মাইক্রোসফট একাউন্ট ব্যবহার করে আরেকটি উইন্ডোজ 8.1 বা উইন্ডোজ আরটি 8.1 এ Sign in করবেন, আপনার অ্যাপ্লিকেশনগুলো সয়ংক্রিয়ভাবে নতুন যে পিসি ব্যবহার করছেন তাতে Sync হয়ে যাবে - সুতরাং যেখানে ছেড়ে এসেছিলেন ঠিক সেখানে ফিরে যাওয়া আপনার জন্য অনেক সহজ ।

সংয়ক্রিয়ভাবে অ্যাপ্লিকেশন এবং অ্যাপ্লিকেশন ডাটা Sync করা ডিফল্ট হিসেবে অন করা অবস্থায় থাকে, কিন্তু আপনি চাইলে এই Settings যেকোন সময় পরিবর্তন করতে পারবেন।

অ্যাপ্লিকেশন Sync Settings পরিবর্তন করতে
1. পর্দার ডান প্রান্তে সুইপ করে যান এবং Settings এ টোকা দিন।
2. Change PC settings এ টোকা দিন বা ক্লিক করুন।
3. Change PC settings এ টোকা দিন বা ক্লিক করুন।
4. App settings এর মধ্যে নির্বাচন করে দিন অ্যাপ্লিকেশনগুলো এবং অ্যাপ্লিকেশন ডাটার কোথায় Sync হবে এবং কোথায় হবে না।

সয়ংক্রিয়ভাবে অ্যাপ্রিকেশন আপডেট হওয়া

আপনার অ্যাপ্লিকেশনগুলো যে ঠিকভোবে কাজ করছে তা জানার একটি উপায় হচ্ছে আপনার অ্যাপ্লিকেশনগুলো আপ-টু-ডেট রাখা। অ্যাপ্লিকেশন আপডেট বিনা মূল্যে করা যায় এবং আপনার অ্যাপ্লিকেশন এর জন্য আপডেট ও New features আপনার Apps এর মধ্যে অন্তর্ভুক্ত করে। ডিফল্ট হিসেবে Windows Store আপনার পিসিতে Install করা অ্যাপ্লিকেশনগুলো সয়ংক্রিয়ভাবে আপডেট করে, সুতরাং আপনার চিন্তা করার প্রয়োজন নেই কখন নতুন আপডেট আসবে। আরো তথ্যের জন্য সয়ংক্রিয় আপডেট চালু অবস্থায় আছে কিনা তা নিশ্চিত হতে দেখুন “সয়ংক্রিয় আপডেট চালু করা”।

আপনার পিসির অ্যাপ্লিকেশনগুলো অন্য পিসিতে Install করা

সকল অ্যাপ্লিকেশন যা আপনি Windows Store থেকে Install করেছেন তা My apps অংশে তালিকাভুক্ত হয়েছে। আপনি অন্য যে পিসি ব্যবহার করছেন সেখানে কোন কোন অ্যাপ্লিকেশন Install করা আছে তা দেখতে পারবেন, এবং My apps অংশ থেকে সরাসরি অ্যাপ্লিকেশনগুলো Install করতে পারবেন, সুতরাং আপনাকে এসকল অ্যাপ ইন্সটল করার জন্য Store এ আবার নতুন করে খুঁজতে হবে না।

ধাপ 1
Essential App
Start Screen এ Store টাইলস এ টোকা দিন বা ক্লিক করুন।

 

 

 

 

 

 

 

 

 

 

ধাপ 2
Top Free
Account এ টোকা দিন বা ক্লিক করুন এবং তারপর My apps এ টোকা দিন বা ক্লিক করুন।

 

 

 

 

 

 

 

 

 

ধাপ 3
The Newwork Times
সুইপ করে নিচে যান অথবা যে অ্যাপ্লিকেশনটি Install করতে চান তার উপর ডান ক্লিক করুন এবং তারপর Install এ টোকা দিন বা ক্লিক করুন।

নোট: আপনি উইন্ডোজ 8 এর অ্যাপ্লিকেশন উইন্ডোজ 8.1 এ Install করতে পারবেন কিন্তু উইন্ডোজ 8.1 এর অ্যাপ্লিকেশন উইন্ডোজ 8 এ Install করতে পারবেন না।

উইন্ডোজ 8.1 টিউটোরিয়াল : “মেইল“ অ্যাপ্লিকেশন এ ই-মেল সেট আপ (Setting up email)

উইন্ডোজ টিউটোরিয়াল: 11 এর 8

আপনার পছন্দের একটি অ্যাপ্লিকেশন বা সেবা

কোন ব্যাপার না আপনি কিভাবে ই-মেইল ব্যবহার করেন, Windows 8.1 এবং Windows RT 8.1 এর অনেক অ্যাপ্লিকেশন এবং সেবা আছে, যা আপনার জন্য কাজ করবে। আপনি আপনার বর্তমান E-mail ব্যবহার করতে পারেন, অথবা নতুন করে একটি নিতে পারেন। এখানে কিছু পছন্দ করার জন্য দেয়া হল।

Mail App

Mail App সেট আপ করা এবং ব্যবহার করা সহজ। E-mail অ্যাপ্লিকেশন এর সাহায্যে Gmail, Yahoo!, Outlook.com এবং এমনকি আপনার কর্মস্থলের E-mail ব্যবহার করতে পারবেন। যদি আপনি বর্তমানে Windows Live বা Outlook XPress ব্যবহার করতে থাকেন, তাহলে Mail App ব্যবহার করে দেখতে পারেন।

Outlook.com

যেকোন ব্রাউজার দিয়ে আপনার ই-মেইল চেক করুন। Outlook.com দিয়ে, E-mail চেক করার জন্য আপনার যেকোন সংযুক্ত ডিভাইস দিয়ে Sign in করতে পারেন। অন্যান্য E-mail সেবার একাউন্ট যোগ করতে পারেন, যেমন- Gmail, Yahoo!, iCloud Mail, এবং অন্যান্য। Outlook.com অ্যাপটি Mail App এবং Outlook এর সাথেও অঙ্গীভূতভাবে কাজ করে।

Outlook

ইমেল, ক্যালেন্ডার, এবং কাজের তালিকা পরিচালনা করে। আউটলুক এগুলো আন্তরিকভাবে সম্পন্ন করে। এটি Windows RT 8.1 এর সাথে বিনামূল্যে সংযুক্ত থাকে।

আপনি বাসায় Outlook.com এবং Mail App একই সাথে আপনার ট্যাবলেটে ব্যবহার করতে পারেন এবং আপনার অফিসের পিসিতে Outlook ব্যবহার করতে পারেন। আপনি কোনটি ব্যাবহার করছেন তা কোন সমস্যা নয়, এগুলো সবই Setup করা সহজ- আমরা এগুলো সম্পর্কে আলোচনা করব।

Mail App সেটআপ করা

Mail App হচ্ছে একটি সহজ উপায় যা দ্বারা আপনার সকল ই-মেইল একীভূত করতে পারেন। মাইক্রোসফট একাউন্ট হচ্ছে এর চাবি। আপনি একটি একাউন্ট তৈরি করতে পারেন যা আগে থেকেই আছে বা নতুন একটি খুলতে পারেন - এগুলো সবই ফ্রি।

যদি অন্যরা আপনার পিসি ব্যবহার করে তাহলে নিশ্চিত হয়ে নিন যে তারা সকলে তাদের নিজেদের মাইক্রোসফট একাউন্ট দিয়ে Sign in করে কিনা।

আপনি মাইক্রোসফট একাউন্ট দিয়ে Sign in করা অবস্থায় আছেন কিনা তা চেক করে নিন।
আপনি যদি অতীতে মাইক্রোসফট একাউন্ট ব্যবহার করে থাকেন যেমন- Xbox, Hotmail, OneDrive, Messenger, Skype, বা Windows Phone তাহলে আপনার ইতোমধ্যেই একটি মাইক্রোসফট একাউন্ট আছে - এটি হচ্ছে আপনার E-mail এড্রেস যা দিয়ে আপনি Sign in করেছিলেন। আপনি আপনার পিসি Setup করার সময় ঐ মাইক্রোসফট একাউন্ট ব্যবহার করে থাকতে পারেন, সুতরাই আপনি ইতোমধ্যেই Sign in করা অবস্থায় থাকতে পারেন। কিন্তু যদি আপনি নিশ্চিত না হন তাহলে এখানে কিছু চেক করার উপায় দেয়া হলো।

1. সুইপ করে পর্দার ডান প্রান্তের দিকে যান, Settings এ টোকা দিন এবং তারপর Change PC settings এ টোকা দিন।

2. Accounts এ টোকা দিন বা ক্লিক করুন এবং তারপর Your account এ টোকা দিন বা ক্লিক করুন।

Microsoft account
আপনি যদি ইতোমধ্যেই Sign in করা অবস্থায় থেকে থােকেন তাহলে আপনার পর্দা এইরকম দেখা যাবে। আপনি এখন প্রস্তুত।

Local Account
আপনি যদি লোকাল একাউন্ট দ্বারা Sign in করা অবস্থায় থেকে থাকেন তাহলে আপনার পর্দা এইরকম দেখা যাবে। Connect to a Microsoft account এ টোকা দিন বা ক্লিক করুন এবং নির্দেশাবলী অনুসরণ করুন।

Mail App এ একাউন্ট যোগ করা
যদি আপনার মাইক্রোসফট একাউন্ট এর ইমেইল এড্রেস outlook.com, live.com, hotmail.com বা msn.com এর সাথে থাকে, তাহলে শুধুমাত্র আপনার পিসিতে Sign in করুন। Start Screen এ যান, এবং Mail App খুলুন - আপনার ই-মেইল এখানে আপনার জন্য অপেক্ষা করছে।

যদি আপনি অন্যান্য ডোমেইন এর সাথে থাকেন, যেমন- gmail.com, yahoo.com, or comcast.net তাহলে এখানে সংযুক্ত করার পদ্ধতি দেওয়া হলো।

1. Start Screen এর Mail এ টোকা দিন বা ক্লিক করুন।

2. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং তারপর Settings এ টোকা দিন।

3. Accounts এ টোকা দিন বা ক্লিক করুন। Add an account এ টোকা দিন বা ক্লিক করুন এবং তারপর কোন ধরনের একাউন্ট যোগ করতে চান তাতে টোকা দিন বা ক্লিক করুন।

4. আপনার ইমেইল এড্রেস এবং পাসওয়ার্ড টাইপ করুন, এবং তারপর Connect এ টোকা দিন বা ক্লিক করুন।

আপনার Contact সময়হ পেতে
Mail এবং People App একই সাথে কাজ করে- আপনি যখন Mail App এ একটি অ্যাকাউন্ট এর E-mail পরিচালনা করবেন তখন People App এও উক্ত একাউন্ট দেখতে পারবেন, যোগ করতে পারবেন এবং সম্পাদনা করতে পারবেন। যদি আপনার ইমেইল এড্রেস outlook.com, live.com, hotmail.com বা msn.com এর সাথে থাকে, তাহলে যখন আপনি Mail App এর সাথে সংযুক্ত হয়েছেন আপনার Contact সময়হ সয়ংক্রিয়ভাবে যোগ হয়ে গেছে । অন্যান্য একাউন্ট এর জন্য কিভাবে Contact যোগ করবেন তা দেওয়া হলো।

1. Start Screen এর People এ টোকা দিন বা ক্লিক করুন।

2. সুইপ করে পর্দার ডান প্রান্তের দিকে যান এবং তারপর Settings এ টোকা দিন।

3. Accounts এ টোকা দিন বা ক্লিক করুন। Add an account এ টোকা দিন বা ক্লিক করুন এবং তারপর কোন ধরনের একাউন্ট যোগ করতে চান তাতে টোকা দিন বা ক্লিক করুন। এবং তারপর পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন।

আউটলুক.কম (Outlook.com)

Outlook.com হচ্ছে একটি ফ্রি ওয়েবমেইল সেবা। আপনার পিসির যেকোন ব্রাউজার থেকে আপনার E-mail গুলো পেতে আপনি এটি ব্যবহার করতে পারবেন। যদি আপনার ইতোমধ্যেই একটি মাইক্রোসফট একাউন্ট থেকে থাকে (উদাহরণ স্বরুপ, যদি আপনি একটি ইমেইল এড্রেস দিয়ে আপনার পিসি Sign in করে থাকেন), আপনি Outlook.com এ Sign in করতে পারবেন- আপনার নতুন করে কোন একাউন্ট তৈরি করতে হবে না।

যদি আপনি একটি নতুন Outlook.com ইমেইল এড্রেস পেতে চান, এটি Setup করা সহজ এবং সয়ংক্রিয়ভাবেই এটি একটি মাইক্রোসফট একাউন্ট। যদি আপনি আপনার বর্তমান ইমেইল এড্রেস রেখে দিতে চান, কিন্তু সেইসাথে আরো একটি Outlook.com তৈরি করতে চান, আপনি একটি “উপনাম যোগ” করতে পারেন।

নতুন মাইক্রোসফট একাউন্ট যোগ করতে এবং Outlook.com এ Sign in করতে
1. Outlook.com এ যান।
2. Sign up now এ টোকা দিন বা ক্লিক করুন এবং পর্দায় প্রদর্শিত নির্দেশাবলী অনুসরণ করুন।


Outlook.com এ আপনার একাউন্ট পরিচালনা করা

এখানে দেওয়া হলো আপনি কিভাবে আপনার Contact পাবেন, নতুন করে যোগ করবেন এবং Outlook.com দিয়ে কিভাবে সামাজিক যোগাযোগের মাধ্যম যেমন Facebook, Twitter, and LinkedIn এ যুক্ত হবেন।

ধাপ 1
Step 1
Outlook.com প্রতীকের পরের তীর এ ক্লিক করুন।

ধাপ 2
Stap-2
People এ টোকা দিন বা ক্লিক করুন।

আউটলুক (Outlook)

আউটলুক ডেস্কটপ অ্যাপ্লিকেশন এ আপনাকে সাহায্য করার জন্য কর্মস্থলের ইমেইল, ক্যালেন্ডার এবং কাজের তালিকা পরিচালনার শক্তিশালি বৈশিষ্ট আছে। আউটলুক Windows RT 8.1 এর সাথে সংযুক্ত একটি ফ্রি অ্যাপ্লিকেশন, কিন্তু আপনার যদি Windows 8.1 থাকে, তাহলে আপনি Office.Microsoft.com থেকে এটি ক্রয় করতে পারবেন।

আউটলুক কিভাবে শুরু করবেন তা সম্পর্কে বিস্তারিত জানতে দেখুন “আউটলুক এর সাধারণ কাজ” ।

MongoDB Delete Document . MongoDB ডিলিট ডকুমেন্ট

MongoDB ডিলিট ডকুমেন্ট

নয়ন চন্দ্র দত্ত

remove() পদ্ধতি

MongoDB এর remove() পদ্ধতি কালেকশন থেকে ডকুমেন্ট ডিলিট করতে ব্যবহৃত হয়।

দুটি প্যারামিটার বাদে সবক্ষেত্রে remove() পদ্ধতি গ্রণযোগ্য হয়। একটি deletion criteria এবং অন্যটি justOne flag ।

১। deletion criteria: (অপশনাল) ডকুমেন্ট অনুযায়ী deletion criteria মেছে ফেলা হবে।

২। justOne: যদি সত্য বা ১ সেট করা থাকে তবে শুধুমাত্র একটি ডকুমেন্ট মুছা হবে।

 

সিনট্যাক্স বা বাক্য গঠন:

remove() পদ্ধতি এর বেসিক সিন্ট্যাক্স নিম্নরূপঃ

>db.COLLECTION_NAME.remove(DELLETION_CRITTERIA)

 

উদাহরণঃ

নির্দেশিত ডেটায় mycol কালেকশন বিবেচনা করি।

 

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}

{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}

{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

 

উল্লেখিত উদাহণে 'MongoDB Overview' নামক টাইটেলের সকল ডকুমেন্ট মেছে ফেলবে।

>db.mycol.remove({'title':'MongoDB Overview'})

>db.mycol.find()

{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}

{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

>

শুধুমাত্র এক মুছে ফেলা

যদি একাধিক রেকর্ড থাকে এবং আপনি যদি শুধু প্রথম রেকর্ডটি মুছতে চান তাহলে remove() পদ্ধতির জায়গায় justOne প্যারামিটার ব্যবহার করুন।

>db.COLLECTION_NAME.remove(DELETION_CRITERIA,1)

 

সব ডকুমেন্ট মুছে ফেলা

আপনি যদি মুছে ফেলার বিচার্য বিষয় উল্লেখ না করেন, তাহলে mongodb কালেকশন থেকে সব ডকুমেন্ট মুছে ফেলবে।

এটি এসকিউএল এর truncate  কমান্ড এর সমতুল্য।

>db.mycol.remove()

>db.mycol.find()

 

http://Bangla.SaLearningSchool.com

MongoDB Create Collection . MongoDB ড্রপ কালেকশন

MongoDB ড্রপ কালেকশন
নয়ন চন্দ্র দত্ত

কেমন আছেন সবাই? আজ আমি আপনাদের জন্য নিয়ে এলাম একটি নতুন টিউটোরিয়াল - MongoDB ড্রপ কালেকশন । তাহলে চলুন আজকের টিউটোরিয়াল সম্পর্কে ।

drop() পদ্ধতি
MongoDB এর ডেটাবেস থেকে একটি কালেকশন ড্রপ করতে db.collection.drop() ব্যবহৃত হয়।

সিনট্যাক্স:
drop() কমান্ডের বেসিক সিনট্যাক্স বা বাক্য গঠন নিম্নরূপঃ

db.COLLECTION_NAME.drop()

উদাহরণ:
প্রথমত, আপনার mydb ডেটাবেসের মধ্যে available আছে এমন কালেকশন চেক করে নিন।

>use mydb
switched to db mydb
>show collections
mycol
mycollection
system.indexes
tutorialspoint
>

এখন mycollection এই নাম দিয়ে কালেকশনটি ড্রপ করুন।

>db.mycollection.drop()
true
>

আবারো ডেটাবেস এর মধ্যে কালেকশনের লিস্ট চেক করে নিন।

>show collections
mycol
system.indexes
tutorialspoint
>

drop() পদ্ধতি সত্য দেখাবে যদি সিলেক্টকরা কালেকশনগুলো সঠিকভাবে ড্রপ হয়। অন্যথায় এটি মিথ্যা দেখাবে ।

MongoDB Create Database

MongoDB ডেটাবেস তৈরি করা
লেখকঃ নয়ন চন্দ্র দত্ত

কি খবর সবার? আশা করছি সবাই ভাল আছেন। আজ আমি হাজির হয়েছি একটি নতুন টিউটোরিয়াল নিয়ে। আজ আমরা দেখব কীভাবে MongoDB ডেটাবেস তৈরি করা যায়। তাহলে আর কথা না
বাড়িয়ে আজকের টিউটোরিয়াল শুরু করি।

use কমান্ড
MongoDB use DATABASE_NAME ডেটাবেস তৈরি করতে বাবহৃত হয়। কমান্ড একটি নতুন ডেটাবেস তৈরি করে যদি এটা উপস্থিত না থাকে অন্যথায়, এটি বিদ্যমান ডেটাবেস এ ফিরে আসে।
সিনট্যাক্স
use DATABASE এর বেসিক বাক্য গঠন বিবৃতি নিম্নরূপঃ
use DATABASE_NAME

উদাহরণ:
আপনি যদি নাম দিয়ে একটি ডেটাবেস তৈরি করতে চান তাহলে use DATABASE বিবৃতি নিম্নরূপ হবেঃ
>use mydb
switched to db mydb

আপনার বর্তমান নির্বাচিত ডেটাবেস পরীক্ষা করার জন্য db কমান্ড ব্যবহার করুন
>db
mydb

যদি আপনি আপনার ডেটাবেস তালিকা চেক করতে চান তাহলে show dbs কমান্ড ব্যবহার করুন
>show dbs
local 0.78125GB
test 0.23012GB

আপনার তৈরি ডেটাবেস ( Mydb ) তালিকায় উপস্থিত নেই। ডেটাবেস প্রদর্শন করতে আপনি তাতে অন্তত একটি ডকুমেন্ট সন্নিবেশ করতে হবে।
>db.movie.insert({"name":"tutorials point"})
>show dbs
local 0.78125GB
mydb 0.23012GB
test 0.23012GB

MongoDB তে ডিফল্ট ডাটাবেস পরীক্ষা
আপনি যদি কোনো ডেটাবেস তৈরি না করে থাকেন তাহলে সংগ্রহগুলো টেস্ট ডেটাবেসের মধ্যে সংরক্ষিত হবে।

আশা করছি ভাল লেগেছে আজকের টিউটোরিয়াল। পরবর্তিতে MongoDB বিষয়ক আরো টিউটোরিয়াল নিয়ে হাজির হব। আজকের মত এই পর্যন্তই। সবাই ভাল থাকবেন আর কোন সমস্যা হলে নিশ্চই কমেন্ট করবেন ।
http://Bangla.SaLearningSchool.com

উইন্ডোজ 8.1 টিউটোরিয়াল: পিসির বিভিন্ন স্থানে যাওয়ার কৌশল (Getting around your PC)

উইন্ডোজ টিউটোনিয়াল : 11 এর 4

টাচ, মাউস এবং কীবোর্ড

আপনি টাচ স্ক্রীণ, মাউস বা কীবোর্ড যেটাই ব্যবহার করেন না কেন, উইন্ডোজ 8.1 এবং উইন্ডোজ আরটি এর মৌলিক কিছু কাজ সম্পাদনের প্রক্রিয়া জানার মাধ্যমে আপনার পিসি দ্রততার এবং দক্ষতার সাথে ব্যবহারের দক্ষতা অর্জনের একটি দীর্ঘ পথ দ্রুত অতিক্রম করতে পারেন । কয়েকটি টোকা, ক্লিক বা কীবোর্ডে আঘাতের মাধ্যমে আপনি দ্রুত জিনিস খুঁজে পেতে পারেন, একাধিক খোলা অ্যাপ্লিকেশন এর একটি থেকে আরেকটিতে যেতে পারেন এবং আপনার পিসির সাথে অন্তরঙ্গতা বাড়াতে পারেন।

বিস্তারিত পড়ার আগে, এটি গুরুত্বপূর্ণ যে, আপনি ডেস্কটপ, Start Screen এবং App View এর সাথে পরিচিত কিনা। অ্যাপ্লিকেশন ব্যবহার, বন্ধুদের সাথে যোগাযোগ, ওয়েব সাইট পরিদর্শন করা এবং পিসিতে অন্য যেকোন কিছু, আপনি সম্ভবত কাজের সময় এর সবকিছুই ব্যবহার করেছেন।

ডেস্কটপDesktop

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

ডেস্কটপ এ যাওয়ার জন্য Start Screen এর Desktop টাইলস এ টোকা দিন বা ক্লিক করুন অথবা কীবোর্ড থেকে উইন্ডোজ এর প্রতীক Windows Logo+ D চাপ দিন।

যদি ডেস্কটপ টাইলস Start Screen এ না থাকে তাহলে নিম্নোক্ত ধাপগুলো অনুসরণের মাধ্যমে এটিকে পিন করতে পারেন:

1. App View দেখার জন্য আপনার হাতের আঙুলের সাহায্যে Start Screen এর মাঝ বরাবর থেকে উপরের দিকে স্লাইড করুন অথবা Start Screen এর নিচের দিকে বাম পাশের অ্যারো Arrow এ ক্লিক করুন।
2. Desktop এর উপর চাপ দিন বা ধরে রাখুন বা রাইট ক্লিক করুন। তার পর Pin to Start এ টোকা দিন বা ক্লিক করুন। (যদি আপনি ডেস্কটপ টাইল না পান তাহলে Desktop লেখা শুরু করুন।)

 

স্টার্ট স্ক্রিণStart Screen

Start হচ্ছে এমন একটি জায়গা যেখানে আপনার অ্যাপ্লিকেশনগুলো, ব্যক্তি, ওয়েবসাইটগুলো, ফোল্ডার এবং অন্যান্য গুরুত্বপূর্ণ জিনিসগুলো দেখতে পারেন।
Start Screen এ যেতে পর্দার ডান প্রান্তের দিকে সুইপ করুন এবং Start এ টোকা দিন। যদি আপনি মাউস ব্যবহার করেন তাহলে মাউস পয়েন্টারকে পর্দার বাম প্রান্তের নিচের দিকে নিয়ে যান এবং Start বাটনে ক্লিক করুন।
Start Screen সম্পর্কে আরো জানতে দেখুন “Start সম্পর্কে সবকিছু

 

অ্যাপ ভিউ95cd6947-bab3-42c8-b148-d03ad0f4f6f1_32

App View এ আপনার কম্পিউটারে ইনস্টল করা সকল অ্যাপ্লিকেশন দেখতে এর টাইলস দেখতে পারেন। App View এ আপনি অ্যাপ্লিকেশন খুলতে পারেন, Start এ পিন করতে পারবেন, বা তাদেরকে টাস্কবারে পিন করতে পারবেন।

App View দেখার জন্য আপনার হাতের আঙুলের সাহায্যে Start Screen এর মাঝ বরাবর থেকে উপরের দিকে স্লাইড করুন অথবা Start Screen এর নিচের দিকে বাম পাশের অ্যারো Arrow এ ক্লিক করুন।

টাচ এর মাধ্যমে সর্বত্র যাওয়া

Using Touch

স্পর্শ ব্যবহার করে সাধারণ কর্ম

নিম্নোক্ত টেবিল আপনার পিসিতে সাধারণ কাজগুলো টাচ ব্যবহার করে কিভাবে করবেন তা দেখাচ্ছে। সম্পূর্ণ তালিকা পেতে দেখুন “টাচ, সুইপ, টেপ  এবং অন্যান্য”।

কীবোর্ড শর্টকাট

কাজ

কিভাবে করবেন

কীবোর্ড শর্টকাট

Charm খোলা পর্দার ডান প্রান্তের দিকে সুইপ করুন উইন্ডোজ প্রতীক কী Windows Logo+ C
অ্যাপ্লিকেশন এর কমান্ড দেখা পর্দার উপর বা নিচে সুইপ করে যাওয়া উইন্ডোজ প্রতীক কী Windows Logo+ Z
শেষ ব্যবহৃত অ্যাপ এ যাওয়া পর্দার বাম প্রান্তে সুইপ করে যাওয়া উইন্ডোজ প্রতীক কী Windows Logo+ Tab
শেষ ব্যবহৃত অ্যাপগুলো দেখা পর্দার বাম প্রান্তে সুইপ করে যাওয়া এবং হাতের আঙুল চাপা রাখা অবস্থায় বাম প্রান্ত থেকে ফিরে আসা উইন্ডোজ প্রতীক কী Windows Logo+ Tab
একটি অ্যাপ বন্ধ করা পর্দার উপরের প্রান্ত থেকে অ্যাপটি পর্দার নিচের অংশে টেনে আনা Alt+F4
জুম দুই বা ততোধিক আঙুল দিয়ে পর্দা স্পর্শ করুন এবং আঙুলগুলো একে অপরেরদিকে (ছোট করার জন্য) বা বিপরীত দিকে (বড় করার জন্য) সরাণ। Ctrl + Plus Sign (+) or Ctrl + Minus Sign (-)
একটি আইটেম নির্বাচন করা নিচের দিকে বা আইটেম এর দিকে সুইপ করুন, বা চাপ দিন এবং ধরে রাখুন

 

 

মাউস ব্যবহার করে সর্বত্র যাওয়া

Using Mouse

মাউস ব্যবহার করে সাধারণ কর্ম

কাজ

কিভাবে করবেন

কীবোর্ড শর্টকাট

Charm খোলা মাউস পয়েন্টার উপরের ডান প্রান্তে বা নিচের বাম প্রান্তে সরান। যখন Charm দেখা যাবে উপর বা নিচে প্রান্তে সরান এবং যেটি চান তার উপর ক্লিক করুন । উইন্ডোজ প্রতীক কী Windows Logo+ C
অ্যাপ্লিকেশন এর কমান্ড দেখা অ্যাপ এর উপর ডান-ক্লিক করুন উইন্ডোজ প্রতীক কী Windows Logo+ Z
শেষ ব্যবহৃত অ্যাপ এ যাওয়া পর্দার উপরের বাম কর্ণারে মাউস পয়েন্টার এবং পর্দার নিচ প্রান্তের দিকে নিয়ে যান উইন্ডোজ প্রতীক কী Windows Logo+ Tab
একটি অ্যাপ বন্ধ করা মাউস পয়েন্টার পর্দার উপরের প্রান্তে নিয়ে যান এবং Close  Closeএ ক্লিক করুন। Alt+F4
জুম Ctrl এ চাপ দিয়ে মাউসের হুইল গুরান Ctrl+Plus Sign (+)or Ctrl+Minus Sign (-)
টাস্কবার দেখা মাউস পয়েন্টার পর্দার নিচের প্রান্তে নিয়ে যান উইন্ডোজ প্রতীক কী Windows Logo + T টাস্কবার এর প্রথম অ্যাপ সিলেক্ট করুন

SEO বা সার্চ ইঞ্জিন অপ্টিমাইজেশান এর সহজ কৌশল

আজকে আমি SEO বা সার্চ ইঞ্জিন অপ্টিমাইজেশান কৌশল নিয়ে আলোচনা করতে চাই. একটি ওয়েবসাইট প্রতিটি সার্চ ইঞ্জিনের ভিতরে একটি উচ্চাসন লাভ করতে চায়. আর এটা কি ভাবে করা যায় সেটাই হচ্ছে SEO বা সার্চ ইঞ্জিন অপ্টিমাইজেশান। SEO এর সবচেয়ে সহজ কৌশল হচ্ছে আপনার ওয়েব সাইটের লিঙ্কটি বিভিন্ন ওয়েব সাইটে শেয়ার করা, যেমন= সোশ্যাল নেটওয়ার্কিং সাইট (Facebook, Twitter, Google+, LinkedIn), বুকমার্কিং সাইট (Stumble, Pinterest , Digg, Reddit, Delicious), ব্লগ কমেন্টস্‌ এবং ফোরাম পোস্টিং ইত্যাদি কাজ গুলোর মাধ্যমে খুব সহজেই একটি ওয়েব সাইট কে গুগল পেজ-রেঙ্ক ১-৪ নিয়ে আসা যায়।

এস.ই.ও এর পূর্ণ রুপ হচ্ছে সার্চ ইঞ্জিন অপটিমাইজেশন : SEO

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

সার্চ ইঞ্জিনের মাধ্যমে নিজের ওয়েব সাইটকে সবার আগে প্রকাশিত করা। সাইটের ভিজিটর বাড়ানোর যায় এবং নিজের ওয়েব সাটকে সকলের কাছে পরিচিত করানো যায়।

SEO বা Search Engine Optimization। SEO সম্পর্কে বিস্তারিত আলোচনা

SEO হল Search Engine Optimization এর মাধ্যমে একটি ওয়েবসাইট বা ওয়েবপেজকে সার্চ ইঞ্জিন ব্যবহারকারীদের সার্চ বা অনুসন্ধান ফলাফলের তালিকায় প্রথম দিকে দেখানোর চেষ্টা করা হয়। ইহা কোন একক কাজ নয়। ইহা অনেক গুলো কাজের সম্মিলিত ফল। সাধারণত একটি সার্চ ইঞ্জিনের ওয়েব ক্রাউলার বিভিন্ন সময় কিংবা কোনো নির্দিষ্ট সময় ওয়েবে থাকা বিভিন্ন ওয়েবসাইট ঘুরে বেড়ায়। তখন ওয়েব ক্রাউলার কিছু নির্দিষ্ট বৈশিষ্ট্য খুঁজে বেড়ায়। সাধারণত রবোট একটি ওয়েবসাইট ক্রাউল করার সময় যে বিষয়গুলোতে দৃষ্টিপাত করে, সেগুলো হলো:

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

Internet থেকে যদি আমরা একটি বই ডাউনলোড করতে চাই, তাহলে আমরা সাধারণত যে কাজটি করি তা হল google এ আমরা ঐ বই এর নামটি লিখে search করি। এখন লক্ষ্য করুন আমরা search button press করার পর google কিছু website এর নাম দেখায় যেখানে আমরা ঐ বইটি পেতে পারি। এভাবে google প্রতি page এ ১০টি ওয়েরসাইটএর নাম দেখায়। এখন আপনার মনে প্রশ্ন জাগতেই পারে কেন কিছু সাইট প্রথম পেজে আসলো, আর কেনইবা বাকি ওয়েবসাইটগুলো পেছনের পেজে গেলো – google কি ইচ্ছা মত করছে নাকি এর পেছনে অন্য কোন কারণ আছে? নিশ্চয় প্রথমপেজের সাইটগুলোর মধ্যে বিশেষ কিছু আছে, যা অন্য সাইটগুলাতে নাই। এই বিশেষ কিছুই হল seo এর কৌশল, যার মাধ্যমে আপনিও আপনার ওয়েবসাইটটিকে প্রথম পেজে নিতে পারেন। আর প্রথম পেজ মানেই বেশি বেশি ভিজিটর।

seo কে সাধারণত ২ভাগে ভাগ করা হয়:

  • On Page Seo এবং
  • Off page seo.

একটি ক্রিকেট বিষয়ক সাইট আছে যা বর্তমানে #১০ এ অবস্থান করছে। আপনি চাচ্ছেন কেউ যদি search engine এ ” Cricket” লিখে search করে তাহলে এটি #১ অবস্থানে দেখাবে – এটা করতে হলে ঐ সাইট এর seo করতে হবে। seo সাধারণত কোন popular search term বা keyword ব্যবহার করে করা হয়। যদি seo করে আপনার Brand name কে উপরের দিকে নিতে চান এবং সফলও হন, তাহলেও এটিকে ঠিক seo বলা যায় না। কারণ search engine যথেষ্ট smart এবং seo আপনার company name ও keyword কে খুব সহজেই আলাদা করতে পারে। আর প্রধান ব্যাপার হল, যে keyword এর জন্য যত প্রতিযোগীতা, সেই keyword এ rank করা তত কঠিন।

এসইও বা “সার্চ ইঞ্জিন অপ্টিমাইজেশান” কী ? What is SEO?

এসইও বা “সার্চ ইঞ্জিন অপ্টিমাইজেশান” কী ?

এসইও বা “সার্চ ইঞ্জিন অপ্টিমাইজেশান” হচ্ছে, বিনামূল্যে” , “সম্পাদকীয়” বা সার্চ ইঞ্জিন এ “প্রাকৃতিক” তালিকা থেকে ট্রাফিক বা ভিসিটর পাবার প্রক্রিয়া। যেমন – গুগল, ইয়াহু এবং বিং প্রধান সার্চ ইঞ্জিন হিসেবে কোন নির্দিষ্ট অনুসন্ধানের জন্যে লক্ষ লক্ষ ফলাফল প্রকাশ করে। কিন্তু লক্ষ লক্ষ ফলাফলের মধ্যে যাদের ওয়েবসাইট গুলোকে প্রথম পাতায় প্রদরশন করা হয়, তারা যে প্রক্রিয়াই প্রথম পাতাই আসে তাকেই এসইও বলে।

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

সার্চ ইঞ্জিন অপটিমাইজেশন এর উপর প্রাথমিক ধারণা

সার্চ ইঞ্জিন অপটিমাইজেশন এর সংক্ষিপ্ত রূপ হল এস ই ও। এসইও এর কিছু মূলনীতি রয়েছে- যার প্রথমেই আসে, ওয়েবপেজটি কি ধরনের হবে? ওয়েবসাইটের প্রতি পেজের অবশ্যই একটি টাইটেল দিতে হবে এবং প্রতিটি টাইটেল এর মধ্যে ভিন্নতা থাকতে হবে। তবে এর মূল শব্দগুলো (keyword) সম্পর্কে সচেতন থাকতে হবে, শব্দগুলো যেন ভিজিটরদের কাছে অর্থবহ হয়। দ্বিতীয়ত, পেজ এর কন্টেন্ট সম্পর্কেও সচেতন থাকতে হবে, নিম্ন মান সম্পন্ন কন্টেন্ট যেমন ব্যবহার করা যাবে না তেমনি নকল কোন কন্টেন্টও ব্যবহার করা উচিত হবে না। এমন ধরনের কন্টেন্ট ব্যবহার করতে হবে যার মাঝে বৈচিত্র্যতা আছে, তবে তা যেন ভিজিটরদের বিরক্তির কারন না হয়ে আকৃষ্ট করতে পারে। তৃতীয়ত,অ্যাংকর (a tag) টেক্সট ব্যবহারে হতে হবে সচেতন। অর্থবহ এবং বর্ণনামূলক অ্যাংকর টেক্সট ব্যবহার করতে হবে। একই অ্যাংকর টেক্সট বার বার ব্যবহার করা যাবে না। চতুর্থত, h1থেকে h6 ট্যাগ এর ব্যবহার এমন হতে হবে যা ওয়েবপেজের কন্টেন্ট স্ট্রাকচার তুলে ধরতে পারে। এছাড়া robots.txt ফাইল ব্যবহার করতে হবে যাতে করে ক্রলার ওয়েবসাইটের নির্দিষ্ট কোন অংশকে ইন্ডেক্সিং করা থেকে বিরত থাকে।

এসইও – লিঙ্ক বিল্ডিং । SEO – Link Building

স্বর্ণা আখতার

 

লিঙ্ক বিল্ডিং এস ই ওর গুরুত্বপূর্ণ কাজগুলোর মধ্যে অন্যতম যার মাধ্যমে ওয়েব সাইট এর ভিজিটর বৃদ্ধির পাশাপাশি গুগল এ এর রাঙ্ক বৃদ্ধিতেও কাজ করা যায়। সর্বোপরি ভাবে বলা যায়, লিঙ্ক বিল্ডিং শুধুমাত্র ওয়েবসাইট এর জনপ্রিয়তা বৃদ্ধিতেই সহায়তা করে।

কিভাবে লিঙ্ক বিল্ডিং করবেন

লিঙ্ক বিল্ডিং এর বিভিন্ন নিয়ম-কানুন বা পদ্ধতি প্রচলিত আছে। নিচে কিছু পদ্ধতি সম্পর্কে সংক্ষিপ্ত আলোচনা করা হল,

  1. ওয়েবসাইট কে বিভিন্ন ডিরেক্টরিতে সাবমিট করুন। তবে কোন অটোম্যাটিক উপায় অবলম্বন করবেন না এতে গুগল আপনার রাঙ্ক কমিয়ে দিতে পারে।
  2. অনেক মুক্ত ডিরেক্টরি আছে যেমন, “dmog.org, yahoo.com” এগুলোতে আপনার সাইটটিকে অন্তর্ভুক্ত করুন। যার ফলে অন্যান্য যেসব সার্চ ইঞ্জিন আছে সেগুলোতে আপনার সাইট এর জনপ্রিয়তা বৃদ্ধি পাবে।
  3. আপনার ওয়েবপেজ এর জন্য উন্নত মানের আর্টিকেল লিখুন যা ভিজিটর ধরে রাখতে সহায়তা করবে। এবং যার ফলে, আপনার ওয়েবসাইট এর বাউন্স রেট কম হবে।
  4. লিঙ্ক বিনিময় কাজে অংশগ্রহণ করুন। যার মাধ্যমে আপনার সাইট এ ভিজিটর বৃদ্ধি পেতে পারে। তবে একপাক্ষিক হলেই বেশি ভাল হয়।
  5. আপনার সাইট এর জনপ্রিয়তা বৃদ্ধিতে ফোরামগুলোতে সিগনেচার হিসাবে আপনার লিঙ্ক রেখে আসতে পারেন ।
  6. বুকমারকিং সাইটগুলোতে আপনার সাইট এর লিঙ্ক সাবমিট করতে পারেন।
  7. ব্লগিং সাইটগুলোতে ভাল মানের আর্টিকেল লিখতে পারেন এবং সেখানে আপনার সাইটএর লিঙ্ক বিজ্ঞাপন হিসাবে দিতে পারেন।
  8. সবসময় আপনার সাইট এর ভিজিটরদের ভাল মানের সেবা সরবরাহ করুন এবং তাদেরকে ব্যাস্ত রাখার চেষ্টা করুন।

 

লিঙ্ক বিল্ডিং এ আরও কিছু উপায় আছে কিন্তু সেগুলোতে আপনাকে অর্থ খরচ করতে হতে পারে। এমন কিছু পদ্ধতি হল,

  1. কিছু উচ্চ মানে ওয়েব সাইট কিনুন যেগুলোতে আপনি আপনার লিঙ্কগুলোকে রেখে আসতে পারবেন।
  2. গুগল এডওয়ার্ড এ যোগ দিতে পারেন। এর মাধ্যমে আপনার সাইট এর ভিজিটর নিশ্চিতভাবে বৃদ্ধি পেতে পারে।

পরিশেষে বলা যায় যে, ওয়েব সাইটএর ভিজিটর বৃদ্ধিতে লিঙ্ক বিল্ডিং অনেক অবদান রাখে। এস ই ওর অনেক পদ্ধতি প্রচলিত থাকলেও লিঙ্ক বিল্ডিং এ একমাত্র উপায় যেটা দীর্ঘমেয়াদি জনপ্রিয়তা বয়ে আনতে কাজ করে থাকে।

 

এসইও – ওয়েব সাইট ডোমেন । SEO – Web Site Domain

নয়ন চন্দ্র দত্ত

 

আমরা যদি সার্চ ইঞ্জিন অপটিমাইজেশনকে ১০০% ধরি এবং একে বিভিন্ন ভাগে ভাগ করি তাহলে দেখা যাবে যে এর মধ্যে প্রায় ২০% ই হলো ডোমেন নেইম এর তথ্য। তাহলে চিন্তা করুন ডোমেনের নামকরণ বা এর সঠিক তথ্য সার্চ ইঞ্জিন অপটিমাইজেশনে কতটা গুরুত্বপূর্ণ। তাই এসইও করার সময় প্রথমেই আপনাকে নজর দিতে হবে আপনার ডোমেইনের নামের দিকে। লক্ষ্য রাখতে হবে আপনি যে বিষয় নিয়ে এসইও করতে যাচ্ছেন সে বিষয় এর সাথে আপনার ডোমেইন নামের মিল থাকে।

 

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

  1. আপনার লক্ষ্য পাঠকবর্গ কারা হবে?
  2. আপনি তাদের কাছে কি বিক্রি করতে মনস্থ করেছেন। এটা কি একটা বাস্তব আইটেমট বা শুধু টেক্সট কন্টেন্ট ?
  3. কি আপনার ব্যবসায়িক ধারণাকে ইউনিক করে তুলবে অথবা বাজারে ইতিমধ্যে available যা অন্য সব কিছুর থেকে আলাদা হবে ?

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

আপনার ডোমেইন নাম এর মধ্যে কীওয়ার্ড ব্যবহার আপনার প্রতিযোগীদের থেকে আপনাকে একটি শক্তিশালী প্রতিযোগিতামূলক সুবিধা দেয়। আপনার ডোমেইন নাম এর মধ্যে কীওয়ার্ড থাকলে সার্চ ইঞ্জিন লিস্টে ক্লিক-মাধ্যম- হার বৃদ্ধি করতে পারে এবং শব্দ সমৃদ্ধ বর্ণনামূলক আগমনকারী লিঙ্ক পেতে কীওয়ার্ডের ব্যবহার যা বিজ্ঞাপন দেওয়াকে সহজ করে তুলে।

 

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

 

আপনাকে একবার টেলিফোনে এটা বলতে সক্ষম হওয়া উচিত এবং অন্যান্য ব্যক্তি এটির বানান কিভাবে জানতে পারে এবং আপনি কি বিক্রি করছেন তারা যেন সেটা অনুমান করতে পারে।

গুরু মন্ত্র

অবশেষে, আপনাকে নিম্নলিখিত প্রশ্নের উত্তর দিতে সক্ষম হতে হবেঃ

  1. কেন আপনি আপনার ওয়েবসাইট তৈরি করতে চান?
  2. কেন মানুষ আপনার সাইটে থেকে কিনবে এবং অন্যান্য সাইট থেকে কেন নয়?
  3. কি অন্যদের থেকে আপনার সাইটকে আলাদা করে তোলবে ?
  4. কে আপনার লক্ষ্য পাঠক এবং আপনি কি বিক্রি করতে মনস্থ করেছেন?
  5. আপনি কি মনে করেন যে তালিকা 5 থেকে 10 ওয়েবসাইটগুলো আশ্চর্যজনক এখন চিন্তা করুন কেন তারা আশ্চর্যজনক?
  6. 5টি বিভিন্ন ডোমেইন নাম তৈরি করুন। তাদের মধ্যে অন্তত 1টা মজার করুন। অর্ধ ডজন মানুষকে বলুন এবং কোনটি সবচেয়ে বেশী স্মরণ থাকে। সেই মানুষগুলো যদি আপনাকে ভাল না জানে তাহলে আপনি আরো সৎ প্রতিক্রিয়া পাবেন।
  7. আপনার ডোমেন কিনুন যা catchy, স্মরণীয় এবং আপনার ব্যবসা প্রাসঙ্গিক ।

 

গুগল ম্যাপ কন্ট্রোল (Google Maps Controls)

ডিফল্ট কন্ট্রোল সেটসহ একটি গুগল ম্যাপঃ

গুগল ম্যাপ - ডিফল্ট কট্রোল

যখন একটি স্ট্র্যান্ডার্ড গুগল ম্যাপ দেখানো হয় তখন তাতে যে কন্ট্রোলসেটটি ডিফল্ট হিসেবে থাকে তা নিম্নরূপঃ

জুম - একটি স্লাইডার অথবা "+/-” বাটনগুলো দেখায় যা ম্যাপের জুম লেভেল নিয়ন্ত্রন করতে ব্যবহৃত হয়
প্যান - ম্যাপকে প্যানিং অর্থাৎ ভার্টিকেল/হরাইজন্টালি নাড়াচাড়া করার জন্য একটি প্যান কন্ট্রোল দেখায়
ম্যাপটাইপ - ইউজারদের ম্যাপটাইপ (স্যটেলাইট/রোডম্যাপ) পরিবর্তন করতে দেয়
স্ট্রিট ভিউ - একটি পেজম্যান আইকন দেখায় যা ম্যাপের উপর টেনে নিয়ে স্ট্রিট ভিউ সচল করা যায়

গুগল ম্যাপ - আরও কিছু কন্ট্রোল

ডিফল্ট কন্ট্রোলের সাথে, গুগল ম্যাপে আরও কিছু কন্ট্রোল রয়েছেঃ
স্কেল - ম্যাপের স্কেল এলিমেন্ট দেখায়
রোটেট - একটি ছোট বৃত্তাকার আইকন দেখায় যা ম্যাপটিকে ঘুরাতে সাহাজ্য করে
অভারভিউ ম্যাপ - একটি থাম্বনেল অভারভিউ দেখায় যা বৃহত্তর এলাকায় বর্তমান ম্যাপের ভিউপোর্ট প্রতিফলিত করে।

আপনি যখন ম্যাপঅপশনে ম্যাপ তৈরি করবেন অথবা যখন setOptions() কে কল করার মাধ্যমে ম্যাপের অপশন পরিবর্তন করবেন তখন কোন কন্ট্রোলগুলো দেখাবেন তা নির্দিষ্ট করে দিতে পারবেন।

গুগল ম্যাপ - ডিফল্ট কন্ট্রোলগুলো ডিজেবল করা

আপনি হয়তো ডিফল্ট কন্ট্রোলগুলো বন্ধ করে দিতে চাইবেন। এটা করতে, ম্যাপ অপশন অবজক্টের ভেতরে disableDefaultUI প্রপার্টিকে ট্রু (true) করে দিনঃ

disableDefaultUI:true

গুগল ম্যাপ - সবগুলো কন্ট্রোলকে চালু করা

কিছু কন্ট্রোল ম্যাপে ডিফল্ট হিসেবে দেখায় এবং কিছু কন্ট্রোল আপনি যতক্ষণ না চালু করছেন ততক্ষণ দেখা যাবেনা। ম্যাপে কোন কন্ট্রোল যোগ করা হবে বা কোনটা লুকানো হবে তা ম্যাপ অপশন অবজেক্টে ঠিক করে দিতে হয়। কন্ট্রোলকে দৃশ্যমান করতে ট্রু সেট করতে হবে এবং লুকাতে হাইড (hide) সেট করতে হবে।
নিচের উদাহরণটি সবগুলো কন্ট্রোলকে অন করে বা দেখায়ঃ
panControl:true,
zoomControl:true,
mapTypeControl:true,
scaleControl:true,
streetViewControl:true,
overviewMapControl:true,
rotateControl:true

গুগল ম্যাপ - কন্ট্রোলগুলো মডিফাই করা

কিছু কিছু ম্যাপ কন্ট্রোল কনফিগার করা যায়। কন্ট্রোল অপশন ফিল্ডকে নির্দিষ্ট করে দেয়ার মাধ্যমে কন্ট্রোলগুলো কনফিগার করা যায়।
উদাহরণস্বরূপ, একটি জুম কন্ট্রোলকে মডিফাই বা পরিবর্তন করার অপশনগুলো zoomControlOptions ফিল্ডকে ঠিক করে দেয়া হয়। zoomControlOptions ফিল্ড নিচের অপশনগুলো ধারণ করতে পারেঃ

google.maps.ZoomControlStyle.SMALL - একটি ছোট জুম কন্ট্রোল দেখায় (শুধু + এবং - বাটন থাকে)
google.maps.ZoomControlStyle.LARGE - স্ট্যান্ডার্ড জুম স্লাইডারকে দেখায়
google.maps.ZoomControlStyle.DEFAULT - ডিভাইস ও ম্যাপের আকার অনুযায়ী সবথেকে ভালো জুম কন্ট্রোল দেখায়

উদাহরণঃ
zoomControl:true,
zoomControlOptions: {
style:google.maps.ZoomControlStyle.SMALL
}

নোটঃ আপনি যদি কোন কন্ট্রোলকে মডিফাই করতে চান তাহলে প্রথমে কন্ট্রোলটিকে সচল (ট্রু হিসেবে সেট করুন) করে নিন।

আরেকটি কনফিগার করার মতো কন্ট্রোল হলো MapType কন্ট্রোল
mapTypeControlOptions ফিল্ডে এই কন্ট্রোলের অপশনগুলো কিভাবে মডাফাই করা হবে তা ঠিক করে দিতে হয়। mapTypeControlOptions ফিল্ড নিচের অপশনগুলো ধারণ করতে পারেঃ

google.maps.MapTypeControlStyle.HORIZONTAL_BAR - প্রতি ম্যাপ টাইপের জন্য একটি বাটন দেখায়
google.maps.MapTypeControlStyle.DROPDOWN_MENU - একটি ড্রপডাউন মেন্যু থেকে ম্যাপ টাইপ সিলেক্ট করার ব্যবস্থা করে
google.maps.MapTypeControlStyle.DEFAULT - স্ক্রিনের আকার অনুযায়ী ডিফল্ট ম্যাপ টাইপ দেখায়

উদাহরণঃ
mapTypeControl:true,
mapTypeControlOptions: {
style:google.maps.MapTypeControlStyle.DROPDOWN_MENU
}

আপনি ControlPosition প্রপার্টির মাধ্যমে একটি কন্ট্রোলের অবস্থানও ঠিক করে দিতে পারবেনঃ

mapTypeControl:true,
mapTypeControlOptions: {
style:google.maps.MapTypeControlStyle.DROPDOWN_MENU,
position:google.maps.ControlPosition.TOP_CENTER
}

গুগল ম্যাপ - কাস্টম কন্ট্রোল

এমন একটি কাস্টম কন্ট্রোল তৈরি করা যাক যা আপনাকে ক্লিক করার পর সব সময় লন্ডনে নিয়ে ( যদি ম্যাপকে ড্র্যাগ করা হয়) যাবেঃ

controlDiv.style.padding = '5px';
var controlUI = document.createElement('div');
controlUI.style.backgroundColor = 'yellow';
controlUI.style.border='1px solid';
controlUI.style.cursor = 'pointer';
controlUI.style.textAlign = 'center';
controlUI.title = 'Set map to London';
controlDiv.appendChild(controlUI);
var controlText = document.createElement('div');
controlText.style.fontFamily='Arial,sans-serif';
controlText.style.fontSize='12px';
controlText.style.paddingLeft = '4px';
controlText.style.paddingRight = '4px';
controlText.innerHTML = 'Home'
controlUI.appendChild(controlText);

 

 

গুগল ম্যাপ এর ঘটনাবলি (Google Maps Events)

Google Maps Events(গুগল ম্যাপ এর ঘটনাবলি)

Click The Marker to Zoom(জুম করার জন্য মার্কার Click করুন)
আমরা এখনও পূর্বের page এর map ব্যাবহার করচিঃ এখানে যে map টি ব্যাবহার করা হয়েছে তা লন্ডন, ইংল্যান্ড কেন্দ্রিক ।

যখন একজন ব্যাবহারকারী মার্কার এ ক্লিক করেন তখন আমরা map টিকে বড় করে উপস্থাপন করি (আমরা marker হিসেবে একটি
event handler যুক্ত করেছি যা map টি কে বড় করে দেখায় Click করার পর)।

কোড টি এরূপ ঃ

// Zoom to 9 when clicking on marker
google.maps.event.addListener(marker,'click',function() {
map.setZoom(9);
map.setCenter(marker.getPosition());
});

আমরা addListener নামক event handler টি যুক্ত করেছি event গুলির notification খুব সহজে পাওয়ার জন্য ।
এই প্রক্রিয়াটি একটি object এর জন্য দরকার হয়, যেমনঃ শোনার জন্য একটি event কে call করা হয় যখন এটি ঘটে।

Pan Back to Marker
এই পর্যায়ে map টি তে একটি event handler ব্যাবহার করা হয় 'center' property পরিবর্তন করার জন্য এবং marker
কে pan back করলে map টি তে ৩ সেকেন্ড পরে একটি center_changed ঘটনা ঘটে, codeগুলি নিম্নরূপঃ

google.maps.event.addListener(map,'center_changed',function() {
window.setTimeout(function() {
map.panTo(marker.getPosition());
},3000);
});

Open an InfoWindow When Clicking on The Marker(একটি InfoWindow Open হয় যখন Marker
এ Click করা হয় )
Marker এ Click করা হলে নিম্নরূপ কিছু text দেখা যায় infowindow তেঃ

var infowindow = new google.maps.InfoWindow({
content:"Hello World!"
});

google.maps.event.addListener(marker, 'click', function() {
infowindow.open(map,marker);
});

Set Markers and Open InfoWindow for Each Marker(Marker নির্দিষ্ট করন এবং প্রত্যেক Marker এর
জন্য InfoWindow খুলা )
একটি function Run হয় যখন ব্যাবহারকারী map এ click করেন।

placeMarker() function টি একটি marker এর স্থান নির্দিষ্ট করে যেখানে ব্যাবহারকারী click করে এবং একটি
infowindow এটিতে marker এর latitudes and longitudes দেখায়ঃ

উদাহরনঃ
google.maps.event.addListener(map, 'click', function(event) {
placeMarker(event.latLng);
});

function placeMarker(location) {
var marker = new google.maps.Marker({
position: location,
map: map,
});
var infowindow = new google.maps.InfoWindow({
content: 'Latitude: ' + location.lat() +
'
Longitude: ' + location.lng()
});
infowindow.open(map,marker);
}

গুগলম্যাপ্স ওভারলেস (Google Maps – Overlays)

Add a marker to the Google map(Google map এ marker যোগকরন)

Google Maps - Overlays( মোড়ক তৈরি করন)

Overlays হচ্ছে map এর উপরে একটি object যেটি latitude এবং longitude এর সীমিত করনে কাজ করে ।

Google Maps এর কয়েক ধরনের overlay দেখা যায় -

১) Marker- map এর একটি একক জাইগা নির্দেশ করে। Marker টি একটি প্রচলিত icon images দেখায়।
২) Polyline- map এর উপরে একসারি line নির্দেশ করে।
৩) Polygon- map এর উপরে একসারি line এবং এর আকৃতি "closed"।
৪) Circle(বৃত্তাকার) and Rectangle(আয়তক্ষেত্রিক)
৫) Info Windows- map এর উপরে content গুলিকে popup balloon এর মধ্যে প্রদর্শন করে।
৬) Custom(প্রচলিত) overlays

Google Maps - Add a Marker(Google Map এ Marker যুক্তকরন)

Marker constructor একটি marker নির্মাণ করে । লক্ষ্য রাখতে হবে যে marker এর জন্য position property ঠিক করতে
হবে যেন সেটি প্রদর্শিত হয়।

setMap( ) পদ্ধতি দ্বারা map এ marker যুক্তকরনঃ
উদাহরনঃ
var marker=new google.maps.Marker({
position:myCenter,
});
marker.setMap(map);

Google Maps - Animate the Marker(Google Map এ Marker কে জীবন্তকরণ )
নিচের উদাহরণ টি দ্বারা দেখানো হয়েছে কিভাবে Google Map এ Marker কে জীবন্তকরণ করা হয়।
var marker=new google.maps.Marker({
position:myCenter,
animation:google.maps.Animation.BOUNCE
});
marker.setMap(map);

Google Maps - Icon Instead of Marker(Google Map এ Marker এর পরিবর্তে Icon ব্যাবহার)

উদাহরনঃ
var marker=new google.maps.Marker({
position:myCenter,
icon:'pinkball.png'
});

marker.setMap(map);

Google Maps - Polyline( Google Map এ Polyline এর ব্যাবহার)
Polyline হচ্ছে একটি line যেটি এক সারি স্থানাঙ্ক যা ক্রমধারা তে থাকে।

polyline নিম্নোক্ত properties অনুসরন করে।

১) path- এটি line এর স্থানাঙ্ক দ্বারা latitude/longitude নির্দেশ করে
২) strokeColor- এটি line এর জন্য hexadecimal color নির্দেশ করে যেমনঃ (এর ধরন : "#FFFFFF")
৩) strokeOpacity- এটি line এর অস্বচ্ছতা নির্দেশ করে । এর value 0.0 থেকে 1.0 এর মধ্যে হয়।
৪) strokeWeight- line এর weight কে pixel একক দ্বারা নির্দিষ্ট করে।
৫) editable- line টি ব্যাবহারকারী দ্বারা editable(পরিবর্তন যোগ্য) কিনা তা নির্ধারণ করে।

উদাহরনঃ
var myTrip = [stavanger,amsterdam,london];
var flightPath = new google.maps.Polyline({
path:myTrip,
strokeColor:"#0000FF",
strokeOpacity:0.8,
strokeWeight:2
});

Google Maps - Polygon(Google Map এ Polygon এর ব্যাবহার)

Polyline এর মত Polygon ও এক সারি সুবিন্যস্ত স্থানাঙ্ক দ্বারা গঠিত হয়। তবে Polygon কে এমন ভাবে রূপ দেয়া হয় যেন তা
closed loop এলাকা কে নির্দেশ করে ।
Polygon গুলি সোজা line দ্বারা তৈরি হয় এবং এটি "closed"।
Polygon নিম্নোক্ত properties অনুসরণ করেঃ
path- এটি line এর latitude/longitude স্থানাঙ্ক নির্দিষ্ট করে।(প্রথম এবং শেষ স্থানাঙ্ক একই হয়)
strokeColor- এটি line এর জন্য hexadecimal color নির্দিষ্ট করে । (এর ধরন : "#FFFFFF")
strokeOpacity- line এর অস্বচ্ছতা নির্দেশ করে । value 0.0 থেকে 1.0 এর মধ্যে হয়।
strokeWeight- line এর weight কে pixel একক দ্বারা নির্দিষ্ট করে।
fillColor- এটি একটি বদ্ধ এলাকার জন্য hexadecimal color নির্দিষ্ট করে । (এর ধরন : "#FFFFFF")
fillOpacity-এটি দ্বারা পরিপূর্ণ color এর অস্বচ্ছতা নির্দেশ করে। এর value 0.0 থেকে 1.0 এর মধ্যে হয়।
editable- line টি ব্যাবহারকারী দ্বারা editable(পরিবর্তন যোগ্য) কিনা তা নির্দেশ করে ।

উদাহরনঃ
var myTrip = [stavanger,amsterdam,london,stavanger];
var flightPath = new google.maps.Polygon({
path:myTrip,
strokeColor:"#0000FF",
strokeOpacity:0.8,
strokeWeight:2,
fillColor:"#0000FF",
fillOpacity:0.4
});

Google Maps - Circle(Google Maps- বৃত্ত )

একটি Circle নিম্নোক্ত properties এ follow করে।
center- এটি google.map এর latitude/longitude কে circle এর কেন্দ্রে নির্দিষ্ট করে ।
radius- circle এর ব্যাসার্ধ কে meter একক এ প্রকাশ করে।
strokeColor - circle এর চারপাশের line টি hexadecimal color দ্বারা নির্দিষ্ট হয়। (এর ধরন : "#FFFFFF")
strokeOpacity- stroke color এর অস্বচ্ছতা নির্দিষ্ট করে। এর value 0.0 থেকে 1.0 এর মধ্যে হয়।
strokeWeight-line এর weight কে pixel একক দ্বারা নির্দিষ্ট করে ।
fillColor- circle এর ভিতরের এলাকার জন্য একটি hexadecimal color নির্দিষ্ট করে । (এর ধরন : "#FFFFFF")
fillOpacity- অভ্যন্তরীণ color এর অস্বচ্ছতা নির্দেশ করে। এর value 0.0 থেকে 1.0 এর মধ্যে হয়।
editable- এটি নির্দেশ করে যে circle টি ব্যাবহারকারী দ্বারা editable(পরিবর্তনযোগ্য) কিনা।

উদাহরণঃ
var myCity = new google.maps.Circle({
center:amsterdam,
radius:20000,
strokeColor:"#0000FF",
strokeOpacity:0.8,
strokeWeight:2,
fillColor:"#0000FF",
fillOpacity:0.4
});

Google Maps - InfoWindow(Google Map এ InfoWindow এর ব্যাবহার)
এটি marker এর কিছু text কে InfoWindow তে দেখায়।
উদাহরনঃ

var infowindow = new google.maps.InfoWindow({
content:"Hello World!"
});

infowindow.open(map,marker);

Thank you for reading......

জাভাস্ক্রিপ্ট স্ট্রিং মেথড (JavaScript String Methods)

জাভাস্ক্রিপ্ট স্ট্রিং মেথড (JavaScript String Methods)

নয়ন চন্দ্র দত্ত

 

স্ট্রিং পদ্ধতি আপনাকে স্ট্রিং নিয়ে কাজ করতে সাহায্য করবে।

 

কোন স্ট্রিং এর মধ্যে একটি স্ট্রিং খুঁজে বের করা

indexOf() পদ্ধতি একটি স্ট্রিং এর মধ্যে নির্দিষ্ট লেখার প্রথম ঘটনার ইন্ডেক্স প্রদান করে।

উদাহরণ


var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate");


 

 

lastIndexOf() পদ্ধতি একটি স্ট্রিং এর মধ্যে নির্দিষ্ট লেখার শেষ ঘটনার ইন্ডেক্স প্রদান করে।

উদাহরণ


var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate");


 

যদি টেক্সট পাওয়া না তাহলে indexOf() এবং lastIndexOf() উভয় পদ্ধতি -1 প্রদান করে।
[ জাভাস্ক্রিপ্ট শূন্য থেকে অবস্থান গণনা করে। একটি স্ট্রিং মধ্যে 0 প্রথম, 1 দ্বিতীয়, 2 তৃতীয় স্থানে। ]
উভয় পদ্ধতিতে অনুসন্ধানের জন্য শুরুর অবস্থান হিসাবে দ্বিতীয় প্যারামিটার গ্রহণ করে।

 

একটি স্ট্রিং এর মধ্যে স্ট্রিং অনুসন্ধান

search() পদ্ধতি একটি নির্দিষ্ট মানের জন্য একটি স্ট্রিং অনুসন্ধান করে এবং ম্যাচ হওয়া অবস্থান প্রদান করে।

উদাহরণ


var str = "Please locate where 'locate' occurs!";
var pos = str.search("locate");


 

**আপনি কি লক্ষ্য করেছেন?
indexOf() এবং search() দুটি পদ্ধতিই সমান।
তারা একই আর্গুমেন্ট (প্যারামিটার) গ্রহণ করে এবং তারা একই মান প্রদান করে।
দুটি পদ্ধতিই সমান কিন্তু search() পদ্ধতি আরো অনেক শক্তিশালী সার্চ মান গ্রহণ করতে পারে।
আপনারা রেগুলার এক্সপ্রেশন সম্পর্কিত অধ্যায়ে শক্তিশালী সার্চ মান সম্পর্কে আরো জানতে পারবেন।

 

স্ট্রিং যন্ত্রাংশ এক্সট্রাক্টিং

একটি স্ট্রিং এর একটি অংশ এক্সট্রাক্টিংয়ের জন্য 3টি পদ্ধতি আছে:

  • slice(start, end)
  • substring(start, end)
  • substr(start, length)

 

slice() পদ্ধতি

একটি স্ট্রিং এর একটি অংশ এক্সট্রাক্ট করে এবং একটি নতুন স্ট্রিং এক্সট্রাক্টিং অংশ প্রদান করে।
পদ্ধতিতে 2টি প্যারামিটার লাগে। যথাঃ শুরুর ইনডেক্স (অবস্থান), এবং শেষ ইনডেক্স (অবস্থান)।
এই উদাহরণ একটি স্ট্রিংকে 7 থেকে 13 অবস্তানে slices out করেঃ

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.slice(7,13);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি কোন প্যারামিটার নেগেটিভ হয় তাহলে এর অবস্থান স্ট্রিং এর শেষ থেকে গণনা করা হবে।
এই উদাহরণ একটি স্ট্রিংকে -12 থেকে -6 অবস্তানে slices out করেঃ

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.slice(-12,-6);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি আপনি দ্বিতীয় প্যারামিটারটি বর্জন করেন তবে পদ্ধতিটিতে বাকি স্ট্রিং সেভাবেই হবে। যেমনঃ-
var res = str.slice(7);

বা, শেষ থেকে গনণা করলে, যেমনঃ-
var res = str.slice(-12);

[ নেতিবাচক অবস্থানের ইন্টারনেট এক্সপ্লোরার ৮ এবং তার আগের ভারসনে কাজ করবে না। ]

 

substring() পদ্ধতি

substring(), slice() এর মত। ভিন্নতা এই যে substring() কখনও নেগেটিভ ইনডেক্স করতে পারে না।

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.substring(7,13);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি আপনি দ্বিতীয় প্যারামিটারটি বর্জন করেন তবে substring() বাকি স্ট্রিংকে সেভাবেই slice out করবে।

 

substr() পদ্ধতি

substr() , slice() এর মত। ভিন্নতা এই যে substr() এক্সট্রাক্ট অংশের দৈর্ঘ্য নির্দিষ্ট করে।

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.substr(7,6);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি প্রথম প্যারামিটার নেগেটিভ হয়, তাহলে অবস্থান স্ট্রিং এর শেষ থেকে গণনা করা হবে।
দ্বিতীয় প্যারামিটার নেগেটিভ হতে পারে না কারণ এটি দৈর্ঘ্য সংজ্ঞায়িত করে।
যদি দ্বিতীয় প্যারামিটারটি বর্জন করেন তবে substr() বাকি স্ট্রিংকে সেভাবেই slice out করবে।

 

স্ট্রিং বিষয়বস্তু প্রতিস্থাপন

replace() পদ্ধতি একটি স্ট্রিং এর মধ্যে অন্য মানের সঙ্গে একটি নির্দিষ্ট মানকে প্রতিস্থাপন করে।

উদাহরণ


str = "Please visit Microsoft!";
var n = str.replace("Microsoft","W3Schools");


 

replace() মেথড সার্চ মান হিসাবে একটি রেগুলার এক্সপ্রেশনও গ্রহণ করতে পারে।

 

উচ্চ এবং নিম্ন কেসে রূপান্তর

একটি স্ট্রিং toUpperCase() এর সঙ্গে উচ্চ কেসে রূপান্তর হয়।

উদাহরণ


var text1 = "Hello World!";         // String
 var text2 = text1.toUpperCase();   // text2 is text1 converted to upper

 

একটি স্ট্রিং toUpperCase() এর সঙ্গে নিম্ন কেসে রূপান্তর হয়।

উদাহরণ


var text1 = "Hello World!";         // String
 var text2 = text1.toLowerCase();   // text2 is text1 converted to lower

 

 

concat() পদ্ধতি

concat() দুটি অথবা আরো স্ট্রিং যোগ করে।

উদাহরণ


var text1 = "Hello";
var text2 = "World";
text3 = text1.concat(" ",text2);


 

Concat () মেথড প্লাস অপারেটরের পরিবর্তে ব্যবহার করা যেতে পারে। এই দুই লাইন একই কাজ করেঃ


var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");


 

 

স্ট্রিং অক্ষর নিষ্কাশন

স্ট্রিং অক্ষর আহরণের জন্য 2টি নিরাপদ পদ্ধতি নিম্নরূপঃ

  1. charAt(position)
  2. charCodeAt(position)

 

charAt() পদ্ধতি

CharAt () মেথড একটি স্ট্রিং মধ্যে একটি নির্দিষ্ট ইনডেক্সে (অবস্থান) ইনডেক্স চরিত্র প্রদান করে।

উদাহরণ


var str = "HELLO WORLD";
 str.charAt(0);          // returns H

 

 

charCodeAt() পদ্ধতি

CharCodeAt () মেথড একটি স্ট্রিং মধ্যে একটি নির্দিষ্ট ইনডেক্সে ইউনিকোড চরিত্র প্রদান করে।

উদাহরণ


var str = "HELLO WORLD";
str.charCodeAt(0);        // returns 72

 

 

অনিরাপদ অ্যারে হিসাবে স্ট্রিং ব্যবহার

অ্যারে হিসাবে একটি স্ট্রিং অ্যাক্সেস করতে এইরকম কোড দেখতে পাবেনঃ


var str = "HELLO WORLD";
str[0];           // returns H

 

 

একটি স্ট্রিংকে অ্যারেতে রূপান্তর

একটি স্ট্রিং split() মেথডের সাহায্যে অ্যারেতে রূপান্তরিত হতে পারে।

উদাহরণ


var txt = "a,b,c,d,e";   // String
 txt.split(",");         // Split on commas
 txt.split(" ");         // Split on spaces
 txt.split("|");         // Split on pipe

 

যদি বিভাজককে বাদ দেওয়া হয়, তাহলে ফিরতি অ্যারেতে ইনডেক্স [0] এর মধ্যে পুরো স্ট্রিং থাকবে। যদি বিভাজক "" হয়, তবে ফিরতি অ্যারৎ একক অক্ষরের একটি অ্যারে হবে। যেমনঃ

উদাহরণ


var txt = "Hello"; // String
 txt.split("");    // Split in characters

 

নিজে নিজে অনুশীলন কর!

অনুশীলন 01:

ইঙ্গিত: টেক্সট ভেরিয়েবল এর মধ্যে "World" এর প্রথম অবস্থান প্রদর্শন করে।


<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var txt = "Hello World";
document.getElementById("demo").innerHTML = txt;
</script>
</body>
</html>

 

 

 

অনুশীলন 02:

ইঙ্গিত: "World" কে "Universe" দ্বারা পরিবর্তন করার জন্য replace() মেথড ব্যবহার করুন।


<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var txt = "Hello World";
document.getElementById("demo").innerHTML = txt;
</script>
</body>
</html>

 

 

অনুশীলন 03:

ইঙ্গিত: শুধুমাত্র "Banana,Kiwi" প্রদর্শনের জন্য slice() মেথড ব্যবহার করুন।


 

<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var str = "Apple,Banana,Kiwi";
document.getElementById("demo").innerHTML = str;
</script>
</body>
</html>

 

 

জাভাস্ক্রিপ্ট নাম্বার (JavaScript Numbers)

জাভাস্ক্রিপ্ট নাম্বার (JavaScript Numbers)

নয়ন চন্দ্র দত্ত

 

জাভাস্ক্রিপ্ট এর শুধুমাত্র এক ধরনের নাম্বার আছে। নাম্বার দশমিক দিয়ে বা না দিয়েও লেখা যায়।

জাভাস্ক্রিপ্ট নাম্বার

নাম্বার দশমিক দিয়ে বা না দিয়েও লেখা যায়ঃ

উদাহরণ


var x = 34.00;         // A number with decimals
var y = 34;             // A number without decimals


 

 

অতিরিক্ত বড় বা অতিরিক্ত ছোট সংখ্যা বৈজ্ঞানিক (সূচক) স্বরলিপি দিয়ে লেখা যেতে পারে।

উদাহরণ


var x = 123e5;    // 12300000
 var y = 123e-5;  // 0.00123

 

 

জাভাস্ক্রিপ্ট নাম্বার সর্বদা 64 বিট ফ্লোটিং পয়েন্ট হয়

অন্যান্য অনেক প্রোগ্রামিং ভাষা থেকে ভিন্ন, জাভাস্ক্রিপ্ট বিভিন্ন ধরনের নাম্বার সংজ্ঞায়িত করেনা; যেমন- ইন্টিজার, ছোট, লম্বা, ফ্লোটিং-পয়েন্ট ইত্যাদি।
জাভাস্ক্রিপ্ট নাম্বার সবসময় আন্তর্জাতিক আইইইই 754 মান অনুসরণ করে, ডবল স্পষ্টতার ফ্লোটিং পয়েন্ট নাম্বার হিসেবে সংরক্ষণ করা হয়।
এই ফরম্যাট 64 বিট নাম্বার বিন্যাস করে যেখানে নাম্বার (ভগ্নাংশ) 0 থেকে 51 বি্টের মধ্যে সংরক্ষিত হয়। বিটের সূচক 52 থেকে 62 এবং বিটের সাইন ইন 63 হয়।

 

মান (ওরফে ভগ্নাংশ / অংশক) 52 bits (0 - 51)
সূচক 11 bits (52 - 62)
সাইন 1 bit (63)

 

যথার্থতা

ইন্টিজার (নির্দিষ্ট সময়ের বা সূচক স্বরলিপি ছাড়া নাম্বার) 15 সংখ্যার পর্যন্ত সঠিক বলে মনে করা হয়।

উদাহরণ


var x = 999999999999999;      // x will be 999999999999999
 var y = 9999999999999999;    // y will be 10000000000000000

 

 

দশমিক সর্বোচ্চ সংখ্যা 17 কিন্তু পাটীগণিতীয় ফ্লোটিং পয়েন্ট সবসময় 100% সঠিক হয়না।

উদাহরণ


var x = 0.2 + 0.1;            // x will be 0.30000000000000004

 

 

উপরে সমস্যা সমাধান করার জন্য, এটি সংখ্যাবৃদ্ধি এবং ডিভাইড করতে সাহায্য করেঃ

উদাহরণ


var x = (0.2 * 10 + 0.1 * 10) / 10;           // x will be 0.3

 

 

হেক্সাডেসিমেল

যদি তারা 0x দ্বারা পূর্বে হয় তাহলে জাভাস্ক্রিপ্ট হেক্সাডেসিমাল হিসাবে সাংখ্যিক ধ্রুবক ব্যাখ্যা করে।

উদাহরণ


var x = 0xFF;        // x will be 255

 

[ লিডিং শূন্য (যেমন 07) দিয়ে সংখ্যা লিখবেন না। ]

ডিফল্টরূপে, জাভাস্ক্রিপ্ট বেস 10 দশমিক সংখ্যা হিসাবে প্রদর্শন করে। কিন্তু বেস 16 (হেক্স), বেস 8 (অকট্যাল), বা বেস 2 (বাইনারি) হিসাবে আউটপুট toString() ব্যবহার করতে পারেন।

উদাহরণ


var myNumber = 128;
 myNumber.toString(16);     // returns 80
 myNumber.toString(8);      // returns 200
 myNumber.toString(2);      // returns 10000000

 

 

অসীম

উদাহরণ


var myNumber = 2;
 while (myNumber != Infinity) {          // Execute until Infinity
 myNumber = myNumber * myNumber;
 }

 

 

0 (শূন্য) দ্বারা ভাগ করেও অসীম তৈরি করা যায়।

উদাহরণ


var x = 2 / 0;         // x will be Infinity
 var y = -2 / 0;       // y will be -Infinity

 

 

অসীম একটি সংখ্যা। অসীম typeOf নাম্বার প্রদান করে।

উদাহরণ


typeof Infinity;       // returns "number"

 

 

NaN - কোন সংখ্যা নয়

NaN একটি জাভাস্ক্রিপ্ট সংরক্ষিত শব্দ একটি মান যা নির্দেশ করে যা কোন সংখ্যা নয়। একটি অ-সাংখ্যিক স্ট্রিং সঙ্গে গাণিতিক কাজ করার চেষ্টা করেলে রেজাল্ট NaN(কোন সংখ্যা নয়) হবে।

উদাহরণ


var x = 100 / "Apple";        // x will be NaN (Not a Number)

 

 

যাইহোক, স্ট্রিং এর একটি সাংখ্যিক মান রয়েছে। রেজান্ট একটি সংখ্যা হবেঃ

উদাহরণ


var x = 100 / "10";       // x will be 10

 

 

মান একটি সংখ্যা হয় তাহলে আপনি গ্লোবাল জাভাস্ক্রিপ্ট ফাংশন isNaN() ব্যবহার করে তা খুঁজে বের করতে পারেন।

উদাহরণ


var x = 100 / "Apple";
 isNaN(x);                // returns true because x is Not a Number

 

 

NaN দেখুন। আপনি যদি গাণিতিক অপারেশন এর মধ্যে NaN ব্যবহার করেন তাহলে রেজাল্ট নিম্নরূপ হবেঃ

উদাহরণ


 var x = NaN;
 var y = 5;
 var z = x + y;     // z will be NaN

 

 

NaN একটি নাম্বার। typeOf NaN নাম্বার প্রদান করে।

উদাহরণ


typeof NaN;         // returns "number"

 

 

নাম্বার অবজেক্টও হতে পারে

সাধারণত জাভাস্ক্রিপ্ট সংখ্যা লিটারেল থেকে তৈরি আদিম মানঃ var x = 123
কিন্তু নাম্বারকে নতুন শব্দ দ্বারা অবজেক্ট হিসাবেও সংজ্ঞায়িত করো যেতে পারেঃ var y = new Number(123)

উদাহরণ


var x = 123;
 var y = new Number(123);
          // typeof x returns number
          // typeof y returns object

 

 

কখনও নাম্বার অবজেক্ট তৈরি করবেন না। তারা সঞ্চালনের গতি মন্থর এবং কদর্য পার্শ্ব প্রতিক্রিয়া সৃষ্টি করে।
যখন সমতা == অপারেটর ব্যবহার করেন তখন সমান সংখ্যা সমান দেখায়:

উদাহরণ


var x = 500;
 var y = new Number(500);
// (x == y) is true because x and y have equal values

 

 

যখন সমতা === অপারেটর ব্যবহার করেন তখন সমান সংখ্যা সমান হয়না কারণ === অপারেটর টাইপ এবং মান উভয় সমতা বিবেচনা করে।

উদাহরণ


var x = 500;
 var y = new Number(500);
// (x === y) is false because x and y have different types

 

 

অথবা এমনকি খারাপ. অবজেক্টস তুলনা করা যাবে নাঃ

উদাহরণ


var x = new Number(500);
 var y = new Number(500);
// (x == y) is false because objects cannot be compared

 

জাভাস্ক্রিপ্ট অবজেক্টস তুলনা করা যায় না।

 

নাম্বার প্রোপার্টি এবং মেথড

আদিম মানের (3.14 বা 2014 এর মত) বৈশিষ্ট্য ও পদ্ধতি থাকতে পারে না(কারণ তারা অবজেক্ট না) ।

নাম্বার প্রোপার্টি

প্রোপার্টি ব্যাখ্যা
MAX_VALUE জাভাস্ক্রিপ্ট এ সম্ভব এমন বৃহত্তম সংখ্যা প্রদান করে।
MIN_VALUE জাভাস্ক্রিপ্ট এ সম্ভব এমন ক্ষুদ্রতম সংখ্যা প্রদান করে।
NEGATIVE_INFINITY অসীমে নেগেটিভ প্রতিনিধিত্ব করে।
NaN একটি "সংখ্যা নয়" মান প্রতিনিধিত্ব করে।
POSITIVE_INFINITY অসীম প্রতিনিধিত্ব করে।

 

উদাহরণ


var x = Number.MAX_VALUE;


 

এই প্রোপার্টিস শুধুমাত্র Number.MAX_VALUE হিসেবও ওয়াক্সেস করা যেতে পারে।

myNumber.MAX_VALUE, ব্যবহার করে, যেখানে MyNumber একটি পরিবর্তনশীল, অভিব্যক্তি, অথবা মান তা অনির্ধারিত হিসেবে ফিরে আসে।

উদাহরণ


var x = 6;
var y = x.MAX_VALUE; // y becomes undefined


 

উইন্ডোজ ৮.১ টিউটোরিয়াল: ডেস্কটপ (Familiar Desktop)

 

পরিচিতি : ডেস্কটপ ব্যবহার করা

Desktop এ সকল প্রকার অ্যাপ্লিকেশন এবং প্রোগ্রাম ব্যবহার করতে পারেন - বিশেষ সফটওয়্যার থেকে শুরু করে Windows Store এর যেকোন Application ব্যবহার করতে পারেন। দ্রুত প্রবেশ করার জন্য আপনার পছন্দের অ্যাপ্লিকেশন এবং প্রোগ্রামগুলোকে Taskbar এর সাথে পিন করে রাখতে পারেন এবং বিভিন্ন সর্টকাট, ব্যাকগ্রাউন্ড এবং থিম দিয়ে Desktop কে নিজের মতো করে সাজাতে পারেন।

আপনি কিভাবে আপনার পিসিকে ব্যবহার করতে চান তা কোন ব্যাপার না - আপনি অ্যাপ, উইন্ডোজ এবং Start Screen এর মধ্যে দ্রুত সুইচ (একটি থেকে অন্যটিতে যেতে পারেন) করতে পারেন।

Desktop এ ফিরে যাওয়া

পিসির যেকোন স্থান থেকে Desktop এ ফিরে যাবার বেশ কিছু পদ্ধতি আছে । আপনি নিচের যেকোনটি অনুসরণ করতে পারেন:
Start খুলুন এবং Start Screen এর Desktop টাইলস এ টোকা দিন বা ক্লিক করুন।
• কীবোর্ড থেকে উইন্ডোজ লগো কী Windows Logoএ চাপ দিন।
• পর্দার ডান কর্ণারের দিকে যান এবং Search এ টোকা দিন।

টাস্কবার এর উপর অ্যাপ্লিকেশন

Taskbar এর মাধ্যমে আপনি খোলা Application গুলোর মধ্যে সুইচ (একটি থেকে অন্যটিতে যাওয়া) করতে পারেন এবং যেসকল Application আপনি প্রায়ই ব্যবহার করেন সেগুলো পিন করে রাখতে পারেন।
Taskbar
Taskbar সাধারণত Desktop এর নিচের দিকে থাকে, কিন্তু আপনি পর্দার নিচের অংশে নীচের প্রান্ত থেকে মাউস পয়েন্টার চেপে ধরে সরানোর মাধ্যমে এটিকে পিসির যেকোন স্থানে নিতে পারবেন।

আপনি যদি টাস্কবার এ আপনার খোলা সকল অ্যাপ দেখতে না পান

খোলা অবস্থায় Windows Store এর অ্যাপ্লিকেশনগুলো যদি Taskbar এ দেখা না যায়, নিশ্চিত হয়ে নিন যে এই ফিচার Turn on করা আছে কিনা।

যেসকল Application আপনি প্রায়ই ব্যবহার করেন সেগুলোকে পিন করে রাখা

দ্রুততার সাথে খোলার জন্য আপনি আপনার পছন্দের অ্যাপ্লিকেশনগুলোকে Start Screen বা Taskbar এর সাথে পিন করে রাখতে পারেন এবং Tiles এ এক নজরে আপডেটগুলো দেখতে পারেন।

ধাপ 1
g
App Viewদেখার জন্য আপনার হাতের আঙুলের সাহায্যে Start Screen এর মাঝ বরাবর থেকে উপরের দিকে স্লাইড করুন অথবা Start Screen এর নিচের দিকে বাম পাশের অ্যারো f এ ক্লিক করুন।

ধাপ 2
h
যে Application কে পিন করতে চান তার উপর চাপ দিন বা ধরে রাখুন বা রাইট ক্লিক করুন। আপনি একাধিক Application বাছাই করতে পারেন এবং সবগুলোকে একই সাথে পিন করতে পারেন।

ধাপ 3
i
টোকা দিন বা ক্লিক করুন Pin to Start অথবা Pin to taskbar এর উপর। যে অ্যাপ্লিকেশনগুলো পিন করেছেন তা Start Screen এর শেষে বা Desktop টাস্কবারে দেখা যাবে।

খোলা Application পিন করা

আপনি যদি ইতোমধ্যে কোন Application ব্যবহার করতে থাকেন তাহলে স্টর্ট স্ক্রিণে না যেয়েও একে Taskbar এর সাথে পিন করতে পারেন।

ধাপ: 1
pin1
অ্যাপটির Taskbar বাটন চাপ দিয়ে ধরে রাখুন এবং আপনার আঙুল উপরের দিকে ঘষা দিন যতক্ষণ না একটি মেনু দেখা যায়। (যদি আপনি মাউস ব্যবহার করতে চান তাহলে অ্যাপটির Taskbar বাটনে ডান-ক্লিক করুন)

ধাপ: 2
pin2
Pin this program to taskbar এ টোকা দিন বা ক্লিক করুন । এখন আপনি অ্যাপটি বন্ধ করলেও অ্যাপটি টাস্কবারে থেকে যাবে।

Taskbar এর খোলা অ্যাপ্লিকেশনগুলোর একটি থেকে আরেকটিতে যাওয়া।

আপনি যখন একটি Application ব্যবহার করছেন Taskbar এর মাধ্যমে আপনি অন্য Application এ যেতে পারেন বা Start এ ফিরে যেতে পারেন।

কোন Application যখন সম্পূর্ণ পর্দা জুড়ে খোলা থাকে তখন Taskbar দেখার জন্য মাউস পয়েন্টার পর্দার নিচের প্রান্তের দিকে নিয়ে গেলে Taskbar দেখা যাবে। তখন Start এ ফিরে যাবার জন্য স্টার্ট বাটনে ক্লিক করুন অথবা অন্য Application এ সুইচ করতে ঐ Application এর উপর ক্লিক করুন।

পরিচিত ভাবে অ্যাপ্লিকেশন ব্যবহার করে

আপনি মিনিমাইজ বা ক্লোজ বাটনে ক্লিক করে অ্যাপ্লিকেশন কে মিনিমাইজ (অ্যাপ্লিকেশনকে Taskbar এ নিয়ে এসে রাখা) বা বন্ধ করতে পারেন (যদি আপনি এই বাটনগুলো দেখতে না পান তাহলে মাউস পয়েন্টারকে পর্দার উপরের প্রান্তের দিকে নিয়ে যেতে পারেন)
apps
আপনি উপরের বাম প্রান্তের অ্যাপ্লিকেশনের আইকন এর উপর ডান ক্লিক করেও মিনিমাইজ (অ্যাপ্লিকেশনকে টাস্কবার এ নিয়ে এসে রাখা),ক্লোজ (বন্ধ) বা পর্দার বাম বা ডান পাশে অ্যাপ্লিকেশনটিকে বিভক্ত করে রাখতে পারেন।
apps2

Desktop কে সংগঠিত করুন

আপনি যেভাবে পছন্দ করেন সেভাবে Desktop কে সংগঠিত করে রাখতে পারেন । আপনি সর্টকাট মুছে ফেলতে পারেন বা পছন্দের ফাইল বা ফোল্ডার এর জন্য সর্টকাট তৈরি করতে পারেন, ভিন্নতর ব্যাকগ্রাউন্ড, উইন্ডো কালার এবং থিম এর সাহায্যে Desktop কে নিজের মতো করে সাজাতে পারেন। Personalization Gallery এ বাছাই করার জন্য প্রচুর সংখ্যক ফ্রি থিম আছে। Desktop কে নিজের ইচ্ছা মতো রূপ দান কিভাবে করবেন তা সম্পর্কে আরো বিস্তারিত জানতে দেখুন “থিম দিয়ে শুরু করুন”।

পছন্দ করুন Sign in করার পর আপনি কোথায় যেতে চান

ডিফল্ট হিসেবে, অধিকাংশ মানুষ যখন তাদের পিসিতে Sign in করে তখন Desktop এ যায়, কিন্তু আপনি যখন আপনার পিসিতে Sign in করবেন তখন Desktop, Start Screen, বা App View এর মধ্যে যেকোনটি পছন্দ করতে পারেন, সেক্ষেত্রে আপনি কোন Device ব্যবহার করছেন তা কোন ব্যাপার না।

1. প্রথমে, পর্দার ডান পাশে সুইপ করার মাধ্যমে টাস্কবার ও নেভিগেশন প্রোপার্টিজ খুলুন, Search এ টোকা দিন, সার্চ বক্স এ Taskbar লিখুন, এবং তারপর ফলাফল থেকে Taskbar and Navigation এ টোকা দিন বা ক্লিক করুন।

2. নিচের যেকোন একটি করুন
# Start এ বুট করার জন্য
Navigation ট্যাব এ টোকা দিন বা ক্লিক করুন এবং তারপর When I sign in or close all apps on a screen, go to the desktop instead of Start চেক বক্স নির্বাচন উঠিয়ে দিন । OK তে টোকা দিন বা ক্লিক করুন। আপনি যখন পরবর্তীতে পিসি Sign in করবেন তখন Desktop এর বদলে Start Screen দেখা যাবে।

# Desktop এ বুট করার জন্য
Navigation ট্যাব এ টোকা দিন বা ক্লিক করুন এবং তারপর When I sign in or close all apps on a screen, go to the desktop instead of Start চেক বক্স নির্বাচন করুন । OK তে টোকা দিন বা ক্লিক করুন। আপনি যখন পরবর্তীতে পিসি Sign in করবেন তখন Desktop দেখা যাবে।

# App View এ বুট করার জন্য
Navigation ট্যাব এ টোকা দিন বা ক্লিক করুন এবং তারপর When I sign in or close all apps on a screen, go to the desktop instead of Start চেক বক্স নির্বাচন উঠিয়ে দিন ।
তারপর Show the Apps view automatically when I go to Start চেক বক্স নির্বাচন করুন। OK তে টোকা দিন বা ক্লিক করুন। যখন পরবর্তীতে পিসি Sign in করবেন তখন App View দেখা যাবে। (অন্যন্য নির্দেশ যা আপনাকে সাধারণত Start এ নিয়ে যেত তা এখন App View এ নিয়ে যাবে।)

স্টার্ট বাটন থেকে আরও অপশন

বাম পাশের নিচের প্রান্তে আপনি স্টার্ট বাটন দেখতে পাবেন। আপনি Start Screen এ যাওয়ার জন্য স্টার্ট বাটনে টোকা বা ক্লিক করতে পারেন, অথবা quick and advanced options এ যাওয়ার জন্য চাপ দিয়ে ধরে রাখতে পারেন বা ডান-ক্লিক করতে পারেন - এর মাধ্যমে আপনি কম্পিউটার বন্ধ করতে পারেন, সাইন আউট করতে পারেন, কন্ট্রোল প্যানেল এ যেতে পারেন এবং টাস্ক ম্যানেজার বা কমান্ড প্রম্পট খুলতে পারেন।
11111

গুগল ম্যাপস এপিআই টিউটোরিয়াল (Google Maps API Tutorial)

গুগল ম্যাপ কি?

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

গুগল ম্যাপ অ্যাপ্লিকেশনের মাধ্যমে আপনি আপনার ওয়েব সাইটে ম্যাপ দেখাতে পারবেন।

গুগল ম্যাপ এপিআই

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

 

Go here to see a Google Maps of Dhaka, Bangladesh

https://www.google.ca/maps/place/Dhaka,+Bangladesh/@23.7806364,90.4193257,11z/data=!3m1!4b1!4m2!3m1!1s0x3755b8b087026b81:0x8fa563bbdd5904c2

 

Random Short Notes on Project Management

প্রকল্প ব্যবস্থাপনার উপর কিছু কথাঃ
রিদওয়ান বিন শামীম

সঙ্ঘবদ্ধতার বিন্যাস একটি বড় গুন যা একটি দলকে কর্মক্ষেত্রে একসাথে করে রাখে। মানসম্মত উৎপাদন নীতিমালা একটি সংগঠনকে তার মান ঠিক রাখতে সহায়তা করে,লক্ষ্য ঠিক করতে সাহায্য করে। মানসম্মত সেবা বা পন্যের যে নীতিমালা এক একটি সংগঠনে তা এক এক রকম হতে পারে। এই ব্যপারটির সাথে জড়িয়ে আছে শিডিউল পারফরমান্স, কস্ট বাজেটিং, ঝুঁকি পর্যবেক্ষণ ও নিয়ন্ত্রণ ইত্যাদি নানা বিষয়ও ।

 

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

 

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

 

মাইলস্টোন চার্ট ঃ মাইলস্টোন চার্ট প্রকল্প নেটওয়ার্কের আরেকটি পদ্ধতি যেটি একটি প্রকল্পের কেবল প্রধান বিষয় গুলো দেখায়, যেখানে গান্ট চার্ট (Gantt chart) নামের আরেকটি পদ্ধতি আছে যা প্রকল্পের সবকিছু খুঁটিয়ে দেখায়। প্রকল্পের স্কোপ স্টেটমেন্ট নামের ডায়াগ্রাম সদৃশ ডকুমেন্ট তৈরির পর কাজের ব্রেকডাউন স্ট্রাকচার তৈরি হয়, এরপর তৈরি হয় একটিভিটি লিস্ট। এরপর প্রকল্পের নেটওয়ার্ক ডায়াগ্রাম তৈরি করতে হয় যা প্রকল্পের কাজের ধারার সাথে মিলিয়ে করতে হয়।প্রকল্পে এবার ঠিক করতে হয় ক্রিটিকাল পাথ, তারপর প্রোজেক্ট শিডিউল করতে হয়।

 

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

 

 

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

Random Information on Project Management (PMI)

প্রকল্প ব্যবস্থাপনার উপর কিছু তথ্যঃ
রিদওয়ান বিন শামীম

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

 

প্রকল্প ব্যবস্থাপকরা কোন প্রক্রিয়া বা পদক্ষেপ গ্রহন করবেন কিনা তা একটি কন্ট্রোল চার্টের মাধ্যমে নিশ্চিত হন,

 

তারা পূর্বপরিকল্পনা ও বর্তমান অগ্রগতির মধ্যে তুলনা করতে ভ্যরিএন্স এনালাইসিস(Variance Analysis) নামক একটি পদ্ধতি ব্যবহার করেন।

 

এক্ষেত্রে অর্ডার অফ মেগনিচিউড এস্টিমেট নামক আরেকটি পদ্ধতি ব্যবহার করা হয় প্রকল্পের খরচের নিয়ন্ত্রণ অর্থাৎ কস্ট ম্যনেজমেন্টের জন্য।

 

বিভিন্ন আলাদা সংগঠনের সাথে যোগাযোগ রক্ষার জন্য আনুষ্ঠানিক, লিখিত যোগাযোগ বেশি সফল হয়ে থাকে।

 

প্রকল্প কর্ম তালিকা হল অফিসিয়ালি প্রকল্পের মূল ভিত্তি, যার মাধ্যমে ক্রমিক ভাবে কাজ সম্পন্ন করা হয়।

 

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

 

কর্ম অনুমোদন পদ্ধতি সঠিক সময়ে ও সঠিকভাবে কাজ সম্পন্ন হওয়া নিশ্চিত করে। যারা অর্থাৎ যে ব্যক্তি বা দল প্রকল্পটি করছে তাদের পূর্বেই কাজের সময় ঠিক করে নিতে হয়।

 

প্রকল্প ব্যবস্থাপনার ক্ষেত্রে সব স্টেকহোল্ডারদের সকল প্রকল্প পরিকল্পনা জানানোর দরকার নাই কারণ কিছু স্টেকহোল্ডার সরাসরি প্রকল্পের বিরুদ্ধাচরণ করতে পারে।

 

যদি কাউকে প্রকল্প ব্যবস্থাপনার দায়িত্ব দেয়া হয় কিন্তু তার তেমন কোন পূর্ব অভিজ্ঞতা নেই প্রকল্প চালানোর, তাহলে সে প্রকল্প পরিচালনার উপর পূর্ববর্তী ঘটনা ইত্যাদির ইতিহাস জেনেও অনেক কিছু শিখতে পারে।

 

প্রকল্পের ব্যয়ের সিংহভাগ খরচ করা হয় প্রকল্পের পরিকল্পনা বাস্তবায়নের ক্ষেত্রে। প্রকল্পটি নিষ্ঠার সাথে সম্পন্ন হওয়া প্রাথমিক ভাবে প্রকল্প ব্যবস্থাপকের উপর নির্ভর করে। এভাবেই প্রকল্প ব্যবস্থাপনার কাজ এগিয়ে যায়।

Microsoft Project and Project Management

Microsoft Project ও প্রকল্প ব্যবস্থাপনাঃ
রিদওয়ান বিন শামীম

Microsoft Project এর আওতায় প্রকল্প তৈরি করা যায়। সেই প্রকল্পের আওতায় আবার বিভিন্ন কাজ বা টাস্ক করা যায়। এরকম প্রতিটা টাস্কের জন্য সাধারণত নাম, সময়, শুরুর সময়, শেষ হওয়ার সম্ভাব্য সময় , ধারা ইত্যাদি নির্দিষ্ট করে দেয়া যায়। এ ধরণের কাজে পূর্বের অভিজ্ঞতা সম্পন্ন লোকদের কাজে লাগানো যেতে পারে।

 

 

টাস্ক গুলোর মধ্যে রিলেশন বুঝাতে SF (Start-Finish), FS(Finish-Start), SS, FF ইত্যাদি অনেক টার্ম ব্যবহার করা হয়। টাস্ক সম্পন্ন করার পর সেগুলোকে অনেক ধরণের ফরমেটে আমরা পেতে পারিঃ গান্ট চার্ট, ট্র্যাকিং গান্ট চার্ট, নেটওয়ার্ক ডায়াগ্রাম ইত্যাদি। এদের মধ্য থেকে অনেক সময় অনেক জটিল পদ্ধতিও বেছে নিতে হয়।প্রতিটি টাস্কের জন্য আলাদা আলাদা ভাবে খরচ ও রিসোর্স বেছে নেয়াও যায়। এছাড়াও প্রকল্পের অর্থনৈতিক লাভ ও উন্নতিও পর্যবেক্ষণ করা যায়। প্রকল্পের অগ্রগতির উপর রিপোর্টও লিখা যায়। এভাবে অর্থনৈতিক অগ্রগতি বিশ্লেষণ করা যায়। মাইলস্টোন বা জিরো ডিওরেশনের টাস্কও থাকে যা শুরু থেকে সময় গননা করা হয়, কোন প্রকল্পের বিচ্ছিন্ন অংশ হিসেবে ধরা হয়।

 

Microsoft Project এর আওতায় ওয়ার্ক ব্রেকডাউন কাঠামো (Work Breakdown Structure :WBS), এড অন প্রোডাক্ট Add-on product (WBS Chart Pro) ইত্যাদি ফরম্যাট তৈরি করা যায় ও দেখা যায় মাইক্রোসফট প্রোজেক্ট ফাইলের আন্ডারে। অথবা WBS code ব্যবহার করেও এসমস্ত সুবিধা পাওয়া যায়। অনেক গুলো প্রজেক্টের কাজ গুছিয়ে রাখার জন্য Microsoft Project Server এর সাহায্য নেয়া যায়। কাজের সুবিধার জন্য আমরা ম্যাক্রোর সহায়তাও নিতে পারি। আমরা কাষ্টোমাইজ করার জন্য VBA এবং Active Scripting এর সাহায্য নিতে পারি। মাইক্রোসফটের প্রকল্পের জন্য প্রকল্পের প্ল্যানকে Microsoft power point বা Microsoft word ইত্যাদিতে রূপান্তরিত করে প্রেজেন্টেশন তৈরি করা সম্ভব। প্রকল্প ব্যবস্থাপনার ক্ষেত্রে শিডিউল, বাজেট, উপাত্ত ব্যবস্থাপনা ,অগ্রগতি লক্ষ্য রাখা ও প্রতিবেদন তৈরি করা ইত্যাদিও জরুরী।

 

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

 

প্রোজেক্ট ২০০৭ নতুন প্রকল্প, যাতে অনেক নতুন চার্ট, ক্যালেন্ডার, টাস্ক ড্রাইভার, শেয়ারপয়েন্ট সার্ভিস ও আরও অনেক সুবিধা যোগ করা হয়েছে।