സെർവർ വെബ് പ്രോഗ്രാമിംഗ്. ഒരു പ്രശ്നം പരിഹരിക്കുന്നതിനുള്ള ഒരു രീതി തിരഞ്ഞെടുക്കുന്നു. എനിക്ക് ഒരു ഫുൾ-സ്റ്റാക്ക് ഡെവലപ്പർ ആകണം

പ്രോഗ്രാമിംഗ് ലോകത്തേക്ക് പ്രവേശിക്കാൻ ആഗ്രഹിക്കുന്നവർക്ക് ഏറ്റവും വേദനാജനകമായ തിരഞ്ഞെടുപ്പ് അവരുടെ മേഖല തിരഞ്ഞെടുക്കലാണ്. ഇത് വേദനാജനകമാണ്, കാരണം നിങ്ങൾ ഒരു ദിവസം ഉണർന്ന് ഇത് നിങ്ങളുടെ വിളിയല്ലെന്നും തുടരാൻ മടിയല്ലെന്നും മനസ്സിലാക്കിയാൽ, നിങ്ങൾക്ക് മാസങ്ങളും വർഷങ്ങളും പരിശീലനവും പരിശീലനവും നഷ്ടപ്പെടും.

നിർദ്ദിഷ്ട ഭാഷകളിൽ ഇത് വളരെ എളുപ്പമാണ് - സാധാരണയായി അടിസ്ഥാന അറിവ് മൂല്യനിർണ്ണയത്തിന് ഇതിനകം മതിയാകും, അതിനാൽ നിങ്ങൾക്ക് വേഗത്തിലും സമയം നഷ്ടപ്പെടാതെയും പ്രവർത്തനത്തിന്റെ ദിശ മാറ്റാൻ കഴിയും. എന്നിരുന്നാലും, ഭാഷയുടെ തിരഞ്ഞെടുപ്പാണ് യുവ മനസ്സുകളെ മയക്കത്തിലേക്ക് നയിക്കുന്നത്: എല്ലാത്തിനുമുപരി, പ്രോഗ്രാമിംഗിന്റെ പൊതുവായ മേഖലകളേക്കാൾ കൂടുതൽ അവയിൽ കൂടുതലുണ്ട്, പക്ഷേ അവർ എന്തെങ്കിലും ഏറ്റെടുക്കേണ്ടതുണ്ട്.

ശാന്തമാകൂ, ഇപ്പോൾ കൂട്ടായ മനസ്സ് നിങ്ങൾക്കായി ഒരു തിരഞ്ഞെടുപ്പ് നടത്തും.

ആദ്യ ഭാഗത്തിൽ നമ്മൾ വെബ് ഭാഷകളെ കുറിച്ച് സംസാരിക്കും. ഏത് ഭാഷാ ശൈലിയാണ് നിങ്ങൾ അറിയേണ്ടത്, പഠന ക്രമം എന്താണ്? ഇതിനെക്കുറിച്ച് കൂടുതൽ പിന്നീട്.

ഫ്രണ്ട്‌ലൈൻ, റിയർ, അവ്യക്തമായ തിരഞ്ഞെടുപ്പ്

ആദ്യം തിരഞ്ഞെടുക്കേണ്ടത് ഉത്തരവാദിത്ത മേഖലയാണ്.

ഫ്രണ്ട് എൻഡ് ഡെവലപ്പർമാർ
ചിലപ്പോൾ അവരെ വെബ് ഡിസൈനർമാർ എന്നും വിളിക്കാറുണ്ട്, എന്നാൽ ഇത് തെറ്റാണ്. ഒരു ഫ്രണ്ട്-എൻഡ് ഡെവലപ്പറുടെ ചുമതല ഒരു ഇന്റർഫേസ് സൃഷ്ടിക്കുക എന്നതാണ്; വെബ് പേജ് വേഗത്തിൽ ലോഡുചെയ്യുന്നുവെന്നും വേഗത കുറയുന്നില്ലെന്നും അതിലെ കോഡ് ശരിയായി പ്രവർത്തിക്കുന്നുവെന്നും ഉറപ്പാക്കാനുള്ള ഉത്തരവാദിത്തം അവനാണ്.

ബാക്കെൻഡ് ഡെവലപ്പർമാർ
മറഞ്ഞിരിക്കുന്ന പ്രവർത്തനത്തിനും ഡാറ്റ പ്രോസസ്സിംഗിനും ഉത്തരവാദിത്തമുള്ള ആളുകൾ. സെർവർ കോഡ് എഴുതുക എന്നതാണ് അവരുടെ ജോലി.

ഫുൾ-സ്റ്റാക്ക് സ്പെഷ്യലിസ്റ്റുകൾ
ഉപഭോക്താവിന്റെ എല്ലാ ആഗ്രഹങ്ങളും ഒറ്റയടിക്ക് നിറവേറ്റാൻ കഴിയുന്നതിനാൽ അവയ്ക്ക് ഏറ്റവും വലിയ ഡിമാൻഡാണ്.

തീർച്ചയായും, എല്ലാം കണ്ടെത്തുന്നതിനുള്ള ചുമതല സ്വയം സജ്ജമാക്കുക എന്നതാണ് ഏറ്റവും എളുപ്പമുള്ള മാർഗം, എന്നാൽ ഇത് പ്രാരംഭ ഘട്ടത്തിൽ നിങ്ങളുടെ ശ്രദ്ധ തിരിക്കുകയുള്ളൂ, പിന്നീടുള്ള ഘട്ടങ്ങളിൽ എല്ലാ പ്രക്രിയകളെക്കുറിച്ചും ഉപരിപ്ലവമായ ഒരു പഠനമെങ്കിലും ആവശ്യമാണെന്ന് നിങ്ങൾ ഇതിനകം പഠിക്കും. അതിനാൽ, നമുക്ക് ക്രമത്തിൽ പോയി ഫ്രണ്ട് എൻഡിൽ നിന്ന് ആരംഭിക്കാം.

മുഖം വിൽക്കണം

ഒരു ഫ്രണ്ട്-എൻഡ് ഡെവലപ്പർ ആകാൻ ആഗ്രഹിക്കുന്ന ഒരാൾ ചെയ്യാൻ പാടില്ലാത്ത ഏറ്റവും പ്രധാനപ്പെട്ട കാര്യം ഒരു സ്പെഷ്യലിസ്റ്റിന്റെ ആവശ്യകതകളുടെ ഏറ്റവും കുറഞ്ഞ ലിസ്റ്റ് നോക്കുക എന്നതാണ്. ഈ സാഹചര്യത്തിൽ, “ഫ്രണ്ടെൻഡ് ഡെവലപ്പർമാർ എല്ലാറ്റിനും മുകളിലായിരിക്കണം” എന്ന ലേഖനം പോലെയുള്ള ലേഖനങ്ങളിൽ ഇടറിവീഴാനുള്ള സാധ്യത വളരെ കൂടുതലാണ്. അവിടെ എഴുതിയിരിക്കുന്നതെല്ലാം പരമമായ സത്യമാണ്, എന്നാൽ ചെറിയ കാര്യങ്ങളിൽ നിന്ന് ആരംഭിച്ച് നിങ്ങൾ ഈ ഘട്ടത്തിലെത്തേണ്ടതുണ്ട്, കൂടാതെ ചെറിയ കാര്യങ്ങളാണ് മുൻഭാഗത്തിന്റെ 3 പ്രധാന തൂണുകൾ: HTML, CSS, JavaScript എന്നിവ. കൂടുതൽ പരിശീലനത്തിനുള്ള അടിസ്ഥാനം നിങ്ങൾക്ക് ഇവിടെ ലഭിക്കും.

കുറച്ച് വർഷങ്ങൾക്ക് മുമ്പ്, നിരവധി സ്മാർട്ട് ബുക്കുകളുടെ ഫോർമാറ്റിൽ HTML, CSS എന്നിവയും jQuery ലെവലിൽ JS ഉം പഠിച്ച ഒരാൾക്ക് ഒരു ജൂനിയർ സ്ഥാനം നേടാൻ ഗൗരവമായി ആഗ്രഹിക്കാനാകും. എന്നിരുന്നാലും, ഇന്ന് കാലം മാറി, ആവശ്യകതകൾ വളരെയധികം വർദ്ധിച്ചു. എന്നിരുന്നാലും, HTML, CSS എന്നിവയെക്കുറിച്ചുള്ള അറിവ് ഇപ്പോഴും രണ്ട് നല്ല പുസ്തകങ്ങളിൽ സംഗ്രഹിക്കാം:

  • "HTML5 പഠിക്കുന്നു" ബ്രൂസ് ലോസൺ, റെമി ഷാർപ്പ്,
  • "സിഎസ്എസ്. പ്രോഗ്രാമിംഗ് പാചകക്കുറിപ്പുകൾ »ക്രിസ്റ്റഫർ ഷ്മിറ്റ്.

നിങ്ങൾ ജാവാസ്ക്രിപ്റ്റിൽ ധാരാളം സമയം ചെലവഴിക്കേണ്ടിവരും. ഇവിടെ സിദ്ധാന്തം പഠിക്കാൻ ഇത് മതിയാകില്ല, ഉദാഹരണത്തിന്, "ജാവാസ്ക്രിപ്റ്റ്: ശക്തികൾ" എന്ന പുസ്തകത്തിൽ നിന്ന്. സൂചിപ്പിച്ച jQuery ഉപയോഗിക്കുന്നത് ഉൾപ്പെടെ, നിങ്ങളുടെ കൈകളെ പരിശീലിപ്പിക്കുന്നതിനും നിങ്ങളുടെ തലച്ചോറിനെ പ്രായോഗികമായി പരിശീലിപ്പിക്കുന്നതിനും നിരവധി മാസങ്ങൾ എടുക്കും.

സൈദ്ധാന്തികവും പ്രായോഗികവുമായ അറിവിന് പുറമേ, ഒരു ഫ്രണ്ട്-എൻഡ് സ്പെഷ്യലിസ്റ്റിന് ഏറ്റവും പുതിയ ഇന്റർനെറ്റ് ട്രെൻഡുകളെക്കുറിച്ച് നല്ല അറിവ് ഉണ്ടായിരിക്കുകയും അവ പ്രൊഫഷണലായി പ്രയോഗിക്കാൻ കഴിയുകയും വേണം. എല്ലാത്തിനുമുപരി, ഇത് കൃത്യമായി ഉത്തരവാദിത്തത്തിന്റെ മേഖലയാണ്, അതനുസരിച്ച് ഭൂരിഭാഗം ഉപഭോക്താക്കളും ഡെലിവറി സമയത്ത് മുഴുവൻ പ്രോജക്റ്റും വിലയിരുത്തും.

പ്രോസസ്സ് ചെയ്യുക, സ്ക്രൂ ചെയ്യുക, സൃഷ്ടിക്കുക

ഏതൊരു ബാക്ക് എൻഡ് ഡെവലപ്പറുടെയും അടിസ്ഥാന ഭാഷ PHP ആണ്. ഇത് ഒരു നിശ്ചിത അടിസ്ഥാനമാണ്, അത് പൂർണ്ണമായും അറിയാനും അതുപോലെ തന്നെ പ്രധാന ഉപകരണമാക്കാനും ആവശ്യമില്ല, എന്നാൽ നിങ്ങൾ ഇത് അടിസ്ഥാന തലത്തിൽ മനസ്സിലാക്കണം. ഇത് ചെയ്യുന്നതിന്, നിങ്ങൾക്ക് "PHP: ശരിയായ വഴി" എന്ന പുസ്തകം ശ്രദ്ധാപൂർവ്വം പഠിക്കാൻ കഴിയും.

നിലവിലെ ഭാഷകളെ സംബന്ധിച്ചിടത്തോളം, നിങ്ങൾ മിക്കവാറും റൂബി, പൈത്തൺ എന്നിവയിൽ നിന്ന് തിരഞ്ഞെടുക്കേണ്ടിവരും, ഈ തിരഞ്ഞെടുപ്പ് പൂർണ്ണമായും അഭിരുചിയുടെ കാര്യമാണ്. ഇവിടെയും, തർക്കങ്ങൾ ഇടയ്ക്കിടെ പൊട്ടിപ്പുറപ്പെടുന്നില്ല, പക്ഷേ പഠനത്തിന്റെ സൗകര്യത്തെക്കുറിച്ചുള്ള തർക്കത്തിൽ പോലും, വ്യക്തമായ വിജയിയെ കണ്ടെത്തുന്നത് അസാധ്യമാണ്. പൈത്തണിന്, റൂബിക്ക് വേണ്ടി "പൈത്തൺ പഠിക്കുക" എന്ന ലളിതമായ തലക്കെട്ടുള്ള ഒരു പുസ്തകം വായിക്കുന്നത് ഉപയോഗപ്രദമാകും - "റെയിൽസ് 4. വെബ് ആപ്ലിക്കേഷനുകളുടെ ചടുലമായ വികസനം".

അറിഞ്ഞിരിക്കേണ്ട മറ്റൊരു ഭാഷ ജാവാസ്ക്രിപ്റ്റ് അതിന്റെ ഡെറിവേറ്റീവുകളായ jQuery, Ajax എന്നിവയാണ്. ഈ സാഹചര്യത്തിൽ, ബാക്ക്-എൻഡ് വികസനമാണ് നിങ്ങൾക്ക് താൽപ്പര്യമുള്ളത്, അതിനാൽ പൊതു ഭാഷാ പഠനത്തിനായി സമയം ചെലവഴിക്കുന്നതിൽ അർത്ഥമില്ല, എന്നാൽ ആന്റൺ ഷെവ്ചുക്കിന്റെ ബ്ലോഗ് പോലുള്ള ഉറവിടങ്ങൾ സന്ദർശിക്കുന്നത് വളരെ ഉപയോഗപ്രദമാകും.

തീർച്ചയായും നിങ്ങൾക്ക് ഡാറ്റാബേസ് മേഖലയിൽ അറിവ് ആവശ്യമാണ്. കുറഞ്ഞത്, ഇതിനർത്ഥം SQL പഠിക്കുക, പരമാവധി, ജനപ്രിയ ഡാറ്റാബേസുകളിൽ പ്രവർത്തിച്ച അനുഭവം.

എല്ലാവർക്കും ഒന്ന്

വെബ് ഡെവലപ്പർ തൊഴിലിന്റെ സത്യം, പ്രായോഗികമായി "സ്ഫെറിക്കൽ" സ്പെഷ്യലിസ്റ്റുകൾ എന്ന് വിളിക്കപ്പെടുന്നവരില്ല എന്നതാണ്, സാധാരണ ഉപഭോക്താക്കൾക്ക് എല്ലായ്പ്പോഴും ഈ ഡിവിഷനുകൾ മനസ്സിലാകുന്നില്ല, അതിനാൽ ഒരു രൂപത്തിലല്ലെങ്കിൽ മറ്റൊന്നിൽ നിങ്ങൾ വേഗത്തിൽ പൂർണ്ണ സ്റ്റാക്കിലേക്ക് വരേണ്ടിവരും. . അതനുസരിച്ച്, മുമ്പത്തെ 2 ഭാഗങ്ങൾ വീണ്ടും വായിക്കുക, വീണ്ടും സന്ദർശിച്ച് സോഫ്റ്റ്വെയർ സയൻസിന്റെ കരിങ്കല്ലിൽ നക്കിത്തുടങ്ങുക.

ഭാഷകളെ കുറിച്ചല്ല അറിവ്

ഭാഷകൾക്ക് പുറമേ, അവയ്‌ക്കൊപ്പം വരുന്ന എല്ലാ പ്രത്യേക ആഡ്-ഓണുകളും പഠിക്കേണ്ടത് ആവശ്യമാണ്. JavaScript (AngularJS, Knockout, Backbone), CSS (Bootstrap, Foundation) എന്നിവയ്ക്ക് ഇത് പ്രത്യേകിച്ചും സത്യമാണ്. കൂടാതെ, പതിപ്പ് നിയന്ത്രണ സംവിധാനങ്ങളായ Git, SVN എന്നിവയിൽ നിങ്ങൾ സുഖം പ്രാപിക്കേണ്ടതുണ്ട്.

വെബ് വികസനത്തിൽ മികച്ച വിജയം നേടുന്നതിന്, ക്ഷമയോടെയിരിക്കുക, നിങ്ങളുടെ ലക്ഷ്യത്തിലേക്ക് പടിപടിയായി നീങ്ങുക, നിങ്ങൾക്ക് ഏറ്റവും താൽപ്പര്യമുണർത്തുന്ന പാത തിരഞ്ഞെടുക്കുക. മുകളിൽ വിവരിച്ചതിൽ നിന്നോ മറ്റേതെങ്കിലും ലേഖനത്തിൽ നിന്നോ ഇത് വ്യത്യസ്തമാണോ എന്നത് പ്രശ്നമല്ല. നിങ്ങൾ ചെയ്യുന്നതിനെ സ്നേഹിക്കുക, അതിനായി സമയം ചെലവഴിക്കുക, നിങ്ങളുടെ ആത്മാവിനെ അതിൽ ഉൾപ്പെടുത്തുക, വിജയം നിങ്ങളെ കാത്തിരിക്കില്ല.

എന്ത്? മറ്റെന്താണ് സെർവർ പ്രോഗ്രാമിംഗ്? ഇത് എന്ത് തരത്തിലുള്ള കുഴപ്പമാണ്? പിന്നെ എന്തിനാണ് നമുക്ക് അത് വേണ്ടത്?

ഡ്രീംവീവർ പരിതസ്ഥിതിയിൽ വെബ് പേജുകൾ എങ്ങനെ സൃഷ്ടിക്കാമെന്ന് ഞങ്ങൾ പഠിച്ചതായി തോന്നുന്നു. ഇത് ഉപയോഗിച്ച് മുഴുവൻ വെബ്‌സൈറ്റുകളും എങ്ങനെ സൃഷ്ടിക്കാമെന്നും ഒരു വെബ് സെർവറിൽ പ്രസിദ്ധീകരിക്കാമെന്നും ഞങ്ങൾ പഠിച്ചു. ഞങ്ങൾ രണ്ട് തരം പേജ് ഡിസൈൻ പഠിച്ചു: ഫ്രെയിം അടിസ്ഥാനമാക്കിയുള്ളത്, ഫ്രെയിമുകളുടെ സെറ്റുകളെ അടിസ്ഥാനമാക്കി സൈറ്റുകൾ നിർമ്മിക്കുമ്പോൾ, ടാബ്ലർ, പേജ് ഉള്ളടക്കം വലുതും സങ്കീർണ്ണവുമായ പട്ടികയിൽ സ്ഥാപിക്കുമ്പോൾ. സ്റ്റൈൽ ഷീറ്റുകൾ, മെറ്റാ ടാഗുകൾ, സെർവർ-സൈഡ് നിർദ്ദേശങ്ങൾ എന്നിവയെക്കുറിച്ച് ഞങ്ങൾ പഠിച്ചു. അവസാനമായി, ഞങ്ങളുടെ സ്റ്റാറ്റിക് പേജുകളിലേക്ക് "ജീവിതം" ചേർക്കാൻ അനുവദിക്കുന്ന വെബ് പ്രോഗ്രാമിംഗിനെയും വെബ് സ്ക്രിപ്റ്റുകളെയും കുറിച്ച് ഞങ്ങൾ പഠിച്ചു. സന്തോഷത്തിന് മറ്റെന്താണ് വേണ്ടത്?

അതെ, മാന്യമായ വെബ്‌സൈറ്റുകൾ സൃഷ്‌ടിക്കാൻ ഞങ്ങൾ നേരത്തെ പഠിച്ച കാര്യങ്ങൾ മതിയാകും. പല വെബ് ഡിസൈനർമാരും അവിടെ നിർത്തുന്നു. പക്ഷെ നമുക്ക് കൂടുതൽ വേണം, അല്ലേ?

അതിനാൽ നമുക്ക് അടുത്ത ഘട്ടം എടുക്കാം - സെർവറിലെ ഫയലുകളിൽ സംഭരിച്ചിരിക്കുന്ന പേജുകളിൽ നിന്ന് പ്രത്യേക പ്രോഗ്രാമുകൾ സൃഷ്ടിച്ച പേജുകളിലേക്ക് പോകാം. അത്തരം പ്രോഗ്രാമുകളുടെ രചനയാണ് സെർവർ പ്രോഗ്രാമിംഗ് കൈകാര്യം ചെയ്യുന്നത്.

എന്നാൽ നമുക്ക് കാര്യങ്ങൾ ക്രമത്തിൽ എടുക്കാം. ഈ സെർവർ പ്രോഗ്രാമുകൾ ആവശ്യമായി വരുന്നത് എന്തുകൊണ്ടാണെന്ന് കണ്ടെത്തി ഞങ്ങൾ ആരംഭിക്കും.

എന്താണ് സെർവർ പ്രോഗ്രാമിംഗ്

ശരിക്കും, അതെന്താണ്, എന്തിനോടൊപ്പമാണ് ഇത് കഴിക്കുന്നത്?

എന്തുകൊണ്ടാണ് ഞങ്ങൾക്ക് സെർവർ പ്രോഗ്രാമുകൾ വേണ്ടത്?

