Saturday, 16 June 2018

JavaScript में var, let और const Keywords के बीच क्या अंतर है?

Js-variable-var-let-const

हमने JavaScript basic tutorial में var keyword का use करके variable create करने का तरीका बताया था लेकिन var के अलावा let और const keywords के जरिये भी वेरिएबल बनाये जा सकते हैं। लेकिन इन तीनो keywords से बनाये गये variables के बीच कुछ अंतर होता है, जिनके बारे में आज हम इस article में चर्चा करने वाले हैं।

JavaScript var vs let vs const


Var Keyword
Var का use करके variable बनाने का तरीका बहुत पुराना है और आजकल modern scripts में आपको यह देखने को कम ही मिलेगा हाँ यदि आप किसी पुराने programs को देखें तो वहां इसका उपयोग जरुर देखने को मिलेगा इस लिए आपको इसकी जानकारी भी होनी चाहिए।

Var का Scope:  किसी variable के scope का मतबल एक ऐसे area से है जहाँ उस वेरिएबल को access किया जा सकता है। 
  • var keyword से create किये गये variable का scope global भी हो सकता है और local भी 
  • Global scope का मतलब उस वेरिएबल को declare करने के बाद script में कहीं पर भी use किया जा सकता है।
  • Local variable का मतलब यह उस वेरिएबल को script के किसी particular area में ही उपयोग किया जा सकता है।
  • var keyword से यदि किसी function के बाहर variable को declare किया जाए तो वह global variable होगा, वहीँ यदि किसी function के अंदर वेरिएबल बनाया जाय तो उसका scope केवल उसी function के अंदर ही होगा और वह एक local variable कहलायेगा।
  • var variable को script में एक से अधिक बार re-declare किया जा सकता है और उसकी value को बार-बार update में कर सकते हैं।
इन सारे points को समझने के लिए आप नीचे दिये गये examples को देखें:

var im_global = "Hello everyone";
function sayhi(){
var im_local = "Hi";
}
इस उदाहरण में हमने var keyword का use करके im_global और im_local नाम के दो variables create किया है।

im_global को function के बाहर declare किया है इसलिए यह global variable है जबकि im_local को function के अंदर declare किया गया है जिसका scope उस function के अंदर ही है और इसे function के बाहर use नही किया जा सकता इसलिए यह एक local variable है।

यदि हम im_local को function के बाहर access करें तो क्या होगा?
var im_global = "Hello everyone";
function sayhi(){
var im_local = "Hi";
}
alert(im_local);  // Error: im_local is undefined
Local variable को उसके scope से बाहर access नही किया जा सकता, ऐसा करने पर error आएगा।

Var variable को re-declare भी किया जा सकता है। जैसे:
var website = "google.com";
var website = "webinhindi.com";
इसके अलावा इसे एक बार declare करके इसकी value को बार-बार update भी कर सकते हैं। जैसे:
var language = "English";
language = "Hindi";

Var की कमजोरी यह है की यदि किसी global variable को if statement block के अंदर re-declare करके value assign किया जाता है तो global variable की value भी update हो जाती है। 

इसका उदाहरण देखें:
var value=10;
if(true){
value=20;
}
alert(value); // 20
अब नीचे के उदाहरण में देखें यदि variable को if block के अंदर declare किया जाय तो वह उस block से बाहर भी visible होगा।
if(true){
var marks=30;
}
alert(marks); // 30
ठीक ऐसा ही loop के साथ भी होता है।
for (var i = 0; i < 10; i++){
 // ...
}
alert(i); // 10, i ki value loop se bahar bhi visible hai. yah global variable ban jata hai.

हालांकि यह कोई समस्या नही है लेकिन ऐसी स्थिति में आपको विशेष ध्यान रखना होगा की variable की value बिना गलती से override ना हो जाए।

Let Keyword Let भी var की तरह ही है लेकिन आजकल var की जगह let का use होता है क्योंकि var में जो कमियां थीं उन्हें let keyword में दूर किया गया है।
  • let के जरिये हम block scoped variable बना सकते हैं। यहाँ block का मतलब उस हिस्से से है जो की curly braces {} के अंदर होता है। block के अंदर let keyword से declare किया गया variable सिर्फ उसी block के अंदर ही available होगा।
  • let variable को update तो किया जा सकता है लेकिन var की तरह एक ही block में बार-बार re-declare नही किया जा सकता। हाँ हम same variable को अलग-अलग block में declare कर सकते हैं।
