CodeGym /జావా కోర్సు /మాడ్యూల్ 1 /కంపైలర్ మరియు బైట్‌కోడ్

కంపైలర్ మరియు బైట్‌కోడ్

మాడ్యూల్ 1
స్థాయి , పాఠం
అందుబాటులో ఉంది

1. జావా అత్యంత ప్రజాదరణ పొందిన ప్రోగ్రామింగ్ భాష

జావా ప్రపంచంలో అత్యంత ప్రజాదరణ పొందిన ప్రోగ్రామింగ్ భాష అని మీకు తెలుసా ?

TIOBE ర్యాంకింగ్ ప్రకారం, ప్రపంచంలోని మొత్తం ప్రోగ్రామర్లలో 17% కంటే ఎక్కువ మంది జావా ప్రోగ్రామింగ్ లాంగ్వేజ్‌ని ఉపయోగిస్తున్నారు . C 16% తో రెండవ స్థానంలో ఉంది . 20 సంవత్సరాల క్రితం, జావా భాష ఇప్పుడే కనిపించినప్పుడు, తిరుగులేని నాయకుడు C ++, కానీ ఇప్పుడు దాని వాటా 7% కంటే తక్కువగా ఉంది.

జావా 1990ల మధ్యలో కనిపించింది మరియు త్వరగా ప్రజాదరణ పొందింది. ప్రోగ్రామర్లు C ++ నుండి జావాకు వేల సంఖ్యలో మారారు. ఇది జావా చాలా కూల్ ప్రోగ్రామింగ్ లాంగ్వేజ్ అని మరోసారి నిర్ధారిస్తుంది .

కాబట్టి దాని గురించి చాలా బాగుంది? దాని సృష్టికర్తలు దీనికి ఏ లక్షణాలను అందించారు?

మీరు జావా మరియు C ++ పోల్చి చూస్తే మీరు చాలా ఆశ్చర్యపోతారు: జావా భారీగా కత్తిరించిన C++ని పోలి ఉంటుంది!

అవును, జావా భాష కొంతవరకు C++ నుండి భారీగా తొలగించబడింది . C++ మిమ్మల్ని 20 విధాలుగా చేయడానికి అనుమతిస్తే, జావా మిమ్మల్ని ఒకే మార్గంలో అనుమతిస్తుంది . కాబట్టి ఇక్కడ ప్రయోజనం ఏమిటి, మీరు అడగండి?

సరే, నేటి ప్రోగ్రామ్‌లు చాలా పెద్దవి, ఇతర వ్యక్తులు వ్రాసిన కోడ్‌ను అర్థం చేసుకోవడానికి ప్రోగ్రామర్లు తరచుగా తమ సమయాన్ని 90% వరకు వెచ్చిస్తారు. మరియు కొత్త కోడ్ రాయడానికి 10% మాత్రమే ఖర్చు చేయబడుతుంది. కాబట్టి అవును, సరళత ఒక ప్రయోజనం.


2. జావా కంపైలర్

మార్గం ద్వారా, జావా యొక్క సాటిలేని ప్రయోజనం దాని ప్లాట్‌ఫారమ్ స్వాతంత్ర్యం అని మీరు ఒకటి కంటే ఎక్కువసార్లు వింటారు . అది ఏమిటి మరియు దేని కోసం, మీరు అడగండి? మొదటి నుండి ప్రారంభిద్దాం.

కంప్యూటర్ సరళమైన ఆదేశాలను మాత్రమే అమలు చేయగలదు.

కుక్కలకు శిక్షణ ఇచ్చేటప్పుడు, కుక్కను మనం చేయాలనుకున్న పనిని చేయడానికి 'హీల్', 'షేక్' మొదలైన ఆదేశాలను ఉపయోగిస్తాము. కంప్యూటర్ల కోసం, సంఖ్యలు అటువంటి ఆదేశాల పాత్రను పోషిస్తాయి: ప్రతి ఆదేశం ఒక నిర్దిష్ట సంఖ్య ద్వారా ఎన్కోడ్ చేయబడుతుంది (దీనిని మెషిన్ కోడ్ అని కూడా పిలుస్తారు) .

