2011-08-16 10 views
9

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

RoR के साथ मेरा प्रमुख लटका अप: - मुझे रूबी नहीं पता, या मैं शायद ही नहीं करता। मैं इसे ठीक से पढ़ सकता हूं, लेकिन कोड लिखना अटक गया। - मैंने धीमे होने के बारे में शिकायतें पढ़ी हैं, और यह केवल सीएलआई में धीमा प्रतीत होता है।

सिम्फनी 2: के साथ मेरा प्रमुख लटका अप - इसके लिए व्यावहारिक रूप से कोई दस्तावेज नहीं है। Symfony1.x? यकीन है .. लेकिन symfony2 नहीं - वहां भी थोड़ा सा समर्थन है। उनकी साइट पर बीबी 80% स्पैम की तरह है। - इसे स्थानीय देव वातावरण पर स्थापित करने के लिए चला गया है, यह भी चलाने में सक्षम नहीं है (मेरा पहला लटका हुआ देखें)

यह प्रोजेक्ट काफी जटिल होगा और मूल सीआरयूडी संचालन से आगे जाएगा। यह एक सुपर-तंग टाइमलाइन के तहत नहीं है, लेकिन एक है। ~ मील का पत्थर 1 के लिए 3 महीने जो मूल रूप से एक कैलेंडर है, कुछ वित्तीय संगठन सामान (वित्तीय संस्थानों के साथ लेनदेन नहीं, केवल व्यक्तिगत वित्त संगठन प्रकार की सामग्री), और एक परियोजना प्रबंधक/सीएमएस।

भी, मैं अन्य ढांचे का उपयोग करने के लिए खुला हूं, लेकिन symfony2 अभी सबसे अच्छा प्रतीत होता है। अगर symfony2 में RoR का समर्थन/दस्तावेज़ीकरण/ट्यूटोरियल/आदि था तो यह कोई ब्रेनर नहीं होगा।

मुझे इस बात पर वास्तव में दिलचस्पी है कि इस मामले पर स्टैक ओवरफ्लोवर को क्या कहना है। मैं इस साइट पर उत्तरों/उत्तरों की गुणवत्ता से लगातार प्रभावित हूं।

कुछ अन्य उप-प्रश्न (जो अभी मेरे सिर में हैं): - यदि आप एक अलग PHP ढांचे की सिफारिश करते हैं, तो क्यों? - उल्लिखित विकल्पों में से किसी के साथ आप सबसे बड़ी पकड़ क्या हैं?

मुझे पता है कि केकेपीएचपी आरओआर के सबसे नज़दीक है, लेकिन मैं पढ़ रहा हूं कि मॉडल थोड़ा भद्दा हैं (कई रिश्तों और इस तरह के कई)।

अभी, मैं RoR की तरफ झुका रहा हूं। सीधे शब्दों में कहें, मैं वास्तव में इसे सीखना चाहता हूं और यह काम कर सकता है। मैं सिर्फ रूबी नहीं जानता और मैंने symfony2 के बारे में बहुत अच्छा तैयार किया है।

कोई भी सलाह जो आप पेश कर सकते हैं उसकी सराहना की जाएगी। धन्यवाद!

+0

यदि आप इस परियोजना पर काम करते समय एक नई भाषा सीखना चाहते हैं तो मैं रूबी और आरओआर पर पायथन और डैंजो की सलाह दूंगा। – solarc

उत्तर

9

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

एक ऐप/check.php स्क्रिप्ट है जो आपको चलाने के लिए आवश्यक किसी भी निर्भरता की चेतावनी देगी, और अधिकतर समर्थन उनके mailing list में होता है जो बहुत सक्रिय है (यहां तक ​​कि बीबी भी नहीं था)। कुछ घटक, जैसे Twig, उनकी अपनी सूचियां भी हैं।

+0

को यह भी पता नहीं था कि उनके पास मेलिंग सूची थी ... मैं आमतौर पर उनको खड़ा नहीं कर सकता था, इसलिए शायद मैंने इसे चमक लिया। धन्यवाद .. इसे जांचें। – afxjzs

+0

यह सब ** टिग ** के बारे में है: पी – Ouadie

22

व्यक्तिगत रूप से, मैं अनुशंसा करता हूं कि यदि आप एक नई परियोजना शुरू कर रहे हैं जो कि सबसे बड़ी परियोजना है जो आपको कभी करना है तो आपको सबसे अच्छा पता होना चाहिए। यह PHP होना होता है।

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

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

केकपीएचपी पर आगे बढ़ना। केकेपीएचपी कोड बेस पुराना है। वास्तव में, यह PHP 4.3.2 पर ठीक काम करता है। यह PHP5 की पेशकश की सभी भलाई का लाभ नहीं लेता है (कक्षाओं, इंटरफेस, निजी & संरक्षित गुण, अपवाद, जादू विधियां, एनोटेशन, संदर्भ वस्तुएं पास आदि द्वारा बेकार)। केकेपीएचपी डेटाबेस अबास्ट्रक्शन लेयर, जबकि इसमें सुधार हुआ है , आपके डेटाबेस संरचनाएं बहुत जटिल हो जाने के बाद अविश्वसनीय रूप से कुशल नहीं होती हैं (उदाहरण के लिए कई शामिल होते हैं) यह काफी बुरी तरह टूट जाती है।

