वेब बनाम डेस्कटॉप विकास - वेब विकास बदतर है? [बन्द है]


29

एक लंबे समय से डेस्कटॉप डेवलपर के रूप में हमारे पहले बड़े पैमाने पर वेब एप्लिकेशन को देख रहे हैं, वेब विकास करने के पेशेवरों और विपक्ष क्या हैं?

क्या डेस्कटॉप एप्लिकेशन विकसित करने की तुलना में वेब एप्लिकेशन विकसित करना बहुत खराब है? जैसे, क्या यह अधिक थकाऊ या कष्टप्रद है? क्या बाजार का समय बहुत खराब है? क्या वेब प्लेटफ़ॉर्म अत्यधिक सीमित है? यदि इनमें से किसी का उत्तर हां में है, तो क्यों?

(और फ्लैश या सिल्वरलाइट ऐप की तुलना कैसे की जाती है?)


5
मैंने बंद करने के लिए मतदान नहीं किया है, लेकिन मुझे लगता है कि यह अधिक रचनात्मक हो सकता है अगर इसे वेब डेवलपमेंट बनाम डेस्कटॉप डेवलपमेंट के संदर्भ में पुन: purposed किया जा सकता है।
जोश के

K: ठीक है, मैंने मौजूदा उत्तरों को अमान्य किए बिना प्रश्न को फिर से समझने की कोशिश की। धन्यवाद।
जोश केली

जवाबों:


26

नहीं

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

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

मैं फ्लैश या सिल्वरलाइट की टिप्पणी नहीं कर सकता क्योंकि मैं न तो उपयोग करता हूं।


5
मुझे उस आदमी से नफरत है लेकिन ... :s/loose/lose/:)
हनीबल लेक्टर

@ डॉ। हन्नीबल: इसे तय किया। कभी-कभी मैं चाबी को डबल टैप करता हूं। ;)
जोश के

4
@ डॉ। हन्नीबल: इस तरह के एक संज्ञानात्मक असंगति है जो "हनीबेल
लेक्चरर

25

जैसा कि दूसरों ने उल्लेख किया है, यह व्यापार-नापसंद और सही ज्ञान होने की बात है।

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

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

लगता है कि यदि आप कुछ महत्वपूर्ण निर्माण करते हैं तो आप यहां और वहां प्लेटफॉर्म-विशिष्ट हैक करने से बचेंगे।

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

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

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

कई चीजों की तरह, यह एक दोहरी धार वाली कुल्हाड़ी है।

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

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

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

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


संपादित करें: अन्य बातों पर विचार करने के लिए ...

भरती

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

मैं मजाक नहीं कर रहा हूं, हाल ही में सभी वेब-विकास साक्षात्कारों के लिए मेरा पहला सवाल यह है कि कैसे एक चर घोषित किया जाए, और फिर उपयोग करने varया न करने के बीच एक अंतर है (वे कैसे जवाब देते हैं इसके आधार पर)। यह निराशाजनक है। मुझे औसत या उन्नत वेब डेवलपर ढूंढने की तुलना में एक औसत या उन्नत वेब डेवलपर ढूंढना बहुत कठिन लगता है।

अनुभूति

जब आप कहते हैं कि "मैं एक वेब डेवलपर हूं" तो कोई भी आपको गंभीरता से विचार नहीं करेगा। यह प्रोग्रामर, डेवलपर्स के एक उप-वर्ग के लिए है, है ना? जिन्हें आप अनदेखा करते हैं और दूर से ही उनका मजाक उड़ाते हैं, और जब वे कॉफी लेने जाते हैं तो शामिल नहीं होते हैं। :)

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

और तब उन्हें पता चलता है कि कैसे जटिल ईसीएमएस्क्रिप्ट है, लेकिन उनकी राय की समीक्षा करने से इनकार कर दिया जाएगा। क्योंकि यह वेब है। हम इसे आंतरिक रूप से पसंद नहीं करते हैं, हम इसे पसंद करते हैं जो हमें ऐसा करने में सक्षम बनाता है।


-2, +10 ... मैं देख रहा हूं कि मैंने कुछ विवादों को बढ़ावा दिया है;)
हेलेम

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

6
"नोट: मेरे पास वेब के खिलाफ एक मजबूत पूर्वाग्रह है मूल रूप से आधे पके हुए प्रौद्योगिकियों का एक बड़ा ढेर (और मैं यहां विनम्र हूं), ओएसआई परतों के नीचे, जिस पर हम वास्तव में बिना समस्याओं को छुपाए हुए बकवास की परतों को जोड़ते रहते हैं। उन्हें हल करना या ठीक करना। " - क्या आप मैं हूं?????
बॉबी टेबल्स