चलिए अब इन points को समझने के लिए कुछ examples देखते हैं:

if(true){
let marks = 60;
alert(marks); //output 60
}
alert(marks); // error: marks is not defined
इस उदाहरण में आप देख सकते हैं की हम if block के अंदर declare किये गये variable को block से बाहर access नही कर सकते जबकि var के साथ ऐसा किया जा सकता था।

हम variable को same block में update तो कर सकते हैं लेकिन re-declare नही कर सकते:
let marks = 50;
marks = 60;

लेकिन नीचे के उदाहरण में error आएगा क्योंकि हम यहाँ एक ही block में दो बार variable declare कर रहें हैं जो की let में allow नही है।
let time = 2;
let time = 3; // syntax error
लेकिन हम अलग-अलग scope में same name के variable को re-declare कर सकते हैं जैसे:
let quantity = 10;
if(true){
let quantity =11;
alert(quantity); // output 11
}
alert(quantity); // output 10
यहाँ पर हमने quantity नाम से दो variables declare किये हैं लेकिन फिर भी कोई error नही है क्योंकि इन दोनों के scope अलग-अलग हैं और इसी वजह से इन्हें अलग-अलग समझा जाता है भले ही इनके नाम एक जैसे क्यों न हों।

Const Keyword यदि किसी variable की value हमेशा constant रखनी है यानि की change नही करनी है तो ऐसी स्थिति में constant variable का use किया जाता है और ऐसे वेरिएबल को बनाने के लिए const keyword का उपयोग होता है।
  • Const variable में एक बार value assign करने के बाद दुबारा उसे update नही किया जा सकता।
  • इसे re-declare भी नही किया जा सकता।
  • Const variable को declare करते समय उसे initialize यानि value assign करना जरुरी है।
  • Let की तरह const variable भी block scoped होता है यानि जिस block अंदर declare किया गया हो उसी block में ही उसे access किया जा सकता है।
चलिए अब const variable के उदाहरण देखते हैं:

Const variable को update और re-declare नही कर सकते ऐसा करने से error आएगा जैसे:
const DOB = '22.05.1993';
DOB = '25.05.1992'; // error can't reassign the constant
इसे दोबारा declare भी नही किया जा सकता:
const ADMIN = 'Amit';
const ADMIN = 'Vinay'; // error can't re-declare the constant


उम्मीद है आपको JavaScript में var, let और const keywords के बीच क्या अंतर है और variable बनाते समय इनमे से कौन से keyword का कब और क्यों use करना चाहिए यह समझ आ गया होगा।

यदि आप कोई सवाल पूछना चाहते हैं  या सुझाव देना चाहते हैं तो नीचे comment box का जरुर उपयोग करें।

Friday, 8 June 2018

10 कारण आपको JavaScript क्यों सीखना चाहिए?

Javascript-kyo-seekhe

आज गूगल, फेसबुक, Youtube से लेकर दुनिया में जितनी भी websites हैं उनमे से लगभग 95% sites पर किसी न किसी रूप में Javascript का use हो रहा है। यदि आप कोई interactive website बनाना चाहते हैं तो आपको जावास्क्रिप्ट में कोडिंग जरूर आनी चाहिए। इसे सीखने के बाद आप सिर्फ वेबसाइट ही नही बल्कि Mobile apps, desktop applications, browser extensions जैसे कई सारी चीजें भी बना सकते हैं।

तो चलिए आज हम ऐसे 10 कारणों के बारे में बात करते हैं जिनकी वजह से Javascript सीखना आपके लिए काफी फायदेमंद हो सकता है:

JavaScript क्यों सीखें? 10 कारण 

1. सीखना आसान है आपके पास किसी programming language का पहले से कोई experience हो या न हो आप JavaScript आसानी से सीख सकते हैं। हाँ यदि आपने कभी C, C++ जैसे languages में coding की है तो जावास्क्रिप्ट सीखना आपके लिए बहुत ही आसान होगा क्योंकि इनमें code लिखने के तरीके और syntax काफी मिलते-जुलते हैं।

