2009-09-16 7 views
5

मैंने इंटेलिजे आईडीईए डाउनलोड किया और 30 दिन के मूल्यांकन के साथ शुरू किया।इंटेलिज का उपयोग क्यों करें, या मूल्यांकन के दौरान क्या करना है

अब मैं सोच रहा हूं, मुझे सादे पुराने जावा विकास के लिए इंटेलिजे का उपयोग क्यों करना चाहिए (इसलिए कोई हाइबरनेट, जेएसपी, आदि)? यह ग्रहण या नेटबीन से अलग नहीं दिखता है, इसलिए मुझे आशा है कि कुछ इंटेलिजे गुरु कुछ चीजों के उदाहरण दे सकते हैं इंटेलिजेज इसमें पैसे निवेश करने के लिए सही कर सकता है। मैं मूल्यांकन को पूरी तरह से उपयोग करने की कोशिश कर रहा हूं और एक महत्वपूर्ण विशेषता को याद नहीं करना चाहता हूं।

things possible in IntelliJ but not in eclipse की एक सूची पहले से ही उपलब्ध है, लेकिन मुझे कुछ अस्पष्ट सुविधाओं की तुलना में दैनिक वर्कफ़्लो में अधिक दिलचस्पी है जो महीने में दो बार उपयोग की जाएगी।

+11

"यह है कि विभिन्न नहीं दिखता है ..." - आप जानते हैं, एक दूरी से मैं चॉकलेट और पूप के बीच अंतर नहीं बता सकता , या तो। :) – weiji

उत्तर

12

मैं के लिए इंटेलीजे उपयोग कर रहे हैं लगभग 5 साल अब (संस्करण 4.5 के बाद से) और मैंने मैनिंग पुस्तक "इंटेलिजेज़ इन एक्शन" के माध्यम से भी पढ़ा है और मैं अब भी खुद पर एक गुरु नहीं मानूंगा। असल में, मैं इसके साथ "सादा पुराना जावा विकास" भी करना चाहता था, और ईमानदारी से मुझे यह कहना है कि यह उस पर काफी अच्छा है। अन्य उत्तरों की तरह, मैं केवल इतना कह सकता हूं कि इसकी सहायकता में एक निश्चित बढ़त है जो वास्तव में इसे शीर्ष पर रखती है। हम काम पर ग्रहण का भी उपयोग करते हैं, और जब मेरे पास उतना अनुभव नहीं है, तो मैं आपको बता सकता हूं कि इसमें निश्चित रूप से बहुत सी बुनियादी चीजें हैं। मैंने ग्रहण सीखने के लिए कुछ गंभीर समय और प्रयास किए, इंटेलिजे में दी गई हर रोज़ चीजों को कैसे करना है, और वे ज्यादातर वहां या बहुत खराब तरीके से लागू नहीं होते हैं। रिफैक्टरिंग सामान निश्चित रूप से ऐसी चीज है जो बहुत मदद करता है।

रिफैक्टरिंग के अलावा, मुझे लगता है कि छोटे स्पर्शों में से केवल एक टन हैं जो वास्तव में यह सहायक बनाते हैं। मुझे लगता है कि एक उदाहरण स्पष्ट मदद कर सकता है ...

इस प्रयास करें:

एक नया, रिक्त वर्ग बनाएँ। कर्सर को ब्रेसिज़ के अंदर ले जाएं और psvm करें और Ctrl-J दबाएं - यह "psvm" को "सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] तर्क) में फैलाता है"। आमतौर पर उपयोग किए जाने वाले मुहावरे की एक पूरी सूची है कि यह शॉर्टकट संभाल लेगा (और यह भी कॉन्फ़िगर करने योग्य है)।मुख्य कोड ब्लॉक के अंदर, यह कोड डालें: की "sout" अंत में

public static void main(String[] args) { 
    int x = 1000; 
    sout 
} 

, फिर Ctrl-जम्मू करते हैं - आप एक और पॉपअप कि आपको कुछ अलग विस्तार से चुनने के देखेंगे, लेकिन में सामान्य यह "System.out.println (" ")" और मददगार कर्सर को डबल-कोट्स के बीच रखता है (यह ऐसा छोटा स्पर्श है जो वास्तव में चमकता है, मुझे लगता है। विजुअल स्टूडियो के "इंटेलिसेन्स" के साथ तुलना करें - यदि आप मुझसे पूछें तो कुल क्रॉक)।

वैसे भी, पहले डबल-कोट पर बैकस्पेस - ध्यान दें कि यह मेल खाने वाले डबल-कोट को हटा देता है? यह भी ब्रेसिज़ और ब्रैकेट के साथ एक ही चीज करता है। मुझे लगता है कि कुछ कोने के मामले हैं जहां मैं पसंद करता हूं कि यह ऐसा नहीं करता है, लेकिन अधिकांश समय यह बहुत मदद करता है। कोड संपादन पर वापस बस टाइप एक्स तो कोड अब इस तरह दिखता है:

public static void main(String[] args) { 
    int x = 1000; 


    // add a few blank lines here too - the need for 
    // this will be obvious a little later 

    System.out.println(x); 
} 

अब, एक्स की घोषणा करने के लिए कर्सर ले जाते हैं, और Shift-F6 है - इस रिफैक्टरिंग in- है जगह संवाद (मुझे पता नहीं है कि इसे क्या कहना है, इसलिए मैंने इसे अभी बनाया है)। "X" नाम के चारों ओर एक रंगीन बॉक्स मिलता है, और आप इसके लिए एक नया नाम टाइप करना शुरू कर सकते हैं - जैसा कि आप टाइप करते हैं, उस नाम के सभी उपयोग गतिशील रूप से अपडेट हो जाते हैं। एक और साफ स्पर्श मुझे वास्तव में पसंद है।

इस प्रयास करें: इसलिए की तरह कहीं एक बहुत लंबी लाइन टिप्पणी डाल दिया,:

// this is a really long comment blah blah blah i love to hear myself talking hahaha 

अब आप तय टिप्पणी बहुत बड़ी है, तो आप कहीं इसे के बीच करने के लिए कर्सर ले जाने और Enter दबाएं का कहना है। IntelliJ टिप्पणी के शेष भाग को "//" प्रीपेड के साथ रखेगा - यह "जानता है" यह पिछली टिप्पणी की निरंतरता है, इसलिए यह आपके लिए टिप्पणी करता है। एक और साफ स्पर्श।

// this is a really long comment blah 
// blah blah i love to hear myself talking hahaha 

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

जैसा कि आप चारों ओर कोड करते हैं, वर्तमान रेखा पर लाल "हल्के बल्ब" प्रकार के प्रतीकों के लिए बाएं गटर बार पर ध्यान दें - यह इंटेलिजे आपको बता रहा है कि यह संभव है कि यह संभव हो। एक छोटा इन-प्लेस संवाद बॉक्स लाने के लिए Alt-Enter का उपयोग करें, और यह आपको बताएगा कि यह स्वचालित रूप से क्या ख्याल रख सकता है। मान लें कि आप "getFoo()" नामक एक विधि परिभाषा टाइप करते हैं और कोई फू सदस्य नहीं है - यह आपके लिए इसे बनाने की पेशकश करेगा। या यदि आप कक्षा का उपयोग कर रहे हैं और उस पर एक गैर-मौजूदा विधि को कॉल करें जैसे getFoo() - यह एक गेटर और सदस्य, या एक नियमित विधि बनाने की पेशकश करेगा। यह सिर्फ सादा सहायक है।

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

इंटेलिजे को कुछ निश्चित दोष हैं - कीमत थोड़ी अधिक है, और यह काफी बड़ा है कि इसे एक बड़ी परियोजना पर लोड करने में कुछ समय लग सकता है। मैं भाग्यशाली हूं कि मेरी कंपनी लाइसेंस के साथ-साथ एक बहुत अच्छा वर्कस्टेशन का भुगतान करती है, इसलिए यह काफी तेज़ी से लोड हो जाती है, लेकिन आपका माइलेज अलग-अलग होगा।

+6

इंटेलिज के विशिष्ट के रूप में वर्णित अधिकांश विशेषताएं नेटबीन्स और ग्रहण में भी मौजूद हैं। – JRL

+2

मजेदार, लेकिन यहां दिए गए अधिकांश उदाहरण ग्रहण में मौजूद हैं: मुख्य विधि के लिए मुख्य और Ctrl + स्पेस टाइप करें, syso (sysout के लिए) टाइप करें और System.out.println() के लिए Ctrl + Space, x को हाइलाइट करें और Alt टाइप करें + शिफ्ट + आर इसका नाम बदलने के लिए ... आईएमओ, यह पुष्टि करता है कि एक आईडीई को दूसरे पर पसंद करना आपके कोडिंग आदतों, आपके वर्तमान पर्यावरण के बारे में आपका ज्ञान है, और इस प्रकार यह बहुत ही व्यक्तिपरक है। –

+5

हाँ, मुझे पता है। मैंने प्रस्ताव के साथ अपने जवाब में यह कहा "और वे ज्यादातर वहां नहीं हैं या बहुत खराब तरीके से कार्यान्वित नहीं हैं"। चॉकलेट और पोप के बारे में मेरी मजाक-टिप्पणी की तरह - वे एक ही रंग हैं इसका मतलब यह नहीं है कि वे वही हैं। – weiji

1

मैं इंटेलिजे आईडीईए गुरु नहीं हूं लेकिन आमतौर पर इंटेलिजे के बारे में प्रशंसकों को क्या पसंद है, यह महान रिफैक्टरिंग और कोड सहायक सुविधाएं हैं। वे अक्सर दावा करते हैं कि यह उत्पाद इस दृष्टिकोण से अपने प्रतिद्वंद्वी से कहीं बेहतर है।