നിങ്ങൾ എപ്പോഴെങ്കിലും ഒരു ഓൺലൈൻ സ്റ്റോർ സന്ദർശിച്ചിട്ടുണ്ടോ? ഉദാഹരണത്തിന്, ഏറ്റവും ജനപ്രിയമായ "ഓസോൺ" (http://www.ozon.ru).അവിടെ എങ്ങനെ സാധനങ്ങൾ ഓർഡർ ചെയ്യാമെന്ന് നിങ്ങൾ ഓർക്കുന്നുണ്ടോ?

ഒരു ഓൺലൈൻ സ്റ്റോർ എന്താണെന്ന് നിങ്ങൾക്ക് ഓർമ്മയില്ലെങ്കിൽ അല്ലെങ്കിൽ അറിയില്ലെങ്കിൽ, നമുക്ക് ഓർക്കാം (അല്ലെങ്കിൽ കണ്ടെത്തുക).

നിങ്ങൾക്ക് ആവശ്യമുള്ള ഉൽപ്പന്നം വിവരിക്കുന്ന ഒരു വെബ് പേജിലേക്ക് പോകുക. മനസ്സാക്ഷിയുടെ ഒരുപാട് വേദനകൾക്ക് ശേഷം, നിങ്ങൾ ഒടുവിൽ വാങ്ങാനും ബട്ടണിൽ ക്ലിക്ക് ചെയ്യാനും തീരുമാനിക്കുന്നു വാങ്ങാൻ.ഇതിനുശേഷം, നിങ്ങൾക്ക് നിരവധി വെബ് പേജുകൾ ലഭിക്കും, അവിടെ നിങ്ങളുടെ വിലാസം, പണമടയ്ക്കൽ, സാധനങ്ങളുടെ ഡെലിവറി രീതികൾ എന്നിവ സജ്ജീകരിക്കാനും ഒടുവിൽ വാങ്ങൽ സ്ഥിരീകരിക്കാനും കഴിയും. ഉചിതമായ ബട്ടണുകളിൽ ക്ലിക്കുചെയ്‌ത് പേജുകളിൽ തന്നെ സ്ഥിതിചെയ്യുന്ന ഉചിതമായ ഇൻപുട്ട് ഫീൽഡുകളിലേക്ക് ഡാറ്റ നൽകി നിങ്ങൾ ഇതെല്ലാം ചെയ്യുന്നു.

ഇത് സംഭവിക്കുമ്പോൾ എന്താണ് സംഭവിക്കുന്നത്? നിങ്ങൾ നൽകിയ ഡാറ്റ എങ്ങനെയാണ് പ്രോസസ്സ് ചെയ്യുന്നത്? ഇത് ശരിക്കും വെബ് ബ്രൗസർ തന്നെയാണോ?

ഒരിക്കലുമില്ല. ഈ ഡാറ്റ വെബ് സെർവറിൽ പ്രോസസ്സ് ചെയ്യുന്നു.

മുകളിൽ സൂചിപ്പിച്ച "ഓസോൺ" ന്റെ ആരാധകനും സ്ഥിരം ഉപഭോക്താവുമായ രചയിതാവിന്റെ മനസ്സിൽ വന്ന ഉദാഹരണങ്ങളിൽ ഒന്ന് മാത്രമാണ് ഓൺലൈൻ സ്റ്റോർ. വെബ് അധിഷ്‌ഠിത ഇമെയിൽ സെർവറുകൾ, സെർച്ച് എഞ്ചിനുകൾ, ഇലക്ട്രോണിക് ബുള്ളറ്റിൻ ബോർഡുകൾ, ഫോറങ്ങൾ, പൊതുവേ, സന്ദർശകരിൽ നിന്ന് കുറച്ച് ഡാറ്റ സ്വീകരിക്കുകയും അത് പ്രോസസ്സ് ചെയ്യുകയും ചെയ്യുന്ന ഏതൊരു വെബ്‌സൈറ്റും അതേ രീതിയിൽ തന്നെ പ്രവർത്തിക്കുന്നു. ഈ സാഹചര്യങ്ങളിലെല്ലാം, വെബ് ബ്രൗസർ സന്ദർശകരിൽ നിന്ന് ഡാറ്റ സ്വീകരിക്കുകയും വെബ് സെർവറിലേക്ക് അയയ്ക്കുകയും ചെയ്യുന്നു, അത് അത് പ്രോസസ്സ് ചെയ്യുകയും സ്വയമേവ സൃഷ്‌ടിച്ച വെബ് പേജിന്റെ രൂപത്തിൽ പ്രോസസ്സിംഗ് ഫലം പുറപ്പെടുവിക്കുകയും ചെയ്യുന്നു.

ഇത് യഥാർത്ഥത്തിൽ എങ്ങനെ സംഭവിക്കുന്നു? ഇപ്പോൾ നമ്മൾ കണ്ടെത്തും. പിന്നെ ആദ്യം ചോദ്യത്തിന് ഉത്തരം പറയട്ടെ...

ഒരു വെബ് സെർവർ പോലെ ഉപയോക്തൃ ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്നു

ഒരു വെബ് സെർവർ പ്രോഗ്രാം എങ്ങനെയാണ് ഒരു ഉപയോക്താവ് അതിലേക്ക് അയച്ച ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്നത്?

ഒരു വഴിയുമില്ല. അവ പ്രോസസ്സ് ചെയ്യാൻ വെബ് സെർവർ സജ്ജമല്ല. ഒരു വെബ് ബ്രൗസറിൽ നിന്ന് (വെബ് പേജുകൾ, സ്റ്റൈൽ ഷീറ്റുകൾ, ഗ്രാഫിക് ഇമേജുകൾ, സിനിമകൾ, ശബ്ദങ്ങൾ, ആർക്കൈവുകൾ, എക്സിക്യൂട്ടബിൾ ഫയലുകൾ മുതലായവ) ഫയലുകൾക്കായുള്ള അഭ്യർത്ഥന സ്വീകരിക്കുക എന്നതാണ് ഇതിന്റെ ചുമതല, സെർവർ കമ്പ്യൂട്ടറിന്റെ ഹാർഡ് ഡ്രൈവുകളിൽ ഇതേ ഫയലുകൾക്കായി തിരയുക. കണ്ടെത്തിയ ഫയലുകൾ വെബ് ബ്രൗസറിലേക്ക് തിരികെ അയയ്ക്കുക. ഇതാണ് അവന്റെ പ്രധാന ദൗത്യം. തീർച്ചയായും, ചില പ്രത്യേക ശക്തമായ സെർവറുകൾ അയയ്‌ക്കുന്നതിന് മുമ്പ് അയച്ച ഫയലുകളിൽ അധിക പ്രവർത്തനങ്ങൾ നടത്താൻ കഴിയും (പ്രത്യേകിച്ച്, സെർവർ നിർദ്ദേശങ്ങൾ നടപ്പിലാക്കുന്നത്). ഒരു വെബ് സെർവർ മാത്രമല്ല, ഒരു എഫ്‌ടിപി സെർവർ, മെയിൽ, യൂസ്‌നെറ്റ് വാർത്തകൾ എന്നിവയുടെ പ്രവർത്തനങ്ങൾ നിർവ്വഹിക്കുന്ന "മൾട്ടി-ഹോസ്റ്റ്" പ്രോഗ്രാമുകളും ഉണ്ട്, മറ്റെന്താണ് ദൈവത്തിനറിയാം. എന്നാൽ പ്രധാന പ്രവർത്തനം: ഉപഭോക്തൃ ആവശ്യങ്ങൾക്കനുസരിച്ച് ഫയലുകളുടെ ലളിതമായ ഇഷ്യു - അതിൽ കൂടുതലൊന്നുമില്ല.

സന്ദർശക ഡാറ്റ വെബ് സെർവർ തന്നെ പ്രോസസ്സ് ചെയ്യുന്നില്ല എന്നതാണ് രഹസ്യം. ഇത് ചെയ്യുന്നതിന്, ഒരേ സെർവർ കമ്പ്യൂട്ടറിലെ വെബ് സെർവറുമായി ഒരുമിച്ച് പ്രവർത്തിക്കുന്ന പ്രത്യേക പ്രോഗ്രാമുകൾ ഉപയോഗിക്കുന്നു. അവരെ വിളിക്കുന്നു സെർവർ പ്രോഗ്രാമുകൾ,ഒരു ഉപയോക്തൃ ഇന്റർഫേസ് ഇല്ല കൂടാതെ വെബ് സെർവറുമായി മാത്രം "ആശയവിനിമയം നടത്തുക", അതിൽ നിന്ന് ഉപയോക്താവ് നൽകിയ ഡാറ്റ സ്വീകരിക്കുകയും ഫലം അവനു തിരികെ നൽകുകയും ചെയ്യുക. ഉപയോക്താവുമായി നേരിട്ട് പ്രവർത്തിക്കുന്ന ക്ലയന്റ് പ്രോഗ്രാമുകളിൽ നിന്ന് അവ അടിസ്ഥാനപരമായി വ്യത്യാസപ്പെട്ടിരിക്കുന്നത് ഇങ്ങനെയാണ്. (ക്ലയന്റ് പ്രോഗ്രാമുകളിൽ നിങ്ങളുടെ പ്രിയപ്പെട്ട വെബ് ബ്രൗസർ ഉൾപ്പെടുന്നു, എന്നാൽ അതിൽ മാത്രം പരിമിതപ്പെടുന്നില്ല.)

വെബ് സെർവറിന് ഇപ്പോഴും ഉപയോക്താവിൽ നിന്നുള്ള ഡാറ്റ സ്വീകരിക്കാൻ കഴിയുമെന്ന് ഇതിൽ നിന്ന് പിന്തുടരുന്നു. അതെ, ഇത് അതിന്റെ പ്രധാന ചുമതലയുടെ ഭാഗമാണ്: ഡാറ്റ സ്വീകരിച്ച് സെർവർ പ്രോഗ്രാമിലേക്ക് റീഡയറക്‌ട് ചെയ്യുക. അതാകട്ടെ, സെർവർ പ്രോഗ്രാം അവ പ്രോസസ്സ് ചെയ്യുകയും ഫലം വെബ് സെർവറിലേക്ക് തിരികെ നൽകുകയും ചെയ്യും.

ഇവിടെയാണ് വിനോദം ആരംഭിക്കുന്നത്. സെർവർ പ്രോഗ്രാം വെബ് സെർവറിലേക്ക് നൽകുന്ന ഫലം സാധാരണ HTML കോഡല്ലാതെ മറ്റൊന്നുമല്ല എന്നതാണ് വസ്തുത! വാസ്തവത്തിൽ, സന്ദർശകൻ നൽകിയ ഡാറ്റയെ അടിസ്ഥാനമാക്കി സൃഷ്ടിച്ച ഒരു പൂർത്തിയായ വെബ് പേജ് സെർവർ പ്രോഗ്രാം നൽകുന്നു. ഈ പേജ് വിളിക്കുന്നു ചലനാത്മകമായ,വ്യത്യസ്തമായി നിശ്ചലമായഒരു വെബ് ഡിസൈനർ എഴുതിയതും സെർവർ കമ്പ്യൂട്ടറിന്റെ ഡിസ്കുകളിൽ ഫയലുകളിൽ സംഭരിച്ചിരിക്കുന്നതുമായ പേജുകൾ. നൽകിയ ഡാറ്റയ്ക്കുള്ള പ്രതികരണമായി വെബ് സെർവർ ഈ ഡൈനാമിക് പേജ് ക്ലയന്റിലേക്ക് അയയ്ക്കുന്നു.

സെർവർ പ്രോഗ്രാമുകൾ ഇനിപ്പറയുന്ന നാല് തരങ്ങളായി തിരിച്ചിരിക്കുന്നു.

  1. ഇന്റർഫേസിലൂടെ പ്രവർത്തിക്കുന്ന എക്സിക്യൂട്ടബിൾ പ്രോഗ്രാമുകൾ സിജിഐ(കോമൺ ഗേറ്റ്‌വേ ഇന്റർഫേസ് - കോമൺ എക്സ്ചേഞ്ച് ഇന്റർഫേസ്), വിളിക്കപ്പെടുന്നവ CGI പ്രോഗ്രാമുകൾ.ഇത്തരത്തിലുള്ള സെർവർ സോഫ്‌റ്റ്‌വെയർ ഏറ്റവും പഴയതാണ്, എന്നാൽ കാലഹരണപ്പെട്ടതല്ല.
  2. വെബ് സെർവർ വിപുലീകരണങ്ങൾ(ISAPI, NSAPI ഫോർമാറ്റ് ആപ്ലിക്കേഷനുകൾ, അപ്പാച്ചെ എക്സ്റ്റൻഷൻ മൊഡ്യൂളുകൾ മുതലായവ). സെർവർ പ്രോഗ്രാമുകളെ വെബ് സെർവറിൽ തന്നെ ഉൾപ്പെടുത്താൻ നിങ്ങളെ അനുവദിക്കുന്ന ഒരു പുതിയ രീതി, അവയെ അതിന്റെ അവിഭാജ്യ ഘടകങ്ങളാക്കി മാറ്റുന്നു. മൈക്രോസോഫ്റ്റ് അവരുടെ മൈക്രോസോഫ്റ്റ് ഇൻറർനെറ്റ് ഇൻഫർമേഷൻ സെർവറിനും (ഐഎസ്എപിഐ ഇന്റർഫേസ്) ജനപ്രിയ സൗജന്യ അപ്പാച്ചെ വെബ് സെർവറിന്റെ ഡെവലപ്പർമാർക്കും ഇത് ആദ്യമായി നിർദ്ദേശിച്ചു.
  3. സജീവ സെർവർ പേജുകൾ(എഎസ്പി, ജെഎസ്പി മുതലായവ). വാസ്തവത്തിൽ, ഇവ ഫയലുകളിൽ സംരക്ഷിച്ചിരിക്കുന്ന സാധാരണ സ്റ്റാറ്റിക് വെബ് പേജുകളാണ്, സാധാരണ HTML കോഡിന് പുറമേ, വെബ് സെർവറോ അതിന്റെ വിപുലീകരണമോ പ്രോസസ്സ് ചെയ്ത കമാൻഡുകൾ ഉൾപ്പെടുന്നു. അതേ ഇന്റർനെറ്റ് ഇൻഫർമേഷൻ സെർവറിനായി മൈക്രോസോഫ്റ്റ് ആദ്യം നിർദ്ദേശിച്ച ഒരു പുതിയ രീതിയും.
  4. സെർവർ സ്ക്രിപ്റ്റുകൾ,വ്യാഖ്യാനിച്ച ഭാഷയിൽ എഴുതിയിരിക്കുന്നു (Perl, Python, VBScript, JavaScript, മുതലായവ). സെർവർ വശത്തുള്ള CGI അല്ലെങ്കിൽ ISAPI ഇന്റർഫേസിലൂടെ പ്രവർത്തിക്കുന്ന സാധാരണ സ്ക്രിപ്റ്റുകൾ.

ഇപ്പോൾ ഈ വൈവിധ്യത്തെ കൂടുതൽ വിശദമായി നോക്കാം.

CGI പ്രോഗ്രാമുകൾ ഏതെങ്കിലും പ്രോഗ്രാമിംഗ് ഭാഷയിൽ എഴുതുകയും സോഫ്‌റ്റ്‌വെയറിലേക്ക് കംപൈൽ ചെയ്യുകയും ചെയ്യുന്ന സാധാരണ എക്‌സിക്യൂട്ടബിൾ ഫയലുകളാണ്.പ്രൊസസർ ബസ് കോഡ്. അവർക്ക് ഒരു ഉപയോക്തൃ ഇന്റർഫേസ് ഇല്ല (എല്ലാ സെർവർ പ്രോഗ്രാമുകളും പോലെ), എന്നാൽ ഒരു വെബ് സെർവറുമായി പ്രവർത്തിക്കുകയും അതിൽ നിന്ന് ഇൻപുട്ട് ഡാറ്റ സ്വീകരിക്കുകയും അവരുടെ ജോലിയുടെ ഫലങ്ങൾ അതിലേക്ക് അയയ്ക്കുകയും ചെയ്യുന്നു. അവ ആവശ്യമുള്ളപ്പോൾ വെബ് സെർവർ തന്നെ സമാരംഭിക്കുന്നു (ഉപയോക്താവിൽ നിന്ന് ലഭിച്ച ഡാറ്റ പ്രോസസ്സ് ചെയ്യേണ്ടത് ആവശ്യമുള്ളപ്പോൾ), കൂടാതെ സെർവർ കമ്പ്യൂട്ടറിന്റെ ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിന്റെ നിയന്ത്രണത്തിൽ പ്രവർത്തിക്കുന്നു. കൂടാതെ, വെബ് സെർവറിന് ഒരേസമയം ഉപയോക്താക്കളിൽ നിന്ന് ഡാറ്റ പ്രോസസ്സിംഗിനായി നിരവധി അഭ്യർത്ഥനകൾ ലഭിക്കുകയാണെങ്കിൽ, അത് CGI പ്രോഗ്രാമിന്റെ അനുബന്ധ എണ്ണം പകർപ്പുകൾ സമാരംഭിക്കുന്നു.

സി‌ജി‌ഐ പ്രോഗ്രാമുകളുടെ ഗുണങ്ങളിൽ സൃഷ്ടിയുടെ എളുപ്പവും (പല പ്രോഗ്രാം വികസന പരിതസ്ഥിതികളും അത്തരം ആപ്ലിക്കേഷനുകളുടെ സൃഷ്ടിയെ പിന്തുണയ്ക്കുന്നു, പ്രത്യേകിച്ചും ജനപ്രിയമായ ബോർലാൻഡ് ഡെൽഫി, പതിപ്പ് 3 മുതൽ ആരംഭിക്കുന്നു), ഡീബഗ്ഗിംഗ് എളുപ്പവും. കൂടാതെ, CGI ആപ്ലിക്കേഷനുകൾ സ്വതന്ത്ര പ്രോഗ്രാമുകൾ ആയതിനാൽ, അവ വെബ് സെർവറിൽ നിന്ന് പ്രത്യേകം പ്രവർത്തിക്കുന്നു (പ്രോഗ്രാമർമാരും സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്റർമാരും പറയുന്നതുപോലെ, അവ മറ്റൊരു വിലാസ സ്ഥലത്ത് പ്രവർത്തിക്കുന്നു). ഇതിനർത്ഥം ഒരു CGI പ്രോഗ്രാം പരാജയപ്പെടുകയാണെങ്കിൽ, ആ പ്രോഗ്രാം മാത്രമേ അവസാനിക്കുകയുള്ളൂ - വെബ് സെർവർ തന്നെ നിലകൊള്ളുന്നു. എന്നാൽ CGI പ്രോഗ്രാമുകൾക്ക് ഒരു പോരായ്മ മാത്രമേയുള്ളൂ: ഓരോ സെറ്റ് ഡാറ്റയും പ്രോസസ്സ് ചെയ്യുന്നതിന് സെർവർ പ്രോഗ്രാമിന്റെ പ്രത്യേക പകർപ്പ് സമാരംഭിച്ചതിനാൽ സിസ്റ്റം ഉറവിടങ്ങളുടെ വലിയ ഉപഭോഗം. ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്നതിന് വെബ് സെർവറിന് വളരെയധികം അഭ്യർത്ഥനകൾ ലഭിക്കുകയാണെങ്കിൽ, സെർവർ കമ്പ്യൂട്ടർ മരവിച്ചേക്കാം.

വെബ് സെർവർ വിപുലീകരണങ്ങൾ ഒരു പുതിയ തരം സെർവർ സോഫ്റ്റ്‌വെയറാണ്. സെർവർ പ്രോഗ്രാമിന്റെ എല്ലാ യുക്തികളും നടപ്പിലാക്കുന്ന സാധാരണ DLL-കളാണ് അവ. അത്തരം ലൈബ്രറികൾ വെബ് സെർവർ പ്രോഗ്രാമിൽ നിർമ്മിക്കുകയും അതിന്റെ അവിഭാജ്യ ഘടകമായി പ്രവർത്തിക്കുകയും ചെയ്യുന്നു. DLL-കൾ വിൻഡോസ് പരിതസ്ഥിതിയിൽ മാത്രം പ്രവർത്തിക്കുന്നതിനാൽ, മറ്റ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിൽ എക്സ്റ്റൻഷനുകൾ സൃഷ്ടിക്കാൻ മറ്റ് ഫോർമാറ്റുകൾ കണ്ടുപിടിച്ചു. പ്രത്യേകിച്ചും, അപ്പാച്ചെ സെർവർ എക്സ്റ്റൻഷൻ മൊഡ്യൂളുകൾ ഡിഎൽഎൽ അല്ല,

മൈക്രോസോഫ്റ്റിൽ നിന്നുള്ള വെബ് സെർവറുകളുടെ ഇന്റർനെറ്റ് ഇൻഫർമേഷൻ സെർവറിന്റെയും നെറ്റ്‌സ്‌കേപ്പിൽ നിന്നുള്ള നെറ്റ്‌സ്‌കേപ്പ് വെബ് സെർവറിന്റെയും വിപുലീകരണങ്ങൾ സൃഷ്ടിക്കുന്നത് DLL-കളുടെ രൂപത്തിലാണ്. ആദ്യ സന്ദർഭത്തിൽ, വിപുലീകരണങ്ങൾക്ക് ഫോർമാറ്റ് ഉണ്ട് ISAPI(ഇന്റർനെറ്റ് സെർവർ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഇന്റർഫേസ് - ഇന്റർനെറ്റ് സെർവർ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഇന്റർഫേസ്), രണ്ടാമത്തേതിൽ - എൻഎസ്എപിഐ(നെറ്റ്‌സ്‌കേപ്പ് സെർവർ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഇന്റർഫേസ് - നെറ്റ്‌സ്‌കേപ്പ് സെർവർ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഇന്റർഫേസ്). അപ്പാച്ചെ എക്സ്റ്റൻഷൻ മൊഡ്യൂളുകളുടെ ഫോർമാറ്റിനെ അപ്പാച്ചെ മൊഡ്യൂളുകൾ എന്ന് വിളിക്കുന്നു.

വെബ് സെർവർ വിപുലീകരണങ്ങൾക്ക് ഒരു നേട്ടമുണ്ട്: സിസ്റ്റം ഉറവിടങ്ങളുടെ ശ്രദ്ധാപൂർവമായ ഉപഭോഗം. എല്ലാ സെറ്റ് ഉപയോക്തൃ ഡാറ്റയും പ്രോസസ്സ് ചെയ്യുന്നതിന്, വിപുലീകരണത്തിന്റെ ഒരു ഉദാഹരണം മാത്രമേ സമാരംഭിച്ചിട്ടുള്ളൂ എന്നതാണ് വസ്തുത, ഇത് പ്രവർത്തിക്കുന്ന CGI പ്രോഗ്രാമുകളേക്കാൾ വളരെ കുറച്ച് വിഭവങ്ങൾ മാത്രമേ എടുക്കൂ. എന്നിരുന്നാലും, വിപുലീകരണങ്ങൾ സൃഷ്ടിക്കുന്നതിനും ഡീബഗ് ചെയ്യുന്നതിനും കൂടുതൽ ബുദ്ധിമുട്ടാണ്, മാത്രമല്ല അവ അത്ര സുരക്ഷിതവുമല്ല.

CGI പ്രോഗ്രാമുകൾ പോലെ. അവ ഒരു വെബ് സെർവറിന്റെ ഭാഗമായി പ്രവർത്തിക്കുന്നതിനാൽ, വിപുലീകരണത്തിലെ എന്തെങ്കിലും പിശക് സെർവറിനെ ഹാംഗ് ചെയ്യാൻ ഇടയാക്കും.

മുകളിൽ വിവരിച്ച രണ്ട് തരത്തിലുള്ള സെർവർ പ്രോഗ്രാമുകൾക്കും ഒരു വലിയ പോരായ്മയുണ്ട്. അവ പ്രവർത്തിക്കുന്നതിന് മുമ്പ്, അവ ഒരു പ്രോഗ്രാമിംഗ് ഭാഷയിൽ എഴുതുകയും പ്രോസസ്സറിൽ മെഷീൻ കോഡിലേക്ക് കംപൈൽ ചെയ്യുകയും വേണം, ഇത് സമയമെടുക്കുന്നതാണ്, പ്രത്യേകിച്ച് ഡീബഗ്ഗിംഗ് ചെയ്യുമ്പോൾ. തീർച്ചയായും, കംപൈൽ ചെയ്ത പ്രോഗ്രാമുകൾ വ്യാഖ്യാനിച്ചതിനേക്കാൾ വേഗത്തിൽ പ്രവർത്തിക്കുന്നു, അതായത്, ഓരോ നിർദ്ദേശങ്ങളും ഒരു പ്രത്യേക ഇന്റർപ്രെറ്റർ പ്രോഗ്രാം വായിക്കുകയും ഡീക്രിപ്റ്റ് ചെയ്യുകയും പ്രോസസ്സ് ചെയ്യുകയും ചെയ്യുന്നവ. എന്നാൽ വ്യാഖ്യാനിച്ച പ്രോഗ്രാമുകൾക്കും അവയുടെ ഗുണങ്ങളുണ്ട്, പ്രധാനമായത് ലാളിത്യവും എഴുത്തിന്റെ വേഗതയുമാണ്. വിവരിക്കുന്ന അടുത്ത രണ്ട് തരം സെർവർ പ്രോഗ്രാമുകൾ വ്യാഖ്യാനിക്കപ്പെടും.

ഇതിനകം സൂചിപ്പിച്ചതുപോലെ, സജീവമായ സെർവർ പേജുകൾ പ്രത്യേകം ഉൾപ്പെടുന്ന സാധാരണ വെബ് പേജുകളാണ് സെർവർ സ്ക്രിപ്റ്റുകൾ,വെബ് സെർവർ തന്നെ അല്ലെങ്കിൽ ഒരു പ്രത്യേക സെർവർ പ്രോഗ്രാം (CGI ആപ്ലിക്കേഷൻ അല്ലെങ്കിൽ വെബ് സെർവർ എക്സ്റ്റൻഷൻ) നടപ്പിലാക്കുന്നത്. പ്രത്യേകിച്ച്, എ.എസ്.പി.(ആക്ടീവ് സെർവർ പേജുകൾ) Microsoft ഇന്റർനെറ്റ് ഇൻഫർമേഷൻ സെർവർ പിന്തുണയ്ക്കുന്നു, കൂടാതെ ജെ.എസ്.പി(ജാവ സെർവർ പേജുകൾ - ജാവാസ്ക്രിപ്റ്റിൽ എഴുതിയ സെർവർ പേജുകൾ), മറ്റ് നിരവധി വെബ് സെർവറുകൾ പിന്തുണയ്ക്കുന്നു, ഈ രീതിയിൽ പ്രവർത്തിക്കുന്നു. ASP സെർവർ പേജുകൾ JavaScript, VBScript എന്നിവയിൽ എഴുതിയിരിക്കുന്നു, അതേസമയം JSP എഴുതുന്നത് JavaScript-ൽ മാത്രമാണ്.

സജീവമായ സെർവർ പേജുകളുടെ ഗുണങ്ങൾ നിങ്ങൾക്ക് ഇതിനകം അറിയാം: എഴുത്തിന്റെ എളുപ്പവും വേഗതയും ഡീബഗ്ഗിംഗിന്റെ എളുപ്പവും. കൂടാതെ, സജീവമായ സെർവർ പേജുകൾ കോഡ് വിതറിയ സാധാരണ വെബ് പേജുകൾ മാത്രമായതിനാൽ, HTML പരിചിതമായ ആർക്കും അവ എളുപ്പത്തിൽ എഴുതാനാകും. പോരായ്മ: ആപേക്ഷിക മന്ദത, സിസ്റ്റം റിസോഴ്സുകളുടെ വർദ്ധിച്ച ആവശ്യകത.

സെർവർ സൈഡ് സ്ക്രിപ്റ്റുകൾ സജീവ സെർവർ പേജുകൾക്ക് സമാനമാണ്, അവ വ്യാഖ്യാനിക്കപ്പെടുന്നു, എന്നാൽ അവ HTML അഡിറ്റീവുകളില്ലാത്ത "ശുദ്ധമായ" പ്രോഗ്രാം കോഡാണ്. ഇന്റർപ്രെട്ടർ മിക്കവാറും എല്ലായ്‌പ്പോഴും ഒരു CGI പ്രോഗ്രാമാണ്, പക്ഷേ ഇത് ഒരു വെബായി വികസിപ്പിക്കുന്നതിൽ നിന്ന് നിങ്ങളെ തടയാൻ ഒന്നുമില്ല. സെർവർ എക്സ്റ്റൻഷൻ സ്ക്രിപ്റ്റുകൾ സാധാരണയായി പേൾ പ്രോഗ്രാമിംഗ് ഭാഷയിലാണ് എഴുതുന്നത്, ഇത് ടെക്സ്റ്റ് പ്രോസസ്സിംഗിനായി പ്രത്യേകം രൂപകൽപ്പന ചെയ്തിട്ടുള്ളതാണ്, എന്നാൽ പൈത്തൺ, ജാവാസ്ക്രിപ്റ്റ്, വിബിസ്ക്രിപ്റ്റ്, കൂടാതെ (അതായി പറയപ്പെടുന്നു) MS-DOS ബാച്ച് ഫയൽ ഭാഷയും ഉപയോഗിക്കുന്നു. വാസ്തവത്തിൽ, സ്ക്രിപ്റ്റുകൾക്ക് കഴിയും ഒരു വ്യാഖ്യാതാവ് ഉള്ള ഏത് പ്രോഗ്രാമിംഗ് ഭാഷയിലും എഴുതണം.

സെർവർ സൈഡ് സ്ക്രിപ്റ്റുകളുടെ ഗുണങ്ങളും ദോഷങ്ങളും സജീവ സെർവർ പേജുകൾക്ക് സമാനമാണ്. എന്നിരുന്നാലും, സി‌ജി‌ഐ ആപ്ലിക്കേഷനുകളേക്കാൾ വലിയ അളവിൽ സിസ്റ്റം ഉറവിടങ്ങൾ സ്‌ക്രിപ്റ്റുകൾ ഉപയോഗിക്കുന്നു. എല്ലാത്തിനുമുപരി, ഓരോ സെറ്റ് ഉപയോക്തൃ ഡാറ്റയും പ്രോസസ്സ് ചെയ്യുന്നതിന്, ഇന്റർപ്രെറ്ററിന്റെ സ്വന്തം പകർപ്പ് സമാരംഭിക്കുന്നു, കൂടാതെ വ്യാഖ്യാതാവ് സ്ക്രിപ്റ്റ് പ്രോസസ്സ് ചെയ്യുന്നതിന് ധാരാളം വിഭവങ്ങൾ ചെലവഴിക്കുന്നു. എന്നിരുന്നാലും, ഇതൊക്കെയാണെങ്കിലും, സെർവർ പ്രോഗ്രാമുകൾ സൃഷ്ടിക്കുന്നതിനുള്ള ഏറ്റവും ജനപ്രിയമായ മാർഗമാണ് സ്ക്രിപ്റ്റുകൾ.

പട്ടികയിൽ 15.1 സെർവർ പ്രോഗ്രാമുകളുടെ ഫയൽ എക്സ്റ്റൻഷനുകൾ കാണിക്കുന്നു.

പട്ടിക 15.1. സെർവർ പ്രോഗ്രാം ഫയൽ വിപുലീകരണങ്ങൾ

സെർവർ പ്രോഗ്രാമുകളുടെ തരം

ഉപജാതികൾ

വിപുലീകരണം

CGI പ്രോഗ്രാമുകൾ

-

exe

വെബ് സെർവർ വിപുലീകരണങ്ങൾ

ISAPI, NSAPI അപ്പാച്ചെ മൊഡ്യൂളുകൾ

dll വിപുലീകരണമില്ല

സജീവ സെർവർ പേജുകൾ

സെർവർ സ്ക്രിപ്റ്റുകൾ

എഎസ്പി ജെഎസ്പി

asp jsp

ഭാഷ Perl JavaScript VBScript മറ്റ് ഭാഷകൾ

pl, cgi js, cgi vbs, cgi cgi

അതിനാൽ വെബ് സെർവർ ഉപയോക്തൃ ഡാറ്റ എങ്ങനെ പ്രോസസ്സ് ചെയ്യുന്നു (അല്ലെങ്കിൽ പ്രോസസ്സ് ചെയ്യുന്നില്ല) എന്ന് ഞങ്ങൾ നോക്കി. ഇപ്പോൾ നമുക്ക് ശൃംഖലയുടെ തുടക്കത്തിലേക്ക് പോകാം, കൂടാതെ വെബ് ബ്രൗസർ എങ്ങനെയാണ് സെർവർ പ്രോഗ്രാമിലേക്ക് ഉപയോക്തൃ ഡാറ്റ അയയ്ക്കുന്നത് എന്ന് നോക്കാം.

നൽകിയ ഡാറ്റ വെബ് ബ്രൗസർ എങ്ങനെ അയയ്ക്കുന്നു

ഈ അധ്യായത്തിന്റെ തുടക്കത്തിൽ, സന്ദർശക ഡാറ്റ ശേഖരിക്കുന്നതിന് വെബ് പേജുകളിൽ തന്നെ സ്ഥാപിച്ചിരിക്കുന്ന നിയന്ത്രണങ്ങൾ എങ്ങനെ ഉപയോഗിക്കുന്നു എന്നതിനെക്കുറിച്ച് ഞങ്ങൾ സംസാരിച്ചു. വിൻഡോസ് ആപ്ലിക്കേഷനുകളിൽ നിന്ന് നിങ്ങൾക്ക് പരിചിതമായ സാധാരണ നിയന്ത്രണങ്ങൾ ഇവയാണ്: ഇൻപുട്ട് ഫീൽഡുകൾ, ബട്ടണുകൾ, ലിസ്റ്റുകൾ, ചെക്ക്ബോക്സുകൾ മുതലായവ. ഒരു സൈറ്റ് സന്ദർശകൻ അവയിലേക്ക് ഡാറ്റ നൽകുകയും വെബ് സെർവറിലേക്ക് ഡാറ്റ അയയ്ക്കാൻ തുടങ്ങുന്ന ഒരു പ്രത്യേക ബട്ടൺ അമർത്തുകയും അതിനാൽ സെർവർ പ്രോഗ്രാമിലേക്ക് .

സന്ദർശക ഡാറ്റ നൽകുന്നതിനുള്ള നിയന്ത്രണങ്ങൾ ഫോമിൽ സ്ഥാപിച്ചിരിക്കുന്നു. ഫോം -യഥാർത്ഥത്തിൽ ഡാറ്റ എൻകോഡ് ചെയ്യുകയും വെബ് സെർവറിലേക്ക് അയയ്ക്കുകയും ചെയ്യുന്ന ഒരു പ്രത്യേക പേജ് ഘടകമാണിത്. (ഫോം നിയന്ത്രണങ്ങളുടെ പാരന്റ് ആണെന്ന് നമുക്ക് പറയാം.) കൺട്രോളുകൾക്ക് സന്ദർശകനിൽ നിന്ന് ഡാറ്റ മാത്രമേ ലഭിക്കൂ, പക്ഷേ അത് എൻകോഡ് ചെയ്യുകയോ കൈമാറുകയോ ചെയ്യരുത്.

ഒരു ഫോമിലെ ഓരോ നിയന്ത്രണത്തിനും ഒരു തനതായ പേര് ഉണ്ടായിരിക്കണം. ഫോമിൽ നൽകിയ ഡാറ്റ സെർവറിന് വായിക്കാൻ കഴിയുന്ന രീതിയിൽ അവതരിപ്പിക്കാൻ വെബ് ബ്രൗസർ ഈ പേരുകൾ ഉപയോഗിക്കുന്നു.

ഉദാഹരണത്തിന്:

ഓരോ നിയന്ത്രണത്തിന്റെയും മൂല്യങ്ങൾ മാത്രം ഉൾക്കൊള്ളുന്ന അനുയോജ്യമായ കേസ് ഞങ്ങൾ ഇവിടെ പരിഗണിച്ചു കൂടെ സാധുവാണ് HTTP പ്രോട്ടോക്കോളിന്റെ വീക്ഷണകോണിൽ നിന്ന്, ചിഹ്നങ്ങൾ: ലാറ്റിൻ അക്ഷരമാലയിലെ അക്ഷരങ്ങൾ, അക്കങ്ങൾ, ഡാഷുകൾ, അടിവരകൾ, മറ്റ് ചില പ്രതീകങ്ങൾ. (ഓർക്കുക, HTTP എന്നത് ഒരു വെബ് സെർവർ ഉപയോഗിക്കുന്ന ഒരു ഫയൽ ട്രാൻസ്ഫർ പ്രോട്ടോക്കോൾ ആണ്.) റഷ്യൻ അക്ഷരമാലയിലെ സ്‌പെയ്‌സുകളോ അക്ഷരങ്ങളോ പോലുള്ള നിയമവിരുദ്ധമായ പ്രതീകങ്ങൾ അടങ്ങിയ ഡാറ്റ നിങ്ങൾ കൈമാറുകയാണെങ്കിൽ, അത്തരം ഓരോ പ്രതീകവും ഒരു ഹെക്‌സാഡെസിമൽ കോഡായി പ്രതിനിധീകരിക്കും, അതിന് മുമ്പുള്ള ഒരു ശതമാനം അടയാളം, ഉദാഹരണത്തിന്, ഇതുപോലെ (എൻകോഡ് ചെയ്ത സ്പേസ് പ്രതീകങ്ങൾ ബോൾഡാണ്):

ഈ ഡാറ്റ ഫോർമാറ്റിന് നന്ദി, അത് പ്രോസസ്സ് ചെയ്യുന്ന സെർവർ പ്രോഗ്രാമുകൾ എഴുതുന്നത് വളരെ ലളിതമാണ്. പ്രത്യേകിച്ച്, ഈ ഫോർമാറ്റിനായി പേളിന് അന്തർനിർമ്മിത ഡീക്രിപ്ഷൻ സൗകര്യങ്ങളുണ്ട്.

മേൽപ്പറഞ്ഞ ഫോമിൽ അവതരിപ്പിച്ച ഡാറ്റ പിന്നീട് മുൻകൂട്ടി നിശ്ചയിച്ചിട്ടുള്ള ഒന്ന് ഉപയോഗിച്ച് എൻകോഡ് ചെയ്യുന്നു കോഡിംഗ് രീതികൾകൂടാതെ ഇന്റർനെറ്റ് വഴി സെർവർ പ്രോഗ്രാമിലേക്ക് അയയ്ക്കുകയും ചെയ്യുന്നു. ഇതെല്ലാം യഥാർത്ഥത്തിൽ ഫോം വഴിയാണ് ചെയ്യുന്നത് (പക്ഷേ നിയന്ത്രണങ്ങളല്ല).

ഉപയോക്താവ് ഒരു പ്രത്യേക ബട്ടൺ അമർത്തിയാൽ ഡാറ്റ അയയ്ക്കുന്ന പ്രക്രിയ ആരംഭിക്കുന്നു. ഈ ബട്ടൺ വിളിക്കുന്നു അയക്കുക(സമർപ്പിക്കുക - ഇംഗ്ലീഷ് ഭാഷാ പ്രോഗ്രാമുകളിൽ) കൂടാതെ ഫോമിൽ ഉണ്ടായിരിക്കണം. ഫോമിൽ ഒരു ബട്ടണും അടങ്ങിയിരിക്കാം പുനഃസജ്ജമാക്കുക(റീസെറ്റ്), ഇത് ഉപയോക്താവ് നൽകിയ ഡാറ്റ പുനഃസജ്ജമാക്കുന്നു. സാധാരണയായി, ഈ ബട്ടണുകൾ ഫോമിന്റെ ഏറ്റവും താഴെയാണ് സ്ഥിതി ചെയ്യുന്നത്.

ഉപയോക്താവിൽ നിന്ന് ഇൻപുട്ട് സ്വീകരിക്കുകയും ഒരു പ്രത്യേക രീതിയിൽ എൻകോഡ് ചെയ്യുകയും പ്രധാന വിൻഡോയിലേക്ക് അയയ്ക്കുകയും ചെയ്യുന്ന ഒരു സാധാരണ വിൻഡോസ് ആപ്ലിക്കേഷൻ ഡയലോഗ് ബോക്സ് പോലെയുള്ള ഒരു ഫോം നിങ്ങൾക്ക് കരുതാം. (വിൻഡോസ് ആപ്ലിക്കേഷനുകളുടെ ഡയലോഗ് വിൻഡോകൾക്കും രണ്ട് ബട്ടണുകൾ ഉണ്ടായിരിക്കണം: ശരിഒപ്പം റദ്ദാക്കുക(റദ്ദാക്കുക) എന്നാൽ ഒരു സാധാരണ വിൻഡോസ് ആപ്ലിക്കേഷന്റെ കാര്യത്തിൽ, ഡാറ്റ എങ്ങനെ എൻക്രിപ്റ്റ് ചെയ്യുകയും അയയ്ക്കുകയും ചെയ്യുമെന്ന് പ്രോഗ്രാമർ വ്യക്തമായി വ്യക്തമാക്കണം, ഒരു വെബ് ഫോമിന്റെ കാര്യത്തിൽ ഇത് ആവശ്യമില്ല. ആവശ്യമായ മൂന്ന് പാരാമീറ്ററുകൾ മാത്രമേ നിങ്ങൾ സജ്ജീകരിക്കേണ്ടതുള്ളൂ:

  • ഫോം ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്ന സെർവർ പ്രോഗ്രാമിന്റെ ഇന്റർനെറ്റ് വിലാസം;
  • അയച്ച ഡാറ്റയ്ക്കുള്ള എൻകോഡിംഗ് രീതി;
  • ഡാറ്റ അയയ്ക്കുന്നതിനുള്ള രണ്ട് രീതികളിൽ ഒന്ന്.

ഡാറ്റ അയയ്ക്കുന്നതിനുള്ള രീതികളെക്കുറിച്ച് ഞങ്ങൾ കുറച്ച് കഴിഞ്ഞ് സംസാരിക്കും. ആവശ്യമായ മറ്റ് രണ്ട് ഫോം പാരാമീറ്ററുകളെക്കുറിച്ച് ഇപ്പോൾ നമുക്ക് എല്ലാം കണ്ടെത്താം.

ഒരു സെർവർ പ്രോഗ്രാമിന്റെ ഇന്റർനെറ്റ് വിലാസം ഒരു വെബ് പേജ് പോലെയുള്ള മറ്റേതെങ്കിലും ഫയലിന്റെ ഇന്റർനെറ്റ് വിലാസവുമായി വളരെ സാമ്യമുള്ളതാണ്. സ്വയം നോക്കൂ - CGI പ്രോഗ്രാമിന്റെ വിലാസം ഇങ്ങനെയായിരിക്കും:

http://www. ചില സൈറ്റ്. ru/bin/program.exe ഇത് വെബ് സെർവർ വിപുലീകരണത്തിന്റെ വിലാസമാണ്: http: //www.somesite.ru/bin/extension.dll ഇതാണ് സജീവ സെർവർ പേജിന്റെ വിലാസം:

http://www. ചില സൈറ്റ്. ru/asps/active_page. asp

പേളിൽ എഴുതിയ സ്ക്രിപ്റ്റ് പ്രോഗ്രാമിന്റെ വിലാസം ഇതാണ്:

http://www. ചില സൈറ്റ്. ru/scripts/perl_script.pl

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, ഇതിൽ സങ്കീർണ്ണമായ ഒന്നും തന്നെയില്ല. ഒരു സെർവർ കമ്പ്യൂട്ടറിന്റെ ഹാർഡ് ഡ്രൈവുകളിൽ സ്ഥാപിച്ചിട്ടുള്ള ഒരു സാധാരണ ഫയലാണ് സെർവർ പ്രോഗ്രാം, അതിലേക്കുള്ള ലിങ്കും പ്രത്യേകമായി ഒന്നും പ്രതിനിധീകരിക്കുന്നില്ല.

ഇൻറർനെറ്റിലൂടെ കൈമാറുന്ന ഡാറ്റ എൻകോഡ് ചെയ്യുന്നതിന്, ഏറ്റവും ജനപ്രിയമായ മൂന്ന് രീതികളാണ് സാധാരണയായി ഉപയോഗിക്കുന്നത്: application/x-www-form-urlencoded,മൾട്ടിപാർട്ട്/ഫോം-ഡാറ്റയും (വളരെ കുറവ് പലപ്പോഴും) ടെക്സ്റ്റ്/പ്ലെയിൻ. മറ്റ് എൻകോഡിംഗ് രീതികൾ ഉപയോഗിക്കുന്നത് സാധ്യമാണ്, എന്നാൽ മിക്ക കേസുകളിലും ലിസ്റ്റുചെയ്ത മൂന്ന് ഉപയോഗിക്കുന്നു. കൂടാതെ, ഈ മൂന്ന് എൻകോഡിംഗ് രീതികൾ മിക്ക വെബ് ബ്രൗസർ പ്രോഗ്രാമുകളും പിന്തുണയ്ക്കുന്നു.

കുറിപ്പ്

ഒരു MIME ഡാറ്റ തരം എന്താണെന്ന് നിങ്ങൾ ഇപ്പോഴും ഓർക്കുന്നുവെങ്കിൽ, മുകളിൽ നൽകിയിരിക്കുന്ന ഡാറ്റ എൻകോഡിംഗ് രീതികളുടെ പേരുകൾ നോക്കുമ്പോൾ, ഇവ വെറും MIME തരങ്ങൾ മാത്രമാണെന്ന് നിങ്ങൾ ഉടൻ കാണും. അവരുടെ സഹായത്തോടെയാണ് കോഡിംഗ് രീതികൾ വ്യക്തമാക്കുന്നത്.

മിക്ക കേസുകളിലും, ആപ്ലിക്കേഷൻ/x-www-form-uriencoded എൻകോഡിംഗ് രീതി ഉപയോഗിക്കുന്നു. വഴിയിൽ, എൻകോഡിംഗ് രീതി വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ സ്ഥിരസ്ഥിതിയായി ഉപയോഗിക്കുന്ന ഒന്നാണ് ഇത്. നിങ്ങൾ ഒരു വെബ് സെർവറിലേക്ക് ഫയലുകൾ അയയ്ക്കാൻ പോകുകയാണെങ്കിൽ മൾട്ടിപാർട്ട്/ഫോം-ഡാറ്റ എൻകോഡിംഗ് രീതി ഉപയോഗിക്കുന്നു; ഇത് ഈ കേസിന് അനുയോജ്യമായ ബൈനറി ഡാറ്റ പരിവർത്തനം നൽകുന്നു. അവസാന രീതി - ടെക്സ്റ്റ്/പ്ലെയിൻ - ഡാറ്റ പ്ലെയിൻ ടെക്സ്റ്റിൽ അവതരിപ്പിക്കുന്നു, ഫോം ഡാറ്റ ഇമെയിൽ വഴി അയയ്‌ക്കുകയാണെങ്കിൽ അത് ഉപയോഗപ്രദമാകും (ചിലപ്പോൾ ഈ ഡാറ്റാ കൈമാറ്റ രീതിയും ഉപയോഗിക്കുന്നു).

അതിനാൽ, ഞങ്ങൾ ഡാറ്റ എൻകോഡിംഗ് ക്രമീകരിച്ചു. നെറ്റ്‌വർക്ക് ചാനലുകളിലൂടെ ഈ ഡാറ്റ എങ്ങനെയാണ് കൈമാറുന്നതെന്ന് കണ്ടറിയണം.

ഇൻറർനെറ്റിലൂടെ എങ്ങനെയാണ് ഡാറ്റ കൈമാറുന്നത്

നിങ്ങൾക്ക് ഇതിനകം അറിയാവുന്നതുപോലെ, ഇന്റർനെറ്റിലൂടെയും ഏതെങ്കിലും പ്രാദേശിക അല്ലെങ്കിൽ ആഗോള കമ്പ്യൂട്ടർ നെറ്റ്‌വർക്കിലൂടെയും ഡാറ്റ അയയ്‌ക്കുന്നതിന്, ഒരു പ്രത്യേക നിയമങ്ങൾ ഉപയോഗിക്കുന്നു, പ്രോട്ടോക്കോൾ.നെറ്റ്‌വർക്കിലൂടെ തുടർന്നുള്ള പ്രക്ഷേപണത്തിനായി ഡാറ്റ എങ്ങനെ എൻക്രിപ്റ്റ് ചെയ്യുകയും പാക്കേജുചെയ്യുകയും ചെയ്യുമെന്ന് പ്രോട്ടോക്കോൾ നിർവചിക്കുന്നു. സ്വാഭാവികമായും, അയയ്‌ക്കുന്നതും സ്വീകരിക്കുന്നതുമായ പ്രോഗ്രാമുകൾ പരസ്പരം "മനസ്സിലാക്കുന്നതിന്" ഒരേ പ്രോട്ടോക്കോൾ പിന്തുണയ്ക്കണം. (അല്ലെങ്കിൽ, ഡാറ്റാ ട്രാൻസ്ഫർ പ്രോട്ടോക്കോളുമായി പൊരുത്തക്കേട് എന്ന് വിളിക്കപ്പെടുന്നവ ഉയർന്നുവരും, വളരെ അസുഖകരമായ കാര്യം.) യഥാർത്ഥത്തിൽ, ഞങ്ങൾ ഇതിനകം ഇന്റർനെറ്റ് പ്രോട്ടോക്കോളുകളെ കുറിച്ച് സംസാരിച്ചു, ഇപ്പോൾ അവ ആവർത്തിക്കുന്നതിൽ അർത്ഥമില്ല.

ഇന്റർനെറ്റിലൂടെ വെബ് പേജുകളും അനുബന്ധ ഫയലുകളും (ഗ്രാഫിക്സ്, ശബ്ദങ്ങൾ, ആർക്കൈവുകൾ മുതലായവ) അയയ്ക്കാൻ HTTP പ്രോട്ടോക്കോൾ ഉപയോഗിക്കുന്നുണ്ടെന്നും നിങ്ങൾക്കറിയാം. ഡാറ്റാ ട്രാൻസ്മിഷനും ഇത് ഉപയോഗിക്കുന്നു, ഇതിനായി രണ്ടെണ്ണം ഉണ്ട് കൈമാറ്റ രീതിഡാറ്റ. രണ്ട് രീതികളും ഇന്റർനെറ്റ് പ്രോഗ്രാമിംഗിൽ വ്യാപകമായി ഉപയോഗിക്കപ്പെടുന്നു, അവയുടെ ഗുണങ്ങളും ദോഷങ്ങളുമുണ്ട്. നമുക്ക് അവരെ നോക്കാം.

ആദ്യ രീതിയെ വിളിക്കുന്നു നേടുകഅനുബന്ധ ഫോം പാരാമീറ്ററിന്റെ മൂല്യം അനുസരിച്ച്. ഉപയോഗിക്കുമ്പോൾ, ഒരു HTTP അഭ്യർത്ഥനയിൽ ഇന്റർനെറ്റ് വിലാസത്തിന്റെ ഭാഗമായി ഡാറ്റ കൈമാറുന്നു.

നിങ്ങൾ ഓർക്കുന്നതുപോലെ, ഒരു വെബ് ബ്രൗസർ, ഒരു വെബ് സെർവറിൽ നിന്ന് ആവശ്യമായ ഫയൽ സ്വീകരിക്കുന്നതിന്, ഈ സെർവറിന് ആവശ്യമായ ഫയലിന്റെ ഇന്റർനെറ്റ് വിലാസം ഉൾപ്പെടുന്ന ഒരു HTTP അഭ്യർത്ഥന അയയ്‌ക്കുന്നു. അതിനാൽ, ഈ വിലാസത്തിന്റെ ഭാഗമായി ഡാറ്റ കൈമാറാൻ കഴിയും.

ഉദാഹരണത്തിന്, മുകളിൽ കാണിച്ചിരിക്കുന്ന ഡാറ്റ സെറ്റ് എടുക്കുക:

പേര്1 = ഇവാൻ കുടുംബപ്പേര് = ഇവാനോവിച്ച് പേര്2 = ഇവാനോവ് പ്രായം = 30

ഇപ്പോൾ നമുക്ക് GET രീതി ഉപയോഗിച്ച് അയയ്‌ക്കാൻ തയ്യാറാക്കാം (ഡാറ്റ തന്നെ ബോൾഡാണ്):

http://www.somesite.ru/bin/program.exe? പേര്1=ഇവാൻ& കുടുംബപ്പേര്2=ഇവാനോവിച്ച്&പേര്2=ഇവാനോവ്&ഏജ്=30

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, GET രീതി ഉപയോഗിച്ച് അയച്ച ഡാറ്റ ഇന്റർനെറ്റ് വിലാസത്തിന്റെ അവസാനത്തിൽ സ്ഥാപിക്കുകയും അതിൽ നിന്ന് ഒരു ചോദ്യചിഹ്നത്താൽ വേർതിരിക്കുകയും ചെയ്യുന്നു. ഈ സാഹചര്യത്തിൽ, "പേര്" = "മൂല്യം" ജോഡികൾ പരസ്പരം "വാണിജ്യവും" ചിഹ്നവും ("&") കൊണ്ട് വേർതിരിച്ചിരിക്കുന്നു. എല്ലാം വളരെ ലളിതവും വ്യക്തവുമാണ്.

ഡാറ്റാ അവതരണത്തിന്റെ ഈ ലാളിത്യവും വ്യക്തതയുമാണ് GET രീതിയുടെ പ്രധാന നേട്ടം. അവർ പറയുന്നതുപോലെ, എല്ലാം വ്യക്തമായ കാഴ്ചയിലാണ്. വെബ് പേജുകൾ ഡീബഗ്ഗുചെയ്യുന്നതും വളരെ ലളിതമാക്കിയിരിക്കുന്നു: വെബ് സെർവറിലേക്ക് അയച്ച വിലാസം വെബ് ബ്രൗസറിന്റെ വിലാസ ബാറിൽ പ്രദർശിപ്പിക്കുന്നതിനാൽ, കൃത്യമായി എന്താണ് പാസ്സാക്കിയതെന്ന് നിങ്ങൾക്ക് എല്ലായ്പ്പോഴും കാണാൻ കഴിയും. (എന്നിരുന്നാലും, നിങ്ങൾ മനസ്സിലാക്കുന്നതുപോലെ, ഈ രീതി ഉപയോഗിച്ച് രഹസ്യാത്മക ഡാറ്റ കൈമാറാൻ കഴിയില്ല - നിങ്ങളുടെ പുറകിൽ നിൽക്കുന്ന എല്ലാവരും ഇത് കാണും.)

http://www.mysite.ru/bin/choose.exe?chapter=3

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, ഇവ യഥാർത്ഥത്തിൽ സെർവർ പ്രോഗ്രാമിലേക്കുള്ള ലിങ്കുകളാണ്, അതിൽ ഒരു ചാപ്റ്റർ പാരാമീറ്ററും അതിന്റെ മൂല്യവും അടങ്ങിയിരിക്കുന്നു. അത്തരമൊരു സൈറ്റിന്റെ മറ്റെല്ലാ പേജുകളും സ്വീകരിച്ച പാരാമീറ്ററുകളെ അടിസ്ഥാനമാക്കി സെർവർ പ്രോഗ്രാം ചലനാത്മകമായി രൂപപ്പെടുത്തിയിരിക്കുന്നു എന്നാണ് ഇതിനർത്ഥം. ഈ തത്വം ഉപയോഗിച്ച്, ഡയറക്‌ടറി സൈറ്റുകൾ, പ്രോഗ്രാം കാറ്റലോഗ് സൈറ്റുകൾ, ഇലക്ട്രോണിക് സ്റ്റോറുകൾ, കൂടാതെ വലിയ അളവിലുള്ള ക്ലാസിഫൈഡ് വിവരങ്ങൾ അടങ്ങിയ മറ്റ് സൈറ്റുകൾ എന്നിവ നിർമ്മിക്കപ്പെടുന്നു.

നിർഭാഗ്യവശാൽ, GET രീതിക്ക് ഒരു വലിയ പോരായ്മയുണ്ട്: ഇതിന് വലിയ അളവിലുള്ള ഡാറ്റ കൈമാറാൻ കഴിയില്ല. ഒരു ഇന്റർനെറ്റ് വിലാസത്തിന്റെ ദൈർഘ്യത്തിൽ മാനദണ്ഡങ്ങൾ ഏർപ്പെടുത്തിയിരിക്കുന്ന പരിമിതിയാണ് ഇതിന് കാരണം: 256 പ്രതീകങ്ങളിൽ കൂടരുത്. സെർവർ പ്രോഗ്രാമിന്റെ യഥാർത്ഥ വിലാസത്തിന്റെ ദൈർഘ്യം ഇവിടെ നിന്ന് കുറയ്ക്കുക - നിങ്ങളുടെ ഡാറ്റയുടെ അനുവദനീയമായ പരമാവധി വലുപ്പം നിങ്ങൾക്ക് ലഭിക്കും. GET രീതിയുടെ രണ്ടാമത്തെ പോരായ്മ അതിന്റെ ഗുണങ്ങളുടെ മറുവശമാണ്. അത് അയയ്‌ക്കുന്ന ഡാറ്റ പൊതുവായി കാണാവുന്നതും വെബ് ബ്രൗസറിന്റെ വിലാസ ബാറിൽ എളുപ്പത്തിൽ വായിക്കാൻ കഴിയുന്നതുമാണ്.

സെർവർ പ്രോഗ്രാമിലേക്ക് അയച്ച ഡാറ്റ വളരെ ചെറുതും രഹസ്യവുമല്ലെങ്കിൽ GET രീതി ഉപയോഗിക്കണം. പ്രത്യേകിച്ചും, സെർവർ പ്രോഗ്രാമിന്റെ അടിസ്ഥാനത്തിൽ നിർമ്മിച്ച സൈറ്റുകളിലെ സെർച്ച് എഞ്ചിനുകളിലേക്ക് കീവേഡുകൾ അയയ്ക്കാൻ ഇത് ഉപയോഗിക്കുന്നു (മുകളിൽ കാണുന്ന)മുതലായവ. നിങ്ങൾക്ക് വലിയതോ രഹസ്യാത്മകമോ ആയ ഡാറ്റ അയയ്‌ക്കണമെങ്കിൽ, POST എന്ന് വിളിക്കുന്ന രണ്ടാമത്തെ ട്രാൻസ്മിഷൻ രീതി ഉപയോഗിക്കുക.

രീതി പോസ്റ്റ്അതേ HTTP അഭ്യർത്ഥനയിൽ സെർവർ പ്രോഗ്രാമിലേക്ക് ഡാറ്റ കൈമാറുന്നു, പക്ഷേ ഇന്റർനെറ്റ് വിലാസത്തിന്റെ ഭാഗമായിട്ടല്ല, അധിക ഡാറ്റ എന്ന് വിളിക്കപ്പെടുന്ന രൂപത്തിൽ. അധിക ഡാറ്റയുടെ വലുപ്പം പരിമിതമല്ലാത്തതിനാൽ (കുറഞ്ഞത് അത് വളരെ വലുതായിരിക്കാം), നിങ്ങൾക്ക് ആവശ്യമുള്ളതെന്തും ഏത് അളവിലും കൈമാറാൻ കഴിയും. പ്രത്യേകിച്ചും, ഫയലുകൾ പോലും ഈ രീതിയിൽ വെബ് സെർവറിലേക്ക് മാറ്റാൻ കഴിയും.

POST രീതിയുടെ പ്രയോജനങ്ങൾ: കൈമാറ്റം ചെയ്യപ്പെടുന്ന ഡാറ്റയുടെ അളവിൽ പരിധിയില്ല, അത് "അദൃശ്യമാണ്". പോരായ്മകൾ: ഡാറ്റ ഡീക്രിപ്റ്റ് ചെയ്യുന്നതിനുള്ള ബുദ്ധിമുട്ടും ഡീബഗ്ഗിംഗിലെ ബുദ്ധിമുട്ടും. POST രീതി കൈമാറാൻ ഉപയോഗിക്കുന്നു, ഉദാഹരണത്തിന്, വ്യക്തിഗത ഡാറ്റ, ഇലക്ട്രോണിക് സ്റ്റോറുകളിലെ ഉപഭോക്താക്കളുടെ വിലാസങ്ങൾ, സാഹിത്യ കൃതികൾhttp://www.stihi.ru, http://www.proza.ru തുടങ്ങിയ സൈറ്റുകളിലേക്കുള്ള ആക്സസ്. പൊതുവേ, വലിയ വോള്യങ്ങളുള്ള ഒന്ന്.

അവർ പറയുന്നതുപോലെ, WWWC കമ്മിറ്റി GET രീതി പൂർണ്ണമായും ഉപേക്ഷിച്ച് POST രീതി ഉപയോഗിച്ച് എല്ലാ ഡാറ്റയും കൈമാറാൻ ഉദ്ദേശിക്കുന്നു. ഇതുവരെ, GET രീതി പുതുതായി സൃഷ്ടിച്ച സൈറ്റുകളിൽ ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്തിട്ടില്ലെന്ന് പ്രഖ്യാപിച്ചിരുന്നു, എന്നാൽ യഥാർത്ഥത്തിൽ ഇത് ഇപ്പോഴും വെബ് ബ്രൗസറുകൾ പിന്തുണയ്ക്കുന്നു.

അതിനാൽ സെർവർ പ്രോഗ്രാമുകളെക്കുറിച്ചുള്ള എല്ലാം ഞങ്ങൾ കണ്ടെത്തി. ശരി, ഒരുപക്ഷേ എല്ലാം അല്ലായിരിക്കാം, പക്ഷേ ഇപ്പോൾ ഇത് ഞങ്ങൾക്ക് മതിയാകും. ഇതെല്ലാം ഡ്രീംവീവർ എംഎക്സ് എത്രത്തോളം പൂർണമായി പിന്തുണയ്ക്കുന്നു എന്നതിനെക്കുറിച്ച് ഇപ്പോൾ സംസാരിക്കാം.

സെർവർ-സൈഡ് പ്രോഗ്രാമിംഗ് - ഡ്രീംവീവർ സമീപനം

സെർവർ പ്രോഗ്രാമുകൾ എഴുതുന്നത് ബുദ്ധിമുട്ടാണോ? അതെ, ബുദ്ധിമുട്ടാണ്. ഒരുപക്ഷേ വെബ് പേജുകളേക്കാൾ ബുദ്ധിമുട്ടാണ്.

എന്നിരുന്നാലും, നമുക്ക് എത്ര തവണ HTML കോഡ് സ്വമേധയാ എഴുതേണ്ടി വന്നുവെന്ന് ഓർക്കുന്നുണ്ടോ? വളരെ അപൂർവമാണ്, അല്ലേ? ദൃശ്യപരമായി പേജുകൾ സൃഷ്‌ടിക്കുന്നതിന് സൗകര്യപ്രദമായ ഒരു ഇന്റർഫേസ് നൽകിക്കൊണ്ട് ഡ്രീംവീവർ ഇതിൽ നിന്ന് ഞങ്ങളെ ശ്രദ്ധാപൂർവ്വം സംരക്ഷിച്ചു. ഞങ്ങൾ ലളിതമായി ടെക്‌സ്‌റ്റ് എഴുതി, അത് ഫോർമാറ്റ് ചെയ്‌തു, പേജിൽ ഇമേജുകൾ, ടേബിളുകൾ, പേജ് ഘടകങ്ങളിൽ പെരുമാറ്റരീതികൾ പ്രയോഗിച്ചു തുടങ്ങിയവ. ഒറ്റവാക്കിൽ പറഞ്ഞാൽ, ഞങ്ങൾക്ക് സുഖം തോന്നി.

നമ്മൾ ഇപ്പോൾ സെർവർ പ്രോഗ്രാമുകൾ സ്വമേധയാ എഴുതേണ്ടിവരുമോ?! ഇല്ല, ഒട്ടും ആവശ്യമില്ല.

അനുഭവപരിചയമില്ലാത്ത ഉപയോക്താക്കൾക്കും പൊതുവായി ജാവാസ്ക്രിപ്റ്റ് കോഡ് കൈകാര്യം ചെയ്യാൻ ആഗ്രഹിക്കാത്തവർക്കും ഡ്രീംവീവർ പെരുമാറ്റം എന്ന് വിളിക്കപ്പെടുന്നവ നൽകുന്നുവെന്ന് ഇതിനകം സൂചിപ്പിച്ചിട്ടുണ്ട്. പെരുമാറ്റം- ഇതൊരു റെഡിമെയ്ഡ് സ്ക്രിപ്റ്റാണ്, പ്രൊഫഷണൽ പ്രോഗ്രാമർമാർ എഴുതിയതും, പാനൽ പെരുമാറ്റ മെനുവിൽ ഉപയോക്താവ് ഈ സ്വഭാവം തിരഞ്ഞെടുത്തതിന് ശേഷം, ഡ്രീംവീവർ തന്നെ വെബ് പേജ് കോഡിൽ ഇടുന്നു പെരുമാറ്റങ്ങൾ.പേജ് കോഡിലെ ഒരു പ്രത്യേക സ്ഥലത്ത് ഈ അല്ലെങ്കിൽ ആ പ്രവർത്തനം നടത്തുന്ന ഒരു സ്ക്രിപ്റ്റ് സ്ഥാപിക്കുന്നതിനെക്കുറിച്ച് ഉപയോക്താവ് വിഷമിക്കേണ്ടതില്ല; പിശകുകൾക്കായി ഈ സ്ക്രിപ്റ്റ് പരിശോധിക്കുകയും മറ്റ് സ്ക്രിപ്റ്റുകളുമായി ഇത് ഏകോപിപ്പിക്കുകയും ചെയ്യേണ്ടതില്ല. ഡ്രീംവീവർ ഇതെല്ലാം ചെയ്യുന്നത് അവനുവേണ്ടിയാണ്.

വാസ്തവത്തിൽ, സെർവർ പ്രോഗ്രാമിംഗിൽ ഉപയോഗിക്കുന്ന പ്രവർത്തനങ്ങളുടെ കൂട്ടം വളരെ ചെറുതാണ്. ഡാറ്റാബേസ് തുറക്കുക, അതിൽ നിന്ന് കുറച്ച് ഡാറ്റ നേടുക, പേജിൽ പ്രദർശിപ്പിക്കുക, പുതിയ ഡാറ്റ എഴുതുക - മറ്റെന്താണ് വേണ്ടത്!

തീർച്ചയായും, നിങ്ങൾക്ക് ചില ഫാൻസി സ്റ്റഫ് ചെയ്യണമെങ്കിൽ, സെർവർ പേജുകൾ കൈകൊണ്ട് എഴുതേണ്ടി വരും. പക്ഷേ, നിങ്ങൾ കാണുന്നു, ഇത് പലപ്പോഴും സംഭവിക്കുന്നില്ല.

അങ്ങനെ ഞങ്ങൾ രണ്ടു കാര്യങ്ങൾ കണ്ടെത്തി. ആദ്യം, Dreamweaver MX സെർവർ സൈഡ് വെബ് പേജുകൾ സൃഷ്ടിക്കുന്നതിനെ പിന്തുണയ്ക്കുന്നു. രണ്ടാമതായി, അവയിൽ സ്ക്രിപ്റ്റുകൾ ഇടാൻ ഇത് നിങ്ങൾക്ക് പരിചിതമായ പെരുമാറ്റങ്ങൾ ഉപയോഗിക്കുന്നു. സെർവർ-സൈഡ് സാഹചര്യങ്ങൾക്കായി ഡ്രീംവീവർ ഒരു വലിയ കൂട്ടം പെരുമാറ്റങ്ങൾ വാഗ്ദാനം ചെയ്യുന്നു, അത് നിങ്ങൾക്ക് ആരംഭിക്കാൻ മതിയാകും.

ഏത് സെർവർ പേജുകളാണ് ഡ്രീംവീവർ നിങ്ങളെ സൃഷ്ടിക്കാൻ അനുവദിക്കുന്നതെന്ന് കണ്ടറിയണം. കൂടുതൽ കൃത്യമായി പറഞ്ഞാൽ, സെർവർ പേജുകൾ സൃഷ്ടിക്കുന്നതിനുള്ള സാങ്കേതികവിദ്യകൾ ഇത് നിങ്ങളെ ഉപയോഗിക്കാൻ അനുവദിക്കുന്നു. അത്തരം നാല് സാങ്കേതികവിദ്യകളുണ്ട്, അവ ഇപ്പോൾ പട്ടികപ്പെടുത്തും.

  1. എ.എസ്.പി. ഈ സാങ്കേതികവിദ്യ നിങ്ങൾക്ക് ഇതിനകം പരിചിതമാണ്.
  2. ASP.NET. എഎസ്പിയുടെ കൂടുതൽ വികസനം.
  3. PHP. ഓപ്പൺ സോഴ്‌സ് ടെക്‌സ്‌റ്റുകൾ ഉപയോഗിച്ച് സൗജന്യ സാങ്കേതികവിദ്യ വിതരണം ചെയ്യുന്നു. അപ്പാച്ചെ പോലെയുള്ള സൗജന്യ വെബ് സെർവറുകളിൽ വളരെ ജനപ്രിയവും പലപ്പോഴും ഉപയോഗിക്കുന്നു.
  4. മാക്രോമീഡിയ കോൾഡ് ഫ്യൂഷൻ. മാക്രോമീഡിയയുടെ സ്വന്തം വികസനം.

ഏതാണ് നിങ്ങൾ തിരഞ്ഞെടുക്കേണ്ടത്? എല്ലാത്തിനുമുപരി, ഞങ്ങൾ വെബ് പേജുകളുടെ ഉദാഹരണങ്ങൾ സൃഷ്ടിക്കേണ്ടതുണ്ട്.

നമുക്ക് ASP തിരഞ്ഞെടുക്കാം. അതുകൊണ്ടാണ്.

സെർവർ സൈഡ് പേജുകളിൽ പ്രവർത്തിക്കാൻ, ഞങ്ങൾക്ക് ഒരു വെബ് സെർവർ ആവശ്യമാണ്. ഇത് കൂടാതെ, സെർവർ പേജുകൾ പ്രവർത്തിക്കില്ല. വിൻഡോസിന്റെ കൂടുതലോ കുറവോ ആയ എല്ലാ പുതിയ പതിപ്പുകളും ഒരു ചെറിയ വെബ് സെർവറിലാണ് വരുന്നതെന്ന് ഒരുപക്ഷേ നിങ്ങൾക്കറിയാം. Windows 95/98/ME സിസ്റ്റങ്ങളിൽ ഇത് വ്യക്തിഗത വെബ് സെർവറും Windows NT/2000/XP-യിൽ ഇത് ഇന്റർനെറ്റ് ഇൻഫർമേഷൻ സെർവറുമാണ്. സെർവർ പ്രോഗ്രാമിംഗ് പരീക്ഷിക്കാൻ അതിന്റെ കഴിവുകൾ മതിയാകും.

അതിനാൽ, ഈ വെബ് സെർവർ ASP സാങ്കേതികവിദ്യയെ പൂർണ്ണമായി പിന്തുണയ്ക്കുന്നു. നിങ്ങൾക്ക് സജീവമായ സെർവർ പേജുകൾ എഴുതാനും അതിന് കീഴിൽ അവ നടപ്പിലാക്കാനും കഴിയും. കൂടാതെ നിങ്ങൾക്ക് അധിക ഘടകങ്ങളൊന്നും ഡൗൺലോഡ് ചെയ്യേണ്ടതില്ല - നിങ്ങൾക്ക് ആവശ്യമുള്ളതെല്ലാം ഇതിനകം തന്നെ Windows വിതരണ കിറ്റിൽ ഉൾപ്പെടുത്തിയിട്ടുണ്ട്. അതിനാലാണ് എഎസ്പിയെ തിരഞ്ഞെടുത്തത്.

നിലവിൽ ഒരു വെബ് സെർവറും ASP.NET സാങ്കേതികവിദ്യയെ പിന്തുണയ്ക്കുന്നില്ല; ഈ സാങ്കേതികവിദ്യയെ പിന്തുണയ്ക്കുന്ന ഒരു ഉൽപ്പന്നം പോലും മൈക്രോസോഫ്റ്റ് ഇതുവരെ പുറത്തിറക്കിയിട്ടില്ല. PHP പേജുകൾക്കൊപ്പം പ്രവർത്തിക്കാൻ, നിങ്ങൾ ഇന്റർനെറ്റിൽ ഒരു PHP ഹാൻഡ്‌ലർ അടങ്ങിയ സാമാന്യം വലിയ വിതരണ കിറ്റ് തിരയുകയും ഡൗൺലോഡ് ചെയ്യുകയും വേണം, തുടർന്ന് അത് സജ്ജീകരിക്കാൻ ധാരാളം സമയം ചെലവഴിക്കും. കോൾഡ്ഫ്യൂഷൻ സാങ്കേതികവിദ്യയെ സംബന്ധിച്ചിടത്തോളം, ഇതിനായി നിങ്ങൾക്ക് ആയിരക്കണക്കിന് ഡോളർ ചെലവഴിക്കാൻ സാധ്യതയില്ല. അതിനാൽ ഞങ്ങൾക്ക് പ്രായോഗികമായി ഓപ്ഷനുകളൊന്നുമില്ല.

ഡാറ്റാബേസുകളിലേക്കുള്ള ആമുഖം

ഈ അധ്യായത്തിൽ നമ്മൾ അവസാനമായി നോക്കുന്നത് ഡാറ്റാബേസുകളും അവയ്‌ക്കൊപ്പം പ്രവർത്തിക്കുന്നതുമാണ്. സെർവർ പ്രോഗ്രാമുകളുടെ സിംഹഭാഗവും ഡാറ്റാബേസുകളിൽ പ്രവർത്തിക്കുന്നതിനാൽ, ഈ അറിവ് ഞങ്ങൾക്ക് വളരെ ഉപയോഗപ്രദമാകും. തീർച്ചയായും, ഞങ്ങൾ എല്ലാ ഡാറ്റാബേസ് സാങ്കേതികവിദ്യകളും വിശദമായി പരിഗണിക്കില്ല, പക്ഷേ, മുമ്പത്തെപ്പോലെ, ഞങ്ങൾ ഒരു ഹ്രസ്വ വിദ്യാഭ്യാസ പരിപാടിയിലേക്ക് സ്വയം പരിമിതപ്പെടുത്തും. നിങ്ങൾക്ക് ഇതിൽ താൽപ്പര്യമുണ്ടെങ്കിൽ ആവശ്യമായ പുസ്തകങ്ങളും വാചകങ്ങളും ഇന്റർനെറ്റിൽ തിരയാൻ നിങ്ങൾക്ക് കഴിയും.

എന്താണ് സംഭവിക്കുന്നത് ഡാറ്റാബേസ്?പ്രത്യേകമായി ഒന്നുമില്ല, ഒരു സാധാരണ ഫയൽ അല്ലെങ്കിൽ ഒരു പ്രത്യേക രീതിയിൽ ഓർഗനൈസുചെയ്‌ത ഡാറ്റ അടങ്ങിയ ഫയലുകളുടെ ഗ്രൂപ്പ് മാത്രം. ഒരു ഡാറ്റാബേസിൽ നിരവധി ഫയലുകൾ അടങ്ങിയിട്ടുണ്ടെങ്കിൽ, അത് ഇപ്പോഴും ഒരൊറ്റ എന്റിറ്റിയായി തുടരും. ഡാറ്റാബേസിൽ അടങ്ങിയിരിക്കുന്ന ഡാറ്റ ഒരു പ്രത്യേക പ്രോഗ്രാം ഉപയോഗിച്ച് പ്രോസസ്സ് ചെയ്യുന്നു ഡാറ്റാബേസ് പ്രോസസർ.ഡാറ്റാബേസ് പ്രോസസർ ഒന്നുകിൽ ഡാറ്റ ഉപയോഗിക്കുന്ന പ്രോഗ്രാമിന്റെ അതേ കമ്പ്യൂട്ടറിൽ പ്രവർത്തിക്കുന്ന ഒരു പ്രത്യേക പ്രോഗ്രാമാകാം അല്ലെങ്കിൽ അതിന്റെ ഭാഗമാകാം.

ഡാറ്റാബേസുകൾ വ്യത്യസ്ത രീതികളിൽ ക്രമീകരിക്കാം. എന്നാൽ ഇന്ന് ഉപയോഗിക്കുന്ന ഭൂരിഭാഗം ഡാറ്റാബേസുകളും ബന്ധമുള്ള.അത്തരം ഡാറ്റാബേസുകളിലെ ഡാറ്റ പട്ടികകളുടെ രൂപത്തിൽ ക്രമീകരിച്ചിരിക്കുന്നു. അത്തരം ഓരോ ഡാറ്റാബേസിലും ഒന്നോ അതിലധികമോ പട്ടികകൾ ഉൾപ്പെട്ടേക്കാം; സങ്കീർണ്ണമായ ഡാറ്റാബേസുകളിൽ സാധാരണയായി നിരവധി പട്ടികകൾ പരസ്പരം ബന്ധിപ്പിച്ചിരിക്കുന്നു.

ഓരോ പട്ടികയിലും, സെല്ലുകളായി വിഭജിച്ചിരിക്കുന്ന ഒരു കൂട്ടം വരികൾ അടങ്ങിയിരിക്കുന്നു, കൂടാതെ ഓരോ സെല്ലിലും ഒരു പ്രത്യേക തരം ഡാറ്റ അടങ്ങിയിരിക്കുന്നു: ടെക്സ്റ്റ്, നമ്പറുകൾ, ലോജിക്കൽ മൂല്യങ്ങൾ, തീയതികൾ മുതലായവ. ഡാറ്റാബേസ് പട്ടികകളുടെ നിരകളെ വിളിക്കുന്നു. രേഖകള്,കൂടാതെ ഓരോ റെക്കോർഡും വിഭജിച്ചിരിക്കുന്ന സെല്ലുകളാണ് വയലുകൾ.ഇതിനകം സൂചിപ്പിച്ചതുപോലെ, ഓരോ ഫീൽഡിനും ഒരു പ്രത്യേക തരം ഉണ്ട്, അവ നിർബന്ധമായും സജ്ജീകരിച്ചിരിക്കുന്നു പേര്,ഇതിലൂടെ ഡാറ്റയുമായി പ്രവർത്തിക്കുന്ന പ്രോഗ്രാം ഈ ഫീൽഡിലേക്ക് പ്രവേശിക്കുന്നു.

ചിത്രത്തിൽ. 15.1 അത്തരമൊരു പട്ടികയുടെ ഒരു ഉദാഹരണം കാണിക്കുന്നു. നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, ഈ പട്ടികയിൽ മൂന്ന് ഫീൽഡുകൾ ഉണ്ട്:

  • NAME - സെർവർ പേജുകൾ സൃഷ്ടിക്കുന്നതിനുള്ള സാങ്കേതികവിദ്യയുടെ പേര്, ടെക്സ്റ്റ്;
  • PRICE - ഹാൻഡ്‌ലർ പ്രോഗ്രാമിന്റെ വില, സംഖ്യ;
  • ഉപയോഗിക്കുന്നത് - ഈ സാങ്കേതികവിദ്യ നിലവിൽ പിന്തുണയ്ക്കുന്നുണ്ടോ, ലോജിക്കൽ ("അതെ-ഇല്ല").

കൂടാതെ, ഈ പട്ടികയിൽ Dreamweaver MX പിന്തുണയ്ക്കുന്ന സാങ്കേതികവിദ്യകളുമായി ബന്ധപ്പെട്ട നാല് എൻട്രികൾ ഉണ്ട്: ASP, ASP.NET, PHP, ColdFusion.

മിക്കപ്പോഴും ടേബിൾ ഫീൽഡുകളിലൊന്ന് ചെയ്യാറുണ്ട് താക്കോൽ.ഒരു റെക്കോർഡ് അദ്വിതീയമായി തിരിച്ചറിയാൻ കീ ഫീൽഡ് മൂല്യം ഉപയോഗിക്കുന്നു. തീർച്ചയായും, എല്ലാ ടേബിൾ റെക്കോർഡുകളുടെയും പ്രധാന ഫീൽഡുകളിൽ ഈ കേസിൽ അദ്വിതീയ മൂല്യങ്ങൾ അടങ്ങിയിരിക്കണം. ചിലപ്പോൾ കീ ഫീൽഡ് വിളിക്കുന്നു കൌണ്ടർ ഫീൽഡ്.

ഒരു ഡാറ്റാബേസിൽ ഉൾപ്പെടുത്തിയിരിക്കുന്ന പട്ടികയുടെ ഉദാഹരണം

ഒരു പ്രത്യേക ഫീൽഡ് എങ്ങനെ ആക്സസ് ചെയ്യാമെന്ന് നിങ്ങൾക്കറിയാം - അതിന്റെ പേരിൽ. ആവശ്യമായ റെക്കോർഡ് എനിക്ക് എങ്ങനെ ആക്സസ് ചെയ്യാം?

ഒരു സമയത്ത് ഡാറ്റാബേസ് ഡാറ്റ ഉപയോഗിക്കുന്ന ഒരു പ്രോഗ്രാമിന് ഒരു റെക്കോർഡ് ഉപയോഗിച്ച് മാത്രമേ പ്രവർത്തിക്കാൻ കഴിയൂ എന്നതാണ് വസ്തുത നിലവിലെ.ഇതിന് ആ റെക്കോർഡിലെ ഫീൽഡുകളിൽ നിന്ന് ഡാറ്റ വീണ്ടെടുക്കാനും അവയിൽ മാറ്റം വരുത്താനും കഴിയും. എന്നാൽ മറ്റൊരു റെക്കോർഡിന്റെ ഡാറ്റ ലഭിക്കുന്നതിന്, പ്രോഗ്രാം ഒരു മൂവ് കമാൻഡ് നൽകണം. ഈ സാഹചര്യത്തിൽ, ഡാറ്റാബേസ് പ്രോസസർ ഒരു പ്രത്യേക നീക്കുന്നു നിലവിലെ റെക്കോർഡ് പോയിന്റർആവശ്യമുള്ള റെക്കോർഡിലേക്ക്, പ്രോഗ്രാമിന് അതിനൊപ്പം പ്രവർത്തിക്കാൻ കഴിയും.

പ്രോഗ്രാമിനും ഉപയോഗിക്കാം തിരയുകഏതെങ്കിലും മാനദണ്ഡം അനുസരിച്ച് ആവശ്യമുള്ള റെക്കോർഡ്. മിക്കപ്പോഴും, ഒരു കീ ഫീൽഡിന്റെ മൂല്യം ഉപയോഗിച്ചാണ് അത്തരമൊരു തിരയൽ നടത്തുന്നത്.

പുതിയത് ചേർക്കാനും അനാവശ്യ ടേബിൾ എൻട്രികൾ ഇല്ലാതാക്കാനുമുള്ള കഴിവും പ്രോഗ്രാമിനുണ്ട്. ഒരു പുതിയ റെക്കോർഡ് ചേർക്കുന്നതിന്, പ്രോഗ്രാം ഒരു റെക്കോർഡ് ചേർക്കുന്നതിനുള്ള കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യുകയും ആവശ്യമായ ഡാറ്റ അതിന്റെ ഫീൽഡുകളിലേക്ക് നൽകുകയും ചെയ്യുന്നു. ഒരു എൻട്രി ഇല്ലാതാക്കാൻ, പ്രോഗ്രാം ആദ്യം അത് നിലവിലുള്ളതാക്കുകയും തുടർന്ന് ഡിലീറ്റ് കമാൻഡ് നൽകുകയും വേണം.

പൊതുവേ, ഡാറ്റാബേസിൽ അടങ്ങിയിരിക്കുന്ന ഡാറ്റയുമായി പ്രവർത്തിക്കുന്നതിന്റെ ക്രമം ഇതുപോലെ കാണപ്പെടുന്നു:

  1. പ്രോഗ്രാം തുറക്കുന്നുഒരു ഓപ്പൺ ഓപ്പറേഷൻ നടത്തി ഡാറ്റാബേസ്. ഇതൊരു ആവശ്യമായ പ്രവർത്തനമാണ്, ഇത് കൂടാതെ ഡാറ്റാബേസ് ആക്സസ് ചെയ്യുന്നത് അസാധ്യമാണ്.
  2. പ്രോഗ്രാം ആവശ്യമുള്ള ഡാറ്റാബേസ് പട്ടിക തുറക്കുന്നു. ഇതിനുശേഷം, പ്രോസസർ അവളിലേക്ക് വിളിക്കപ്പെടുന്നവ തിരികെ നൽകുന്നു റെക്കോർഡ്സെറ്റ്(ഇംഗ്ലീഷിൽ -- റെക്കോർഡ്സെറ്റ്), പ്രോഗ്രാം പ്രവർത്തിക്കുന്നു.
  3. പ്രോഗ്രാം ഡാറ്റ ഉപയോഗിച്ച് യഥാർത്ഥ ജോലി ചെയ്യുന്നു.
  4. പ്രോഗ്രാം അടയ്ക്കുന്നുപട്ടിക, അതിനുശേഷം പ്രോസസർ മെമ്മറിയിൽ നിന്ന് ഈ പ്രോഗ്രാമുമായി ബന്ധപ്പെട്ട റെക്കോർഡുകളുടെ സെറ്റ് നീക്കം ചെയ്യുന്നു.
  5. പ്രോഗ്രാം ഡാറ്റാബേസ് അടയ്ക്കുന്നു, അതുമായുള്ള എല്ലാ കണക്ഷനുകളും തകർക്കുന്നു.

അവസാന രണ്ട് പ്രവർത്തനങ്ങൾ - ടേബിളും ഡാറ്റാബേസും അടയ്ക്കുന്നത് - അവ തുറക്കുന്നത് പോലെ തന്നെ ആവശ്യമാണെന്ന് ദയവായി ശ്രദ്ധിക്കുക. ഡാറ്റയുമായി പ്രവർത്തിക്കുന്ന ഒരു പ്രോഗ്രാമിനായി മെമ്മറിയിൽ പ്രോസസർ സൃഷ്ടിച്ച ഒരു കൂട്ടം റെക്കോർഡുകളും മറ്റ് ഡാറ്റാ ഘടനകളും ധാരാളം സിസ്റ്റം ഉറവിടങ്ങൾ എടുക്കുന്നു എന്നതാണ് വസ്തുത. അതിനാൽ, നിങ്ങൾ ഒരു പട്ടികയിലോ ഡാറ്റാബേസിലോ പ്രവർത്തിച്ചുകഴിഞ്ഞാൽ, മറ്റ് ഉപയോക്താക്കൾക്കായി ഉറവിടങ്ങൾ സ്വതന്ത്രമാക്കുന്നതിന് അത് ഉടൻ അടയ്ക്കുക.

അടുത്തിടെ, അവർ വലിയ ജനപ്രീതി നേടിയിട്ടുണ്ട് ഡാറ്റാബേസ് സെർവറുകൾ.ഇവ സാധാരണ ഡാറ്റാ പ്രോസസ്സറുകളാണ്, എന്നാൽ സെർവർ പ്രോഗ്രാമുകളുടെ രൂപത്തിൽ നടപ്പിലാക്കുകയും സെർവർ കമ്പ്യൂട്ടറുകളിൽ പ്രവർത്തിക്കുകയും ചെയ്യുന്നു. പരമ്പരാഗത ഡാറ്റാ പ്രോസസ്സറുകളെ അപേക്ഷിച്ച് അവയുടെ ഗുണങ്ങൾ:

  • അവ ഒരു സെർവർ കമ്പ്യൂട്ടറിൽ പ്രവർത്തിക്കുന്നു, ഇത് സാധാരണയായി ക്ലയന്റ് കമ്പ്യൂട്ടറിനേക്കാൾ ശക്തമാണ്, അതിനാൽ അവയുടെ പ്രകടനം ഉയർന്നതാണ്;
  • ആക്സസ് കൺട്രോളിലൂടെയും മറ്റ് ചില സംവിധാനങ്ങളിലൂടെയും അവർ കൂടുതൽ ഡാറ്റ സുരക്ഷ നൽകുന്നു;
  • ഈയിടെ പ്രത്യക്ഷപ്പെട്ട കൂടുതൽ വ്യത്യസ്‌തമായ പുതുമകളെ അവർ പിന്തുണയ്ക്കുന്നു എന്ന അർത്ഥത്തിൽ അവർ കൂടുതൽ ശക്തരാണ്.

ഡാറ്റാബേസ് സെർവറിലേക്കും ഡാറ്റയിലേക്കും പ്രവേശനം നേടുന്നതിന്, ക്ലയന്റ് പ്രോഗ്രാം അതിലേക്ക് പ്രത്യേക കമാൻഡുകൾ അയയ്ക്കുന്നു. അത്തരം കമാൻഡുകൾ രചിക്കുന്നതിന്, ഒരു അന്വേഷണ വിവരണ ഭാഷ വികസിപ്പിച്ചെടുത്തു SQL(ഘടനാപരമായ അന്വേഷണ ഭാഷ - ഘടനാപരമായ അന്വേഷണ ഭാഷ). ഈ ഭാഷയിൽ എഴുതിയ കമാൻഡുകൾ ഉപയോഗിച്ച്, ക്ലയന്റ് പ്രോഗ്രാമിന് ആവശ്യമുള്ള പട്ടിക തുറക്കാനും ഡാറ്റ വായിക്കാനും ചേർക്കാനും മാറ്റാനും ഒരു റെക്കോർഡ് ഇല്ലാതാക്കാനും ആത്യന്തികമായി ഡാറ്റാബേസ് ആവശ്യമില്ലാത്തപ്പോൾ അത് അടയ്ക്കാനും കഴിയും.

ഡാറ്റാബേസ് സെർവറുകൾ ഇപ്പോൾ പലപ്പോഴും ഉപയോഗിക്കുന്നു, വെബ് പ്രോഗ്രാമിംഗിൽ - മിക്കവാറും എല്ലായിടത്തും. ഒറാക്കിൾ, മൈക്രോസോഫ്റ്റ് എസ്‌ക്യുഎൽ സെർവർ, സൈബേസ്, ശക്തമായ ഐബിഎം ഡിബി2, ബോർലാൻഡ് ഇന്റർബേസ് (റഷ്യയിൽ ഇത് ഐബേസ് എന്ന പേരിലാണ് വിൽക്കുന്നത്), വർദ്ധിച്ചുവരുന്ന പ്രചാരത്തിലുള്ള പോസ്റ്റ്‌ഗ്രസ്‌എസ്‌ക്യുഎൽ, ഓപ്പൺ സോഴ്‌സായി വിതരണം ചെയ്യുന്ന സൗജന്യ മൈഎസ്‌ക്യുഎൽ സെർവർ എന്നിവ ഏറ്റവും ജനപ്രിയമായവയാണ്. അവസാനത്തെ സെർവർ, അപ്പാച്ചെ വെബ് സെർവറും പിഎച്ച്പി സെർവർ പേജ് സാങ്കേതികവിദ്യയുമായി സംയോജിച്ച് പലപ്പോഴും ഉപയോഗിക്കുന്നു.

ഡാറ്റാബേസുകളെയും സെർവർ പ്രോഗ്രാമിംഗിനെയും കുറിച്ചുള്ള കഥ ഇത് അവസാനിപ്പിക്കുന്നു.

വെബ് പേജുകളുടെ പ്രത്യേക ഘടകങ്ങൾ - ഫോമുകൾ - സെർവർ പ്രോഗ്രാമിലേക്ക് ഡാറ്റ അയയ്ക്കുമെന്ന് ഇതിനകം പറഞ്ഞിട്ടുണ്ട്. അടുത്ത അധ്യായത്തിൽ ഡ്രീംവീവറിൽ ഫോമുകളെക്കുറിച്ചും അവരോടൊപ്പം പ്രവർത്തിക്കുന്നതിനെക്കുറിച്ചും ഞങ്ങൾ സംസാരിക്കും. അതിനുശേഷം മാത്രമേ ഞങ്ങൾ സെർവർ പ്രോഗ്രാമിംഗിലേക്ക് പോകൂ.

അഭിപ്രായങ്ങൾക്കും റേറ്റിംഗുകൾക്കും തിരുത്തലുകൾക്കും ഞാൻ മുൻകൂട്ടി നന്ദിയുള്ളവനാണ് (ലക്ഷ്യമുള്ള പ്രേക്ഷകർ ഡമ്മികളാണെന്ന് കണക്കിലെടുക്കുന്നു).

എല്ലാ ഉപയോക്താക്കൾക്കും, ഏത് സാഹചര്യത്തിലും, ഒരേ കാര്യം കാണിക്കണമെങ്കിൽ, അനുബന്ധ ഫയൽ സെർവറിൽ സ്ഥാപിക്കാൻ കഴിയും, എന്നാൽ സാധാരണയായി ഇത് മതിയാകില്ല, നിങ്ങൾക്ക് ചില വൈവിധ്യങ്ങൾ വേണം. ഈ സാഹചര്യത്തിൽ, ഈ പ്രത്യേക സാഹചര്യത്തിൽ ആവശ്യമായ HTML ടെക്സ്റ്റ് സൃഷ്ടിക്കുന്ന ഒരു പ്രോഗ്രാം നിങ്ങൾ സെർവറിൽ പ്രവർത്തിപ്പിക്കേണ്ടതുണ്ട്. ഈ "സെർവർ" പ്രോഗ്രാമുകൾ (സ്ക്രിപ്റ്റുകൾ) എഴുതുന്നത്, പൊതുവേ, വെബ് വികസനത്തിന്റെ പ്രധാന ബിസിനസ്സാണ്; ഏത് പ്രോജക്റ്റിന്റെയും സങ്കീർണ്ണതയും ചെലവും സാധാരണയായി മറഞ്ഞിരിക്കുന്നത് അവയിലാണ്. പ്രോഗ്രാം പ്രവർത്തിക്കുന്നത് ഞങ്ങളുടെ സെർവറിലാണ്, അല്ലാതെ ഉപയോക്താവിന്റെ കമ്പ്യൂട്ടറിലല്ല, ടൂളുകളുടെ തിരഞ്ഞെടുപ്പ് പൂർണ്ണമായും നമ്മുടേതാണ്, അത്തരം പ്രോഗ്രാമുകൾ എഴുതിയിരിക്കുന്ന ഒരൊറ്റ ഭാഷയും ഇല്ല.

ഞങ്ങളുടെ സെർവറിന്റെ ഓപ്പറേറ്റിംഗ് സിസ്റ്റമാണ് എടുക്കേണ്ട ആദ്യത്തേതും പ്രധാനപ്പെട്ടതുമായ തീരുമാനം. സൈദ്ധാന്തികമായി, ഇത് എന്തും ആകാം, പ്രായോഗികമായി റഷ്യയിൽ 93% കേസുകളിൽ അവർ യുണിക്സ് ഉപയോഗിക്കുന്നു, 6.99% - വിൻഡോസ്, 0.01% - മറ്റെന്തെങ്കിലും. ഞാൻ പൂർണ്ണമായും വസ്തുനിഷ്ഠനല്ല, പക്ഷേ വിൻഡോസിന് അനുകൂലമായും രണ്ട് യുണിക്സിന് അനുകൂലമായും ഞാൻ ഒരു വാദവും കാണുന്നില്ല, അതിനാൽ നിങ്ങൾ എല്ലായ്പ്പോഴും അത് തിരഞ്ഞെടുക്കാൻ ഞാൻ ശുപാർശ ചെയ്യുന്നു. വാദം ഒന്ന്: കൂടുതൽ സാധാരണമായത് എല്ലായ്പ്പോഴും കൂടുതൽ സൗകര്യപ്രദമാണ്, ഹോസ്റ്റിംഗ് കണ്ടെത്തുന്നത് എളുപ്പമാണ്, ഒരു സ്പെഷ്യലിസ്റ്റിനെ കണ്ടെത്തുന്നത് എളുപ്പമാണ്, ചില ഉപടാസ്കുകൾക്ക് ഒരു റെഡിമെയ്ഡ് പരിഹാരം കണ്ടെത്തുന്നത് എളുപ്പമാണ്. വാദം രണ്ട്: Windows/MS SQL/... എന്നതിനായുള്ള ലൈസൻസുകളുടെ വില; അവിടെയുള്ള പണം അമിതമല്ല, പക്ഷേ ഇപ്പോഴും പൂജ്യത്തിൽ നിന്ന് വ്യത്യസ്തമാണ്. ഞങ്ങൾ OS ആയി Unix തിരഞ്ഞെടുത്തിട്ടുണ്ടെങ്കിൽ, അടുത്ത സ്വാഭാവിക ചോദ്യം - ഏത് നടപ്പിലാക്കൽ ഉപയോഗിക്കണം - തീർത്തും നിസ്സാരമാണ്, കൂടാതെ സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്ററുടെ വ്യക്തിപരമായ മുൻഗണനകളെ അടിസ്ഥാനമാക്കി തീരുമാനിക്കാവുന്നതാണ്.

രണ്ടാമത്തെ അടിസ്ഥാന തീരുമാനം പ്രോഗ്രാമിംഗ് ഭാഷയാണ്. ഇവിടെ തിരഞ്ഞെടുപ്പ് വളരെ വലുതാണ്. ഒന്നാമതായി, സാധാരണ വെബ് പ്രോഗ്രാമിംഗ് ജോലികൾക്ക് അനുയോജ്യമായ ഭാഷകളുടെ ഒരു മുഴുവൻ ക്ലാസ് ഉണ്ട് (അവയിലൊന്ന് അതിനായി പ്രത്യേകം കണ്ടുപിടിച്ചതാണ്) - "സ്ക്രിപ്റ്റിംഗ് ഭാഷകൾ". ഇപ്പോൾ ഇത് കുറഞ്ഞത് PHP, Perl, Ruby and Python ആണ്. ഏറ്റവും ലളിതമായ ഓൺലൈൻ സ്റ്റോറുകൾ മുതൽ vkontakte.ru വരെ, ഭൂരിഭാഗം സൈറ്റുകളും എഴുതിയിരിക്കുന്നത് അവയിലാണ്. കഴിവുകൾ, സൗകര്യങ്ങൾ, ഉൽപ്പാദനക്ഷമത, വികസന ഉപകരണങ്ങൾ, മറ്റ് ചില സൈദ്ധാന്തിക സൂചകങ്ങൾ എന്നിവയുടെ കാര്യത്തിൽ, അവ പരസ്പരം ഏകദേശം തുല്യമാണ്; പ്രധാന വ്യത്യാസം പ്രോഗ്രാമർമാരുടെ ലഭ്യതയാണ്. ഇപ്പോൾ, അളന്ന മാർക്കറ്റ് സൂചകങ്ങൾ ഇപ്രകാരമാണ്: റഷ്യയിലെ പി‌എച്ച്‌പി പ്രോഗ്രാമർമാരുടെ ഓരോ 100 റെസ്യൂമെകൾക്കും, 10 പേൾ, 2-3 റൂബി, പൈത്തൺ റെസ്യൂമുകൾ എന്നിവയുണ്ട്. നേരെമറിച്ച്, PHP പ്രോഗ്രാമർമാർ എന്ന് സ്വയം വിളിക്കുന്ന എല്ലാ ആളുകളിലും, 80% പേർ ഒരു പീരങ്കി ഷോട്ട് പോലെ കോഡ് തൊടാൻ അനുവദിക്കരുത്; പേൾ ഡെവലപ്പർമാർക്ക് ഈ കണക്ക് പകുതിയോളം വരും, റൂബിക്കും പൈത്തണിനും ഇതിലും കുറവാണ്. ആദ്യ നമ്പറുകൾ വസ്തുനിഷ്ഠവും വർക്കിംഗ് സൈറ്റുകളിൽ നിന്ന് എടുത്തതും വ്യക്തമാണ്, രണ്ടാമത്തേത് സോപാധികമായ ആത്മനിഷ്ഠമായ വിലയിരുത്തലാണ്, അത് നേരിട്ട് ഗുണിക്കാൻ കഴിയില്ല, എന്നാൽ ഏത് സാഹചര്യത്തിലും, പ്രോഗ്രാമർമാരുടെയും നല്ല പ്രോഗ്രാമർമാരുടെയും എണ്ണം ഈ ക്രമത്തിൽ ക്രമീകരിച്ചിരിക്കുന്നു: PHP, പേൾ, റൂബി അല്ലെങ്കിൽ പൈത്തൺ, അവയുടെ ശരാശരി നില നേരെ വിപരീതമാണ്. അതിനാൽ, ഞങ്ങൾക്ക് ധാരാളം ഡവലപ്പർമാരും സ്റ്റാഫ് വിറ്റുവരവുമുള്ള ഒരു വ്യാവസായിക പ്രോജക്റ്റ് ഉണ്ടെങ്കിൽ, ഞങ്ങൾ വെബ് ഭാഷകളിൽ നിന്ന് PHP തിരഞ്ഞെടുക്കേണ്ടതുണ്ട് (ചില പ്രാദേശിക കാരണങ്ങളാൽ പേൾ ഉപയോഗിക്കുന്നത് സ്വീകാര്യമാണ്). പ്രോജക്റ്റ് ചെറുതാണെങ്കിൽ, പ്രോഗ്രാമർ തീർച്ചയായും തനിച്ചായിരിക്കും, ഒരിക്കലും മാറില്ല, തുടർന്ന് തിരഞ്ഞെടുപ്പ് അവനെ ഏൽപ്പിക്കാം, കൂടാതെ റൂബി/പൈത്തണിന്റെ തിരഞ്ഞെടുപ്പ് ഒരു ശുഭാപ്തി ഘടകമായി മാറിയേക്കാം.

സ്ക്രിപ്റ്റിംഗ് ഭാഷകളുടെ പരിഗണിക്കപ്പെടുന്ന ഇരട്ട സഹോദരങ്ങൾക്ക് പുറമേ (അവയ്ക്കിടയിലുള്ള തിരഞ്ഞെടുപ്പ് പൂർണ്ണമായും സാമൂഹികമാണ്), വ്യത്യസ്ത സാങ്കേതിക സവിശേഷതകളും അതിനനുസരിച്ച് ഉപയോഗത്തിനുള്ള മറ്റ് സ്ഥലങ്ങളും ഉള്ള മറ്റുള്ളവരുമുണ്ട്.

സി ഭാഷ. പരമാവധി പ്രോഗ്രാമർ കൃത്യത ആവശ്യമുള്ള ഒരു ഭാഷ, ഏറ്റവും കുറച്ച് റെഡിമെയ്ഡ് സൊല്യൂഷനുകൾ ലഭ്യമായതും ഏറ്റവും മന്ദഗതിയിലുള്ള വികസന വേഗതയുള്ളതുമായ പിശകുകൾ കണ്ടെത്തുന്നത് ഏറ്റവും ബുദ്ധിമുട്ടാണ്. ഈ പോരായ്മകൾക്കെല്ലാം ഇത് ഒരു നേട്ടം മാത്രം നികത്തുന്നു: പ്രകടനം, പി‌എച്ച്‌പിയുടെയും അതിന്റെ അനലോഗുകളുടെയും പ്രകടനത്തേക്കാൾ മികച്ച നിരവധി ഓർഡറുകൾ. തത്വത്തിൽ, ഇരുമ്പ് ഇപ്പോൾ വിലകുറഞ്ഞതാണ്, പക്ഷേ അധ്വാനം ചെലവേറിയതാണ്, കൂടാതെ ഇത് വളരെ അപൂർവ്വമായി പ്രധാനമാണ്. പരമ്പരാഗതമായി, പ്രോജക്റ്റ് പ്രതിദിനം ഒരു ദശലക്ഷത്തിൽ താഴെ ഇംപ്രഷനുകൾ പ്രതീക്ഷിക്കുന്നുവെങ്കിൽ, നിങ്ങൾക്ക് സിയെക്കുറിച്ച് സുരക്ഷിതമായി മറക്കാൻ കഴിയും, എന്നാൽ കൂടുതൽ ഇംപ്രഷനുകൾ ഉണ്ടെങ്കിൽ, നിങ്ങൾ അതിനെക്കുറിച്ച് ചിന്തിക്കണം, നിരുപാധികമായി അത് സ്വീകരിക്കരുത്. ഉദാഹരണത്തിന്, liveinternet.ru കൌണ്ടർ സിയിൽ എഴുതിയിരിക്കുന്നു.

സി++ ഭാഷ. ഇതിന് സിയുടെ അതേ ദോഷങ്ങളുമുണ്ട്, എന്നാൽ കുറച്ച് വ്യക്തമായ രൂപത്തിൽ; പകരം ഇത് താരതമ്യപ്പെടുത്താവുന്നതും എന്നാൽ കുറഞ്ഞ ഉൽപ്പാദനക്ഷമതയും നൽകുന്നു. പ്രകടനം ഇപ്പോഴും ആവശ്യമുള്ളിടത്ത് സാധാരണയായി ഉപയോഗിക്കുന്നു, കൂടാതെ ബിസിനസ്സ് യുക്തി വളരെ സങ്കീർണ്ണവും ശാസ്ത്രീയവുമായി അതിരുകളുള്ളതുമാണ്. ഒരു മികച്ച ഉദാഹരണം തിരയൽ സേവനങ്ങളാണ്. സിയെ അതിന്റെ സ്ഥാനത്ത് പൂർണ്ണമായും മാറ്റിസ്ഥാപിക്കുന്നതിൽ നിന്ന് തടയുന്ന ഒരു പ്രധാന പോരായ്മ പിന്തുണയ്ക്കാത്ത കോഡിനുള്ള വലിയ സ്വാതന്ത്ര്യമാണ്. ടേബിൾ ലേഔട്ടിന്റെ കാര്യത്തിലെന്നപോലെ, എല്ലാവരും സിയിൽ ഏകദേശം ഒരേ രീതിയിൽ എഴുതുന്നു, കൂടാതെ കോഡ് ഔപചാരികവും പരിശോധിക്കാവുന്നതുമായ ഗുണനിലവാര ആവശ്യകതകൾ നിറവേറ്റുന്നുവെങ്കിൽ (മെമ്മറി ലീക്കുകൾ അനുവദിക്കുന്നില്ല, പിശകുകൾ ശരിയായി കൈകാര്യം ചെയ്യുന്നു മുതലായവ), അത് മിക്കവാറും എ. പൂർണ്ണമായും സ്വീകാര്യമായ ലെവലും അനൗപചാരികവും എന്നാൽ പ്രധാനപ്പെട്ടതുമായ സ്വഭാവസവിശേഷതകളായ "മനസ്സിലാക്കാൻ", "കോഹറൻസ്" എന്നിവയിൽ. എന്നാൽ C++ ൽ, എല്ലാ ഔപചാരിക ആവശ്യകതകളും നിരീക്ഷിച്ചുകൊണ്ട്, നിങ്ങൾക്ക് മഹത്തായതോ വെറുപ്പുളവാക്കുന്നതോ ആയ എന്തെങ്കിലും എഴുതാം. സ്വാഭാവികമായും രണ്ടാമത്തേത് കൂടുതൽ സാധാരണമാണ്.

ജാവ ഭാഷ. ഒരു സാങ്കേതിക വീക്ഷണകോണിൽ നിന്ന്, ഇത് C++ ൽ നിന്ന് വ്യത്യസ്തമാണ്, C++ C-ൽ നിന്ന് വ്യത്യസ്തമാണ്. അതായത്, C++-ൽ നിന്ന് Java-ലേക്കുള്ള പരിവർത്തനം അർത്ഥമാക്കുന്നത് ഉൽപ്പാദനക്ഷമതയുടെ മറ്റൊരു പകുതി ക്രമം നഷ്ടപ്പെടുന്നു, എന്നാൽ വികസന വേഗതയിൽ ഒരു പുതിയ നേട്ടം. റെഡിമെയ്ഡ് സൊല്യൂഷനുകളുടെ ലൈബ്രറി ഇതിനകം സ്ക്രിപ്റ്റിംഗ് ഭാഷകളുമായി താരതമ്യപ്പെടുത്താവുന്നതാണ്. ഒരു സാമൂഹിക വീക്ഷണകോണിൽ, ജാവ പ്രോഗ്രാമർമാരുടെ എണ്ണം C++ പ്രോഗ്രാമർമാരുടെ എണ്ണത്തേക്കാളും PHP പ്രോഗ്രാമർമാരുടെ എണ്ണത്തേക്കാളും കുറവാണ്, അതേസമയം ശരാശരി അവർ കൂടുതൽ ചെലവേറിയതും എന്റെ ആത്മനിഷ്ഠമായ അഭിപ്രായത്തിൽ രണ്ടിനേക്കാൾ ശരാശരി മോശവുമാണ്. ഈ വിചിത്രമായ അവസ്ഥയ്ക്ക് കാരണം കോർപ്പറേറ്റ് സിസ്റ്റങ്ങളുടെ ജാവ വികസനത്തിനുള്ള സാമാന്യം വലിയ വിപണിയാണ്, ഇത് ഒരു വശത്ത്, ശമ്പളം വർദ്ധിപ്പിക്കുന്നു, മറുവശത്ത്, സ്വന്തം സംസ്കാരവും പ്രോഗ്രാമിംഗിലേക്കുള്ള സമീപനവും വളർത്തുന്നു, ഇത് വെബിൽ മാത്രം ദോഷകരമാണ്. . തൽഫലമായി, വെബ് വികസനത്തിൽ ജാവ ഉപയോഗിക്കുന്നത് ന്യായീകരിക്കപ്പെടുന്ന ഒരു സാഹചര്യവും ഞാൻ കാണുന്നില്ല. (എന്നിരുന്നാലും, odnoklassniki.ru ജാവയിൽ എഴുതുകയും വിജയകരമായി പ്രവർത്തിക്കുകയും ചെയ്യുന്നു.)

ഞങ്ങൾ ഒരു തെറ്റ് വരുത്തുകയും ഓപ്പറേറ്റിംഗ് സിസ്റ്റമായി വിൻഡോസ് തിരഞ്ഞെടുക്കുകയും ചെയ്താൽ, ലിസ്റ്റുചെയ്ത ഭാഷകൾക്ക് പുറമേ (അവയെല്ലാം തത്വത്തിൽ, യുണിക്സിലേക്ക് കൂടുതൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു, പക്ഷേ എല്ലായിടത്തും ഉപയോഗിക്കാൻ കഴിയും), രണ്ട് ഓപ്ഷനുകൾ കൂടി ദൃശ്യമാകും: വിബിസ്ക്രിപ്റ്റ് (പിഎച്ച്പിയുടെ ചിലതരം അനലോഗ്), സി# (ജാവയുടെ അനലോഗ്). വിൻഡോസിൽ നിന്ന് ഒരു പ്രയോജനവും ഞാൻ കാണാത്തതിനാൽ, എനിക്ക് അവ ശുപാർശ ചെയ്യാൻ കഴിയില്ല.

വൈവിധ്യമാർന്ന സെർവർ പ്രോഗ്രാമിംഗ് ഭാഷകൾ ലിസ്റ്റുചെയ്ത ഓപ്ഷനുകളിൽ മാത്രമായി പരിമിതപ്പെടുത്തിയിട്ടില്ല, എന്നാൽ മറ്റെല്ലാറ്റിന്റെയും മൊത്തം ജനപ്രീതി പൂജ്യത്തിനടുത്താണ്, മാത്രമല്ല വിചിത്രമായവ തിരഞ്ഞെടുക്കുന്നതിനുള്ള യുക്തിസഹമായ കാരണങ്ങളൊന്നും എനിക്കറിയില്ല.

നിലവിലുള്ള എല്ലാ (കുറഞ്ഞത് എല്ലാ ജനപ്രിയ) ഉപകരണങ്ങളും സാർവത്രികമാണ്. അവയിൽ ഓരോന്നിനും നിങ്ങൾക്ക് തികച്ചും എന്തും നടപ്പിലാക്കാൻ കഴിയും, ഒരേയൊരു ചോദ്യം ചില ഉപകരണങ്ങൾ ഉപയോഗിച്ച് ഇത് വേഗതയേറിയതും വിലകുറഞ്ഞതുമായിരിക്കും, മറ്റുള്ളവയിൽ ഇത് കൂടുതൽ ചെലവേറിയതും വേഗത കുറഞ്ഞതുമായിരിക്കും. തത്വത്തിൽ, ഒരു പ്രോജക്റ്റിൽ രണ്ട് വ്യത്യസ്ത സെർവർ ഭാഷകൾ ഉപയോഗിക്കുന്നത് ആരും വിലക്കുന്നില്ല, പക്ഷേ ഇത് സാധാരണയായി പ്രോജക്റ്റിന്റെ മാനേജുമെന്റിൽ തകർച്ചയിലേക്ക് നയിക്കുന്നു - ഞങ്ങൾ ഒന്നിന് പകരം രണ്ട് സ്പെഷ്യലിസ്റ്റുകളെ (അല്ലെങ്കിൽ രണ്ട് ഗ്രൂപ്പുകളുടെ സ്പെഷ്യലിസ്റ്റുകളെ) ആശ്രയിക്കുന്നു, കൂടാതെ യഥാർത്ഥ പ്രോജക്റ്റ് വർക്ക്, പൂർണ്ണമായും സാമൂഹികമായും (പരസ്പരം ആശയവിനിമയം) സാങ്കേതികമായും ഏകോപിപ്പിക്കാനുള്ള ശ്രമങ്ങൾ ചെലവഴിക്കണം. C/C++ ജോഡിയിൽ ഒന്നിനൊപ്പം സ്‌ക്രിപ്റ്റിംഗ് ഭാഷകളിലൊന്നിന്റെ സംയോജനമാണ് ന്യായീകരിക്കാവുന്ന ഏക അപവാദം. ഇന്റർഫേസിന് ഉത്തരവാദിയായ കോഡിന്റെ "ഉപരിതല" ഭാഗം സ്ക്രിപ്റ്റിൽ എഴുതിയിരിക്കുന്നു, കൂടാതെ ഏറ്റവും മികച്ച പ്രകടന-നിർണ്ണായകമായ ആന്തരിക ഭാഗം C അല്ലെങ്കിൽ C ++ ൽ എഴുതിയിരിക്കുന്നു. മാത്രമല്ല, വ്യത്യസ്ത പ്രോജക്റ്റുകളിലെ ഭാഗങ്ങൾ തമ്മിലുള്ള ബന്ധം തികച്ചും വ്യത്യസ്തമായിരിക്കും. ഉദാഹരണത്തിന്, ulov-umov.ru എന്നത് വളരെ സങ്കീർണ്ണമായ ഒരു സി++ പ്രോജക്റ്റാണ്, അത് സ്വന്തം സെർച്ച് എഞ്ചിനും അക്ഷരാർത്ഥത്തിൽ 10 പേജുകളുള്ള ഒരു ഉപയോക്തൃ ഇന്റർഫേസ് വരയ്ക്കുന്ന ഒരു ചെറിയ പേൾ റാപ്പറും നടപ്പിലാക്കുന്നു. പൂർണ്ണമായും PHP അടിസ്ഥാനമാക്കിയുള്ള readme.ru ന് ഉള്ളിൽ ഒരു ചെറിയ സി മൊഡ്യൂൾ ഉണ്ട്, അത് റെഡിമെയ്ഡ് ഡാറ്റയെ അടിസ്ഥാനമാക്കി, വിവരദാതാക്കളെ വേഗത്തിൽ ആകർഷിക്കുന്നു. ഉൽപ്പാദനക്ഷമമായ ഭാഷ എല്ലായ്പ്പോഴും "അകത്ത്" ആയിരിക്കേണ്ടത് പ്രധാനമാണ്, കൂടാതെ അത് ഉൾക്കൊള്ളുന്ന വോള്യത്തിന്റെ ഏത് പങ്ക് പ്രാദേശിക ഘടകങ്ങളെ ആശ്രയിച്ചിരിക്കുന്നു.

ക്ലയന്റ്-സൈഡ് വെബ് പ്രോഗ്രാമിംഗ് ഭാഷകൾ സെർവർ സൈഡ് ഭാഷകളിൽ നിന്ന് എങ്ങനെ വ്യത്യാസപ്പെട്ടിരിക്കുന്നു?

തീയതി: 2012-10-04

എല്ലാ വെബ് പ്രോഗ്രാമിംഗ് ഭാഷകളെയും രണ്ട് വലിയ ഗ്രൂപ്പുകളായി തിരിക്കാം: കക്ഷിഒപ്പം സെർവർ. ഈ ഭാഷകൾ എന്താണെന്നും അവ എങ്ങനെ പ്രവർത്തിക്കുന്നുവെന്നും അവ പരസ്പരം എങ്ങനെ വ്യത്യാസപ്പെട്ടിരിക്കുന്നുവെന്നും മനസിലാക്കാനും മനസിലാക്കാനും, നിങ്ങൾ രണ്ട് നിർവചനങ്ങൾ കൂടി മനസ്സിലാക്കേണ്ടതുണ്ട്: സെർവർഒപ്പം കക്ഷി.

സെർവർ- ഇത് ഇന്റർനെറ്റിൽ സൈറ്റ് പ്രവർത്തിക്കുന്ന കമ്പ്യൂട്ടറാണ് (സൈറ്റിന്റെ ഫയലുകളും ഫോൾഡറുകളും സംഭരിച്ചിരിക്കുന്നു). പദത്തിന് കീഴിൽ കൂടുതൽ സെർവർഉപയോക്താവിന്റെ ബ്രൗസറിൽ നിന്ന് ഏത് വെബ് ഡോക്യുമെന്റിലേക്കും (ഉദാഹരണത്തിന്,) അഭ്യർത്ഥനകൾ പ്രോസസ്സ് ചെയ്യുന്ന ഒരു കമ്പ്യൂട്ടറിൽ ഇൻസ്റ്റാൾ ചെയ്ത ഒരു പ്രത്യേക പ്രോഗ്രാം മനസ്സിലാക്കുക.

കക്ഷി- ഇതാണ് ഉപയോക്താവ്, അല്ലെങ്കിൽ നിങ്ങളുടെ കമ്പ്യൂട്ടറിൽ ഇൻസ്റ്റാൾ ചെയ്ത ബ്രൗസർ. ഒരു ഇന്റർനെറ്റ് ഉപയോക്താവ് ഒരു സെർവറിനോട് ഒരു അഭ്യർത്ഥന നടത്തുമ്പോൾ, അവൻ ഒരു ക്ലയന്റാണ്.

ഉപഭോക്തൃ ഭാഷകൾ.

ഉപഭോക്തൃ ഭാഷകൾ ഉപയോക്താവിന്റെ (ക്ലയന്റ്) കമ്പ്യൂട്ടറിൽ പ്രവർത്തിക്കുന്നു. കൂടുതൽ കൃത്യമായി പറഞ്ഞാൽ, അവ ബ്രൗസർ തന്നെ നിർവഹിക്കുന്നു. സാധാരണഗതിയിൽ, ക്ലയന്റ് ഭാഷകൾ ഒരു വെബ് പേജിന്റെ html കോഡിൽ ഉൾപ്പെടുത്തിയിട്ടുണ്ട്. അതിനാൽ, കോഡ് കാണുന്നതിന്, ഏതെങ്കിലും ടെക്സ്റ്റ് എഡിറ്ററോ ബ്രൗസറോ ഉപയോഗിച്ച് നിങ്ങൾ വെബ് പേജ് തുറക്കേണ്ടതുണ്ട്.

ഉപഭോക്താവിന്റെ കമ്പ്യൂട്ടറിൽ ക്ലയന്റ് ഭാഷകൾ പ്രവർത്തിക്കുന്നതിനാൽ, അവ ആവശ്യമാണോ വേണ്ടയോ എന്ന് ഉപയോക്താവിന് മാത്രമേ തീരുമാനിക്കാൻ കഴിയൂ. അവന് അവ പ്രവർത്തനരഹിതമാക്കാം, ബ്രൗസർ ഒന്നും ചെയ്യില്ല.

ക്ലയന്റ് സൈഡ് ഭാഷകളുടെ പ്രധാന പോരായ്മകളിലൊന്ന്, സൈറ്റ് സ്ഥിതിചെയ്യുന്ന സെർവറുമായി ആശയവിനിമയം നടത്താൻ കഴിയില്ല എന്നതാണ്. അതിൽ നിന്ന് വിവരങ്ങൾ സേവ് ചെയ്യാനും ലോഡുചെയ്യാനും ഒരു മാർഗവുമില്ല. ഇത് ക്ലയന്റ് ഭാഷകളുടെ ഉപയോഗം ഗണ്യമായി പരിമിതപ്പെടുത്തുന്നു. ഉദാഹരണത്തിന്, സെർവറിൽ നിന്ന്/അതിലേക്ക് ചില വിവരങ്ങൾ സംരക്ഷിക്കുകയും ലോഡ് ചെയ്യുകയും ചെയ്യേണ്ട പ്രോഗ്രാമുകളെ കുറിച്ച്: അതിഥി പുസ്തകങ്ങൾ, കമന്റ് ബ്ലോക്കുകൾ, റേറ്റിംഗുകൾ, വോട്ടിംഗ് മുതലായവ. നിങ്ങൾക്ക് അത് പൂർണ്ണമായും മറക്കാൻ കഴിയും.

കൂടാതെ, ഏതൊരു ഉപയോക്താവിനും പ്രോഗ്രാം കോഡ് വളരെ എളുപ്പത്തിൽ കാണാൻ കഴിയുമെന്നതിനാൽ, നിങ്ങൾക്ക് സുരക്ഷയെക്കുറിച്ച് മറക്കാനും കഴിയും. അത്തരം ഭാഷകൾ ഉപയോഗിച്ച് ചില ഫയലുകളിലേക്കുള്ള ആക്സസ് തടയാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, ഇത് വിജയിക്കാൻ സാധ്യതയില്ല. എല്ലാ പരിരക്ഷിത വിവരങ്ങളും പാസ്‌വേഡുകളും കണ്ടെത്തുന്നതിന് ഒരു വെബ് പേജിന്റെ HTML കോഡ് കാണുന്നത് വളരെ എളുപ്പമാണ്.

എന്നിരുന്നാലും, ക്ലയന്റ് ഭാഷകൾ അത്തരം ജനപ്രീതി നേടിയതിനാൽ, അവയ്ക്ക് ഗുണങ്ങളും ഉണ്ടായിരിക്കണം. അതെ, ആനുകൂല്യങ്ങളും അതിലേറെയും ഉണ്ട്!

1) അവർ സെർവറിലേക്ക് ഡാറ്റ അയയ്‌ക്കുന്നില്ല, ഇത് അവരുടെ ജോലി വളരെ വേഗത്തിലാക്കുന്നു.

2) അധിക സോഫ്‌റ്റ്‌വെയർ ആവശ്യമില്ല, നിങ്ങൾക്ക് ആവശ്യമുള്ളതെല്ലാം ക്ലയന്റിന്റെ ബ്രൗസറിലുണ്ട്.

