2008-10-18 9 views
10

मैं प्रोग्रामिंग के लिए पूरी तरह से नया हूं - मेरी रुचि PHP & माईएसक्ल में सैन्य बैंड प्रशासन उद्देश्यों के लिए एक गतिशील वेब अनुप्रयोग बनाने के लिए है। यानी सदस्यों के लिए सामान्य जानकारी और सोशल नेटवर्किंग + प्रभावी ढंग से संवाद करने के लिए प्रबंधन टीम के लिए अतिरिक्त कार्यक्षमता।सामान्य प्रोग्रामिंग ज्ञान?

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

तो क्या सामान्य रूप से प्रोग्रामिंग के बारे में एक किताब (एक प्राइमर शायद) है जो मेरे जैसे किसी को यह समझने की अनुमति देती है कि इसका क्या अर्थ है?

ध्यान रखें कि मैं 57 वर्ष का हूं (युवा) और वास्तव में बस शुरू कर रहा हूं।

स्टीव

उत्तर

1

एक बहुत पठनीय (भी तकनीकी नहीं) ढंग से कंप्यूटर हार्डवेयर और सॉफ्टवेयर की अंदरूनी कामकाज की अच्छी समझ पाने के लिए, मैं चार्ल्स पेज़ॉल्ड द्वारा Code,The Hidden Language of Computer Hardware and Software सिफारिश कर सकते हैं।

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

हालांकि यह एक बड़ी किताब नहीं है इसलिए इसे पढ़ने के लिए सभी को दिलचस्प/उपयोगी होना चाहिए।

यदि आप PHP/MySQL प्रोग्रामिंग के परिचय के लिए विशेष रूप से परिचय चाहते हैं तो बेहतर किताबें हैं, हालांकि यदि आप सॉफ़्टवेयर और हार्डवेयर के काम के बारे में अधिक सामान्य ज्ञान चाहते हैं, तो कोड बहुत अच्छा है।

+0

कोड एक महान पुस्तक है, मेरे पसंदीदा में से एक है, लेकिन मैंने सोचा कि यह PHP और MySQL सीखने में रुचि रखने वाले किसी व्यक्ति के लिए बहुत कम स्तर वाला हो सकता है। –

+0

मैं PHP, MySQL सीखने तक सहमत हूं, लेकिन मैंने सोचा कि "सामान्य रूप से प्रोग्रामिंग" के बारे में एक पुस्तक का अर्थ केवल एक परिचय है। PHP के लिए। – Ash

+0

कोड वास्तव में सामान्य रूप से प्रोग्रामिंग के बारे में नहीं है, यह कंप्यूटर के बारे में है और वे कैसे ... संचार, कोड का उपयोग कर संवाद करते हैं। –

2

वैसे यह PHP के बारे में पुस्तक नहीं है लेकिन मुझे लगता है कि से "Learn to program" जैसी कोई पुस्तक आपकी स्थिति में किसी के लिए उपयोगी हो सकती है।

9

Wikipedia शायद प्रोग्रामिंग शब्दावली पर सामान्य जानकारी के लिए आपका सबसे अच्छा संसाधन है। प्रोग्रामिंग समुदाय के साथ उनके समुदाय का एक बड़ा हिस्सा ओवरलैप हो जाता है, इसलिए तकनीक से संबंधित पृष्ठ आमतौर पर बहुत सटीक, शैक्षणिक और अद्यतित होते हैं। उदाहरण के रूप में उनके पृष्ठ stack overflows और recursion पर देखें।

इसके अलावा, PHP.net विशेष रूप से PHP के बारे में जानने के लिए सबसे अच्छी जगह है, लेकिन यदि आप अभी शुरू कर रहे हैं तो मुख्य पृष्ठ और go straight to the tutorial छोड़ें।

अंत में, मैं डेटाबेस के बारे में जानने के लिए Head First SQL पुस्तक की अत्यधिक अनुशंसा करता हूं। पुस्तक में सभी उदाहरण MySQL का उपयोग करते हैं। पूरे सिर पहली श्रृंखला महान है। मैंने सुना है कि उनके पास एक PHP पुस्तक भी है, लेकिन मैंने इसे पढ़ा नहीं है।