కానీ కేవలం సంఖ్యలను ఉపయోగించి ప్రోగ్రామ్‌ను వ్రాయడం చాలా కష్టం, కాబట్టి ప్రజలు ప్రోగ్రామింగ్ భాషలను మరియు కంపైలర్‌లను కనుగొన్నారు . ప్రోగ్రామింగ్ లాంగ్వేజ్‌ని మనుషులు మరియు కంపైలర్‌లు ఇద్దరూ అర్థం చేసుకోవచ్చు. కంపైలర్ అనేది ప్రోగ్రామింగ్ భాషలో వ్రాసిన ప్రోగ్రామ్‌ను మెషిన్ కోడ్‌ల శ్రేణిగా మార్చే ఒక ప్రత్యేక ప్రోగ్రామ్.

ప్రోగ్రామర్ సాధారణంగా ప్రోగ్రామింగ్ లాంగ్వేజ్‌లో ప్రోగ్రామ్‌ను వ్రాసి, ఆపై కంపైలర్‌ను నడుపుతాడు, ఇది ప్రోగ్రామర్ వ్రాసిన ప్రోగ్రామ్ కోడ్ ఫైల్‌లను మెషిన్ కోడ్‌తో ఒకే ఫైల్‌గా మారుస్తుంది - చివరి (కంపైల్డ్) ప్రోగ్రామ్.

  • C++లో ప్రోగ్రామ్
  • కంపైలర్
  • మెషిన్ కోడ్‌తో కూడిన ప్రోగ్రామ్
C++ భాష కోసం సంకలన దశలు

ఫలితంగా ప్రోగ్రామ్ వెంటనే కంప్యూటర్ ద్వారా అమలు చేయబడుతుంది. చెడు వార్త ఏమిటంటే, తుది ప్రోగ్రామ్ యొక్క కోడ్ ప్రాసెసర్ మరియు ఆపరేటింగ్ సిస్టమ్‌పై బలంగా ఆధారపడి ఉంటుంది. అంటే Windows కోసం కంపైల్ చేయబడిన ప్రోగ్రామ్ Android స్మార్ట్‌ఫోన్‌లో పనిచేయదు.

మీరు Android కోసం ప్రోగ్రామ్‌ను వ్రాస్తే , అది Windows ఆపరేటింగ్ సిస్టమ్‌లో అమలు చేయబడదు !

అయినప్పటికీ, జావా మరింత వినూత్న విధానాన్ని ఉపయోగిస్తుంది.

  • జావాలో ప్రోగ్రామ్
  • జావా కంపైలర్
  • ప్రత్యేక స్వతంత్ర కోడ్‌లతో కూడిన ప్రోగ్రామ్ (బైట్‌కోడ్)
  • జావా VM
  • మెషిన్ కోడ్‌తో కూడిన ప్రోగ్రామ్
జావా భాష కోసం సంకలన దశలు

జావా కంపైలర్ అన్ని తరగతులను ఒక మెషిన్-కోడ్ ప్రోగ్రామ్‌లోకి కంపైల్ చేయదు. బదులుగా, ఇది ప్రతి క్లాస్‌ని స్వతంత్రంగా కంపైల్ చేస్తుంది మరియు ఇంకేముంది, మెషిన్ కోడ్‌లోకి కాకుండా ప్రత్యేక ఇంటర్మీడియట్ కోడ్ (బైట్‌కోడ్). ప్రోగ్రామ్ ప్రారంభించబడినప్పుడు బైట్‌కోడ్ మెషిన్ కోడ్‌గా కంపైల్ చేయబడుతుంది.