3) ഹോസ്റ്റിംഗ് കമ്പനിക്ക് സെർവർ ഭാഷകൾ (പണമടച്ചുള്ള ഹോസ്റ്റിംഗ്) ഉപയോഗിക്കുന്നതിന് പണം ആവശ്യമാണ്, എന്നാൽ ക്ലയന്റ് ഭാഷകൾക്കല്ല.

ഏറ്റവും സാധാരണമായ ക്ലയന്റ് ഭാഷകൾ ഇവയാണ്: ജാവാസ്ക്രിപ്റ്റ്ഒപ്പം വിഷ്വൽ ബേസിക്‌സ്‌ക്രിപ്റ്റ് (VBS). ബ്രൗസറിന് അവ മനസിലാക്കാനും നടപ്പിലാക്കാനും, ഒരു പ്രത്യേക ഉപകരണം അതിൽ നിർമ്മിച്ചിരിക്കുന്നു - ഒരു വ്യാഖ്യാതാവ്.

ജാവാസ്ക്രിപ്റ്റ്, കമ്പനി വികസിപ്പിച്ചെടുത്തത് നെറ്റ്സ്കേപ്പ്കൂടാതെ ബ്രൗസറിനായി മാത്രമാണ് ആദ്യം ഉപയോഗിച്ചിരുന്നത് നെറ്റ്സ്കേപ്പ് നാവിഗേറ്റർ. നിലവിൽ, ഈ ഭാഷ വളരെ പ്രചാരത്തിലുണ്ട്. വിഷ്വൽ ബേസിക്‌സ്‌ക്രിപ്റ്റ് (VBS)ഇത് കമ്പനിയിൽ നിന്നുള്ള ക്ലയന്റ് ഭാഷയുടെ ഒരു അനലോഗ് ആണ് മൈക്രോസോഫ്റ്റ്.