2
मैंने ऐसे कुछ लोगों के साथ काम किया जो वास्तविक वेब विकास गुरु हैं, अद्भुत चीजें करते हैं और इसे एक गंभीर सॉफ्टवेयर डेवलपमेंट प्लेटफॉर्म के रूप में उपयोग करते हैं। उनकी मेरी गहरी इज्जत है। लेकिन यह पिछले 15 वर्षों में केवल दो हैं। बाकी ... ठीक है, मुझे एक बार एक पेग "विशेषज्ञ" के रूप में मिला, क्योंकि मेरा नमूना कोड स्पेगेटी के बजाय संरचित था जो साक्षात्कारकर्ता के लिए इस्तेमाल किया गया था; उस समय, मेरी वास्तविक पर्ल विशेषज्ञता एक तड़के में फिट हो सकती थी।
बॉब मर्फी

2
ECMAScript को अच्छा, बुरा और ECMAScript कहा जाता है।
एलन पीयर्स

14

किसी के रूप में जो दोनों (वेब ​​से अधिक डेस्कटॉप) के साथ निपटा है: अब तक मेरी सबसे बड़ी पकड़ वेब विकास में "सामान्य क्लंकनेस" की भावना है। यहां तक ​​कि बहुत ही बेहतरीन टूल और फ्रेमवर्क के साथ, एब्सट्रैक्शन अभी भी बहुत लीक है और आप लगातार इस तथ्य से निपट रहे हैं कि आप एक स्टेटलेस प्रोटोकॉल पर चल रहे हैं।

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

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


4
कारण यह महसूस किया कि "आम तौर पर भद्दा" शायद इसलिए है क्योंकि आप फ्रेमवर्क का उपयोग कर रहे थे जो "अमूर्त" दूर करने का प्रयास किया ... क्या, वेब? वेब स्टेटलेस है। ASP.NET में चाहे जितना भी "webforms" हो आप अन्यथा सोचना चाहते हैं, यह कभी न भूलें कि यह स्टेटलेस है। एक डेवलपर जल्दी स्वीकार करता है कि एक अपरिवर्तनीय सत्य के रूप में, वे जितनी जल्दी गुणवत्ता वेब अनुप्रयोगों को लिखेंगे।
जेसन वाइटहॉर्न

1
+1, अच्छी तरह से कहा। यहां तक ​​कि रेल जैसी रूपरेखा के साथ, जो कि एक ही तकनीक के ढेर में सब कुछ लिखने का समाधान माना जाता है, वे आरजेएस से अनुशंसित प्रथाओं को "विनीत जेएस" में बदलकर इसे खराब करने का प्रबंधन करते हैं।
जैस

11

डेस्कटॉप से ​​वेब पर जाने वाला सबसे बड़ा री-थिंक है: वेब ऐप स्वाभाविक रूप से स्टेटलेस है

उस भाग का पता लगाएं, और आप अच्छे हैं।


ब्राउज़र क्या मायने रखता है?
जेएफओ

@ जेफ़ क्रॉस-ब्राउज़र असंगतताएँ कष्टप्रद हैं, लेकिन वास्तव में महत्वपूर्ण नहीं है
स्टीवन ए। लोव

4
आपको वास्तविक ब्राउज़र (कुछ विसंगतियां), इंटरनेट एक्सप्लोरर (अधिक विसंगतियां) और शायद शैतान के बच्चे (IE6) के लिए लिखना होगा।
टीआरआईजी

2
@Malfist:;) आप इस दृष्टिकोण (राज्यविहीन + सत्र = स्टेटफुल) आप एक विमान जेट, को बोल्ट जब आप मूल रूप से एक ईगल के लिए कामना की इंजन के साथ एक एमु डिजाइन सकता है, सावधान नहीं हैं, तो
Piskvor

1
@ जिम जी: बेशक यह है। लेकिन स्टेट्सफुल से स्टेटलेस एप्लिकेशन डिजाइन में जाने की तुलना में ब्राउजर्स एट अल के बीच का अंतर कम है।
स्टीवन ए लोव

5

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

जो एक का उपयोग करने के लिए, दृढ़ता से इस बात पर निर्भर करता है कि आप वर्तमान में किस भाषा के वातावरण के लिए उपयोग किए जाते हैं। आप उस जानकारी को प्रदान करने के लिए प्रश्न को संपादित करना चाह सकते हैं।


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

