किसी programming language को लेकर पक्षपात नहीं होना चाहिए, लेकिन मेरा मानना है कि हर language में उसे बनाने वाले designer की चाही हुई design शामिल होती है, और उस design की ज़रूरत है या नहीं, इससे अलग भी हम उस design को पसंद कर सकते हैं.
उदाहरण के लिए, मुझे Rust की मज़बूत memory ownership पर आधारित design पसंद है, लेकिन असल में इस्तेमाल करने की बात आए तो जहाँ मुझे इसकी ज़रूरत पड़ती है, वहाँ अभी के लिए C++ के smart pointers से ही काम ठीक-ठाक चल नहीं जाता क्या.. ऐसा भी लगता है.
आह. मुझे Lua बहुत पसंद है. भले ही इसमें 1-based index है, और ऐसे कई खतरनाक पहलू हैं जो ढेर सारी समस्याएँ पैदा कर सकते हैं, लेकिन जो code हल्के-फुल्के ढंग से लिखकर भूल जाना हो, उसे हल्के ढंग से लिखने के लिए इससे बेहतर language है क्या, ऐसा लगता है.
अपनी पसंदीदा language / कमियाँ / खूबियाँ लिखकर बताएँ तो आभारी रहूँगा (__ )/
15 टिप्पणियां
Python है.
यह एक all-round development language है और इसकी productivity बेहतरीन है.
हालांकि runtime speed थोड़ी धीमी है, लेकिन इसमें लगातार सुधार हो रहा है.
वाकई शानदार भाषा है! मैं भी इसे प्रोग्रामिंग करते समय duct tape की तरह बहुत काम की पाता हूँ, क्योंकि इसे कहीं भी उठाकर जोड़-तोड़ के लिए इस्तेमाल किया जा सकता है।
पसंदीदा भाषा : Javascript
कमज़ोरी : कंपनी में इसे पसंद करने वाले लोग बेहद कम हैं.
खूबी : इसलिए कोई दखल नहीं देता और मैं अपनी मर्ज़ी से कोड लिख सकता हूँ..... मज़ाक कर रहा हूँ, असल में client के लिए बनाया गया source, Server के लिए भी वैसे का वैसा इस्तेमाल कर सकते हैं, यही बात मुझे पसंद है.
JS की productivity भी अच्छी है, V8 engine की power की वजह से यह तेज़ है, और यह सच में सब कुछ कर सकने वाली शानदार language है। server से client तक... और ऊपर से code की अपनी stability या readability की कमी को TS से पूरा भी किया जा सकता है, इसलिए यह ऐसी language भी है जिससे भविष्य के लिए काफ़ी उम्मीदें हैं। खासकर जब मैं web बनाता हूँ, तो लगभग हमेशा React.js + TS server framework के साथ लिखता हूँ, और CLI app को Node.js से बनाता हूँ, जो वाकई बहुत अच्छा लगता है।
मुझे Rust में प्रोग्रामिंग करना इसलिए पसंद है क्योंकि इसमें साफ़-साफ़ महसूस होता है कि मैं अपने हाथों में क्या पकड़े हुए हूँ।
लेकिन जितनी यह साफ़ है, उतना ही इसमें हर चीज़ को हाथ से बारीकी से छेड़ना पड़ता है, इसलिए मैं इसे दूसरों को recommend नहीं कर सकता।
यह अधिकार और ज़िम्मेदारी के अनुपात में डरावनी भाषाओं का परिवार है(... ) शुरू में लगा था कि शायद यह C++ का evolved रूप है। लेकिन आजकल यह ज़्यादा C का evolved रूप लगने वाली भाषा जैसा महसूस होता है.
C# है.
strongly typed language
अपडेट बहुत सक्रिय हैं, इसलिए यह modern language के सभी फायदे आत्मसात कर लेती है
LINQ
शक्तिशाली Visual Studio
MSDN तक, कोड लिखते समय मैं हमेशा खुश रहता हूँ
उफ़्फ... C# तो सच में बहुत पुराने समय से ही versions बहुत तेज़ी से बढ़ते रहे हैं। कुछ ऐसा है कि कोई एक project करके देखना चाहता हूँ, लेकिन समझ नहीं आ रहा कि कहाँ से शुरू करूँ haha। backend role को C# में बनाना चाहता हूँ, लेकिन...
perl.
दूसरी भाषाओं के विपरीत, यह एक भाषाविद् द्वारा बनाई गई भाषा है, इसलिए संदर्भ के अनुसार variables को छोड़ा जा सकता है,
और आधुनिक भाषाओं के type inference की तरह संदर्भ के अनुसार इसे उपयुक्त type में बदल देती है—इन्हीं सुविधाओं की वजह से मुझे यह पसंद है।
ओह... प्रोडक्टिविटी तो कमाल की लग रही है। shell scripting करते समय यह सबसे बढ़िया होगा। जल्दी से लिखने और ठीक-ठाक चलाने लायक कोड के लिए..
मैं पिछले लगभग 10 सालों से लगभग सिर्फ Ruby में ही कोडिंग कर रहा हूँ.
मुझे लगता है कि Ruby की सबसे बड़ी खूबी है इसमें कोड लिखते समय खुशी महसूस होना + Rails का होना.
लेकिन दूसरों का कोड पढ़ते समय यह बेहद पीड़ादायक होता है....
Rubyist लोग धीरे-धीरे कम होते जा रहे हैं, इसलिए अकेलापन महसूस होता है.
मैंने हाल ही में ही Ruby को जाना, और लगा कि इसे अब तक क्यों नहीं जाना था। इतने फायदे होने के बावजूद इसका अपेक्षाकृत कम इस्तेमाल होना इसे कुछ फीकी पड़ गई, अफसोसजनक भाषा जैसा बनाता है।
Ruby! भाषा वाकई बहुत शानदार है। इसका syntax और context structure दूसरी भाषाओं की तुलना में काफ़ी अलग है, इसलिए इसने मुझे गहराई से प्रभावित किया, लेकिन एक बार इसकी आदत पड़ जाए तो यह बेहद साफ़-सुथरी और पढ़ने में बहुत अच्छी लगती है। ख़ासकर
ifको पीछे लगाना — काश दूसरी भाषाओं में भी होता, तो कमाल की सुविधा होती...(“}golang.
मुझे लगता है कि इसकी asynchronous processing की syntax दूसरी भाषाओं की तुलना में अधिक संक्षिप्त है.
और वेब डेवलपमेंट में बहुत इस्तेमाल होने वाली भाषाओं में यह दुर्लभ है कि इसे compile करके binary executable बनाया जा सकता है..
इसलिए आजकल बहुत इस्तेमाल होने वाले docker से image बनाते समय base image के लिए
alpineजैसी छोटी चीज़ें इस्तेमाल की जा सकती हैं, जिससे image size भी छोटा हो जाता है... और इसके अपने web server implementation का performance भी अच्छा है, इसलिए मुझे लगता है कि यह web server development के लिए सबसे उपयुक्त है.मैं Golang पर उसके पहली बार आने के समय से ही दिलचस्पी लेकर नज़र रख रहा हूँ, लेकिन असल में लगातार सिर्फ Node.js से ही (...) side projects कर रहा हूँ, इसलिए उससे ज़्यादा जुड़ाव नहीं बन पाया। ASP.NET और Node.js के बीच लगातार सोच-विचार चल रहा है। लगता है Golang को भी इसमें जोड़ना चाहिए (..)। अगला project शायद अपने comfort zone से बाहर निकलकर शुरू करना चाहिए..