वेबसाइट वर्कफ़्लो कैसे डिज़ाइन करें?


18

मैं एक इष्टतम उत्तर तक पहुंचने के बिना वास्तव में लंबे समय से इस बारे में सोच रहा हूं।

सबसे पहले, मैं एक चिकित्सा चिकित्सक हूं, जो प्रोग्रामिंग से प्यार करता है, लेकिन कभी भी इसका अध्ययन नहीं किया है, सिवाय घर सीखने और अपने खाली समय में कोड के साथ खेलने के वर्षों के बहुत सारे के अलावा।

वर्तमान में मैं अपने क्लिनिक के प्रबंधन के लिए एक छोटी सी परियोजना बनाने की कोशिश कर रहा हूं, ऐसा करने के लिए मैंने उन विकल्पों की एक सूची बनाई है जो मैं करने में सक्षम होना चाहता हूं।

उदाहरण:

  1. सक्रिय रोगी रिकॉर्ड।
  2. विभिन्न भूमिकाओं के साथ प्रमाणीकरण (जैसे। रोगी, नर्स, डॉ)
  3. अपॉइंटमेंट शेड्यूल (एक रिमाइंडर के साथ कैलेंडर से लेकर शेड्यूलिंग वेकेशन / सर्जरी आदि)
  4. डॉक्टर को अपने स्वयं के प्लगइन्स बनाने की अनुमति दें।
  5. डॉक्टर के लिए उसके आंकड़े देखने के लिए डैशबोर्ड

फिर मैंने कोडिग्निटर / मायस्कल / पीएचपी / जक्वेरी के साथ शुरुआत की और कोडिंग शुरू की।

विकास के दौरान मेरे कदम: -

  1. 1 डेटाबेस।

यहाँ छवि विवरण दर्ज करें

मैंने अपनी सभी तालिकाएँ बनाकर शुरू की जिनकी मुझे आवश्यकता होगी।

  1. इन तालिकाओं को संभालने के लिए मेरे सभी मॉडल तैयार किए (1 मास्टर मॉडल जो मेरे टेबल संबंधों पर विचार करते समय बुनियादी रीड / राइट / अपडेट / सत्यापन को संभालते हैं

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

उदाहरण जब नियुक्ति दृश्य (नियंत्रक बुकिंग। एफपी) कोडिंग:

यहाँ छवि विवरण दर्ज करें

जब उपयोगकर्ता क्लिक करें: jquery get (बुकिंग / add_patient_form) क्लिक करें और इसे पॉप अप करें, इस लेआउट को बनाया और टेबल td के क्लिक करने योग्य बनाया।

जब यूजर सेव करें: बुकिंग के बाद पोस्ट करें / सेव-अप सेव अपॉइंटमेंट फिर रिलोड इंडेक्स () फंक्शन

आदि .. और मैंने दृश्य बनाने के एक ही चरण को जारी रखा, फिर इसके नियंत्रक में इस तर्क के लिए आवश्यक सभी तर्क शामिल हैं - संपूर्ण परियोजना को पूरा करने के लिए।

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

मुझे लग रहा है कि वेबसाइट का हर पेज दूसरे से पूरी तरह से अलग है और मुझे यह भी याद नहीं है कि प्रत्येक पेज कैसे लोड होता है और बिना फेक के अंदर क्या कार्य होते हैं!

वैसे भी क्या मैं इसे ठीक कर सकता हूं और एक डिजाइन निकाल सकता हूं?


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

3
बड़े चौड़े सफेद बोर्ड के साथ और भी बेहतर;) +1 @LuudJacobs। आप किसी से भी बेहतर जानते हैं कि आपकी क्लिक प्रक्रिया कैसे चलनी चाहिए, प्रत्येक समय में किन संस्थाओं और funtions को आना चाहिए और किस डेटा को आप सबसे अधिक बार खोजना चाहते हैं, आपको उस डेटा की कितनी आवश्यकता है (शायद ही कभी)। यदि आप इतिहास रखना चाहते हैं या नहीं और कहाँ क्या। निकाय आरेखों के एक जोड़े को लेने से आपको एक ऐसी जगह मिलेगी जो आपको अच्छी लगेगी और यह सुनिश्चित करेगी कि आपके द्वारा चुने गए उपकरण (db। फ्रंट एंड) आपके द्वारा आज की आवश्यकताओं के साथ-साथ कल के लिए बहुत अधिक परिवर्तन अनुरोधों का समर्थन कर सकते हैं :)
bonCodigo-

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