നേരത്തെ സൂചിപ്പിച്ചതുപോലെ, ഈ ഭാഷകളെല്ലാം അധിക മൊഡ്യൂളുകളോ പ്ലഗിന്നുകളോ ഇല്ലാതെ സാധാരണ ബ്രൗസറുകളിൽ പ്രവർത്തിക്കുന്നു. ഏറ്റവും സാധാരണമായ ബ്രൗസറുകൾ ഇവയാണ്: Internet Explorer, Opera, Mozilla, മുതലായവ.

സെർവർ ഭാഷകൾ.

സെർവർ സൈഡ് ഭാഷകൾ ഒരു പ്രത്യേക പ്രോഗ്രാം വഴി സെർവറിൽ തന്നെ നേരിട്ട് നടപ്പിലാക്കുന്നു. ഇതിനർത്ഥം, അവ പ്രവർത്തിക്കുന്നതിന്, ഉപയോക്താവ് ഏത് ബ്രൗസറാണ് ഉപയോഗിക്കുന്നത് എന്നത് പ്രശ്നമല്ല, എല്ലാ കണക്കുകൂട്ടലുകളും ഇപ്പോഴും ഒരു റിമോട്ട് കമ്പ്യൂട്ടറിൽ (സെർവർ) നടക്കും.