@ करसन, अगर वे जावा डेस्कटॉप डेवलपमेंट करते हैं तो यह दर्द वास्तव में काफी कम है। शायद यह .NET या Win32 API के लिए बहुत खराब है।

2

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

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


2

वेब विकास जरूरी बदतर नहीं है , यह सिर्फ बहुत अलग है।

डेस्कटॉप विकास से वेब विकास को अलग करने वाली चीजों में से एक मौलिक रूप से जटिल अनुप्रयोग विकसित करने के लिए आपके पास मौलिक रूप से विभिन्न तकनीकों का ढेर है। मेरा मतलब है, आपको मूल रूप से एक मजबूत ज्ञान होना चाहिए:

  • एचटीएमएल
  • जावास्क्रिप्ट
  • सीएसएस
  • कुछ सर्वर-साइड भाषा (जावा / पीएचपी / जो भी ...)
  • एक RDBMS (या कुछ लगातार स्टोर तकनीक)
  • ... और संभवतः कई अन्य चीजें जैसे फ्लैश, सिल्वरलाइट, आदि।

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


1

नहीं

जब तक आप सही टूल चुनते हैं, तब तक वेब डेवलपमेंट डेस्कटॉप डेवलपमेंट जितना ही साफ और आसान होता है।

वेब एपीआई (html, CSS, जावास्क्रिप्ट और डोम) win32 एपीआई के बराबर हैं। आखिरकार सब कुछ उस एपीआई स्तर से नीचे की बात करता है, लेकिन आप पागल हैं यदि आप किसी पुस्तकालय के बिना सीधे उसके ऊपर कार्यक्रम करते हैं, तो आप से दूर गड़बड़, क्रियाशीलता और असंगति को खत्म करने के लिए एक पुस्तकालय के बिना।

इसलिए, अपनी पसंद के ढांचे के बारे में सावधान रहें। कुछ समस्याएँ खराब टूल (जैसे ब्राउज़र कम्पैटिबिलिटी इश्यू) को उठाकर स्व-अंतर्वेदित हैं।

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


0

मैंने इसे "... मेरे अस्तित्व का फलक" के रूप में वर्णित सुना है और मैं सहमत होगा। मुझे HTML वेब विकास करने के लिए $ $ $ एक घंटे की पेशकश की गई है और मैंने इसे ठुकरा दिया है। यह इतना दर्द है। मैंने एचटीएमएल में अधिकांश समय बिताया है और हाल ही में "फ्लैश प्लेटफॉर्म" के साथ काम करना शुरू किया है। यह सबसे परिष्कृत रूपरेखाओं में से एक है जिसे मैंने कभी देखा है और कोई भी इसके बारे में नहीं जानता है। जब लोग फ्लैश लाते हैं तो वे 10 साल पहले तक फ्लैश के बारे में सोचते हैं। बड़ा हो गया है ... बहुत हो गया। मुझे सॉफ्टवेयर लिखना फिर से पसंद है।

यह अभी भी नुकसान है। कीड़े कभी-कभी हमेशा के लिए झुक जाते हैं लेकिन यह बेहतर हो गया है (धन्यवाद स्टीव जे)।

BTW फ्लेक्स डेवलपर्स के लिए एक बड़ी कमी है। मुझे कई कंपनियों द्वारा संपर्क किया गया है जो बीमार हैं। यदि आप अपने सीएस को जानते हैं, तो अगले 6+ महीने फ्लेक्स कट्टरपंथी सीखने में खर्च करें, फिर मुझे कॉल करें। मुझे उन सभी जॉब ऑफ़र पर पास करना होगा जिन्हें मुझे बंद करना है।

अद्यतन: क्रॉस ब्राउज़र समर्थन मुख्य दर्द बिंदु है। एक ब्राउज़र में जो काम करता है वह दूसरे में काम नहीं करेगा या यह पिछले संस्करण में नहीं होगा।

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

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


क्या आप अपने उत्तर को यह समझाने के लिए संपादित कर सकते हैं कि आप इसे अपने अस्तित्व का प्रतिबंध क्यों मानते हैं?
जोश केली

ऊपर मेरा जवाब अपडेट किया गया

1
एक घंटे में तीन रुपये? कोई आश्चर्य नहीं कि आपने इसे ठुकरा दिया, क्या इन दिनों भी न्यूनतम मजदूरी है? ;)
पिस्कवर 22
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.