પ્રોગ્રામિંગ સૉફટવેર
કૉપ્યુટર પ્રોગ્રામ એ સુચનાઓનો સેટ છે જે ડેટાને માહિતીમાં પ્રોસેસ કરવા જરૂરી કાર્યો કરવાનું કૉપ્યુટરને સૂચન કરે છે. કૉપ્યુટર Programmer Programming Languageનો ઉપયોગ કરીને આ પ્રકારની સૂચનાઓ લખશે, જે words, symbols અને codesનો સેટ ગણાય છે, તેનો ઉપયોગ સૂચનાઓ બનાવવા થાય છે; કૉપ્યુટર પ્રોસેસ કરીને તેનો અમલ કરી શકે છે. કૉટર પ્રોગ્રામ બનાવવા Programmer સામૂહિક રીતે જે પગલાંનો ઉપયોગ કરે છે તેને Program development life cycle (PDLC) કહે છે.
પ્રોગ્રામિંગ લેંગ્રેજીસ
Programming Language એ words, symbols, અને codesનો સેટ છે, જે પ્રોગ્રામરને કૉપ્યુટરમાં સૉલ્યુશન algorithmની આપ-લે કરવા દે છે. માણસો માત્ર સ્પોકન ઇંગ્લિશની વિવિધતા સમજતા હોવાથી (અંગ્રેજી, હિન્દી, પંજાબી, ફ્રેન્ચ વગેરે વગેરે). કૉપ્યુટર્સ આ પ્રોગ્રામિંગ લેંગ્વજીસની વિવિધતાની ખાતરી કરે છે. કૉપ્યુટર પ્રોગ્રામર એ માહિતી સિસ્ટમની જરૂરિયાતો માટે સોલ્યુશન્સ બનાવવા પ્રોગ્રામિંગ Languages કે પ્રોગ્રામ ડિવલપમેન્ટ ટુલ્સની વિવિધતા પરથી પસંદ કરી શકાય છે.
પ્રોગ્રામ ડેવલપમેન્ટ ટુલ્સ
પ્રોગ્રામ ડેવલપમેન્ટ ટુલ એ યુઝર ફ્રેન્ડલિ સૉફ્ટવેર પ્રોડટ્સનું બનેલું છે. તેને ઇન્ફોર્મેશન સિસ્ટમ સોલ્યુશન્સના સર્જનમાં મદદરૂપ થાય એ માટે તૈયાર કરાયું છે. આ પ્રોગ્રામનો development tools કૉપ્યુટરમાં આપ-લે કરવા જરૂરી હોય એવી ઑટોમેટિક રીતે પ્રોગ્રામિંગ લેંગ્વજની સૂચનાઓનું સર્જન કરે છે. પ્રોગ્રામ ડેવલપમેન્ટ ટુલ્સની મદદથી, ડિવેલપરને લાક્ષણિક રીતે પ્રોગ્રામિંગ લેંગ્વજ શીખવાની જરૂર રહેતી નથી.
પ્રોગ્રામ ડેવલપમેન્ટ લાઇફ સાઇકલ
Program development life cycle (PDDC)એ સ્ટેપ્સનો સેટ છે જેનો ઉપયોગ પ્રોગ્રામર્સ કૉમ્યુટર પ્રોગ્રામો બનાવવા માટે કરે છે. હકીકત ધ્યાનમાં લેતાં, સિસ્ટમ ડેવલપમેન્ટ લાઇફ સાઇકલ મોટા પ્રમાણમાં ઇન્ફોર્મેશન સિસ્ટમના વિકાસ દ્વારા માહિતી ટૅક્નોલૉજી (IT) પ્રોફેશનલ્સને માર્ગદર્શન આપે છે. પ્રોગ્રામ ડેવલપમેન્ટ લાઇફ સાઇકલ પ્રોગ્રામના વિકાસ દ્વારા કૉપ્યુટર પ્રોગ્રામરને માર્ગદર્શન આપે છે.
PDLCનાં પગલાં નીચે મુજબ છે :
- અમુક ખાસ પ્રૉબ્લેમનો ઉકેલ મેળવવા પ્રોગ્રામ લૉજિકનો વિકાસ કરવો.
- અમુક ચોક્કસ પ્રોગ્રામિંગ લેંગ્લેજમાં પ્રોગ્રામ લૉજિ ક લખવો. (પ્રોગ્રામને coding કરવું.)
- પ્રોગ્રામને મશીન લેંગ્વજમાં ફેરવવા તેને એકઠો કરવો કે વ્યવસ્થિત રીતે ગોઠવવો.
- પ્રોગ્રામનું ટેસ્ટિંગ કરવું અને debugging કરવું.
- જરૂરી ડૉક્યુમેન્ટેશન તૈયાર કરવો.
લૉજિક સામાન્ય રીતે સૌથી વધારે અઘરો પ્રોગ્રામિંગનો ભાગ છે. તેમ છતાં પ્રોગ્રામિંગ લેંગ્વજ પર આધારિત, સ્ટેટમેન્ટ્સ લખવાનું કામ ખૂબ મહેનત માગી લે તેવું હોઈ શકે. એક વસ્તુ ચોક્કસ છે કે પ્રોગ્રામનું ડૉક્યુમેન્ટિંગ કરવું એ મોટાં ભાગના પ્રોગ્રામરો દ્વારા થતી સૌથી વધુ ત્રાસજનક પ્રવૃત્તિ ગણાય છે.
પ્રોગ્રામિંગ લેંગ્વજના પ્રકારો
પ્રોગ્રામિંગ લેંગ્વજીસના મુખ્ય પાંચ પ્રકારો પાડવામાં આવ્યા છે : machine languages, assembly languages, third-generation languages, fourth-generation languages અને natural languages. Machine અને assembly languagesનો ઉલ્લેખ low-level languages તરીકે કરવામાં આવે છે. Third- generation, fourth-generation અને natural languagesને high-level languages કહેવાય છે. એક ચોક્કસ કૉપ્યુટર પર ચલાવવા low-level language લખવામાં આવે છે. high-level language અનેક વિવિધ પ્રકારનાં કૉપ્યુટરો પર ચલાવી શકાય છે.
મશીન લેંગ્રેજીસ (Machine Languages) : મશીન લેંગ્વજ first-generation લેંગ્વજ તરીકે પણ ઓળખાય છે, કોમ્યુટરને પ્રત્યક્ષ રીતે સમજી શકે એવી એકમાત્ર ભાષા છે. મશીન લેંગ્વજીસની સૂચનાઓ binary ડિજિટ્સ (૧s અને Os)ની શ્રેણીનો ઉપયોગ કરે છે જે કૉપ્યુટરની ઇલેક્ટ્રિકલ સ્થિતિને ચાલુ-બંધ કરવા સુસંગત હોય છે.
મશીન લેંગ્વજના પ્રોગ્રામો ફક્ત કૉપ્યુટર પર ચાલે છે. એ માટે તેને વિકસાવવામાં આવ્યા હતા, એટલે કે તે machine-dependent છે. મશીન લેંગ્વજ પ્રોગ્રામો બીજાં કૉપ્યુટર માટે પોર્ટેબલ નથી. મશીન લેંગ્વજના ૧s અને ૦s માં પ્રોગ્રામોનું કોડિંગ કરવું એ કંટાળાજનક થઈ પડશે અને પુષ્કળ સમય પણ માગી લેશે.
એસેમ્બ્લી લેંગ્વેજીસ (Assembly Languages) : Assembly Languageને પ્રોગ્રામિંગ Languagesની બીજી પેઢી પણ કહેવાય છે, મશીન લેંગ્વજના પ્રોગ્રામો લખવા ઘણા અઘરા હતા એ કારણે તેને વિકસાવવામાં આવી હતી. એસેમ્બ્લી લેંગ્વજની મદદથી, ટૂંકાં રૂપો અને કોડર્ઝનો ઉપયોગ કરીને સૂચનાઓ લખવામાં આવે છે. મશીન લેંગ્વજીસની જેમ જ એસેલ્ફી લેગ્વેજીસ ઘણી વાર શીખવી અઘરી પડી જાય છે એટલે તે machine-dependent છે.
એસેલ્ફી લેંગ્વજીસનાં કેટલાક ફાયદો મશીન લેંગ્વજીસને જરૂર થયા છે. bitxની શ્રેણી (૧s અને Os)નો ઉપયોગ કરવાને બદલે, પ્રોગ્રામની સૂચનાઓ માટે, પ્રોગ્રામર અર્થપૂર્ણ ટૂંકાં રૂપોનો ઉપયોગ કરે છે તેને symbolic instruction codes કે mnemonics કહેવાય છે. એસેમ્બ્લી લેંગ્વેજની મદદથી પ્રોગ્રામર addition માટે A, Compare માટે C, load માટે L અને multiply માટે M જેવાં Codes લખી શકે છે. એસેમ્બ્લી languagesમાં પ્રોગ્રામર symbolic addressesની મદદથી storage લોકેશન્સ તપાસી શકે છે. દા.ત. યુનિટ price actual ન્યૂમેરિક સ્ટોર એડ્રેસનો ઉપયોગ કરવાને બદલે પ્રોગ્રામર symbolic name PRICEનો ઉપયોગ કરી શકે છે.
એસેમ્બ્લી લેંગ્વજ પ્રોગ્રામનો એક ગેરફાયદો એ છે કે કોંમ્પ્યૂટર સમજી શકે એ પહેલાં મશીન લેંગ્વજમાં તે સરળ શબ્દોમાં વ્યક્ત થઈ જાય છે .
એસેમ્બ્લી લેંગ્વજ કોડવાળો પ્રોગ્રામ source program કહેવાય છે. આ સોર્સ પ્રોગ્રામ જ્યાં સુધી સરળ શબ્દોમાં વ્યક્ત નહીં થાય ત્યાં સુધી કોંમ્પ્યૂટર તેને સમજી નહીં શકે કે તેનો અમલ નહીં કરી શકે.
એસેમ્બ્લી લેંગ્વજ સોર્સ પ્રોગ્રામને મશીન લેંગ્વજ માં રૂપાંતર કરનાર પ્રોગ્રામને assembler કહેવાય છે, જેને કૉપ્યુટર સમજી શકે છે .
હાઇ-લેવલ લેંગ્વેજીસ (High-level languages) : ૧૯૫૦ અને ૧૯૬૦ના પાછલા દાયકામાં, હાઇ-લેવલ લેંગ્વેજીસ વિકસાવવામાં આવી હતી. machine અને assembly જેવી low-level લેંગ્રેજીસથી અલગ, ligh-level languages પ્રોગ્રામો વિકસાવવાનું અને તેને જાળવી રાખવાનું કાર્ય પ્રોગ્રામરો માટે સહેલું બનાવી દે છે.
પ્રોગ્રામરો માટે શીખવાનું અને ઉપયોગ કરવાનું સહેલું હોવા ઉપરાંત, ligh-level languages machine independent ગણાય છે, તેનો અર્થ થાય છે કે તે ઘણી જુદી જુદી જાતનાં કૉપ્યુટરો પર ચાલે છે. High-level languages ના ત્રણ પ્રકારો અસ્તિત્વમાં છે : થર્ડ જનરેશન લેંગ્વેજીસ, ફૉર્થ જનરેશન લેંગ્વેજીસ અને નેચરલ લંગ્વેજીસ.
થર્ડ-જનરેશન languages (૩ GL)ની માહિતી (instruction) અંગ્રેજી શબ્દોની સિરીઝની જેમ લખાય છે. દા.ત. પ્રોગ્રામર addition માટે ADD લખશે કે Print માટે PRINT લખશે. ઘણી થર્ડ જનરેશન લેંગ્વજીસમાં ગુણાકાર કરવા માટે જ અને સરવાળો કરવા માટે + જેવી અંકગણિતની નિશાનીઓનો પણ ઉપયોગ થાય છે.
આ પ્રકારના અંગ્રેજી જેવા શબ્દો અને અંકગણિતની સંકેતલિપિ પ્રોગ્રામર માટે પ્રોગ્રામના વિકાસની પ્રક્રિયાને સરળ બનાવે છે.
એસેમ્બ્લી લેંગ્વજ પ્રોગ્રામ કહેવાય છે એવી જ રીતે ૩GL કોડ નં. source program કહેવાય છે. જે કૉપ્યુટર સમજી શકે એ પહેલાં મશીન લેંગ્વજમાં સરળ શબ્દોમાં વ્યક્ત કરી દેવાય છે. આ પ્રકારની ટ્રાન્સલેશન પ્રક્રિયા ઘણીવાર ખૂબ જ જટિલ હોય છે, કારણ કે એક 3GL source Program instructionને ઘણી મશીન લેંગ્વજ instructionsમાં ટ્રાન્સલેટ કરે છે. Compiler કે interpreter એ બે પ્રોગ્રામોનો ઉપયોગ ત્રીજી પેઢીની ભાષાઓમાં ટ્રાન્સલેશન કરવા માટે થાય છે.
કમ્પાઇલર (Compiler) : કમ્પાઈલર આખા સોર્સ પ્રોગ્રામને એક જ સમયે મશીન લેંગ્વજમાં રૂપાંતર કરે છે. જો Compilerમાં કોઈ ભૂલો દેખાય તો તે પ્રોગ્રામની લિસ્ટવાળી ફાઇલમાં તેનો રેકૉર્ડ રાખે છે, સમગ્ર Compilation પૂરું થઈ જાય ત્યારે પ્રોગ્રામર તેની પ્રિન્ટ કાઢી શકે છે. ૩GLના Compilingમાંથી જે મશીન લેંગ્વજ version પરિણમે છે તેને object code કે object program કહેવાય છે. બ્લેક્ટ કોડને પાછળથી અમલ કરવા ડિસ્ક પર સ્ટોર કરવામાં આવે છે.
ઇન્ટરપ્રિટર : કમ્પાઇલર આખા પ્રોગ્રામનું તાત્કાલિક ટ્રાન્સલેટ કરે છે, તે વખતે interpreter તાત્કાલિક એક પ્રોગ્રામ કોડ સ્ટેટમેન્ટ ટ્રાન્સલેટ કરે છે. ઇન્ટરપ્રિટર code statement વાંચે છે, એક કે વધારે મશીન લેંગ્વજ instructionsમાં તેનું રૂપાંતર કરે છે અને પછી મશીન લેંગ્વજ instructions પ્રોગ્રામના બીજા code statementમાં જતી રહે એ પહેલાં તેનો અમલ કરે છે. જો કોડની લાઇન બદલતી વખતે જો interpreter એરર બતાવે તો એરર મૅસેજ તરત જ સ્ક્રીન પર દેખાશે અને interpretation અટકી જશે. દર વખતે તમે સોર્સ પ્રોગ્રામ ચલાવશો, તો તે મશીન લેંગ્વજમાં એક પછી એક સ્ટેટમેન્ટમાં ઇન્ટરપ્રિટેડ થઈ જશે, અને પછી તેનો અમલ થશે.
ચોથી પેઢીની ભાષાઓ (Fourth-generation Languages)
3GLની જેમ, Fourth-generation language (૪ GL) અંગ્રેજી જેવા સ્ટેટમેન્ટ્સનો ઉપયોગ કરે છે. ૪ GL એ non-procedural language છે છતાં તેનો અર્થ જોતાં how (કેમ) એ સમજાવ્યા વગર પ્રોગ્રામને શું પ્રાપ્ત થવું જોઈએ, એ પ્રોગ્રામર ફક્ત સૂચવશે.
પરિણામે ૪ GLમાંના Coding Programs માટે ઘણા ઓછા સમયની જરૂર પડે છે અને પ્રોગ્રામરના ભાગ પર પ્રયત્નની પણ ઓછી જરૂર રહે છે. હકીકતમાં, ૪GLs ઉપયોગ કરવામાં એટલાં સહેલાં છે કે ખૂબ જ પ્રોગ્રામિંગ બૅકગ્રાઉન્ડ ધરાવતા યુઝર્સ ચોથી પેઢીની ભાષાનો ઉપયોગ કરીને પ્રોગ્રામોનો વિકાસ કરી શકે છે.
ઘણાં ૪GLs ડેટાબેઝના સંયોગથી અને તેની પ્રોજેક્ટ ડિક્સનરી સાથે કાર્ય કરે છે. આવી પાવરફુલ લેંગ્વેજીસ ડેટાબેઝ ઍડમિનિસ્ટ્રેટર્સના ડેટાબેઝ અને તેના સ્ટ્રક્ટરને સ્પષ્ટ કરી આપે છે. પ્રોગ્રામરને ડેટાબેઝમાંના ડેટાને જાળવી રાખવામાં મદદ કરે છે, યુઝર્સને ડેટાબેઝ પર ક્વેરી કરવા દે છે, કેટલીક ડેટાબેઝ મૅનેજમેન્ટ સિસ્ટમ્સ રિપોર્ટ લખનાર પૂરા પાડે છે. રિપોર્ટ રાઇટર અથવા રિપોર્ટ જનરેટર એક એવું સૉફ્ટવેર છે જે વિકસાવનારને સ્ક્રીન પર રિપોર્ટની ડિઝાઈન અથવા લેઆઉટ કરવામાં મદદ કરે છે.
રિપોર્ટ લેઆઉટમાં ડેટા એકસ્ટ્રેક્ટ કરી આપે છે, અને પછી બતાવે છે અથવા પ્રિન્ટ કાઢી આપે છે. સ્ક્રીનની પાછળની બાજુએ, આ રિપોર્ટ રાઇટર્સ ૪ GLs ક્વેરી તૈયાર કરે છે, જે ડેટા મેળવવામાં મદદ કરે છે. રિપોર્ટ રાઇટરનો ફાયદો એ થાય છે કે ક્વેરી લેંગ્વજ શીખ્યા વગર તમે ડેટા પાછો મેળવી શકો છો. રિપોર્ટ રાઇટર્સ સામાન્ય રીતે મેનુ દ્વારા ઑપરેટ થતા અને ગ્રાફિકલ યુઝર ઇન્ટરફેસવાળા હોય છે.

إرسال تعليق