కాబట్టి, ప్రోగ్రామ్‌ని ఎగ్జిక్యూట్ చేస్తున్నప్పుడు మెషిన్ కోడ్‌గా ఎవరు కంపైల్ చేస్తారు?

దీని కోసం జావా వర్చువల్ మిషన్ (JVM) అనే ప్రత్యేక ప్రోగ్రామ్ ఉంది. ఇది మొదట ప్రారంభించబడుతుంది, ఆపై ప్రోగ్రామ్ బైట్‌కోడ్‌తో కూడి ఉంటుంది. ప్రోగ్రామ్ అమలు చేయడానికి ముందు JVM బైట్‌కోడ్‌ను మెషిన్ కోడ్‌లోకి కంపైల్ చేస్తుంది.

ఇది చాలా శక్తివంతమైన విధానం మరియు జావా యొక్క మొత్తం ఆధిపత్యానికి కారణాలలో ఒకటి.


3. జావా ఆధిపత్యం ఉన్న ప్రాంతాలు

పైన వివరించిన ప్రయోజనాలు జావాలో వ్రాసిన ప్రోగ్రామ్‌లను దాదాపు ఏ పరికరంలోనైనా అమలు చేయడానికి అనుమతిస్తాయి - కంప్యూటర్లు, స్మార్ట్‌ఫోన్‌లు, ATMలు, టోస్టర్‌లు మరియు క్రెడిట్ కార్డ్‌లు.

ఈ విధానం అనేక ప్రయోజనాలను కలిగి ఉంది . అందుకే ఆండ్రాయిడ్ ప్రోగ్రామ్‌లు జావాలో కూడా వ్రాయబడ్డాయి . మొబైల్ ఫోన్ పరిశ్రమ యొక్క శీఘ్ర వృద్ధికి ధన్యవాదాలు, జావా ప్రోగ్రామింగ్ యొక్క క్రింది రంగాలలో ఆధిపత్యం చెలాయిస్తుంది:

  1. Enterprise : బ్యాంకులు, కార్పొరేషన్లు, పెట్టుబడి నిధులు మొదలైన వాటి కోసం భారీ సర్వర్-ఆధారిత అప్లికేషన్లు.
  2. మొబైల్ : మొబైల్ డెవలప్‌మెంట్ (స్మార్ట్‌ఫోన్‌లు, టాబ్లెట్‌లు), Androidకి ధన్యవాదాలు.
  3. వెబ్ : PHP ముందంజలో ఉంది, కానీ జావా మార్కెట్‌లో ఘనమైన వాటాను స్వాధీనం చేసుకుంది.
  4. బిగ్ డేటా : వేలకొద్దీ సర్వర్‌లతో కూడిన క్లస్టర్‌లలో పంపిణీ చేయబడిన కంప్యూటింగ్.
  5. స్మార్ట్ పరికరాలు : స్మార్ట్ హోమ్‌లు, ఎలక్ట్రానిక్ పరికరాలు, IoT రిఫ్రిజిరేటర్లు మొదలైన వాటి కోసం ప్రోగ్రామ్‌లు.

జావా అనేది ఒక భాష మాత్రమే కాదు, మొత్తం పర్యావరణ వ్యవస్థ: మీరు మీ ప్రోగ్రామ్‌లో ఉపయోగించగల మిలియన్ల కొద్దీ రెడీమేడ్ మాడ్యూల్స్. మీరు సహాయం లేదా సలహాలను పొందగలిగే వేలాది ఆన్‌లైన్ కమ్యూనిటీలు మరియు సందేశ బోర్డులు.

మీరు జావాలో ప్రోగ్రామ్‌లు ఎంత ఎక్కువగా వ్రాస్తే, 'ఎందుకు జావా?' అనే ప్రశ్నకు మీరు అంత ఎక్కువ సమాధానాలు కనుగొంటారు. .

వ్యాఖ్యలు
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION