जावा एक दृढ़ता से टाइप की गई वस्तु-उन्मुख प्रोग्रामिंग भाषा है। 1995 में बनाया गया, तब से इसमें कई सुधार हुए हैं। प्रोग्रामिंग भाषाओं की रैंकिंग के साथ-साथ सॉफ्टवेयर डेवलपर्स के वेतन की रैंकिंग में लगातार अग्रणी स्थान रखता है ।

और सबसे महत्वपूर्ण बात यह है कि जावा की रैंकिंग साल-दर-साल बढ़ती नहीं है - यह लगातार उच्च बनी हुई है। आइए समझने की कोशिश करें कि जावा को लोकप्रिय क्या बनाता है।

1. क्रॉस-प्लेटफ़ॉर्म - लिखित कोड बायटेकोड में परिवर्तित हो जाता है, जिसे बाद में जेवीएम द्वारा निष्पादित किया जाता है। विभिन्न प्लेटफार्मों के लिए जेवीएम कार्यान्वयन हैं। इसका मतलब है कि कोड, एक बार लिखे जाने के बाद, विंडोज, लिनक्स और मैकओएस, और यहां तक ​​​​कि विभिन्न विदेशी प्लेटफार्मों, जैसे कि अरुडिनो, स्मार्ट रेफ्रिजरेटर और वैक्यूम क्लीनर पर चलेगा। दूसरे शब्दों में, कोड विभिन्न प्लेटफार्मों और ऑपरेटिंग सिस्टम पर काम करेगा, उनमें से प्रत्येक के लिए अनुकूलित किए बिना।

2. स्वचालित स्मृति प्रबंधन — डेवलपर को यह सोचने की आवश्यकता नहीं है कि RAM में वेरिएबल्स कहाँ संग्रहीत हैं, उन्हें मैन्युअल रूप से पढ़ें/लिखें, या डेटा अखंडता के बारे में चिंता करें। ग्राहक की व्यावसायिक समस्या को हल करते समय, आपको समस्या के बारे में सोचना चाहिए, न कि बाइट्स को कैसे और कहाँ लिखना है।

3. स्पीड (जेआईटी कंपाइलर) - स्थिर संकलन के अलावा, जो "अग्रिम रूप से" होता है, जावा जस्ट-इन-टाइम (जेआईटी) संकलन का समर्थन करता है। यह सर्वर कोड के लिए अत्यधिक प्रासंगिक है, जो एक समय में महीनों या वर्षों तक चल सकता है। बार-बार निष्पादित कोड को विभिन्न तरीकों से संकलित किया जाता है और इसके निष्पादन समय को मापा जाता है। इसका परिणाम यह होता है कि कोई एप्लिकेशन जितनी देर चलती है, उतनी ही तेज हो जाती है। और यह सक्रिय रूप से चल रहे सर्वर के लिए सही है। बिल्कुल सटीक?

4. पश्चगामी संगतता - जावा के पुराने संस्करणों में लिखे गए कोड नए संस्करणों पर भी काम करेंगे। यह सुविधाजनक है: जावा स्पेक अपडेट होने के बाद, आपको "अपडेट के कारण" अपने आधे प्रोजेक्ट को फिर से लिखने की आवश्यकता नहीं है, लेकिन आप अभी भी नवीनतम सुरक्षा पैच प्राप्त कर सकते हैं।

5. वस्तु अभिविन्यास - मनुष्य वस्तुओं के संदर्भ में सोचते हैं: एक मेज, एक ट्रॉलीबस, एक स्मार्टफोन। डेवलपर्स को काम करते समय असामान्य प्रतिमानों में सोचने के लिए मजबूर नहीं किया जाता है, और इससे अनावश्यक त्रुटियों को हमारे कोड से बाहर रखने में मदद मिलती है। इसके बजाय, हम केवल उन विवरणों पर ध्यान केंद्रित कर सकते हैं जो कार्य में महत्वपूर्ण हैं। उदाहरण के लिए, एक इंटीरियर डिजाइनर के दृष्टिकोण से, टेबल का आकार और कमरे में स्थान महत्वपूर्ण हैं। इसकी निर्माण तिथि, टेबल के लिए लकड़ी काटने वाले कर्मचारी का नाम और इसे देने वाले FedEx ड्राइवर का फोन नंबर महत्वपूर्ण नहीं है। इसके अलावा, उस डेटा के साथ काम करने के लिए डेटा और तरीके कोड में एक साथ संग्रहीत किए जाते हैं।

6. स्टेटिक टाइपिंग (तेजी से विफल) - संकलन चरण के दौरान चर प्रकार की संगतता की जाँच की जाती है। प्रत्येक डेवलपर कोड संकलित करता है, इसलिए संकलन त्रुटियां लगभग तुरंत पकड़ी जाती हैं। बाद में जिस चरण में त्रुटि का पता चलता है, उसे ठीक करना उतना ही महंगा होता है।

7. प्रलेखन के रूप में कोड - जावा अंग्रेजी में वाक्यों की तरह पढ़ता है। तदनुसार, ज्यादातर मामलों में, प्रलेखन को बनाए रखने के लिए प्रयास करने की कोई आवश्यकता नहीं है, क्योंकि कोई भी डेवलपर, कोड को देखकर समझ जाएगा कि एक विधि क्या करती है या इंटरफ़ेस किस व्यवहार के लिए ज़िम्मेदार है। क्या अधिक है, कोड में सभी संस्थाओं के "उचित" नामकरण के संबंध में बुद्धिमान परंपराएं हैं। एक विधि का नाम अक्सर स्पष्ट करता है कि यह क्या करता है।

उदाहरण के लिए, getContext () विधि संदर्भ लौटाती है, और आयु क्षेत्र आयु को संग्रहीत करने के लिए जिम्मेदार है। जावा में, नामों की लंबाई संस्थाओं के साथ काम करने के लिए आवश्यक सिस्टम संसाधनों की मात्रा को प्रभावित नहीं करती है। सी इसे भी नहीं संभालता है: जब कोई डेवलपर कोड के तर्क को समझने के बजाय एक नई परियोजना में शामिल होता है, तो उसे इसे समझना चाहिए।

8. बहुत सारे ओपन सोर्स लाइब्रेरी और फ्रेमवर्क - 99% कार्य जो एक डेवलपर दैनिक अभ्यास में सामना करता है, पहले से ही किसी के द्वारा हल किया जा चुका है। समय के साथ, अच्छे समाधान पुस्तकालयों और यहां तक ​​कि रूपरेखाओं में विकसित होते हैं। कौन सा बेहतर है - 5 मिनट के लिए गूगल करना या चौकोर पहियों के साथ अपनी खुद की साइकिल को फिर से बनाना?

9. बड़ा समुदाय - इस लोकप्रिय भाषा का एक विशाल डेवलपर आधार है जो इंटरनेट पर बहुत सारे प्रश्न पूछता है, बहुत सारे उत्तर देता है, बहुत सारे कोड लिखता है, और कई समस्याओं का सामना करता है और हल करता है। और जितने अधिक डेवलपर हैं, भाषा उतनी ही लोकप्रिय है, और उतनी ही तेजी से बढ़ती है। यह पुण्य चक्र है।

जावा के कई सकारात्मक "गुणों" का उल्लेख पहले ही किया जा चुका है, लेकिन मैं कुछ और जोड़ना चाहूंगा:

  • जेवीएम (जावा वर्चुअल मशीन) आपके लिए मेमोरी का प्रबंधन करता है, जो इसे सुरक्षित बनाता है और वित्तीय उपकरणों के लिए #1 भाषा बनाता है।

  • जावा में बैकएंड सर्वर (सर्वर लॉजिक) लिखना बहुत सुविधाजनक है।

  • कुछ समय पहले तक, जावा Android अनुप्रयोगों के लिए शीर्ष भाषा थी।

    कोटलिन, एक जेवीएम भाषा जो जावा से "सिंटैक्टिक शुगर" और कुछ विशेषताओं से भिन्न है, अब इसकी जगह लेती है। जावा से कोटलिन और इसके विपरीत में स्विच करने में कई दिन लगेंगे। और यह देखते हुए कि जावा अपडेट चक्र अब छह महीने का है, अगली जावा रिलीज में कोटलिन के लिए लिखे गए सभी प्रचारित सामान हो सकते हैं।

  • कई प्रसिद्ध कंपनियाँ Java का उपयोग करती हैं: Google, Facebook, Twitter, Amazon, LinkedIn, eBay, CodeGym और कई अन्य।