Symfony 1.4 करने के लिए आगे बढ़ते हैं जो मैं कई बड़ी परियोजनाओं

मैं का उपयोग कर आनंद के लिए उपयोग किया है क्योंकि:

  1. PHP5
  2. घटना प्रणाली
  3. निर्भरता इंजेक्शन
  4. कैशिंग प्रणाली
  5. फॉर्म (सिद्धांत 2 में अच्छा एकीकरण) वास्तव में, यह मेरी पसंदीदा विशेषता है।
  6. कई प्लगइन्स (उपयोगकर्ता प्रबंधन के लिए sfGuard, उदाहरण के लिए)
  7. टहनी (अच्छा templating भाषा)
  8. अत्यधिक विन्यास
  9. स्केलेबल (हालांकि के रूप में तेजी से नहीं Symfony2 के रूप में)
  10. प्रलेखन का एक बहुत (Jobeet ट्यूटोरियल महान है)

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

आपके पास एक छोटी परियोजना होने पर RoR पर जाएं।

बस मेरे 2 सेंट।

शुभकामनाएं।

+0

आपकी प्रतिक्रिया के लिए धन्यवाद। हालांकि, अभी तक ऐप/check.php पास हो गया है और यह config.php पर चेक करता है ... और फिर यह काम नहीं करता (देखें: http://stackoverflow.com/questions/7072552/symfony2-trips राइट-आउट-द-गेट) तो हाँ ... अब तक प्रभावित नहीं है। मैं अब इस परियोजना को शुरू करना चाहता हूं, न कि पुरानी/पुरानी तकनीक (symfony1.x) पर, जब पहले से ही एक symfony2 है ... जो वास्तव में समझ में नहीं आता है ... जब तक मुझे कुछ याद आती है। – afxjzs

+2

symfony 1.4 पुराना नहीं है .. symfony 2 बस php 5.3 अर्थात् नामस्थान में नई सुविधाओं का उपयोग करता है। सिम्फनी 2, जबकि वर्तमान में इसे रिलीज़ किया जा सकता है, तब तक परिपक्व विकास प्लेटफ़ॉर्म बनने तक कई प्रकार के बदलाव होने की संभावना है। यदि आप एसएफ 1.x पेड़ की तुलना करते हैं और 1.0 और 1.4 के बीच के बदलावों को देखते हैं तो एसएफ 2 अभी भी 2.0 रिलीज पर कैसे है। वेब ढांचे को पर्स करने और तारों को संयोजित करने के लिए केवल चालाक तरीके हैं। आउट डेटेड तकनीक शायद ही कभी वेब ढांचे पर लागू होती है जब तक वे वास्तव में पुरातन नहीं होते हैं। एसएफ 2 ऐसा कुछ नहीं करता है जो एसएफ 1 पूरी तरह से सक्षम नहीं है। –

+0

बंडल सिस्टम और स्थानीय रूप से "तृतीय-पक्ष" बंडल भागों को ओवरराइड करना मुख्य रूप से एस 1 के साथ काम करने के वर्षों के बाद एस 2 में देखा गया बड़ा आकर्षण/लाभ है। मैंने अभी भी एस 2 में कोई भी परियोजना नहीं लिखी है, कारणों से @ alex.pilon – yitznewton

9

यह एक पुराना विषय है लेकिन चीजें थोड़ी-थोड़ी बदल गई हैं और मैं सिम्फनी 2 की सिफारिश करूंगा। उनका वर्तमान दस्तावेज महान है (symfony.com) और नए लोगों के लिए सीखना बहुत आसान है। मैंने आरओआर की कोशिश की लेकिन सिम्फनी के साथ मैं बस इसमें बहुत तेज हो गया।

0

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

बंडल ढूंढना मेरी सबसे बड़ी निराशा थी, लेकिन दस्तावेज़ीकरण knpbundles.com का उल्लेख करता है, और यह एक उत्कृष्ट संसाधन की तरह लगता है।

2

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

तुलना चार्ट की जांच के लिए बाहर इस:

http://vschart.com/compare/doctrine-php/vs/ruby-on-rails

दिन के अंत में यह सब जो कुछ भी आप को पता है पर निर्भर करता है, लेकिन समुदाय और कार्यक्षमता के लिए लिखा गया है की अनदेखी नहीं है आप पहले से ही नि: शुल्क ...

+0

देता है क्यों Gemfile –

+0

पर संगीतकार को पसंद नहीं करना मुझे लगता है कि इस "चार्ट" में अंतिम एक विशेषता है जिसके बारे में ये तुलना बहस आम तौर पर समाप्त होती है साथ में :) –

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