यदि आप JavaScript की basics सीख लेते हैं और इसके fundamentals को अच्छी तरह से समझ लेते हैं तो JavaScript में advanced level की programming कर पाना भी आपके लिए आसान हो जायेगा।

2. सबसे ज्यादा Popular Programming Language Stackoverflow के द्वारा 2018 में पूरी दुनिया के 100,000 developers के बीच किये गये survey के अनुसार most popular programming languages की list में Javascript सबसे ऊपर है।

Stackoverflow की बात करें तो यह programmers और developers की एक बहुत बड़ी community है जहाँ coding से related question answers किये जाते हैं। इस platform पर हर 3 seconds में JS से related एक question पूछे जाते हैं इससे पता चलता है की जावास्क्रिप्ट पर कितने लोग काम कर रहें हैं और यह कितना popular है।
top 10 programming languages


3. बिलकुल मुफ्त अगर आप जावास्क्रिप्ट में coding करना चाहते हैं तो आपको इसके लिए किसी भी प्रकार से पैसे खर्च करने की जरुरत नही है। इसके लिए किसी महंगे tool को खरीदने या किसी को पैसे देने की जरूरत नही है आप एक simple text editor में कोडिंग कर सकते हैं और web browser (जो की हर किसी के system में पहले से मौजूद होता है) से शुरुआत कर सकते हैं।

4. Web Browser ही काफी है किसी अन्य programming languages की तरह JS में किसी भी तरह का compiler install करने, software download करने या environment set करने की बिलकुल जरुरत नही है। यह एक interpreted language है, इसके लिए किसी विशेष editor की जरुरत नही है आप notepad में कोड लिखिए और सीधे browser में run कर दीजिये। सारे modern browsers JS support करते हैं।

5. Server-Side Programming भी कर सकते हैं शुरुआत में JS का use केवल front-end या client side programming के रूप में किया जाता था लेकिन अब Node.js जैसे frameworks के जरिये जावास्क्रिप्ट को एक server side scripting के रूप में भी उपयोग किया जा सकता है।

यहाँ पर client side scripting का मतलब ऐसे script या program से है जो की browser पर run होता है लेकिन server side scripting में इसके विपरीत यानी की हमारा program server पर execute होता है और उसके जो भी output होते हैं वे html page के रूप में browser पर दिखाई देते हैं।

6. Frameworks & Libraries की सुविधा जावास्क्रिप्ट की एक और अच्छी बात यह है की इसमें किसी भी काम को करने के लिए आपको पहले से बने हुए frameworks और libraries मिल जायेंगे और वो भी बिलकुल मुफ्त में जिनकी वजह से JS में काम करना और भी आसान हो जाता है।
JS Frameworks

7. Mobile Apps बनायें जैसा की आपको पता होगा एक Android app बनाने के लिए Java में प्रोग्राम लिखा जाता है, वहीं iOS app के लिए आपको Objective-C आनी चाहिए और Windows apps बनाने के लिए आपको .NET ज्ञान होना चाहिए।

लेकिन क्या आपको पता है Javascript से mobile apps भी बनाये जा सकते हैं और वो भी cross-platform यानि की ऐसे apps जो की Android, iOS और Windows सभी तरह के platforms पर चल सकते हैं।

इसके लिए आपको एक framework की जरुरत होगी जैसे Ionic, React Native, PhoneGap आदि जिसमें आप Javascript, HTML और CSS की coding करके cross-platform mobile apps तैयार कर सकते हैं।

8. Video Games भी बना सकते हैं जी हाँ! आप जावास्क्रिप्ट से video games भी बना सकते हैं। इसके लिए कई सारे frameworks हैं जैसे Pixi.js, Babylone.js, Phaser.js आदि  जिनके जरिये browser games develop किया जा सकता है जो की computer, mobile से लेकर tablets पर भी चलाये जा सकते हैं। इसके अलावा कुछ और भी game engines हैं जो की JS की कोडिंग के जरिये गेम बनाने की सुविधा प्रदान करते हैं।
JS Game

9. हर जगह जावास्क्रिप्ट Website का UI हो या server side script, desktop application बनाना हो या mobile apps यहाँ तक की smart tv जैसे devices को चलाने के लिए भी Javascript का use हो रहा है।