ഒരു സൈറ്റ് സന്ദർശകന് പ്രോഗ്രാം കോഡ് സെർവർ ഭാഷയിൽ കാണുന്നത് പൊതുവെ അസാധ്യമാണ്; ഒരു HTML പേജായി ഇതിനകം തന്നെ അവതരിപ്പിക്കപ്പെടുന്ന ജോലിയുടെ ഫലങ്ങൾ മാത്രമേ അവൻ കാണുന്നുള്ളൂ.

ക്ലയന്റ് സൈഡ് ഭാഷകളേക്കാൾ കൂടുതൽ കഴിവുകൾ സെർവർ സൈഡ് ഭാഷകൾ വെബ് പ്രോഗ്രാമർക്ക് നൽകുന്നു. അവ ഉപയോഗിച്ച്, നിങ്ങൾക്ക് സെർവറുമായി ഡാറ്റ കൈമാറാൻ കഴിയും, അത് ക്ലയന്റ് ഭാഷകൾ ഉപയോഗിക്കുമ്പോൾ ഞങ്ങൾക്ക് നഷ്ടപ്പെട്ടു.

സെർവർ ഭാഷകളിൽ ഏറ്റവും പ്രചാരമുള്ളത് ഇവയാണ്: കൂടാതെ പേൾ.