व्यक्तिगत रूप से, मैं निम्नलिखित सिद्धांत का पक्षपात कर रहा हूं: आईडीई का उपयोग करें जिसके साथ आप सबसे अधिक उत्पादक महसूस करते हैं, न कि किसी और को पसंद करते हैं।

4

मैं इंटेलिज (क्लाइंट की वरीयताओं के कारण) के साथ 2 साल बाद ग्रहण में वापस चला गया हूं।

मुझे ग्रहण कम सहायक होने के लिए मिल रहा है। मुझे पता है कि यह एक घबराहट शब्द है, लेकिन इंटेलिज की प्रतिक्रिया स्पष्ट थी, यूआई ने मुझे क्या चल रहा था, इस बारे में बेहतर जानकारी दी, स्वचालित इमारत अधिक सहज लग रही थी। प्रोजेक्ट सेटअप/कॉन्फ़िगरेशन अधिक सहज लगता है।

यह शायद व्यक्तिपरक है, लेकिन कभी-कभी यही कारण है कि आप ओवर में एक को पसंद करते हैं। यह सिर्फ लगता है छोटा सा बरसाती कोट, कि थोड़ा सा दोस्ताना ...

(मुझे नहीं लगता कि Intellij के लिए विम प्लगइन बेहतर है, लेकिन यह एक और कहानी है!) कि

10

मेरे पास एक दिन का काम है जहां मैं ग्रहण का उपयोग करता हूं (क्योंकि यह सब अनुमति है)। मेरे पास अपनी खुद की कंपनी भी है जहां मैं "चाँदनी" अनुबंध काम कर रहा हूं और इंटेलिजे का उपयोग करता हूं।

मैं कहूंगा कि उनके फीचर सेट समान हैं। बहुत अधिक वही रिफैक्टरिंग, एक ही कोड सहायता करता है, उपयोग की एक ही शैली, इत्यादि। ग्रहण में इंटेलिज के मुकाबले बेहतर प्लग-इन, और शायद कई और हैं। IntelliJ बस स्प्रिंग और हाइबरनेट जैसे बॉक्स से चीजों को "जानता है", और ये चीजें समान कार्यक्षमता के ग्रहण प्लग-इन से बेहतर एकीकृत होती हैं।

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

तो, निर्णय लेने के लिए आपको जो गतिविधियां करना चाहिए, वे हैं: अपने सभी विकास कार्यों के लिए हर दिन IntelliJ का उपयोग 30 दिनों के लिए करें। नए शॉर्टकट सीखने और खोज, रीफैक्टरिंग इत्यादि सीखने के वक्र के माध्यम से पुश करें और मुझे संदेह है कि आप इसे पसंद करेंगे। यदि नहीं, ग्रहण अभी भी आपके लिए है।

+0

ग्रहण में पंक्ति संख्या कुंजी बाध्यकारी जाने के लिए मुझे नट्स (Ctrl + L, मुझे विश्वास है) चला गया क्योंकि यह किसी भी अन्य विंडोज ऐप (Ctrl + G) की तरह नहीं है। मैं मानता हूं कि यह सभी छोटी चीजें शामिल हुईं जिससे मुझे जहाज कूद गया। – dhable

3

2weiji: टैब बजाय Ctrl + J का उपयोग :-) यह बहुत आसान :-))
sout तो टैब
psvm तो टैब
आईटीईआर है तो टैब
आदि ...: ओ)

+0

धन्यवाद - टैब वास्तव में बहुत आसान है। डिफ़ॉल्ट कीमैप के लिए, मुझे लगता है कि यह Ctrl-J से बेहतर है। दुर्भाग्य से मेरे लिए, मैं एक संशोधित emacs keymap का उपयोग करता हूं, इसलिए ऐसा लगता है कि इस स्थिति में "Emacs Tab" को "अगला टेम्पलेट वैरिएबल" पर प्राथमिकता मिलती है - क्या यह सही है? – weiji

2

इंटेलिजे का उपयोग क्यों करें? क्योंकि मुझे इसे इसके उपयोगकर्ता इंटरफ़ेस में अधिक सुसंगत लगता है और अधिक पॉलिश किया जाता है। यह आपको कुंजीपटल और माउस के बीच आगे और पीछे स्विच करने के बजाए कीबोर्ड पर अपने हाथों को लंबे समय तक रखने की अनुमति देता है। जैसा कि अन्य लोगों ने कहा है, यह छोटी चीजें हैं जो जोड़ती हैं।

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

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

पुनर्रचना का समर्थन - इस बड़े विक्रय बिंदु जब मैं पहली बार 2003 में इसका उपयोग करना प्रारंभ किया गया था, और मुझे लगता है कि यह अभी भी सबसे आगे है (लेकिन मैंने सुना Netbeans अब भी काफ़ी अच्छी है)

अत्यधिक सुझाव है कि IntelliJ KeyMap संदर्भ पर एक नज़र।

अक्सर इस्तेमाल शॉर्टकट के लिए इस चर्चा पर एक नज़र डालें: What are the most useful Intellij IDEA keyboard shortcuts?

संबंधित मुद्दे