10. Jobs/ Career Opportunities ऊपर के points पढने के बाद आपको यह तो clear हो ही गया होगा की यदि Javascript सीख लिया जाय तो काम की कमी नही होगी क्योंकि इसका use लगभग हर जगह हो रहा है। आज के समय में बिना जावास्क्रिप्ट सीखे web development का काम करना बहुत मुश्किल है।

इसे सीखने के बाद आपके पास कई सारे career opportunities होंगे। छोट-बड़ी लगभग हर IT company में Javascript developer की demand होती है आप चाहें तो किसी company में job के लिए apply कर सकते हैं या घर बैठे freelancing भी कर सकते हैं।

लेकिन ध्यान रहे यदि आपको इस क्षेत्र में बेहतर career बनाना है तो Javascript के साथ कम से कम HTML, CSS और किसी एक framework का अच्छा knowledge रखना जरुरी है।

यदि आप Javascript, HTML, CSS और jQuery सीखना चाहते हैं तो निचे दिए गये कुछ tutorials आपको जरुर पढने चाहिए:
तो आज इन 10 कारणों को जानने के बाद आपको यह पता चल गया होगा की आज के समय में आपको Javascript क्यों सीखना चाहिए। उम्मीद है आपको यह जानकारियाँ पसंद आई होंगी। इस बारे में आप अपनी राय नीचे comment के जरिये जरूर रखें।

Wednesday, 30 May 2018

JavaScript Tutorial in Hindi - सिर्फ 20 मिनट में Basic जावास्क्रिप्ट सीखें हिंदी में

Javascript Tutorial in Hindi

Learn JavaScript in Hindi: कुछ दिनों पहले हमने एक article लिखा था जिसमे हमने आपको जावास्क्रिप्ट के बारे में बताया था की आखिर Javascript क्या है और इसके क्या उपयोग हैं। आज इस article में हम आपके लिए Javascript की basic tutorial लेकर आये हैं जिससे आप जावास्क्रिप्ट की basic fundamentals सीख सकते हैं।

Thursday, 10 May 2018

Raster और Vector Graphics क्या है? दोनों में क्या अंतर है? कब किसका use करें?

raster vs vector image in hindi
Digital graphics को हम दो categories में divide कर सकते हैं: raster और vector. अगर आप इन दोनों graphics को लेकर confusion में हैं तो आपको यह article जरूर पढना चाहिए क्योंकि आज हम इन्ही दोनो के बारे में बातें करने वाले हैं।

Advertisement

Tuesday, 20 March 2018

कौनसा Image Format use करें? JPEG, PNG, GIF, TIFF के बीच क्या अंतर है?

Image format in Hindi

Image के कई सारे formats होते हैं जिनमे से सबसे ज्यादा JPEG, PNG और GIF का उपयोग web pages में किया जाता है। सभी image format के अपने-अपने फायदे और नुकसान हैं इसके अलावा कुछ formats ऐसे भी हैं जो की किसी ख़ास काम के लिए बनायें गये हैं।

आपको यह जरूर पता होना चाहिए की कौन से काम के लिए आपको कौन सा इमेज फॉर्मेट उपयोग करना चाहिए और कौन से format के उपयोग से बचना चाहिए ताकि आपको optimum result मिल सके।

Image File Formats in Hindi

तो चलिए आज हम computer graphics के कुछ image formats के बारे में जानते हैं की आखिर उनमे क्या खूबियाँ और क्या खामियां हैं और उनका किस जगह use किया जाना चाहिए।

JPEG Format
jpeg example

JPEG का full form Joint Photographic Expert Group है, यह सबसे ज्यादा उपयोग होने वाला image format है। यह lossy compression का use करता है यानि की जब आप किसी image को JPEG format में save करते हैं तो यह उसमें से कुछ image information को ख़त्म कर देता है जिससे की image का size कम हो जाए।
  • JPEG में 24 bit color per pixel होते हैं और यह 16 million colors को support करता है।
  • Image को compress करके file size कम कर देता है।
  • Photography के लिए अधिकतर इसी format का use होता है और लगभग सभी digital cameras में इसका उपयोग होता है।
