2009-06-19 13 views
5

मैं ज़ेंड फ्रेमवर्क की नौसिखिया हूं।ज़ेंड फ्रेमवर्क सीखते समय कठिनाइयों 1.8

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

कई ट्यूटोरियल बूटस्ट्रैप फ़ाइल में frontController और registerAutoload() का उल्लेख करते हैं। हालांकि, ऐसा लगता है कि मैं इसे संस्करण 1.8 में कोड में फिर से नहीं देख सकता (दोनों official quickstart tutorial और Getting Started with Zend Framework 1.8 में)। कई ट्यूटोरियल में कोड का पुराना संस्करण होता है और यह v1.8 में बहुत अलग लगता है।

मैं पासवर्ड पुष्टिकरण के साथ पंजीकरण फॉर्म लिखने से शुरू करता हूं। मैंने आधिकारिक दस्तावेज पढ़ा और custom validator for password confirmation ढूंढ लिया। यह सिर्फ कक्षा को रखता है और इसका उल्लेख नहीं करता कि मैं इसका उपयोग कैसे कर सकता हूं। मुझे नहीं पता कि मुझे यह फाइल कहां रखना चाहिए और मुझे Google में कोई संकेत नहीं मिल रहा है। "कक्षा नहीं मिली" त्रुटि हमेशा मुझे बीमार बनाती है (मैंने addPrefixElement, set_include_path की कोशिश की है लेकिन वे काम नहीं करते हैं)।

उपयोगकर्ता पंजीकरण, ईमेल सक्रियण, लॉगिन, अभिगम नियंत्रण बहुत आम कार्य हैं। लेकिन मुझे v1.8 में नमूना कोड का एक टुकड़ा भी नहीं मिला है जिसे मैं अपनी मशीन में चला सकता हूं। मैं ज़ेंड फ्रेमवर्क के बारे में बहुत निराश हूं।

क्या कोई मुझे कुछ सलाह देता है?

उत्तर

8

मैंने अभी भी ज़ेंड फ्रेमवर्क सीखना शुरू कर दिया है। मैं भी पुराने ट्यूटोरियल है कि भ्रामक और कठिन सीखने, बनाने की बहुत लगता है लेकिन वहाँ कुछ संसाधनों है कि मैं Zend फ्रेमवर्क सीखने में मदद मिल रहे हैं:

  • http://www.zendcasts.com/ - वे ZF1.8 पर ट्यूटोरियल पहले से ही है, जैसे Bootstrapping का उपयोग कर Zend_Application, आदि

कि मदद कर सकता है कुछ उपयोगी ब्लॉग:

मंच अपने सवाल पूछने के लिए:

कक्षा के रूप में नहीं मिला, मुझे लगता है कि आपने ऑटोलोड नहीं किया है? Zend फ्रेमवर्क के

4

पार्ट्स 1.8 रिलीज में थोड़ा बदल गया है, लेकिन सब कुछ पीछे की ओर संगत होना चाहिए ताकि सभी कोड उदाहरण 1. * रिलीज श्रृंखला का उपयोग करके लिखा अभी भी कम या कोई संशोधन के साथ काम करना चाहिए ।मुख्य क्षेत्रों कि अलग हैं

  • Zend लोडर (register_autoload से संबंधित) जो अब प्रदर्शन और कुछ मामूली अपनी API में मतभेद से संबंधित (एक PHP चेतावनी के साथ अगर आप पुराने तरीके का उपयोग करें) कई सुधार है कर रहे हैं। मैं शुरुआत के रूप में इस बारे में ज्यादा चिंता नहीं करता - बस ट्यूटोरियल का पालन करें या जब तक आप उन्हें हर समय जोड़ने से परेशान न हों, तब तक कथनों की आवश्यकता/आवश्यकता का उपयोग करना जारी रखें!

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

के साथ शुरू हो रही मैं अत्यधिक Zend नियंत्रक घटक चारों ओर अपने सिर, विशेष रूप से सामने नियंत्रक हिस्सा है और this diagram हो रही सिफारिश करेंगे संबंध है। प्रमाणीकरण के लिए Zend Auth पर ई-मेल देखें, Zend Mail पर पहुंच नियंत्रण के लिए Zend Acl देखें और फॉर्म और सत्यापन के लिए Zend Form, Zend Validate और Zend Filter देखें। फॉर्म और सत्यापन घटक पथ के बारे में बताएंगे और अपने स्वयं के कस्टम सत्यापनकर्ताओं और तत्वों को बना देंगे।

महत्व का अन्य क्षेत्र Zend Db है जो आपको अपने डेटा को डेटाबेस में जारी रखने की अनुमति देता है। भी है जो एमवीसी स्टैक में दृश्य परत का प्रतिनिधित्व करता है। मेरी राय में ये बुनियादी जेडएफ आवेदन के प्रमुख घटक हैं। वहां से आप अन्य घटकों का पता लगा सकते हैं जब आपको उनकी आवश्यकता होती है।

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

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

भी this tutorial का पालन करने का प्रयास करें। यह बहुत सारी मूल बातें समझाने में मदद करेगा।

0

मुझे आपके साथ बिली के साथ बहुत सहानुभूति है। मैं एक नौसिखिया हूं और पुराने तरीके और नए तरीके के बीच भ्रम को संभालने के लिए लगभग बहुत अधिक है। इसके अलावा कोई है जो एक मुख्य अंतर यह कुछ बताते हैं के लिए यहाँ देखें:

http://crossfunctional.wordpress.com/2009/05/

0

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

2

मैं एलेक्स नामक लड़के द्वारा इन वीडियो ट्यूटोरियल को अनुशंसा करता हूं, वह उन्हें अद्यतित रखता है और हर समय नए रिलीज़ करता है, वे सभी जेडएफ 1.8 और 1.9 के लिए प्रासंगिक हैं।

यहाँ तक कि उसने एक विस्तृत वीडियो ट्यूटोरियल एसीएल को कवर, लॉगिन रूपों आदि (Zend के साथ अपने पहले कदम उसे करने के लिए आसान धन्यवाद थे!)

http://alex-tech-adventures.com/development/zend-framework.html?start=15 है - अपनी साइट पर लगाना में समय एक सा comfusing लेकिन लायक है इसे बाहर :)

चीयर्स रोमन

0

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

हमारे पास ऐसी परियोजनाएं हैं जो संस्करण 1.7.x पर फंस गई हैं क्योंकि उस और नवीनतम संस्करण के बीच अंतर बहुत बढ़िया हैं जो देव और परीक्षण समय को बहुत महंगा बनाता है।

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

मैं निश्चित रूप से अन्य उपयोगकर्ताओं की विशेषज्ञता का उपयोग करने और कुछ सरल ढांचे के उदाहरणों की खोज करने की अनुशंसा करता हूं। ZF अत्यधिक अनुकूलनीय है लेकिन आपको अपनी आवश्यकताओं के लिए सबसे सरल मामले से प्रयास करने और काम करने की आवश्यकता है।

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

शुभकामनाएं!

1

कुछ युक्तियां:

यहाँ डिस्पैच प्रक्रिया

http://nethands.de/download/zenddispatch_en.pdf

का एक अच्छा चित्र यह बहुत जेडएफ को समझने के लिए अगर आप OOP/OOP डिजाइन पैटर्न में अनुभवी आसान है है

जब मैंने पहली बार जेडएफ में ठोकर खाई तो मुझे ओओपी का थोड़ा ज्ञान नहीं था। जेडएफ ने मुझे ओओपी सीखने के लिए प्रेरित किया जो कि एक बहुत अच्छी बात थी।

जेडएफ के 'जादू' और वास्तविक जेडएफ वास्तुकला

में अंतर हालांकि मैं जेडएफ वर्ग की अच्छी समझ मैं अभी भी भ्रमित हो जब जेडएफ मिश्रण करने के लिए अपनी 'जादू' कहते है।

जब मैं कहता हूँ 'जादू' मैं जैसे

  • बातों की चर्चा करते हुए हूँ डिफ़ॉल्ट ऑब्जेक्ट लोड और यदि कुछ भी निर्दिष्ट करता था, और
  • यूआरएल-controllername-filepath-filename inflections/नामकरण की परंपरा।
  • config सेटिंग्स करने के लिए वर्ग इन्स्टेन्शियशन मैपिंग

जेडएफ है अर्थों में एक दरार-डीलर की तरह एक सा है कि 'प्रारंभ करना ट्यूटोरियल' आप सीधे झुका मिलता है। वे इतना जादू करते हैं कि यह आपको .oO (वाह - यह कितना आसान था!) ​​

जैसे ही आप अपनी खुद की चीज करने की कोशिश करना शुरू करते हैं - जादू शुरू होता है वास्तव में भ्रमित।

तो - मेरी रणनीति जितनी संभव हो उतनी ज़ेडएफ जादू को हटाना है। यदि आपके पास उपयोग करने के लिए कक्षा निर्दिष्ट करने का विकल्प है, या राउटर का उपयोग करने के लिए, तो इसे निर्दिष्ट करें। ज़ेंड को आपके लिए ऐसा न करने दें।

तब जब कुछ अजीब हो रहा है तो आप बग को अधिक आसानी से पा सकते हैं।

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

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

जैसे कि टिम वार्डल ने एक और उत्तर में कहा - पक्ष को ज़ेंड लोडर पर बयान की आवश्यकता होती है जब तक कि आपको वास्तव में इसकी आवश्यकता न हो।

यदि आप एक PHP डिजाइन हाउस हैं जो एक सप्ताह में 10 वेबसाइट परियोजनाओं को मंथन करता है, तो ZF Magic वास्तव में उपयोगी हो सकता है। यदि आप अपना पहला जेडएफ ऐप डिज़ाइन कर रहे हैं - तो 'जटिलता को कम करना' 'पुनः उपयोगिता' की तुलना में एक और महत्वपूर्ण डिजाइन लक्ष्य है।

कोड

ब्राउज यह स्पष्ट लग सकता है, लेकिन सबसे अच्छे तरीके जेडएफ के बारे में जानने के लिए में से एक कोड को देखने के लिए है।

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

मैं 'elpe' elps।

+0

जेडएफ जादू पर अपना टुकड़ा लिखने के बाद मुझे यह सोचने लगा कि यह किसी प्रकार का 'जेडएफ जादू जानकारी' घटक होना चाहिए जो ढांचे को 'देखता है' और आपको अंत में 'phpinfo()' जैसे कुछ आउटपुट करने देता है तो हम देख सकते हैं कि गवान क्या है। - सिर्फ एक विचार –

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