मंगलवार, 22 सितंबर 2009

आइये शुरू करें

इस ब्लाग पर हम यह मानकर चल रहे हैं कि आपको सामान्य HTML,CSS तथा जावास्क्रिप्ट का ज्ञान है. फ़िर भी इन बुनियादी चीजों के बारे में संक्षेप में बताना मैं जरूरी समझता हूं.

Computer Language कई प्रकार की होती हैं जैसे कि Programming Language, Query Language, Markup Language आदि.

  1. इंटरनेट पर जो भी वेब पेज आप देखते हैं वो सभी HTML यानि कि Hypertext Markup Language पर लिखे जाते हैं. HTML एक Markup Language है. यानि कि आप इसमें वैरिएबल जैसा कुछ नही बना सकते हैं.
  2. CSS एक Style Sheet Language है जिसका प्रयोग मार्कअप लैंग्वेज के रूप रंग को निश्चित करना होता है.
  3. Javascript एक Client Side Scripting Language है. जावास्क्रिप्ट वह भाषा है जिसके द्वारा आपका वेब पेज “डायनेमिक” बन जाता है.
  • इस पेज को देखिये: http://script.aculo.us/ खुलते साथ ही यह एनिमेट होता है.
  • आपने इंटरनेट की विभिन्न साइटों में ड्राप डाउन मीनू, सर्च सुझाव आदि तो देखे ही होंगे.
  • आपने देखा होगा कि किस प्रकार किसी फ़ार्म को भरते समय की हुई गलतियों को वेब पेज तुरंत बता देता है.

यह सब जावास्क्रिप्ट से होता है. स्टैटिक या स्थैतिक का अर्थ होता है रुका हुआ और डायनेमिक या गतिज का अर्थ होता है लगातार परिवर्तनशील.

जावास्क्रिप्ट से आप क्लाइंट साइड डायनेमिक पेज बना सकते हैं. लेकिन अब ये क्लाइंट क्या बला है?

इंटरनेट की क्लाइंट-सर्वर पर आधारित संरचना

क्लाइंट सर्वर आधारित संरचना में कम से कम दो मशीनों या यूं कहें दो कम्प्यूटरों का होना आवश्यक है. इनमें से एक क्लाइंट का कार्य करता है और दूसरा सर्वर का. क्लाइंट का कार्य होता है सर्वर को अनुरोध भेजना और सर्वर का कार्य होता है उस अनुरोध के मुताबिक क्लाइंट को जवाब या परिणाम भेजना.

इंटरनेट में जब आप किसी साइट को खोलते हैं मसलन http://www.google.com/ तब आप अपने ब्राउजर (जैसे फ़ायर फ़ाक्स, ओपेरा, इंटरनेट एक्सप्लोरर आदि) से गूगल के सर्वर को पेज खोलने के लिये अनुरोध भेजते हैं. यहां पर आपका कम्प्यूटर क्लाइंट का कार्य करता है. आपके अनुरोध के जवाब में गूगल का सर्वर आपको HTML,CSS,Javascript में बना हुआ कोड भेजता है जिसे आपका ब्राउजर पढ़ सकता है. और इस प्रकार आपको गूगल का पेज दिखाई दे जाता है.

blog diagrams

जावास्क्रिप्ट क्लाइंट पर चलने वाली लैंग्वेज है यानि कि ब्राउजर में. यह आपके html,css में बदलाव लाने में सक्षम है पर यह बदलाव आपके ब्राउजर में होता है. अब आगे बात करते हैं सर्वर साइड लैंग्वेज की.

Server Side Languages

जैसे कि मैंने बताया कि जावास्क्रिप्ट पेज में जो भी बदलाव करती है वह क्लाइंट पर होता है. जबकि सर्वर साइड लैंग्वेज जैसे कि php,asp,asp.net,jsp,cold fusion आदि जो भी पेज में बदलाव करती हैं वो सर्वर में ही हो जाता है. सर्वर साइड लैंग्वेजों को रन होने के लिये सर्वर साफ़्टवेयर की आवश्यकता होती है वहीं क्लाइंट साइड स्क्रिप्टों को रन होने के लिये केवल एक ब्राउजर चाहिये होता है.