JPEG का कब Use करें?
  • Digital Photographs - Mobile, computer devices के लिए, online upload करने के लिए।
  • Printing के लिए - यदि आप high resolution में photo print करना चाहते हैं तो यह फॉर्मेट उपयोगी है।
JPEG का कब उपयोग न करें?
  • अगर आपको transparent image चाहिए तो इसके लिए JPEG सही नही है। आप इस format में transparent image नही बना सकते।
  • जिस इमेज में text हो, sharp edge वाले shapes हों उसके लिए JPEG use न करें क्योकिं compression के कारण text, color और edges blur हो सकते हैं।
  • Animated file चाहिए तो JPEG का use नही कर सकते।
GIF Format
GIF example

GIF का full form Graphics Interchange Format है। web image और ज्यादातर animated graphics के लिए इसका बहुत उपयोग किया जाता है। इसमें सिर्फ 256 colors होते हैं। कम कलर्स होने की वजह से file size बहुत कम हो जाता है।
  • GIF 8 bit format use करता है और सिर्फ 256 colors को support करता है।
  • GIF lossless होता इसलिए इसे बड़ी आसानी से customize किया जा सकता है।
GIF Image का कब उपयोग करें?
  • Simple images के लिए जिसमे ज्यादा colors न हों, GIF use कर सकते हैं।
  • Web animation, buttons, social media meme आदि के लिए बहुत उपयोगी है।
  • Transparent background चाहिए तब इसका use कर सकते हैं।
GIF का कब उपयोग न करें?
  • High quality photographs के लिए यह उपयुक्त नही है।
  • Gradient image design करने के लिए GIF use न करें क्योंकि इसके color limitation की वजह से image blur हो जायेगा।
  • Print design में इसका use नही कर सकते।
PNG Format
PNG Example

PNG का full form Portable Network Graphics है। इसे आप GIF का improved version भी समझ सकते हैं। इसे web को ध्यान में रख कर बनाया गया है। यह GIF जैसा ही है लेकिन PNG image में 16 millions colors हो सकते हैं।
  • GIF को replace करने के लिए PNG को बनाया गया था।
  • PNG file का size GIF के मुकाबले काफी कम होता है।
  • PNG 24 bit colors use कर सकता है।
  • इससे आप full transparent या alpha transparent image भी बना सकते हैं।
PNG का use कब करना चाहिए?
  • High-quality web graphics design करने के लिए PNG बहुत अच्छा है।
  • Smooth transparent design के लिए और alpha transparent जैसे drop shadow effect आदि के लिए PNG format उपयुक्त है।
  • Small size image के लिए।
PNG का use कब नही करना चाहिए?
  • Photographs के लिए इसका use नही करना चाहिए।
  • GIF की तरह PNG से animated graphic नही बना सकते।
  • आप printing के लिए design तैयार कर रहें हैं तो बेहतर है की आप JPEG use करें क्योंकि PNG format की image केवल screen के लिए सही होता है।
TIFF Format
TIFF example
TIFF का full form Tagged Image File Format है। इस format में image की quality बहुत ज्यादा होती है इसलिए इसका उपयोग desktop publishing और professional photography में किया जाता है।
  • TIFF image lossy या lossles दोनों हो सकता है।
  • Scanning और printing जैसे काम के लिए इसका ज्यादा उपयोग होता है।
  • JPEG, GIF की तरह इसमें भी image compress किया जा सकता है।
TIFF format का use कब होगा?
  • TIFF का use करें यदि आप high-quality graphics print करने जा रहें हैं, यदि lage size का image print करना है तो उसके लिए सबसे बढिया format है।
  • Scan किये document, photos की quality कम नही होने देना चाहते तो TIFF format में scan करें।
TIFF Format का उपयोग कब नही करना चाहिए?
  • Web graphic के लिए इसका use नही करना चाहिए यह printing के लिए बेहतर है।
  • High-quality online image के लिए इसका use न करें, इस format का file size बहुत बड़ा होता है, ज्यादा space लेता है और load होने में भी समय लेता है।
उम्मीद है आपको image formats की यह जानकारी अच्छी लगी होगी। यदि आप कुछ सवाल पूछना चाहते हैं या सुझाव देना चाहते हैं तो नीचे comment करके हमें जरूर बताएं।