2010-08-07 15 views
10

मैंने अभी जावा सीखना शुरू कर दिया है (हेड-फर्स्ट बुक का जिक्र करना)।भाषा सीखने का आपका तरीका क्या है?

मैं सिर्फ यह जानना चाहता था कि किसी भी भाषा को सीखने का सबसे अच्छा तरीका क्या है?

पुस्तक से अधिक लाभ कैसे प्राप्त करें?

क्या किसी को पुस्तक के मामले का अध्ययन करना होगा और फिर बाद में उस कोड को कंप्यूटर पर आजमाएं या एक साथ ऐसा करें? (सीखने की अवधारणा और एक ही पल में कंप्यूटर पर कोशिश करें)

मेरे मामले में मैं पुस्तक का जिक्र कर रहा हूं और मंचों की मदद ले रहा हूं। इसके अलावा मैं जानना चाहता हूं कि स्टैक ओवरफ़्लो पर यहां जवाब देना कब शुरू करें :) चूंकि मैं भाषा में नया हूं इसलिए मुझे बहुत कुछ पता नहीं है।

(मैं बस के अन्य उत्तर यहाँ नियमित रूप से पढ़ने के लिए)

+0

आप शायद चाहता हूँ इस सवाल को "सामुदायिक विकी" चिह्नित करें ताकि यह तुरंत बंद न हो जाए। –

+0

ने कोशिश की http://stackoverflow.com/search?q=learning+a+language%3F? – Iznogood

+0

@ कार्ल: धन्यवाद, हो गया :) –

उत्तर

13

"सर्वश्रेष्ठ" जिस तरह से आप पर निर्भर करता है - मेरे अपने दृष्टिकोण में संक्षेप किया जा सकता है के रूप में:

  • एक किताब
  • कुछ कोड
  • दोहराने

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

0

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

आप हालांकि, भाषा की मूल बातें प्राप्त करने के लिए एक किताब का उपयोग करना चाहें ...

0

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

यह जानना महत्वपूर्ण है कि एक भाषा आमतौर पर बहुत सामान्य होती है जबकि समस्या यह संदर्भ देगी। उदाहरण के लिए मैं जावा अनुप्रयोगों को विकसित करने के बारे में जान सकता हूं, लेकिन इसका मतलब यह नहीं है कि मुझे पता है कि जे 2 ईई अनुप्रयोगों को कैसे विकसित किया जाए। वही भाषा, अलग संदर्भ; इसलिए आप सीखने की परियोजना या परियोजनाओं के साथ आने के बारे में सोच सकते हैं।

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

1

यह एक डुप्लिकेट है, क्योंकि मुझे बहुत पहले यह जवाब देना याद नहीं है, लेकिन मेरे लिए यह भाषा पर निर्भर करता है और क्या मुझे केवल भाषाएं या पूरी तरह से नए विचारों को सीखने की आवश्यकता है।

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

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

असल में सामान करना महत्वपूर्ण है।

0

मेरे लिए सबसे महत्वपूर्ण बात हमेशा कुछ ऐसी चीज ढूंढना है जो मैं वास्तव में सीखने के इरादे से नई भाषा के साथ करना चाहता हूं। अन्यथा वास्तव में प्रेरित होना मुश्किल है। लेकिन एक बार जब मुझे कुछ पता चल जाता है तो मैं भाषा पर ट्यूटोरियल और लेख पढ़ता हूं और जब भी जाता हूं तो मेरी परियोजना सीखना शुरू कर देता हूं।

मैं कई किताबें पढ़ता था लेकिन आज हर जगह स्टैक ओवरफ्लो और ट्यूटोरियल्स के साथ मुझे लगता है कि मुझे स्वयं को कम और कम की आवश्यकता है।

0

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

मुझे लगता है कि एक भाषा में सामान लिखना यदि आप इसे सही तरीके से निष्पादित करते हैं तो सीखना सबसे प्रभावी तरीका है।

2

मैं आमतौर पर पहले किताबें पढ़ने और प्रत्येक अध्याय के बाद व्यायाम करने, कहा में बुनियादी अवधारणाओं को समझने और

0

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

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

2