यानि कि सर्वर साइड लैंग्वेजेज़ से ब्राउजर को जो भी HTML के रूप में कोड प्राप्त होता है वह सर्वर से ही हर बार बदला जा सकता है.

सर्वर साइड लैंग्वेजों के अपने फ़ायदे हैं जैसे कि…

  • आपका लिखा प्रोग्राम कोई देख नही सकता है. जो कुछ दिखेगा वह केवल html,css,js का मिश्रण होगा.
  • आप अपने पेज की सामग्री को डाटाबेस में रख सकते हैं फ़िर सर्वर साइड प्रोग्रामिंग के जरिये उसे प्राप्त करके पेज में दिखा सकते हैं. (यह करीब करीब कर वेब एप्लिकेशन में होता है)

ये दोनो काम जावास्क्रिप्ट नही कर सकती है. पर जावास्क्रिप्ट जो कर सकती है वो सर्वर साइड लैंग्वेज नही कर सकती हैं. जैसे कि…

  • ब्राउजर में हल्के फ़ुल्के एनिमेशन बना देना
  • फ़ार्म वैलिडेशन (वैसे यह काम सर्वर साइड लैंग्वेज के द्वारा भी किया जा सकता है. पर जावास्क्रिप्ट से करना बेहतर रहेगा)
  • स्लाइडिंग मीनू, एजेक्स आदि के कार्य (एजेक्स में क्लाइंट साइड तथा सर्वर साइड दोनो ही तकनीकों की जरूरत पड़ती है.

ध्यान रहे: सर्वर साफ़्टवेयर जैसे IIS, Apache आदि Javascript को  पढ़/रन नही कर सकते हैं वहीं आपका ब्राउजर php,asp,asp.net,jsp आदि को पढ़/रन नही कर सकता है.

प्रमुख सर्वर साइड भाषायें हैं:

  • PHP (Hypertext Preprocessor)
  • ASP (Active Server Pages)
  • ASP.net (Active Server Pages Dot Net)
  • JSP (Java Server Pages)
  • Cold Fusion
  • Perl
  • Python

इनमें से सबसे अधिक PHP को प्रयोग में लाया जाता है. PHP सीखना आसान है, यह मुफ़्त है और यह मुक्त है.

हो सकता है कि आपको ऊपर की कुछ चीजें समझ में ना आईं हो.  पर चिंता मत कीजिये धीरे धीरे सब समझ आ जायेगा. मुझे “सर्वर क्या होता है” समझने में छ: माह लगे थे.

13 टिप्‍पणियां:

  1. सर जी,
    आप की क्लास में भरती होने आया हूँ। कर लेंगे ना?
    वैसे भी पहला स्टूडेंट हूँ।

    क्लास में घुसने के पहले वर्ड वेरीफिकेशन का बैरियर, सर जी इसे तो हटा ही दीजिए।

    जवाब देंहटाएं
  2. दिनेश जी के बाद में दूसरा छात्र आपकी क्लास में |
    आपके इस चिट्ठे का गर्म जोशी से स्वागत है | अभी पोस्ट नहीं पढ़ी है सिर्फ चिटठा देखा है पोस्ट शाम को पढ़कर टिप्पणी करेंगे |

    जवाब देंहटाएं
  3. अब जाकर आपकी पोस्ट पढ़ी है बहुत बढ़िया जानकारी दी है आपने ! इसे जारी रखे ! हिंदी भाषा में तकनीकी जानकारियां इन्टरनेट पर बहुत कम है अतः आपका यह प्रयास मील का पत्थर साबित होगा |

    जवाब देंहटाएं
  4. एक अच्छा प्रयास

    शुभकामनाएँ

    बी एस पाबला

    जवाब देंहटाएं
  5. दिनेश जी और रतन जी के बाद तीसरा चेला बनने का सुख मुझे ही मिलना चाहिए। गुरुत्व चाहिए आपका। आपका लेखन बेहतरीन है। सरल भाषा में समझाया है। आपको हर रोज पढऩा पसंद करूंगा।

    जवाब देंहटाएं

  6. कितने चेलों का एक बैच है, जी ?
    अगर सीट ख़ाली न हो तो अपने मैनेज़मेन्ट कोटे से ही सही, मुझे शामिल किया जाय ।
    मैं समझता हूँ कि एच.टी.एम.एल. में कई व्यक्तिपरक सुविधा गूगल स्वयँ ही दे देता है, और अब उसे जावास्कइप्ट से लैस भी कर रहा है ।
    परेशानी तो वर्डप्रेस या होस्टेड साइट में होती है, मैं आज तक अपने वर्डप्रेस चिट्ठों पर मनचाहा टेम्प्लेट न डाल सका । साथ ही इसका जावास्कइप्ट और एच.टी.एम.एल. को नकार देना और भी अखरता है ।
    इसलिये आग्रह है कि, शुरुआत PHP से होनी चाहिये, आसान होगी आपके लिये, जी ।
    मुझे तो इसने रुलाया ही है ।

    जवाब देंहटाएं
  7. nira buddhu par sikhane ke liye lalayit aata kuch nahi par karana chahata hu. pichhali bainch par baitha student aage ke bainch par baithana chahata hai taki bol saku "YES SIR"
    Aaj hi ubuntu 9.4 install kiya. Kripiya Aur saral bhasha me samjhaye mere kuch samajha me nahi aaya isliye kaha raha hu. Sikhanae ka ichhuk hu

    जवाब देंहटाएं
  8. आप सभी की टिप्पणियों को मैं पढ़ नही पाया था. नोटिफ़िकेशन ईमेल नही मिला. कुछ सेटिंग बदलनी पड़ेगी. आप लोगों की रुचि देखकर उत्साह और बढ़ गया है.

    जवाब देंहटाएं
  9. :) ब्लाग सूरु करने पर यही होता है :))))फिर बाद मे...

    जवाब देंहटाएं
  10. वहुत अच्‍छा है क्‍या मुझे अपना शिष्‍य वनायेंगे

    जवाब देंहटाएं
  11. में अपने ब्‍लोग को दिखने में आक्रसक केसे बना सकता हॅू

    जवाब देंहटाएं
  12. इस टिप्पणी को लेखक द्वारा हटा दिया गया है.

    जवाब देंहटाएं

इस ब्लाग में प्रकाशित सामग्री कापीराईट द्वारा सुरक्षित है. बिना अनुमति इसका किसी भी प्रकार से अन्यत्र प्रयोग/प्रकाशन मूल रूप में/बदल कर उपयोग नही किया जा सकता है.

हिंदी में तकनीकी लेखन को प्रोत्साहित करें

please donate अभी तक वेब डेवलपमेंट अथवा प्रोग्रामिंग आदि से संबंधित जानकारी पर अंग्रेजी का एकाधिकार रहा है. भारत में इतने आई टी गुरू होने के बावजूद भारतीय भाषाओं में इस विषय पर लेखन नगण्य है. इस ब्लाग के माध्यम से मैं हिन्दी भाषिओं तक वेब डेवलपमेंट का ज्ञान पहुंचाने की कोशिश कर रहा हूं. अत: आप सभी से अनुरोध है कि हिंदी में तकनीकी लेखन के लिये सहयोग करें
मैं वेबसाइटें भी बनाता हूं. यदि आपको बनवानी हो तो बताएं.

इस ब्लॉग में खोजें

फ़ॉलोअर