കാരണം സെർവർ ഭാഷകൾ ഒരു റിമോട്ട് കമ്പ്യൂട്ടറുമായി (സെർവർ) സംവദിക്കുന്നു, ഈ ഇടപെടലിന്റെ ഫലങ്ങൾ എവിടെയെങ്കിലും സൂക്ഷിക്കേണ്ടതുണ്ട്. ചോദ്യം ഉയർന്നുവരുന്നു: ഈ ഡാറ്റ എങ്ങനെ, എവിടെ സൂക്ഷിക്കണം?

ഉദാഹരണത്തിന്, ഒരു അതിഥി പുസ്തകത്തിൽ ഉപയോക്താവിന്റെ പേരും അവൻ അയച്ച സന്ദേശത്തിന്റെ ഡാറ്റയും സംബന്ധിച്ച വിവരങ്ങൾ സെർവറിൽ സംഭരിക്കുന്നത് ഉൾപ്പെടുന്നു. നിങ്ങൾക്ക് കൂടുതൽ ഡാറ്റ ഇല്ലെങ്കിൽ, നിങ്ങൾക്കത് ഒരു സാധാരണ ടെക്സ്റ്റ് ഫയലിൽ സൂക്ഷിക്കാം. എന്നാൽ ഏതൊരു സൈറ്റും വളരുന്നതിനനുസരിച്ച്, അത് ഒരു വലിയ അളവിലുള്ള വിവരങ്ങൾ സംഭരിക്കുന്നു. ഉള്ളത് ഈ ആവശ്യത്തിനാണ് ഡാറ്റാബേസ് (DB).