अद्यतन: Head First PHP & MySQL अब उपलब्ध है।

0

मुझे यकीन नहीं है कि एक पुस्तक है जो आपको "प्रोग्रामिंग के मूलभूत सिद्धांत" सिखाएगी। इन सभी चीजों को सीखने का एकमात्र तरीका यह है कि अभ्यास है। एक PHP ट्यूटोरियल प्राप्त करें और चीजों का निर्माण शुरू करें। हमेशा नई चीजों को सीखने के लिए अपना दिमाग खोलें। जब आपको एक बहुत ही अक्षम हैक से कुछ करने का बेहतर तरीका मिलता है, तो आप अपूर्ण ज्ञान से एक साथ रख देते हैं, फिर इसका इस्तेमाल करते हैं और इसे सीखते हैं और इसे अपने ज्ञान में एकीकृत करते हैं ... इसके कुछ सालों बाद आप सुनहरे होंगे।

5

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

  • डाटा संरचनाओं (जैसे आप इन पर एक अच्छी शुरुआत हो सकता है लगता है)

    • असतत गणित
    • प्रोग्रामिंग बुनियादी बातों (औपचारिक तर्क, एल्गोरिथम जटिलता, संभावना समझने में मदद करता) स्टोर और एक काम के लिए एक उपयुक्त तरीके से अपने डेटा में हेरफेर। उदाहरण के लिए, क्यों एक लिंक्ड सूची बनाम एक सरणी बनाम एक hashtable का उपयोग करें? अपने सूची से, कोई stackoverflow में ढेर एक डेटा संरचना है।)
    • एल्गोरिदम (हेरफेर अपने सबसे प्रभावी तरीके से डेटा संरचनाएं या कम से कम लागत को जानना। आपकी सूची से, बहुत से रिकर्सिव मज़े का उपयोग करना ctions "तोड़ ढेर" करने के लिए एक एल्गोरिथम विकल्प है।)
    • कंप्यूटर आर्किटेक्चर (समझें कि वास्तव में आपके कोड के लिए हो रहा है के बाद यह संकलित या व्याख्या की है।)
    • नेटवर्क (प्रोटोकॉल जानें, क्या आपके सॉफ़्टवेयर के लिए होता है, जब यह करना चाहता है उस मशीन से बात करें जिस पर यह नहीं चल रहा है)
    • तुलनात्मक प्रोग्रामिंग भाषाएं (PHP एक बिल्ली को त्वचा का एकमात्र तरीका है। जानें कि इसके डिजाइनरों ने उनके द्वारा किए गए फैसले क्यों किए और विकल्पों के संपर्क में क्यों पहुंचे।)
    • ऑपरेटिंग सिस्टम (यह जानकर कि आपके सॉफ़्टवेयर के साथ हार्डवेयर कैसे इंटरैक्ट करता है, यह जानना संभव है कि यह अपने ऑपरेटिंग सिस्टम के साथ कैसे इंटरैक्ट करता है। फ़ाइल सिस्टम, प्रक्रिया प्रबंधन, स्मृति प्रबंधन, सुरक्षा)
    • औपचारिक बोली/गणना के सिद्धांत (कंप्यूटिंग के मॉडल, व्याकरण, कंप्यूटिंग की सीमा [प्रमाणित करें और कोड को समझने के लिये]। आम तौर पर एक सॉफ्टवेयर इंजीनियर के रूप में दिन-प्रतिदिन इस्तेमाल नहीं किया। फिर, नियमित रूप से भाव अंत में इस वर्ग के बाद समझ में बनाया है।)
    • सॉफ्टवेयर डिजाइन और जीवन चक्र के तरीके (डिजाइनिंग कोडिंग, परीक्षण, जारी है, और अपने सॉफ्टवेयर बनाए रखने के बारे जानबूझकर है।)

    जहां तक ​​किताबें हैं, मैं एक विश्वसनीय स्कूल के कंप्यूटर विज्ञान कार्यक्रम पढ़ने की जांच करके शुरू करूंगा।

    स्टैनफोर्ड मुक्त करने के लिए कक्षाओं का एक सेट ऑनलाइन प्रदान करता है: कंप्यूटर विज्ञान से संबंधित व्याख्यान के लिए http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/

    चेक youtube: http://see.stanford.edu/see/courses.aspx

    एमआईटी आप मुक्त करने के लिए पाठ्यक्रम सामग्री डाउनलोड कर सकते हैं।

    यदि आप कुछ कम स्कूल केंद्रित हैं, तो ऊपर दिए गए किसी भी विषय के साथ अमेज़ॅन पर त्वरित खोज आपको उपयोगकर्ता समीक्षाओं के साथ परिणाम देगा।

    स्पष्ट रूप से, एक साथ लिया गया, यह सूची वास्तव में एक परिचय नहीं है। मैं एक विषय से शुरू करूंगा जो दिलचस्प लगता है और कूदता है।

  • 0

    इसे पढ़ने के बाद से कुछ सालों रहे हैं, लेकिन Programming PHP ने मौलिक प्रोग्रामिंग अवधारणाओं को शुरू करने का अच्छा काम किया। यह arrays, functions, callbacks, classes, आदि, जहां कवर की तरह और अधिक उन्नत अवधारणाओं, MVC (जो पीएचपी दुनिया में दुर्लभ है) की तरह समझने में सहायता मिलती ज्यादा यह बातें नहीं किया,।

    0

    मुझे कॉर्बिन की टिप्पणी पसंद है, लेकिन मैं विपरीत दृष्टिकोण ले जाऊंगा।

    मूल रूप से, सिस्टम के साथ, आपको वास्तव में सिस्टम के निम्न स्तर के सभी विवरणों को जानने की आवश्यकता नहीं है। वास्तव में, आप नहीं करते हैं।

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

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

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

    और, जैसा कि आप प्रगति करते हैं, यदि आप वास्तव में इस काम का आनंद लेते हैं (आप अच्छी तरह से नहीं कर सकते हैं), तो क्षेत्र जितना चाहें उतना व्यापक हो जाता है।

    कंप्यूटिंग आज "होम डिपो" की तरह है। आप इसे कर सकते हैं, हम मदद कर सकते हैं। सैकड़ों मंच और दस्तावेज, किताबें, ब्लॉग, और चर्चा के हजारों पेज किसी भी विषय के लिए उपलब्ध हैं।

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

    आपको विकल्पों, तकनीकों, पैटर्न, ढांचे, आदि द्वारा अंधा कर दिया जाएगा। न केवल "इसे करने के एक से अधिक तरीके" हैं, "इसे करने के तरीकों" के तरीके हैं। सैकड़ों को अनदेखा करें, और "इसे करने" पर ध्यान दें, हालांकि आपके लिए प्राकृतिक लगता है।

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

    मैं उन अनुप्रयोगों पर आश्चर्यचकित हूं जिन्हें मैंने "हैक किया", "कुचला" और "ओएमजीएड" देखा है कि लोगों को असली, व्यावहारिक उपयोग मिल जाता है - और यह गेम का वास्तविक नाम है।

    आपकी यात्रा पर शुभकामनाएं। आपके सभी प्रयासों में सफलता।

    0

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

    एक ही स्थान पर शुरू करने के लिए sitepoint में हो सकता है, लेकिन अन्य स्थानों

    0

    आप एक दृश्य शिक्षार्थी मैं कुछ वीडियो ट्यूटोरियल की जाँच करेंगे और अधिक कर रहे हैं देखते हैं। बुनियादी प्रोग्रामिंग अवधारणाओं जैसी चीजों से शुरू करें और फिर PHP और उन्नत PHP और MySQL के साथ ऊपर और चलने जैसे शीर्षक तक जाएं। तो मैं कोडिनेटर जैसे एमवीसी फ्रेमवर्क का सुझाव दूंगा।

    आप Lynda.com या Pluralsight.com और कई अन्य स्थानों पर शानदार वीडियो ट्यूटोरियल पा सकते हैं।

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