मैंने कुछ दिलचस्प किया है और नई आईआरसी बॉट को नई भाषा में फिर से लिखने की कोशिश की है। यह, मुझे का उपयोग करते हुए जो कुछ भी जीयूआई ढांचे भाषा

  • का उपयोग करता सॉकेट जैसी चीजों का उपयोग सहित

    • कई बातें जानने के लिए अनुमति देता है धाराओं, आदि
    • तुल्यकालन
    • OOP शैली (यदि भाषा OOP है)
    • बहु सूत्रण
    • क्या बातें गतिशील (प्लग-इन)
    • सही ढंग से जब मैं एक कोड की समीक्षा मांगना अगर मैं यह कर रहा हूँ।
    • का उपयोग कैसे करें अन्य व्यवस्थाएं

    जावा में, यह काफी किसी भी एसई डेस्कटॉप अनुप्रयोग की सीमा है। PHP में (हाँ, मैंने इसे कुछ भयानक दिखने वाले PHP में किया था जिसे मैंने छोड़ा था), मैंने कई रोचक बातें सीखीं, मुख्य रूप से PHP को ऐसा करने के लिए नहीं बनाया गया था।

    इस का उपयोग करके आप भाषा के कई सुविधाओं में महान अंतर्दृष्टि दे सकते हैं। यह कभी-कभी मजेदार भी हो सकता है।

  • 0

    मेरे लिए: मैं बस एक परियोजना शुरू करने से एक भाषा सीखने। मैंने सी # पर एक वेब प्रोजेक्ट शुरू करके इस गर्मी में सी # .NET सीखा। जब मैं किसी चीज़ पर फंस जाता हूं, तो मैं या तो इसे Google करता हूं या सिर्फ स्टैक ओवरफ्लो से लाभ प्राप्त करता हूं !! यदि आपको विश्वास नहीं है: जावा के साथ एक मिनी प्रोजेक्ट शुरू करें और देखें कि यह कैसा चल रहा है!

    0

    आप इस कार्यक्रम के लिए सीखने का बहुत प्रारंभिक दौर में हैं, तो मुझे लगता है कि इसे और अधिक आप क्या सीखा है के रूप में आप पुस्तक के माध्यम से जाने के साथ खेलने के लिए शिक्षाप्रद है। कुछ अभ्यास पाने के लिए इसे पढ़ना समाप्त होने तक प्रतीक्षा न करें। आप ज्ञान को समझ सकते हैं, लेकिन इसे लागू करने में सक्षम होने से काफी अभ्यास होता है। और यदि आप इसका अभ्यास नहीं करते हैं, तो एक हफ्ते पहले जो आपने सीखा था उसे भूलना आसान है।

    तो क्या मैं आमतौर पर जब मैं एक नई भाषा सीख रहा हूँ करते हैं, इसके साथ कुछ समस्याओं को हल करने की कोशिश करना है। इससे मुझे यह मूल्यांकन करने में बहुत मदद मिलती है कि भाषा की मेरी समझ कितनी दूर है, और मुझे भाषा की गहराइयों को खोजने में भी मदद करता है। मैं कोशिश समस्याओं के उदाहरण जब मैं एक नई भाषा सीख रहा हूँ हल करने के लिए:

    0

    आप किसी भी अनुभव प्रोग्रामिंग नहीं था, तो मुझे नहीं लगता कि एक प्रोजेक्ट शुरू करना एक अच्छा विचार है जहां आप खुद को अधिकतर बार अटक जाते हैं और Google या stackoverflow की सहायता की आवश्यकता होती है।

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

    इसे देखें: http://see.stanford.edu/see/courseinfo.aspx?coll=824a47e1-135f-4508-a5aa-866adcae1111

    जहाँ तक शुरू जवाब शुरुआत सवाल के रूप में, आप हमेशा कह सकते हैं क्या अपने पसंदीदा टैग होते हैं और यह निर्धारित करने के लिए "शुरुआत" इतना है कि StackOverflow अधिक "शुरुआत" सवाल दिखाएगा।

    +0

    धन्यवाद chiurox :) –

    0

    मैं अक्सर निम्न कार्य करें:

    • पढ़ने किताब है कि एक ही बात (पूर्व जावा परिचय, शुरुआत के लिए जावा, जावा सिर पहले आदि) के बारे में बात

    कारण वे के बारे में एक ही बात है चीज लेकिन अलग-अलग उदाहरणों और अलग-अलग कोडिंग शैली का प्रयोग कभी-कभी करते हैं, इसलिए यह मुझे कोडिंग के तरीके की किस्मों को समझने में मदद करता है। अक्सर एक उदाहरण वास्तव में यह समझने के लिए पर्याप्त नहीं है कि जब आप अटक जाते हैं तो वास्तव में क्या चल रहा है।

    • अन्य लोगों को लिखने वाले कोड पढ़ें।

    ऑनलाइन जाएं और जिस कोड को आप ढूंढ रहे हैं उसे खोजें, वे अलग-अलग तरीके से लिखते हैं और आप पाएंगे कि किस दृष्टिकोण में पेशेवर और विपक्ष हैं।

    • फ़ोरम में शामिल हों और चर्चा में शामिल हों।

    प्रश्न पोस्ट करने से पहले कुछ समय बिताना सुनिश्चित करें। लोगों को आसान समाधान साधक पसंद नहीं है। मैं आम तौर पर उत्तर खोजने के लिए कुछ घंटे बिताता हूं और यदि मैं समझ नहीं पा रहा हूं, तो जितना संभव हो उतना विस्तार से ऑनलाइन पूछना शुरू करें ताकि मुझे सटीक उत्तर मिल सकें।

    0

    क्या आपके पास कंप्यूटर विज्ञान या प्रोग्रामिंग पृष्ठभूमि है? यदि नहीं, डेटा संरचनाओं और एल्गोरिदम के साथ-साथ वास्तविक भाषा सीखना महत्वपूर्ण है। वहाँ बहुत से मुक्त संसाधन हैं, और जब पुस्तक आपकी मदद करेगी, तो आप कुछ अवधारणाओं में सहायता के लिए सीएस कोर्स लेने पर विचार करना चाहेंगे।

    यदि आप (या कोई अन्य व्यक्ति इस प्रश्न को पढ़ रहा है) रुचि रखते हैं, तो आप कंप्यूटर विज्ञान के लिए एक परिचय के लिए This site देख सकते हैं। Opencourseware पर कई अन्य अच्छे पाठ्यक्रम भी हैं। यह कक्षा विशेष रूप से असाइनमेंट, परीक्षण, और प्रश्नोत्तरी, सभी 100%, और एमआईटी शिक्षकों के साथ व्याख्यान के सभी स्ट्रीम या डाउनलोड करने योग्य वीडियो है।

    आप पहले से ही एक सीएस पृष्ठभूमि है, तो मुझे अनदेखा करें :)

    0

    मैं शुरू कर लगता है कि एक छोटे से परियोजना का सबसे अच्छा तरीका है और शुरू में एक किताब के लिए चिपके हुए है हमेशा मदद करता है

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