എല്ലാ വിവരങ്ങളും ഷെൽഫുകളിൽ ഭംഗിയായി ക്രമീകരിച്ചിരിക്കുന്ന ഒരു തരം ലൈബ്രറിയാണിത്. പക്ഷേ ഒറ്റയ്ക്ക് ഡി.ബിഇതുവരെ പോരാ. ധാരാളം വിവരങ്ങൾ ഉള്ളപ്പോൾ, നമുക്ക് ആവശ്യമുള്ളത് കണ്ടെത്തുന്നത് വളരെ ബുദ്ധിമുട്ടാണ്, എല്ലാ വിവരങ്ങളും പ്രോസസ്സ് ചെയ്യുന്നതിനോ ആവശ്യമായ ഡാറ്റ മാത്രം എക്‌സ്‌ട്രാക്റ്റുചെയ്യുന്നതിനോ പരാമർശിക്കേണ്ടതില്ല. അപ്പോൾ എന്തുകൊണ്ട് കമ്പ്യൂട്ടറിനെ അത് ചെയ്യാൻ അനുവദിച്ചുകൂടാ? അതാണ് അവർ ചെയ്തത്. നിലവിൽ, ഡാറ്റാബേസുകൾ കമ്പ്യൂട്ടറുകൾ വിജയകരമായി പ്രോസസ്സ് ചെയ്യുന്നു. ഇതിനെല്ലാം ഉത്തരവാദികളായ സംവിധാനങ്ങളെ വിളിക്കുന്നു ഡാറ്റാബേസ് മാനേജ്മെന്റ് സിസ്റ്റംസ് (DBMS).

  • വിവർത്തനം
  • ട്യൂട്ടോറിയൽ

റോഡ് ദൈർഘ്യമേറിയതും ബുദ്ധിമുട്ടുള്ളതുമാണ്, എന്നാൽ രസകരവും ഉപയോഗപ്രദവുമാണ്!

ഒരു പ്രൊഫഷണൽ വെബ് ഡെവലപ്പർ ആകാൻ ആഗ്രഹിക്കുന്നവർക്ക് ഒരു പ്രായോഗിക ഗൈഡ് എന്ന നിലയിലാണ് ലേഖനം ഉദ്ദേശിച്ചത്. 20 വർഷത്തിലേറെയായി ഞാൻ വെബ് കോഡ് എഴുതുന്നു. ഞാൻ എല്ലാ ദിവസവും വെബ് ഡെവലപ്പർമാരോടൊപ്പം പ്രവർത്തിക്കുകയും സഹായിക്കുകയും ചെയ്യുന്നു. ഈ ലേഖനത്തിൽ, നിങ്ങൾ എന്താണ് പഠിക്കേണ്ടത്, എപ്പോൾ പഠിക്കണം, നിങ്ങൾക്ക് വിവരങ്ങൾ എവിടെ നിന്ന് ലഭിക്കും (സാധാരണയായി സൗജന്യമായി) ഞാൻ വിവരിക്കും. അപ്പോൾ ഞാൻ യഥാർത്ഥ ലോകാനുഭവം നേടുന്നതിനുള്ള ഉപദേശം നൽകും, ഏറ്റവും പ്രധാനമായി, കോഡ് എഴുതാൻ പണം ലഭിക്കുന്നു.

ലേഖനത്തിലുടനീളം ചിതറിക്കിടക്കുന്ന സ്വതന്ത്രവും പ്രധാനപ്പെട്ടതുമായ ഉറവിടങ്ങളിലേക്ക് നിരവധി ലിങ്കുകൾ ഉണ്ട്. ലാളിത്യത്തിനായി, ഞാൻ അവ PDF-ൽ ശേഖരിച്ച് വിഭാഗങ്ങളായി തിരിച്ചിട്ടുണ്ട്. ഞാൻ ലിങ്ക് ചെയ്യുന്ന സൈറ്റുകൾ പരാമർശിക്കുന്നതിന് എനിക്ക് പണം ലഭിക്കുന്നില്ല - നിങ്ങളുടെ ലക്ഷ്യം നേടാൻ നിങ്ങളെ സഹായിക്കുന്നതിന് മികച്ച ഉറവിടങ്ങൾ ശുപാർശ ചെയ്യാൻ ഞാൻ ആഗ്രഹിക്കുന്നു.

ഓർമ്മിക്കേണ്ട കാര്യങ്ങൾ:

1. ലേഖനത്തിലൂടെ സ്ക്രോൾ ചെയ്യാൻ നിങ്ങളെ അനുവദിച്ചിരിക്കുന്നു

പ്രൊഫഷണൽ വികസനത്തിലേക്കുള്ള വഴിയിൽ നിങ്ങൾ എവിടെയായിരുന്നാലും ഗൈഡിന് നിങ്ങളെ സഹായിക്കാനാകും. നിങ്ങളുടെ നിലവിലെ സാഹചര്യം നന്നായി വിവരിക്കുന്ന തലക്കെട്ടിലേക്ക് സ്ക്രോൾ ചെയ്ത് അവിടെ നിന്ന് വായിക്കുക. നിങ്ങൾ ഇപ്പോൾ ഈ പാത ആരംഭിച്ചിരിക്കുകയാണെങ്കിലോ ഇപ്പോഴും അതിനെക്കുറിച്ച് ചിന്തിക്കുകയാണെങ്കിലോ, "ആലീസ് ഇൻ വണ്ടർലാൻഡിൽ" നിന്നുള്ള രാജാവിന്റെ ഉപദേശം പിന്തുടരുക:

തുടക്കത്തിൽ ആരംഭിക്കുക, അവസാനം എത്തുന്നതുവരെ തുടരുക; ഇതിനകം അവിടെ നിർത്തുക.

2. എല്ലാത്തിലും അൽപ്പം ശ്രമിക്കുക, തുടർന്ന് ഒരു സ്പെഷ്യലൈസേഷൻ തിരഞ്ഞെടുക്കുക.

പണമല്ല പ്രധാനം. നിങ്ങൾ ചെയ്യുന്നതിനെ നിങ്ങൾ സ്നേഹിക്കേണ്ടതുണ്ട്! എന്നാൽ നിങ്ങൾ അത് പരീക്ഷിക്കുന്നതുവരെ നിങ്ങൾക്ക് എന്താണ് ഇഷ്ടമെന്ന് നിങ്ങൾക്കറിയില്ല.


നിങ്ങളുടെ അഭിനിവേശം കണ്ടെത്തുക, തുടർന്ന് ധനസമ്പാദനം നടത്തുക

വെബ് വികസനത്തിന്റെ പല മേഖലകളും കഴിയുന്നത്ര വേഗത്തിൽ പരിചയപ്പെടാൻ ഗൈഡ് നിങ്ങളെ സഹായിക്കും. തുടർന്ന് നിങ്ങൾ ഇഷ്ടപ്പെടുന്ന മേഖലയിൽ ഒരു സ്പെഷ്യലൈസേഷൻ തിരഞ്ഞെടുക്കാൻ അവൻ നിങ്ങളെ സഹായിക്കും. നിങ്ങൾ ആദ്യം ഒന്നിലും പൂർണത കൈവരിക്കില്ല - നിങ്ങൾ അടിസ്ഥാനകാര്യങ്ങൾ പഠിക്കുകയും തുടർന്ന് പഠനം തുടരുകയും ചെയ്യും. നിങ്ങളുടെ അഭിനിവേശം കണ്ടെത്തുക, എങ്ങനെ മുന്നോട്ട് പോകാമെന്ന് ഞാൻ കാണിച്ചുതരാം.

ഞാൻ കോഡ് എഴുതാൻ തീരുമാനിച്ചു. എനിക്ക് വെബ് ഇഷ്ടമാണ്. എവിടെ തുടങ്ങണമെന്ന് എനിക്കറിയില്ല


നീ വിജയിക്കും!

അഭിനന്ദനങ്ങൾ! ഇതൊരു വലിയ ആദ്യ ചുവടുവെപ്പും വളരെ ആവേശകരമായ ഒന്നിന്റെ തുടക്കവുമാണ്. എന്നാൽ ഇത് വളരെ ബുദ്ധിമുട്ടുള്ള കാര്യവുമാണ്. വിഷമിക്കേണ്ട, ഞാൻ സഹായിക്കാം.

ആദ്യം, വെബ് ഡെവലപ്‌മെന്റിന്റെ എല്ലാ മേഖലകളുടെയും അടിസ്ഥാനകാര്യങ്ങൾ ("പൂർണ്ണ ചക്രം") നിങ്ങൾ വേഗത്തിൽ പരിചയപ്പെടേണ്ടതുണ്ട്. പരിശീലനം വ്യത്യസ്തമായിരിക്കും, പക്ഷേ ആഴം കുറഞ്ഞതാണ്. നിങ്ങൾ ആസ്വദിക്കുന്ന ഒരു ഫീൽഡ് കണ്ടെത്തുന്നതിനും വിവിധ മേഖലകളിൽ അടിസ്ഥാനപരമായ കഴിവുകൾ നേടുന്നതിനും വേണ്ടിയാണിത്. അപ്പോൾ നിങ്ങൾ തിരഞ്ഞെടുക്കുന്നത് പരിഗണിക്കാതെ തന്നെ വലിയൊരു കൂട്ടം പ്രശ്നങ്ങൾ മനസിലാക്കാനും പ്രവർത്തിക്കാനും നിങ്ങൾക്ക് കഴിയും.

HTML-ന്റെ അടിസ്ഥാനകാര്യങ്ങൾ പഠിക്കുക

ഹൈപ്പർടെക്സ്റ്റ് മാർക്ക്അപ്പ് ലാംഗ്വേജ് (HTML) നിങ്ങൾ ബ്രൗസറിൽ കാണുന്നതിൻറെ ഉള്ളടക്കവും ലേഔട്ടും നിയന്ത്രിക്കുന്നു. നിങ്ങൾ അവിടെ ആരംഭിച്ചാൽ, നിങ്ങൾക്ക് സംവദിക്കാനും നിങ്ങളുടെ കോഡിന്റെ ഫലങ്ങൾ കാണാനും കഴിയുന്ന ഒരു ഉപയോക്തൃ ഇന്റർഫേസ് നിങ്ങൾക്കുണ്ട്. നിങ്ങൾ കൂടുതൽ സങ്കീർണ്ണമായ ഭാഷകൾ പഠിക്കുമ്പോൾ, അതിന്റെ പ്രാധാന്യം വർദ്ധിക്കും. നിങ്ങൾ അന്ധമായി കോഡ് ചെയ്യേണ്ടതില്ല.

HTML-നെ കുറിച്ച് നിങ്ങൾ പഠിക്കേണ്ട കാര്യങ്ങൾ ഇതാ:

HTML-ന്റെ അടിസ്ഥാനകാര്യങ്ങൾ എനിക്കറിയാം

അടിപൊളി! ഇത് വളരെ പ്രധാനപ്പെട്ട ഒരു ഘട്ടമാണ്. ഇപ്പോൾ ജാവാസ്ക്രിപ്റ്റിന്റെ അടിസ്ഥാനകാര്യങ്ങൾ പഠിക്കുക.

JavaScript അടിസ്ഥാനങ്ങൾ പഠിക്കുക

JavaScript എന്നത് വെബിന്റെ ഭാഷയാണ്, എല്ലാ പ്രധാന ബ്രൗസറുകളും (Chrome, Firefox, Safari, IE, മറ്റു പലതും) ഇതിനെ പിന്തുണയ്ക്കുന്നു. എല്ലാ സൈറ്റുകളിലും, നിങ്ങൾ ഉപയോഗിച്ച എല്ലാ വെബ് ആപ്ലിക്കേഷനുകളിലും, മിക്കവാറും JS കോഡിന്റെ ഒരു വലിയ തുക അടങ്ങിയിരിക്കാം. മറ്റ് പ്ലാറ്റ്‌ഫോമുകളിൽ - സെർവറുകൾ, ഡെസ്‌ക്‌ടോപ്പ് കമ്പ്യൂട്ടറുകൾ, മറ്റ് ഉപകരണങ്ങൾ എന്നിവയിൽ ഭാഷ ജനപ്രീതി നേടുന്നു എന്ന വസ്തുത പരാമർശിക്കേണ്ടതില്ല.