+1 @bonCodigo: व्हाइटबोर्ड एक बेहतर विकल्प है, क्योंकि आपके पास a) में काम करने के लिए अधिक स्थान है और b) सामान को मिटाना आसान है। यहाँ कुछ फ़्लोचार्ट उदाहरणों के साथ एक Google खोज है । फ्लोचार्ट बनाने के लिए अच्छे सॉफ्टवेयर में शामिल हैं MS Visio और Mac OmniGraffle के लिए

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

जवाबों:


6

आपका प्रश्न - सॉफ्टवेयर के एक टुकड़े को विकसित करने के लिए क्या प्रक्रिया है - एक गर्म बहस वाला विषय है; बस गूगल "सॉफ्टवेयर कार्यप्रणाली" यह देखने के लिए कि कीड़े की यह गहराई कितनी गहरी हो सकती है ...

आमतौर पर स्वीकृत उत्तर नहीं है। वास्तव में, यदि आप 5 प्रोग्रामर से पूछते हैं, तो आपको मेरे अनुभव में, 7 उत्तर मिलेंगे।

मैं निचले स्तर की कोडिंग प्रथाओं को देखने के लिए स्टीव मैककोनेल के "कोड कम्प्लीट" को खरीदने की सलाह दूंगा - अपने कोड को कैसे रखना है, इसे कैसे कमेंट करें, इसे कैसे टेस्ट करें। मैं एरिक इवांस द्वारा "डोमेन ड्रिवेन डिज़ाइन" की अनुशंसा करता हूँ कि वास्तुकला स्तर पर अनुप्रयोगों को कैसे बनाया जाए। मैं "मार्टिन सॉफ्टवेयर डेवलपमेंट: प्रिंसिपल्स, पैटर्न्स एंड प्रैक्टिसेस" की सिफारिश रॉबर्ट मार्टिन द्वारा समय पर गुणवत्ता बनाए रखने के लिए सॉफ्टवेयर को "विकसित" करने के तरीके के अवलोकन के रूप में करूँगा।

एक अन्य डेवलपर इन सभी पुस्तकों को अस्वीकार करने की संभावना है, और आपको यूएमएल, तर्कसंगत एकीकृत प्रक्रिया और कोड पीढ़ी पर इंगित करता है। कोई सही जवाब नहीं है!


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

1

0

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

उनकी वेबसाइट पर निम्नलिखित उत्पाद विवरण दिया गया है:

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

  • डेटा प्रबंधन: रिकॉर्ड जोड़ें, संपादित करें, हटाएं और कॉपी करें
  • HTML उपस्थिति का अनुकूलन
  • फ़िल्टरिंग और छँटाई क्षमताओं
  • बहुत सारी सुरक्षा सेटिंग्स के साथ डेटा सुरक्षा
  • मास्टर-विस्तार प्रस्तुतियाँ
  • इवेंट-संचालित सामग्री प्रबंधन
  • पीडीएफ, एक्सएमएल, सीवीएस, एक्सेल और वर्ड को डेटा निर्यात

MySQL के लिए PHP जनरेटर स्पष्ट और आसानी से समझने वाले कोड का उत्पादन करता है जिसका उपयोग किसी भी तरह से किया जा सकता है या संशोधित किया जा सकता है।

एक प्रोग्रामर को काम पर रखने, किसी भी प्रोग्रामिंग भाषा को सीखने, या एक महंगे सॉफ़्टवेयर को खरीदने की भारी लागत को बचाएं - सभी कोड आपके लिए स्वचालित रूप से उत्पन्न होते हैं!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.