ഇപ്പോൾ, നിങ്ങൾക്ക് അടിസ്ഥാനകാര്യങ്ങൾ ആവശ്യമാണ്, ഇനിപ്പറയുന്ന ഉറവിടങ്ങൾ അതിന് നല്ലതാണ്:

JavaScript, HTML എന്നിവയുടെ അടിസ്ഥാനകാര്യങ്ങൾ എനിക്കറിയാം

അത്ഭുതം! ഇനി നിങ്ങളുടെ കഴിവുകളിലേക്ക് CSS ചേർക്കാം

CSS പഠിക്കുക

CSS, അല്ലെങ്കിൽ കാസ്കേഡിംഗ് സ്റ്റൈൽ ഷീറ്റുകൾ (കാസ്കേഡിംഗ് സ്റ്റൈൽ ഷീറ്റുകൾ). പേജിലെ HTML ഘടകങ്ങളുടെ രൂപം ഇഷ്ടാനുസൃതമാക്കാൻ ഉപയോഗിക്കുന്നു. മോസില്ലയുടെ സൗജന്യ ട്യൂട്ടോറിയൽ പരിശോധിക്കുക, തുടർന്ന് നിങ്ങളുടെ ഏറ്റവും ബുദ്ധിമുട്ടുള്ള പ്രശ്നങ്ങൾക്കുള്ള CSS-ട്രിക്കുകൾ പരിശോധിക്കുക (മുകളിൽ വലത് വശത്ത് തിരയുക).

നമുക്ക് പിന്നിലേക്ക് പോകാം

ഇതുവരെ, വെബ് ഡെവലപ്‌മെന്റിന്റെ "ഫ്രണ്ട് എൻഡ്" എന്ന് വിളിക്കപ്പെടുന്നവയാണ് ഞങ്ങൾ നോക്കിയത്. ബ്രൗസറിൽ പ്രവർത്തിക്കുന്ന പ്രധാന ഭാഷകൾ നിങ്ങൾക്ക് പരിചിതമായി. ബാക്കെൻഡിലേക്ക് പോകാനുള്ള സമയമാണിത് - സെർവറിൽ പ്രവർത്തിക്കുന്ന കോഡ്. വിഷമിക്കേണ്ട, നിങ്ങൾക്ക് ഒരു സെർവർ ആവശ്യമില്ല - നിങ്ങളുടെ കമ്പ്യൂട്ടർ അത് കൈകാര്യം ചെയ്യും.

ഒരു ടൺ ബാക്കെൻഡ് ഭാഷകളുണ്ട്, പക്ഷേ നിങ്ങൾക്ക് JavaScript പരിചിതമായതിനാൽ, Node.js ഉപയോഗിക്കാൻ പഠിക്കാൻ ഞാൻ ശുപാർശ ചെയ്യുന്നു. ബ്രൗസറിലല്ലാതെ സെർവറിൽ JS കോഡ് പ്രവർത്തിപ്പിക്കാൻ ഇത് നിങ്ങളെ അനുവദിക്കുന്നു.

ഇതുകൂടാതെ, നിങ്ങൾ എക്സ്പ്രസും മോംഗോഡിബിയും പഠിക്കേണ്ടതുണ്ട്.

എക്സ്പ്രസ്
Node.JS-ന് ഒരു വെബ് സെർവറായി പ്രവർത്തിക്കാൻ കഴിയുന്ന ഒരു ലൈബ്രറിയാണിത് (പേജുകളിൽ നിന്നുള്ള അഭ്യർത്ഥനകൾ ശ്രദ്ധിക്കുകയും അവയ്ക്ക് പ്രതികരണങ്ങൾ അയയ്ക്കുകയും ചെയ്യുക).
മോംഗോഡിബി
വിവരങ്ങൾ സംഭരിക്കാനും വീണ്ടെടുക്കാനും നിങ്ങളെ അനുവദിക്കുന്ന ഒരു ഡാറ്റാബേസാണിത്.

ഇനിപ്പറയുന്ന മികച്ചതും സൗജന്യവുമായ വിദ്യാഭ്യാസ സാമഗ്രികൾക്കും അതിന്റെ തുടർച്ചയ്ക്കും നന്ദി ഈ മൂന്ന് വിഷയങ്ങളും നിങ്ങൾക്ക് പഠിക്കാൻ കഴിയും.

എനിക്ക് ഫ്രണ്ട്‌എൻഡ്, ബാക്കെൻഡ്, ഫുൾ സൈക്കിൾ ഡെവലപ്‌മെന്റ് എന്നിവയിൽ ഒന്ന് തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്

നിങ്ങൾ രണ്ട് വികസന ഓപ്ഷനുകളും പരീക്ഷിച്ചുകഴിഞ്ഞാൽ, ഒരു തിരഞ്ഞെടുപ്പ് നടത്താനുള്ള സമയമാണിത്. നിങ്ങൾക്ക് അവ പരീക്ഷിക്കാൻ സമയമില്ലെങ്കിൽ, നിങ്ങളുടെ അറിവിലെ വിടവുകൾ നികത്താൻ ലേഖനത്തിന്റെ മുമ്പത്തെ വിഭാഗം പരിശോധിക്കുക.

ഈ സമയത്ത്, നിങ്ങൾ രണ്ട് തരം കോഡുകൾ എഴുതി. ഒന്ന് ഉപയോക്തൃ ഇടപെടലിനുള്ളതാണ്, മറ്റൊന്ന് ഡാറ്റയ്ക്കുള്ളതാണ്. നിങ്ങൾ എന്താണ് ഇഷ്ടപ്പെടുന്നത്?

ഉപയോക്തൃ ഇടപെടൽ? അഭിനന്ദനങ്ങൾ, നിങ്ങളൊരു ഫ്രണ്ട് എൻഡ് ഡെവലപ്പറാണ്!

ഡാറ്റയുമായുള്ള ഇടപെടൽ? അഭിനന്ദനങ്ങൾ, നിങ്ങളൊരു ബാക്കെൻഡ് ഡെവലപ്പറാണ്!

രണ്ടും? അഭിനന്ദനങ്ങൾ, നിങ്ങളൊരു ഫുൾ-സ്റ്റാക്ക് ഡെവലപ്പറാണ്!

ഒന്നും ഇഷ്ടപ്പെട്ടില്ലേ? അഭിനന്ദനങ്ങൾ, വെബ് വികസനം നിങ്ങൾക്കുള്ളതല്ല. നിങ്ങൾ ഇപ്പോൾ അത് മനസ്സിലാക്കിയതിൽ സന്തോഷിക്കുക, കൂടാതെ ഒരു ടൺ സമയവും പണവും പാഴാക്കിയില്ല. വിട്ടുകൊടുക്കാൻ തയ്യാറല്ലേ? ഒരുപക്ഷേ നിങ്ങൾ ഇഷ്ടപ്പെടുന്ന ഒരു ഭാഷ നിങ്ങൾ കണ്ടില്ലേ? "എനിക്ക് ഒരു ബാക്കെൻഡ് ഡെവലപ്പർ ആകണം" എന്ന വിഭാഗത്തിൽ മറ്റ് ഭാഷകൾ പഠിക്കാൻ ശ്രമിക്കുക.

എനിക്ക് ഒരു ഫുൾ-സ്റ്റാക്ക് ഡെവലപ്പർ ആകണം

അടിപൊളി. "എനിക്ക് ഒരു ബാക്കെൻഡ് ഡെവലപ്പർ ആകണം", "എനിക്ക് ഒരു ഫ്രണ്ട് എൻഡ് ഡെവലപ്പർ ആകണം" എന്നീ വിഭാഗങ്ങളിലെ എല്ലാ ഉള്ളടക്കങ്ങളും നിങ്ങൾ വായിക്കേണ്ടതുണ്ട്.

എനിക്ക് ഒരു ഫ്രണ്ട്-എൻഡ് ഡെവലപ്പർ ആകണം, ജാവാസ്ക്രിപ്റ്റ്, HTML, CSS എന്നിവയുടെ അടിസ്ഥാനകാര്യങ്ങൾ എനിക്കറിയാം

ഒരു ഫ്രണ്ട്-എൻഡ് ഡെവലപ്പർ എന്ന നിലയിൽ ഫലപ്രദമായി പ്രവർത്തിക്കാൻ, നിങ്ങൾക്ക് HTML, CSS, ക്ലയന്റ്-സൈഡ് JavaScript എന്നിവയിൽ പ്രാവീണ്യം ആവശ്യമാണ്. പ്രധാനപ്പെട്ട പല ചട്ടക്കൂടുകളെക്കുറിച്ച് നിങ്ങൾക്ക് നല്ല ധാരണയും ഉണ്ടായിരിക്കണം. മുൻനിര ഡെവലപ്പർമാരിൽ തൊഴിലുടമകളും ക്ലയന്റുകളും പ്രതീക്ഷിക്കുന്ന കഴിവുകൾ നിങ്ങൾക്ക് ലഭിക്കും.

ഇപ്പോൾ നിങ്ങൾ HTML-ന്റെ അടിസ്ഥാനകാര്യങ്ങൾ അറിഞ്ഞിരിക്കണം. അല്ലെങ്കിൽ, Learn HTML Basics വിഭാഗത്തിലേക്ക് മടങ്ങുക.

ഇന്റർമീഡിയറ്റ്, അഡ്വാൻസ്ഡ് HTML പഠിക്കുക
ഇന്റർമീഡിയറ്റ് HTML ട്യൂട്ടോറിയലും തുടർന്ന് വിപുലമായ HTML ട്യൂട്ടോറിയലും പരിശോധിക്കുക.
വിപുലമായ ക്ലയന്റ്-സൈഡ് JavaScript പഠിക്കുക


JS-നെക്കുറിച്ചുള്ള മികച്ച പുസ്തക പരമ്പര, അത് സൗജന്യമാണ്

നിങ്ങളുടെ JavaScript പ്രാവീണ്യം മെച്ചപ്പെടുത്തുന്നതിന്, Kyle Simpson-ന്റെ You Dont Know JS പുസ്തക പരമ്പര ഞാൻ ശുപാർശ ചെയ്യുന്നു. രചയിതാവ് മുഴുവൻ പരമ്പരയും സൗജന്യമായി ഓൺലൈനിൽ പോസ്റ്റ് ചെയ്തിട്ടുണ്ട്:

കൂടാതെ, MDN JavaScript നിങ്ങളുടെ ഉറ്റ ചങ്ങാതിയും ആയിരിക്കണം.

[കൂടാതെ, "എക്‌സ്‌പ്രസീവ് ജാവാസ്ക്രിപ്റ്റ്" എന്ന മികച്ച പുസ്തകത്തിന്റെ മികച്ച വിവർത്തനം നിങ്ങൾക്ക് പൂർണ്ണമായും സൗജന്യമായി ലഭ്യമാണ്.]

"ഫ്രണ്ട് എൻഡ് ട്രിനിറ്റി", HTML, CSS, JavaScript എന്നിവ അറിയുന്നത് തീർച്ചയായും മികച്ചതാണ്. എന്നാൽ പണം സമ്പാദിക്കാൻ, നിങ്ങൾ ചില ചട്ടക്കൂടുകൾ പരിചയപ്പെടേണ്ടിവരും.

jQuery പഠിക്കുക
എക്കാലത്തെയും ജനപ്രിയമായ JS ലൈബ്രറിയാണിത്. ചില പുതിയ ചട്ടക്കൂടുകൾ jQuery പ്രാധാന്യം കുറച്ചെങ്കിലും, നിങ്ങൾ ഒരു ജോലി അന്വേഷിക്കുകയാണെങ്കിൽ, jQuery വരും വർഷങ്ങളിൽ ജോലി വിവരണങ്ങളിൽ (ഇന്റർവ്യൂകളിൽ പരാമർശിച്ചിരിക്കുന്നു) ഉണ്ടാകാനുള്ള നല്ലൊരു അവസരമുണ്ട്.

FreeCodeCamp മെറ്റീരിയലുകൾ ഉപയോഗിച്ച് jQuery പഠിക്കാൻ ഞാൻ ശുപാർശ ചെയ്യുന്നു - ഇത് വേഗതയേറിയതും ഫലപ്രദവുമായ ഒരു രീതിയാണ്. അതിനുശേഷം, ഔദ്യോഗിക പരിശീലന സൈറ്റിലേക്ക് പോകുക - അവിടെ നിങ്ങൾ അധിക നിർദ്ദേശങ്ങൾ കണ്ടെത്തും.

ഒരു ജനപ്രിയ JS ഫ്രെയിംവർക്ക് പഠിക്കുക
ചട്ടക്കൂടുകൾ ഒരു പ്രത്യേക ഭാഷയിലോ സാങ്കേതികവിദ്യയിലോ പ്രവർത്തിക്കുന്നത് എളുപ്പമാക്കുന്നു, കാരണം തിരഞ്ഞെടുത്ത സാങ്കേതികവിദ്യയുടെ ഏറ്റവും വലിയ പ്രശ്നങ്ങൾ അവ പരിഹരിക്കുന്നു. ചട്ടക്കൂടുകളുടെ വികസനത്തിലും ജനകീയവൽക്കരണത്തിലും JavaScript വളരെ പ്രയോജനകരമായ സ്വാധീനം ചെലുത്തിയിട്ടുണ്ട്.

ആഴ്‌ചയിലൊരിക്കൽ ഒരു പുതിയ ചട്ടക്കൂട് പ്രത്യക്ഷപ്പെടുന്നു, അത് ഒരു പുതിയ വികസന നിലവാരത്തിന്റെ സ്ഥാനത്ത് എത്തും. നിങ്ങളുടെ മാർക്കറ്റിൽ ഏത് ചട്ടക്കൂടാണ് ജനപ്രിയമായതെന്ന് കണ്ടെത്തുന്നതിന് നിങ്ങൾ തൊഴിൽ സൈറ്റുകൾ അന്വേഷിക്കുകയും കുറച്ച് ഗൂഗ്ലിംഗ് നടത്തുകയും വേണം. തൊഴിൽ വിപണി പ്രവണതകൾ വിലയിരുത്തുന്നതിനുള്ള ഹാക്കർ ന്യൂസിന്റെ ടൂളും ഞാൻ ശുപാർശ ചെയ്യുന്നു.

ഈ ലേഖനം എഴുതുന്ന സമയത്ത്, ഇനിപ്പറയുന്ന ചട്ടക്കൂടുകൾ ജനപ്രിയമായിരുന്നു:

ഏറ്റവും അനുയോജ്യമായ ചട്ടക്കൂട് തിരഞ്ഞെടുക്കുകയും അത് സ്വയം പരിചിതമാക്കുകയും ചെയ്ത ശേഷം, അതിനോടൊപ്പം വരുന്ന CSS ചട്ടക്കൂട് പഠിക്കുന്നത് മൂല്യവത്താണ്. ഇന്ന് ഈ വിപണിയിലെ രണ്ട് വലിയ കളിക്കാർ ബൂട്ട്‌സ്‌ട്രാപ്പും മെറ്റീരിയൽ ഡിസൈനുമാണ്.

ബൂട്ട്സ്ട്രാപ്പ്
ബൂട്ട്‌സ്‌ട്രാപ്പ് നിർമ്മിച്ചത് ട്വിറ്റർ ഡെവലപ്പർമാരാണ്, ഇത് ഇതിനകം തന്നെ പക്വതയുള്ളതും ജനപ്രിയവുമാണ്. Angular, Angular 2, React എന്നിവയ്‌ക്കായി ബൂട്ട്‌സ്‌ട്രാപ്പ് പതിപ്പുകൾ നിലവിലുണ്ട്.
മെറ്റീരിയൽ
Google-ൽ വികസിപ്പിച്ച ഡിസൈൻ നിയമങ്ങളുടെ ഒരു കൂട്ടമാണ് മെറ്റീരിയൽ. ഇത് ജനപ്രീതി നേടുന്നു, ആംഗുലർ, റിയാക്ട് എന്നിവയ്ക്കുള്ള പതിപ്പുകളുണ്ട്. ആംഗുലർ ഗൂഗിളിന്റെ ഒരു ആശയം കൂടിയായതിനാൽ, മെറ്റീരിയൽ അതിനോട് തികച്ചും യോജിക്കുന്നു.

നിങ്ങൾക്കായി ചില ലിങ്കുകൾ ഇതാ:

അഭിനന്ദനങ്ങൾ! നിങ്ങൾക്ക് പ്രധാന ഫ്രണ്ട് എൻഡ് ഡെവലപ്പർ കഴിവുകളുണ്ട്!


അവനെ ഒന്ന് നോക്കൂ!

എനിക്ക് ഒരു ബാക്കെൻഡ് ഡെവലപ്പർ ആകണം

അത്ഭുതം! ഒരു ഭാഷ തിരഞ്ഞെടുക്കുന്നതാണ് ആദ്യപടി. ബാക്കെൻഡിൽ പ്രവർത്തിക്കാൻ നിരവധി ഭാഷകൾ ലഭ്യമാണ്, ഓരോന്നിനും അതിന്റേതായ ഗുണങ്ങളും ദോഷങ്ങളുമുണ്ട്. ജനപ്രിയത അനുസരിച്ച് അടുക്കിയ പ്രോഗ്രാമിംഗ് ഭാഷകളുടെ പട്ടിക പരിശോധിക്കുക. ഇവരെല്ലാം പത്തുവർഷമായി ആദ്യ പത്തിൽ ഇടംപിടിച്ചവരാണ്. പച്ചയിൽ അടയാളപ്പെടുത്തിയിരിക്കുന്നവ വർഷങ്ങളായി പ്രചാരം നേടിയുകൊണ്ടിരിക്കുന്ന വെബ് ഭാഷകളാണ്.


പ്രോഗ്രാമിംഗ് ഭാഷകളുടെ TIOBE സൂചിക, www.tiobe.com/tiobe_index?page=index

ഞാൻ പച്ചയിൽ വട്ടമിട്ടിരിക്കുന്ന പേരുകളുടെ ഭാഷകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുക. നിങ്ങൾക്ക് അവരെ അറിയില്ലെങ്കിൽ, മേശയുടെ മുകളിൽ നിന്ന് ആരംഭിച്ച് താഴേക്ക് പോകുക. നിങ്ങൾ ഇഷ്ടപ്പെടുന്ന എന്തെങ്കിലും കണ്ടെത്തുമ്പോൾ നിർത്തുക, ആഴത്തിൽ കുഴിക്കുക!

പച്ചയിൽ അടയാളപ്പെടുത്തിയിരിക്കുന്ന ഭാഷകളിലൊന്ന് നിങ്ങൾക്ക് പരിചിതമാണെങ്കിൽ അത് നിങ്ങൾക്ക് ഇഷ്ടമാണെങ്കിൽ, അതിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുക.

നിങ്ങളുടെ അഭിമുഖ കഴിവുകൾ മെച്ചപ്പെടുത്തുക
കോഡ് എഴുതുന്നതിനേക്കാൾ കൂടുതലായി നിങ്ങൾ തയ്യാറെടുക്കേണ്ടതുണ്ട്. ലൈഫ് ഹാക്കറിൽ നിന്നുള്ള ഒരു നല്ല ലേഖനം ഉപയോഗപ്രദവും വിലപ്പെട്ടതുമായ ധാരാളം വിവരങ്ങൾ വിവരിക്കുന്നു.
വിപണിയിൽ കാലുറപ്പിക്കുക എന്നതാണ് പ്രധാന കാര്യം
നിങ്ങളുടെ സ്വപ്ന തൊഴിൽ ദാതാവിനൊപ്പം നിങ്ങളുടെ സ്വപ്ന ശമ്പളത്തിനൊപ്പം നിങ്ങളുടെ സ്വപ്ന ജോലി നേടുന്നതിനെക്കുറിച്ച് വളരെയധികം വിഷമിക്കേണ്ട. ആദ്യം, നിങ്ങൾ പണത്തിനായി കോഡ് എഴുതുന്ന ഒരു ജോലി നേടുക. നിങ്ങൾക്ക് കൂടുതൽ അനുഭവം ലഭിച്ചുകഴിഞ്ഞാൽ, നിങ്ങളുടെ അടുത്ത ഘട്ടം ആസൂത്രണം ചെയ്യാൻ കഴിയും.
എനിക്ക് ഒരു ഫ്രീലാൻസർ ആകണം
നിങ്ങളുടെ സ്വന്തം ബോസ് ആയിരിക്കുക എന്നത് ഒരു നല്ല കാര്യമാണ്, എന്നാൽ അത് വലിയ സമ്മർദ്ദവും വലിയ ബുദ്ധിമുട്ടുകളും കൊണ്ട് വരുന്നു. ഞാൻ കണ്ടിട്ടുള്ള ഫ്രീലാൻസിംഗ് വിവരങ്ങളുടെ ഏറ്റവും മികച്ച ഉറവിടം DoubleYourFreelancing.com ആണ്. എന്നെക്കാളും മികച്ച ഒരു ഫ്രീലാൻസർ ആകാൻ നിങ്ങളെ സഹായിക്കുന്ന ലേഖനങ്ങളുടെ ഒരു പരമ്പര അദ്ദേഹത്തിന്റെ പക്കലുണ്ട്. വായിക്കുക.

മറ്റൊരു ഓപ്ഷൻ, നിങ്ങൾക്ക് സ്വയം ആത്മവിശ്വാസമുണ്ടെങ്കിൽ, ടോപ്റ്റൽ സേവനമാണ്. എല്ലാ അപേക്ഷകരുടെയും 3% മാത്രമേ അവർ സ്വീകരിക്കുകയുള്ളൂ, പ്രക്രിയ വളരെ സങ്കീർണ്ണമാണ്, എന്നാൽ നിങ്ങൾ പ്രവേശിച്ചാൽ, നിങ്ങൾക്ക് വിദൂരമായി പ്രവർത്തിക്കാൻ കഴിയുന്ന നല്ല ശമ്പളമുള്ള ജോലികളിലേക്ക് നിങ്ങൾക്ക് പ്രവേശനം ലഭിക്കും.

ഞാൻ ജോലി ആരംഭിച്ചു, പക്ഷേ ഞാൻ ഒരു അവസാന ഘട്ടത്തിലാണെന്ന് തോന്നുന്നു
മനസ്സിലാക്കുക. ഇത് എളുപ്പമല്ല, ആരെങ്കിലും നിങ്ങളോട് മറ്റെന്തെങ്കിലും പറഞ്ഞാൽ, ഒന്നുകിൽ അവർ അത് ചെയ്തില്ല അല്ലെങ്കിൽ നിങ്ങളെ പണം തട്ടിയെടുക്കാൻ ശ്രമിക്കുകയാണ്. നിങ്ങൾക്ക് കുടുങ്ങിയതായി തോന്നുന്നുവെങ്കിൽ, ഈ ഓപ്ഷനുകൾ പരീക്ഷിക്കുക:
നിങ്ങളുടെ യഥാർത്ഥ ഉദ്ദേശം പുതുക്കുക
സ്വയം ചോദിക്കുക, എന്തുകൊണ്ടാണ് നിങ്ങൾ ഈ പാത പിന്തുടരാൻ തീരുമാനിച്ചതെന്ന് പേപ്പറിൽ എഴുതുക. നിങ്ങളുടെ ഉത്തരം ഇപ്പോഴും സാധുവാണോ? ഉണ്ടെങ്കിൽ പിന്നെ എന്തിനാണ് നിർത്തുന്നത്? മുന്നോട്ട്!