तपाईंको पहिलो प्रोग्रामिंग भाषा छनौट गर्दै

पक्कै पनि यो एक प्रश्न हो जुन मेरो इनबक्समा सबैभन्दा बढी आउँछ जब प्रोग्रामिंगको बारेमा कुरा गर्दै। यदि हामी लेखहरूको श्रृंखला सुरू गर्न जाँदैछौं जसले तपाईंलाई कार्यक्रम सिक्न र विश्वव्यापी नि: शुल्क सफ्टवेयर / खुला स्रोत समुदायहरूमा योगदानको रूपमा स्वतन्त्र ज्ञान फिर्ता दिन अनुमति दिन्छ भने, यो आधारभूत उत्तर दिन आवश्यक छ यदि केही गाह्रो प्रश्न हो भने। मैले कुन प्रोग्रामिंग भाषा सिक्नु पर्छ?

बिटको इतिहास

प्रोग्रामिंग भाषा बुझ्ने र छनौट गर्नका लागि, हामीले पहिले उनीहरूको ईतिहास, तिनीहरूको प्रयोगहरू र प्रकारहरू, र कसरी तिनीहरूले समयको साथ फरक फरक आवश्यकताहरू समाधान गर्दछन् भन्ने बारे थोरै जान्नुपर्दछ।

मेशिन भाषाहरू (तल्लो स्तर)

सामान्य रूपमा चिनिन्छ सभा, प्रोग्रामिंग भाषाहरू हुन् जुन हामीले अधिक सामान्य भाषाको बोलीको रूपमा परिभाषित गर्न सक्दछौं ... यो अलि जटिल लाग्दछ तर म यसको उदाहरण दिदैछु ... हामीलाई थाहा छ कि कम्प्युटि ofको विश्वव्यापी भाषा हो बिजुली, यसको मतलब यो हो कि एक कम्प्युटरले अन्ततः पढ्छ 0sy 1हो, यसलाई कल गरौं eकम्प्युटर अ .्ग्रेजी। यस उदाहरणमा स्पेनी आधारभूत नियम हो, तर हामी सबैलाई थाहा छ, ल्याटिनोले बोल्ने स्पेनिश स्पेनमा बोलेको जस्तो छैन, र यद्यपि, पेरूको स्पेनिश अर्जेन्टिनाका स्पेनिशसँग समान छैन। स्पष्ट रूपमा हामी सबैसँग उस्तै उही शब्दहरू छन् (0sy 1हरू), तर प्रयोग र अर्थ सन्दर्भ अनुसार फरक हुन सक्छ।

यो प्रोसेसर तहमा हुन्छ। जब हामी कुरा गर्छौं कम्प्युटिंग आर्किटेक्चर, (amd64, इंटेल, पाखुरा, ...) हामी यसको बोलीलाई सन्दर्भ गर्दछौं कम्प्यूटर स्प्यानिश। यो किनभने विभिन्न कम्पनीहरूले आफ्नै तरिकाले अर्डर र अर्थ बुझ्दछन्, त्यसैले केहि विवरणहरूमा भिन्न हुन्छन् जस्तै वर्तमानको बहाव, वा अर्डर जसमा उनीहरू बचत हुनेछन्। 0sy 1s.

यी प्रोग्रामिंग भाषाहरू अत्यन्तै छिटो छन्, किनकि उनीहरू प्रोग्रामिंगको सबैभन्दा कम सम्भावित स्तरमा काम गर्दछन्, तर तिनीहरू वास्तुकलामा निर्भर छन् र बाँकी भन्दा बढी सिक्न निश्चित नै जटिल छन्। डाटा परिवर्तन गर्न र यसमा उपयोगी चीजहरू चलाउन यी प्रायः अवधारणाको बृहत्तर आधारको आवश्यक पर्दछ। भिडियो गेम प्रेमीहरूको लागि, उदाहरण SEGA कन्सोलहरू हुनेछन्, जसले तिनीहरूको खेलहरू प्रोग्राम गर्न असेंब्ली प्रयोग गर्‍यो। स्पष्ट रूपमा त्यस समयमा मेमोरीको मात्रा आजको तुलनामा कम थियो, र यो एक भाषा मास्टर गर्न आवश्यक थियो जुन छिटो हुन सक्छ र प्रकाश कार्यक्रमहरू उत्पादन गर्न सक्दछ।

उच्च-स्तर भाषाहरू

यो ठूलो समूह पछि ती भाषाहरूमा चिन्तन गर्दछ सभा। पोर्टेबल कोड प्राप्त गर्न को लागी बोलाइएको भाषा को एक समूह को जन्म दिए संकलित ती मध्ये पहिलो फाइदा लिनु भनेको सी हो, जसलाई s० को दशकदेखि अपरेटि system सिस्टम स्तरमा प्रोग्रामिंगमा प्रबलता दिइयो।

संकलित भाषाहरु

मँ टिप्पणी गरेको एक व्यावहारिक उदाहरण को हेरौं। कोडको एक लाइन प्रिन्ट गर्दछ कि एक धेरै साधारण सी भाषा कार्यक्रम को हेरौं।

आफ्नै क्रिस्टोफर डियाज रिवरोस

यो कम्पाइल पछि हामीसँग निम्न छ:

आफ्नै डिजाइन: क्रिस्टोफर डाज रिवरोस

तर अब हामी हेरौं हामी कोड कोडमा उही नतीजा प्रतिलिपि गर्न के लेख्नुपर्दछ:

आफ्नै क्रिस्टोफर डियाज रिवरोस

यो हाम्रो lines लाइनको कोडको अनुवाद हो simple.c, फाईल simple.s कमाण्ड प्रयोग गरेर सिर्जना गरिएको छ gcc -S simple.c र यो हाम्रो प्रोसेसरले बोलीमा बुझ्दछ सभा। स्पष्ट रूपमा क्रमबद्ध गरीएको एक कार्यान्वयन योग्य बनाउन 0sy 1फाईल प्रक्रिया गर्न आवश्यक छ simple.s र हाम्रो प्रणालीको साझा लाइब्रेरीहरु संग यसलाई जोड्नुहोस्। यो a को प्रयोग गरेर गरिन्छ असेंबलर (as) र एक कनेक्टर (ld).

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

अनुवादित भाषाहरू

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

आफ्नै क्रिस्टोफर डियाज रिवरोस

सब भन्दा उल्लेखनीय चीज मध्ये हामी देख्न सक्छौं कि पहिलो लाइन दोभाषेलाई कल गर्ने जिम्मामा छ (प्रोग्राम जसले हाम्रो अनुप्रयोग कार्यान्वयन गर्दछ) र त्यसपछिको कोड सी मा यसको संस्करण भन्दा "सरल" छ किनकि सबै भारी काम भएको छ। दोभाषेमा प्रदर्शन

आफ्नै क्रिस्टोफर डियाज रिवरोस

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

टाइप गर्दै

यो प्रोग्रामिंग भाषाहरूको एक विशेषता हो, यी हुन सक्छ कडा कमजोर रूपमा टाइप गरिएको। म यो विषयलाई अर्को पोष्टको लागि छोड्दै छु किनकि प्रोग्राममा मेमोरी कसरी भण्डारण गरिएको छ भनेर बुझ्नको लागि यो आवश्यक र जिज्ञासु हो, तर अहिलेको लागि हामीले केवल भिन्नता आवश्यक छ: ठ्याक्कै टाइप गरिएका भाषाहरू ती हुन् जसलाई डाटाको प्रकार जान्नु आवश्यक छ जुन जान्छ। भ्यारीएबल वा स्थिरमा काम गर्न, जबकि कमजोर रूपमा प्रकारहरूले रूपान्तरण गर्न सक्छन् त्यसैले निहित र सबै कुरा भाषा द्वारा पछ्याइएको रूपान्तरण पदानुक्रममा निर्भर गर्दछ। (यदि यो अहिले बुझिएन, कुनै समस्या भएन भने हामी यसलाई पछि छोड्नेछौं)

प्याराडिग्म्स

GNU / Linux विश्वमा सबै जस्तो, प्रोग्रामिंग भाषाहरू प्रतिमानका आधारमा हुन्, र तिनीहरूको वरपर समुदायहरू उत्पन्न गर्दछन्। उदाहरणका लागि हामीसँग छ पाइथन फाउन्डेशन o रूबी o PHP o बाश (जुन केसमा यो GNU समुदाय हो)। मैले यसमा पुग्न चाहेको कुरा यो हो कि म ठूलो संख्यामा व्यक्तिको राय दिन सक्दिन जुन प्रत्येकसँग छ, तर म तपाईंलाई भन्न सक्दछु कि त्यहाँ नि: शुल्क प्रोग्रामिंग भाषा छ, त्यहाँ एक समुदाय छ र त्यहाँ भाग लिनको लागि हो। यो उल्लेखनीय छ कि धेरै जसो सबै भाषाहरू अनुवादक सी, वा केही निकट व्युत्पन्नमा लेखिएका छैनन्, र तिनीहरूको विकास सामान्यतया समुदायको सानो समूहले लिन्छ, जो लिने जिम्मामा छन्। निर्णयहरूले सबै भाषा प्रयोगकर्ताहरूलाई असर गर्ने छ। भाषाको सहि विकासलाई सुनिश्चित गर्न संस्था पनि गठन गर्न सकिन्छ, जस्तै सी।

कुन छनौट गर्ने?

हामीले पहिले नै भाषाहरूको बारेमा पर्याप्त कुरा गरिसकेका छौं र म अझै पनि सबैभन्दा महत्त्वपूर्ण कुराको उत्तर दिदिन 😛। तर म आशा गर्दछु कि यो सानो लेख समीक्षा गरिसके पछि मलाई कुन भाषा छनौट गर्न भन्नु पर्दैन, किनकि यस जानकारीको साथ तपाईं जिज्ञासा उत्पन्न गर्नेलाई खोज्न पूर्णतया सक्षम हुनुहुन्छ। स्पष्ट रूपमा यदि तपाइँ एक भाषामा प्रोग्राम गर्न सिक्न चाहानुहुन्छ सभा यसले लामो समय लिनेछ तपाईसँग केहि कार्यात्मक हुनु भन्दा पहिले तपाईले कम्पाइल गरिएको भाषा रोज्नु भयो भने समय घटाइनेछ, जहाँ * NIX प्रणालीमा पोर्टेबिलिटी हुनुको साथै तपाई यस अपरेशनको सम्बन्धमा सूचना पनि लिन सक्नुहुनेछ। समान प्रणाली, सी वा डेरिभेटिभसँग सम्पर्कमा रहँदा तपाइँलाई एक तरीकाले वा अरूले कसरी गर्ने भनेर सिकाउँदछ कसरी अपरेटिंग प्रणाली सामान्य तरिकामा काम गर्दछ। अन्तमा, यदि तपाईं केहि प्रकाश पढ्न चाहानुहुन्छ र यसले तपाईंलाई धेरै बुझ्ने आवश्यकता बिना नै धेरै गर्न अनुमति दिँदछ, अनुवादित भाषाहरू भनेको प्रोग्रामिंग सीपहरू सिक्न र विकास गर्न मजाको तरिका हो।

केहि रोमाञ्चक संग सिक्नुहोस्

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

प्रोजेक्ट सुरू गर्नुहोस्

यसको मतलब मेरो मतलब यो होइन कि तपाईं निम्न कम्पाइलर, वा निम्न प्रोग्रामिंग भाषा पनि सिर्जना गर्नुहुन्छ, परियोजना तपाईंको मनपर्ने प्रोग्राममा सानो बग फिक्स गर्न सकिन्छ, हुनसक्छ कागजात सुधार गर्न मद्दत गर्दछ। कागजात किन? किनभने सफ्टवेयरले कसरी पढ्छ र यसको दस्तावेजीकरण लेख्न मद्दत गर्छ भनेर सिक्नको लागि उत्तम तरिका छैन किनभने स्रोत कोड पछि यो जानकारीको सबैभन्दा ठूलो स्रोत हो जुन तपाईं प्रोग्रामको बारेमा पाउनुहुनेछ। अर्को क्षणमा हामी कसरी परियोजनाको कोड पढ्ने र कसरी उनीहरूका कार्यहरू र मानहरू बुझ्ने छनौट गर्नेछौं।

यहाँ पुग्नु भएकोमा धेरैलाई धन्यबाद र तपाईको सल्लाहले मलाई अझ राम्रो सामग्री उत्पन्न गर्न मद्दत गर्दछ र कहाँ ध्यान केन्द्रित गर्ने जान्छ, अभिवादन।


लेखको सामग्री हाम्रो सिद्धान्तहरूको पालना गर्दछ सम्पादकीय नैतिकता। त्रुटि क्लिक गर्न रिपोर्ट गर्नुहोस् यहाँ.

२ टिप्पणीहरू, तपाइँको छोड्नुहोस्

तपाइँको टिप्पणी छोड्नुहोस्

तपाईंको ईमेल ठेगाना प्रकाशित हुनेछैन।

*

*

  1. डाटाका लागि उत्तरदायी: मिगुएल gelन्गल ग्याटन
  2. डाटाको उद्देश्य: नियन्त्रण स्पाम, टिप्पणी प्रबन्धन।
  3. वैधानिकता: तपाईंको सहमति
  4. डाटाको सञ्चार: डाटा कानुनी बाध्यता बाहेक तेस्रो पक्षलाई सूचित गरिने छैन।
  5. डाटा भण्डारण: डाटाबेस ओसीन्टस नेटवर्क (EU) द्वारा होस्ट गरिएको
  6. अधिकार: कुनै पनि समयमा तपाईं सीमित गर्न सक्नुहुनेछ, पुन: प्राप्ति र तपाईंको जानकारी मेटाउन।

  1.   अज्ञात भन्यो

    सधैं जस्तो एक १० !!!!!! तपाइँको लेख को लागी धन्यवाद। अभिवादन र आउन को लागी अधिक !!!!

    1.    क्रिसएडीआर भन्यो

      धेरै धेरै धन्यवाद 🙂 मलाई लेख्न जारी राख्नको लागि प्रोत्साहित गर्दछ। चियर्स

  2.   रुबेन भन्यो

    मलाई लाग्छ कि "कुन भाषा रोज्ने?" भन्ने प्रश्न सोध्नु गल्ती हो। म ती मध्ये एक हुँ जसले यो सोच्दछन् कि भाषा यसको सब भन्दा कम हो, महत्त्वपूर्ण कुरा भनेको प्रोग्रामिंगको आधारभूत कुरा सिक्नु हो र "कम्प्युटेसनल सोच्नु हो।" सिन्ट्याक्स, यसको टाइपिंगको बारे निर्णय लिनुहोस्, यदि यसले OOP लाई समर्थन गर्दछ, यसको उपयोगिता, आदि। मलाई लाग्छ कि यो त्यस्तो चीज हो जुन स्वाभाविक रूपमा स्टुडियोमा आउँदछ र सबै पछि, प्रत्येक प्रोग्रामरलाई १, २ र languages ​​भन्दा बढी भाषाहरू थाहा हुन्छ ... र प्रोग्रामिंग अवधारणा (जुन सिन्ट्याक्स होईन) को लागी धन्यवाद छ, उसले प्रोग्राम गर्न सक्षम छ एक भाषामा तपाईले अहिलेसम्म अनुभव गर्नु भएको छैन।
    यद्यपि प्रारम्भको लागि, मलाई लाग्छ कि राम्रो भाषा यसको सरलताको लागि पाइथन हुन सक्छ, तर सबै भन्दा माथि, अलिक बढी जानुहोस्, एल्गोरिदम अध्ययन गर्नुहोस् र जान्नुहोस् कि कसरी चीजहरू "भित्र" काम गर्दछन्।

    बधाई छ ChrisADR

    1.    क्रिसएडीआर भन्यो

      नमस्ते रुबान, साझेदारीको लागि धन्यवाद
      प्रोग्रामिंगको संसारमा मैले समयको अन्तरालमा सिकेको कुरा हो, र त्यो यो हो कि "धेरै जसले कभर गर्यो उसले निचोउँदैन" र यस प्रख्यात वाक्यांशले मेरो मतलब भनेको धेरै पटक, र विशेष गरी सबैभन्दा उत्साहितले निर्णय गर्ने निर्णय गर्यो। सबै थोरै प्रयास गर्नुहोस्, र कोडहरू कसरी सिक्ने भन्ने सर्तमा धेरै द्रुत मोडहरू छन्। म विश्वास गर्दछु, र यो व्यक्तिगत धारणा हो कि एक राम्रो विकासकर्ताले कम्पाइलर भाषा र दोभाषे भाषाको ज्ञान हुनुपर्दछ र यसका साथै केही असभाष बोलीको पनि धारणा हुनुपर्दछ।
      कारण निम्न छ, प्रोटोटाइपिंग सँधै सरल र द्रुत, जेनरेट गर्न सजिलो हुनुपर्दछ र यसले सामान्यतया एक परिणाम देखाउँदछ, तर यदि यो पर्याप्त छैन भने, दुबै अनुवादक आइपुगेपछि रिसोर्ट गर्न "योजना बी" हुनुपर्दछ। यसको सीमा।
      असेंब्लीको बोलचाल थाहा पाउँदा तपाईलाई आत्मविश्वास मात्र आउँदैन, तपाईले "कम्प्युटेसनली" सोच्न पनि सिकाउनुहुन्छ, तर स्पष्टतः यो अंश सबै भन्दा जटिल हो, र यो पक्कै पनि त्यस्तो कुरा हो जुन सबै प्रोग्रामरहरू आउँदैनन्।
      तर शीर्षकमा फर्कनुहोस्, किनकि मेरो विचारमा मुख्य विचार हो, "भाषा छान्नुहोस् र धेरै अभ्यास गर्नुहोस्" किनकि प्रोग्रामिंगमा राम्रो प्राप्त गर्ने एक मात्र तरीका भनेको कोड पढ्नु र लेख्नु हो, र यो त्यस्तो कुरा हो जुन मैले सिकेको छु। कर्नेल समुदाय जब तपाईं उही सिन्ट्याक्सलाई लामो समयको लागि राख्नुहुन्छ, तपाईं फारम देख्न रोक्नुहुन्छ र पृष्ठभूमिको बारेमा चिन्ता गर्न थाल्नुहुन्छ। सुरुदेखि नै कुनै भाषा वा सिन्ट्याक्स छनौट गर्ने विचार यो हो कि कसैले यसको पढ्ने र लेख्ने तरिकाको अभिप्राय गर्न सक्षम हुन्छ कि कसैले प्रोग्रामको वाक्यरचनाको सट्टामा कार्यक्रमको MEANING पढ्न सुरु गर्न सक्छ।
      यो यस पोष्टको मुख्य कारण यो हो कि प्रत्येकले आफ्नो भाषा छनौट गर्दछ ताकि निम्नमा हामी अवधारणाहरू व्याख्या गर्न सक्दछौं, सायद यसका साथ श the्का स्पष्ट गरिएको छ 🙂
      बधाई छ र साझेदारी को लागी धन्यवाद।

  3.   डेबिस कन्टेरेस भन्यो

    धन्यवाद पोस्ट को लागी यो राम्रो थियो।

    Saludos

    1.    क्रिसएडीआर भन्यो

      नमस्ते डेबिस, साझा गर्नुभएकोमा धन्यबाद et अभिवादन

  4.   जॉर्जएफएस भन्यो

    मेरो सल्लाह: PHP बाहेक अरू केहि पनि। बीस वर्ष पहिले PHP ले सीजीआई प्रयोग गरेर अर्को भाषामा वेब प्रोग्रामि the गरिरहेको उच्च जटिलताको उच्च स्तरको कारणले यसको अस्तित्वमा निश्चित समझ बनायो। तर आज त्यहाँ वेब विकासलाई रमाईलोको लागि जाजानो, जाभाको लागि स्प्रि Rub वा रुबीको रेल्स जस्ता शक्तिशाली भाषाहरूमा वेब विकासलाई धेरै रमाइलो बनाउन वेब फ्रेमको धेरै विविधताहरू छन्। जे होस्, PHP हाल सबै भाषा लोकप्रियता चार्टहरूमा देखा पर्दछ, मेरो विचारमा PHP समयसँग यसको सान्दर्भिकता गुमाउँदछ।
    म प्रोग्रामिंगको यथार्थ बुझ्नको लागि C \ C ++ को साथ शुरू गर्न कडा सल्लाह दिन्छु, यद्यपि सिकाई कर्भ खडा छ।
    Saludos।

    1.    क्रिसएडीआर भन्यो

      नमस्ते जोर्जे, साझेदारीको लागि धन्यवाद, केवल लाराभेललाई सम्झन, जुन एकदम ठोस फ्रेमवर्क छ- मैले व्यक्तिगत रूपमा विकासको लागि वसन्त वा जावालाई मन पराउँदैन, मलाई यो एकदम गाह्रो लाग्छ, तर मलाई लाग्छ यो उनीहरूको समयको अंश हो। बजार, त्यस समयमा तिनीहरू अग्रगामीहरू थिए र निश्चय पनि आज आधुनिक विकल्पहरू (जे एस, पाइथन र रुबी) कोड प्रस्तुत गर्ने तरिका सुधार गर्न सक्षम छन् जुन धेरै काम बिना पढ्नयोग्य र परिमार्जन योग्य छ।
      म उनीहरूको जीवनको कुनै बिन्दुमा C / C ++ सिक्ने कुरामा पनि झुकाव भएको छु, मैले जाभाबाट सुरू गरें, तर मँ यो प्रोग्रामिंगको सौन्दर्य हो, तपाईले जे पनि गर्न चाहानुहुन्छ सुरु गर्न सक्नुहुनेछ, जबसम्म तपाई सुसंगत हुनुहुन्छ यो सहयोगी हुनेछ। चियर्स

    2.    रुबेन भन्यो

      म तपाईसँग धेरै असहमत हुन सक्दिन। मैले धेरै वर्ष अघि C र VB को साथ शुरू गरें, पछि PHP र JS मा ध्यान केन्द्रित गर्न (किनकि मैले वेब विकासमा ध्यान केन्द्रित गरेको थिएँ) र पछि अध्ययन गर्दा मैले C / C ++ र जाभा मुख्य रूपमा सिकेकी थिएँ।
      PHP का धेरै सुविधाहरू छन् जुन मैले यो सन्देशमा सूचीबद्ध गर्न सकिन। PHP7 छिटो छ (पाइथन भन्दा छिटो ... hhvm को उपयोग नगरी, पाइथनको मामलामा विभिन्न क्याचहरू, फ्रेमवर्कहरू जस्तै फाल्कन वा बाइटेकोडको रूपमा), यसको कुनै ठूलो संख्यामा लाइब्रेरी र फ्रेमवर्क छ, कुनै पनि समयमा प्रयोग गर्नको लागि योसँग सीधा कार्यान्वयन गरिएको प्रकार्यहरू छन्, यसको सिन्ट्याक्स यस्तै सी जस्तो अन्य भाषाहरूमा माइग्रेट गर्न धेरै सजिलो बनाउँदछ।
      Worldwide०% विश्वव्यापी वेबसाइटहरू WordPress (PHP) को साथ बनेका छन् र त्यो परिवर्तन हुँदैन जस्तो देखिन्छ, विकिपेडियाले यसलाई प्रयोग गर्दछ, फेसबुक (hhvm संग) र साइटहरूको एक ठूलो संख्या, कुलमा, %०%।

      म तपाईंलाई सम्झना गराउँछु कि जान्गा जस्ता रेलहरूमा रूबी १२ बर्ष भन्दा पुरानो हो! यस समयमा उनीहरूले कस्तो कोटा हासिल गरेका छन्? र निस्सन्देह, हामी २ फ्रेमवर्कको बारेमा कुरा गर्दैछौं जुन व्यावहारिक रूपमा एकाधिकार हुन्छ र त्यहाँ कुनै प्रकारको विखंडन छैन। मसँग के अरु गम्भीर विकल्पहरू छन्? भन्दै कि PHP प्रासंगिकता गुमाउन गइरहेको छ धेरै कम अर्थ राख्छ।

      अब जब पाइथन फेसनमा छ किनकि यसमा द्रुत शिक्षाको वक्र छ, यो साधारण भाषा हो र तिनीहरूले यसलाई तपाईलाई बेच दिन्छन् "पायथनको साथ २० घण्टामा प्रोग्रामर बन्नुहोस् र यसमा काम गर्नुहोस्", गुगल जस्ता कम्पनीहरूको सहयोगमा र अब त्यहाँ छ नयाँ भाषाहरू (गो, डार्ट…।) खोज्ने फेसनले आफूलाई सीभीमा (वा जाभास्क्रिप्टका लागि frame० फ्रेमवर्कहरूको दैनिक जन्मको रूपमा) फरक पार्दै, यसको मतलब यो कुरा परिवर्तन हुँदैन भन्ने होइन।

      रुबी एकदम चाखलाग्दो भाषा हो, तर यसले स्थापना गरिएको ढाँचासँग यति विघटन गर्दछ कि मलाई यो विश्वास गर्न गाह्रो लाग्छ कि यो PHP भन्दा बढी लोकप्रिय भयो। अवश्य पनि, रुबी मेरो लागी सबैको प्रोग्रामिंग सुरु गर्न सबैभन्दा खराब भाषा हो।
      मैले बुझें कि तपाईले मलाई भन्नु हुन्छ कि अजगर प्रोग्राम गर्न रमाईलो हुन सक्छ, रुबी पनि यसको अनन्तताको साथ ... तर जाभाको साथ वसन्त? साँच्चै? जाभा धेरै चीजहरू हुन सक्छ ... तर पाइथन र PHP भन्दा बढी रमाईलो?

      पाइथनबाट सुरु गर्नु सबै राम्रो हुन्छ, तर तपाईं पायथनसँग मात्रै टाँसिरहनुभयो भने, तपाईंले जोखिम चलाउनुहुन्छ कि धेरै कम्पनीहरूले विश्वास गर्नेछन् कि तपाईको प्रोग्रामिंगको स्तर "गहिरा" छैन (चाहे तपाई पाइथनमा धेरै राम्रो हुनुहुन्छ)। यो किनभने तपाईं अन्य "बहुउद्देशीय" भाषाहरू जस्तै C ++ वा जाभासँग प्रतिस्पर्धा गर्नुहुन्छ। तपाईं पाइथनमा क्यान पोइन्टर भनेको के हो, बिटवाईस अपरेसनहरू, कसरी फोहोर स collect्कलनकर्ताले काम गर्दछ र लामो Ecetera बिना भिन्नता बिना प्रोग्राम गर्न सक्नुहुन्छ।
      पाइथन सायद कम से कम "शास्त्रीय प्रोग्रामिंग" सँग मिल्दोजुल्दो छ जुन अवस्थित छ र "बच्चाहरूको भाषा" (रूपक प्राप्त गर्नुहोस्) को रूपमा देख्न सकिन्छ, र त्यो फलस्वरूप एक फाइदा र हानि हो।

      1.    जॉर्जएफएस भन्यो

        "अजगर सायद कम से कम 'शास्त्रीय प्रोग्रामिंग' सँग मिल्दोजुल्दो छ जुन अवस्थित छ र यसलाई 'बच्चाहरूको लागि भाषा' (रूपक बुझ्नुहोस्) को रूपमा देख्न सकिन्छ, र फलस्वरूप यो एक फाइदा र हानि हो।" LOL, यो एक रमाईलो चीजहरू मध्ये मैले पाइथनको बारेमा भनेका थिए। के तपाईंले कहिल्यै पाइथन साँच्चिकै बुझ्नुभएको छ?
        PHP भन्दा बाहिर संसारको चारै तिर यो कति भयो?
        मित्र PHP मृत जन्म भएको थियो। पीएचपी (\ d +) सँग यसको धेरै धेरै बोझ छ किनकि एकदम खराब खराब प्रारम्भिक डिजाइनको कारण र प्रयोगकर्ता समुदायलाई कायम राख्न यसले ती सबै प्रारम्भिक डिजाइन त्रुटिहरूलाई पूर्ण रूपमा तान्दछ। PHP धेरै मॉडुलरता बिना नै जन्मिएको थियो, धेरै सी-शैली प्रकार्यहरूसँग (जुन वैसे पनि मलाई थाहा छैन तपाईले कहाँबाट ल्याउनु भएको छ किनकि यसको सिन्ट्याक्स सी जस्तै मिल्दोजुल्दो छ जुन अन्य भाषामा सजीलो रूपमा राख्न सकिन्छ)। उच्च स्तरको भाषा, जस्तै PHP ले व्यवहार गर्नुपर्दछ, त्यस्ता कुरूप चीजहरू छन् जुन आधिकारिक साइटमा सूचीबद्ध कार्यहरूको यो ट्रेल हो। http://php.net/manual/en/indexes.functions.phpयो किनभने यो मॉड्युलरिटी बिना जन्म भएको हो, त्यसैले सबै चीज मैला अप र नाम स्थान बिना नै हो।
        यो PHP कोडको एक टुक्रा हो:
        "Stream_notifications_callback");
        stream_context_set_params (t ctx, $ params);
        var_dump (stream_context_get_params (t ctx));
        ?>
        केहि बिन्दुमा तपाईले निर्धारण गर्न सक्नुहुन्छ कि यी सबै 'स्ट्रिम' प्रकार्यहरू कहाँ आयात गरिएको थियो? होइन, तपाईं त्यसो भन्न सक्नुहुन्छ कि तिनीहरू निर्माण कार्यहरू हुन्, तर त्यसो भए सम्पूर्ण इकोसिस्टम बिल्डिन कार्यहरू हुन्? र यसैले, त्यहाँ PHP कोडमा धेरै फोहोर छन्, यदि तपाईं त्यस्ता नराम्रो डिजाइनको जटिलता र उपयोगिता बुझ्नुहुन्न भने, मलाई माफ गर्नुहोस्, तर यो अझै पनि धेरै चीजहरू हेर्नको लागि छ।
        वर्डप्रेस एक उत्कृष्ट सफ्टवेयर समाधान हो, तर यसको मतलब यो होइन कि योसँग राम्रो टेक्नोलोजिकल आधार छ। तपाईं ढु stone्गासँग हथौडा बनाउन सक्नुहुन्छ र दाँतहरूसहित काँटीहरू बाहिर निकाल्न सक्नुहुन्छ, र तपाईं अझै उत्कृष्ट सुत्केरी कार्य गर्न सक्नुहुन्छ, तर पक्कै पनि, अर्को राम्रोसँग काम गर्ने अर्को सिकर्मीको भन्दा बढि कामको साथ।

        अर्को तर्फ: "पाइथनको साथ २० घण्टामा प्रोग्रामर बन्नुहोस् र यसमा काम गर्नुहोस्", मैले त्यस्तो मूर्खता कहिल्यै देखेको छैन। तपाईं २० घण्टामा PHP मा वेबसाइट सिर्जना गर्न सक्नुहुनेछ र वेब प्रोग्रामिंगले कसरी काम गर्दछ भन्ने बारे कुनै ज्ञान बिना, वा प्रोग्रामिंग आफैंमा। वास्तवमा, यसैले नै PHP यत्तिको लोकप्रिय छ, किनभने यस संसारमा प्रवेश गर्ने नयाँ बच्चाहरूले PHP लाई द्रुत विकासको पोइन्टको रूपमा देख्दछन् (त्यसैले किन धेरै PHP कोड यत्तिको बेकार छ)।
        पाइथनका कमजोरीहरूको बारेमा, केवल एकमा यसले सफल भनेको सूचकहरूसँग काम गर्ने थियो, तर जे भए पनि पाइथन एक उच्च-स्तरको भाषा हो (जसरी जाभा हो) र यसले ती वाक्यविन्यासको स्तरमा प्रयोग गर्दैन; तर बिटवाईस अपरेशन्स, गम्भीर?, तपाईको मतलब यो x ​​<< y, x >> y: https://wiki.python.org/moin/BitwiseOperators। मैले फोहोर उठाउने चीजलाई गम्भीर रूपमा बुझेँ: https://docs.python.org/3/library/gc.html.
        PHP खाली ठाउँहरू:
        -PHP एक धेरै गरीब वस्तु उन्मुख प्रोग्रामिंग (OOP) डिजाइन छ।
        - तपाइँ अझै अपरेटरहरूलाई ओभरलोड गर्न सक्नुहुन्न।
        - आश्चर्य, function overloading PHP मा यो तपाईको स्वभावतः यो अवधारणाबाट अपेक्षा गरिएको होइन।
        … .. र म केवल hehe ऊँढो भयो।
        Saludos।

        1.    रुबेन भन्यो

          मैले प्यारेन्थेसिसमा "रूपक बुझ्छु" (समान कार्य वातावरणमा पाइथनको C ++ / Java सँग तुलना गरेर) राख्दछु, यो स्पष्ट छ कि तपाईंले बुझ्नुभएन। म तपाईंलाई भन्न सक्छु कि C ++ प्रोग्रामर पायथन प्रोग्रामरले C ++ सिक्न भन्दा धेरै छिटो तवरले सिक्न सक्छ, जसरी कुनै C / C ++ प्रोग्रामरको औसत तलब एक भन्दा अधिक छ भन्नेमा कुनै अचम्म छैन। पाइथन एक।
          मँ यसलाई अरू उदाहरणका साथ वर्णन गर्न सक्छु, चित्रको साथ पनि! तर यस्तो देखिन्छ कि तपाईं मात्र मैले डिकोन्स्टेक्चुअलाइज गर्ने र उपहास गर्ने कुरामा ध्यान केन्द्रित गर्नुहुन्छ।

          मैले कुनै पनि समयमा भनेका छैन कि PHP संसारकै सब भन्दा राम्रो भाषा हो वा यसको अनुकरणीय डिजाइन छ, मलाई थाहा छैन तपाईं कहाँबाट आउनुभयो। मलाई लाग्छ कि अरूको ज्ञानको न्याय गर्नु अघि तपाईंले आफ्नो पढ्ने समझलाई सुधार्नु पर्छ। के सत्य छ (र मैले भनेको मेरो सन्देशमा हो) कि यससँग विकास गर्नु एकदम चतुर छ, फ्रेमवर्क, पुस्तकालयहरू र उपयोगिताहरूको सम्पूर्ण ईकोसिस्टमको अतिरिक्त तपाईले फेला पार्न सक्नुहुन्छ।
          हामी कस्तो किसिमको तुलना गर्छौं? पाइथन बहुउद्देश्य भाषाको रूपमा वा वेबको लागि? त्यो अवस्थामा हामी किन यसलाई PHP सँग तुलना गर्छौं? PHP सँग एक विशिष्ट क्षेत्र छ, र यो त्यो फिल्डमा छ जहाँ पाइथन (०.२% सेयरको साथ, जुन यस वर्षभर परिवर्तन भएको छैन) PHP को छेउमा खडा हुन्छ।
          अब PHP को प्रवृत्ति हेरौं; जनवरी २०१ 82,4 मा .2017२..83.1% बाट जनवरी २०१ in मा .2018 XNUMX.१%: https://w3techs.com/technologies/history_overview/programming_language

          के पाइथन PHP डिट्रोन गर्न जाँदैछ? कुन वर्षमा? कुन पाँच बर्षमा? दशक?
          पाइथन अन्य धेरै कार्यहरूमा प्रयोग गर्न सक्षम हुनेछ, र पीएचपी भन्दा अधिक व्यापक प्रयोग हुने छ, तर पाइथन एक वेब विकास भाषाको रूपमा प्रकाश वर्षौं पनि प्रासंगिक हुनबाट टाढा छ, ०.२% स्थिरको तुलनामा 0.2 83.1.१% (यस वर्षको वृद्धिसँग)।

          तपाईले पनि चीजहरू लिनुहुन्छ जुन म PHP बाहिर बाहिर जान्छु भनेर भन्दै अनुमति दिईन्छ, मलाई केवल PHP थाहा छ भनेर संकेत गर्दै जब निश्चित रूपमा मैले लामो समयदेखि पीएचपीमा प्रोग्राम गरेको छैन। हाल, कामका कारणका लागि, म अधिकतर जाभामा गर्छु।
          न त मैले भनेको छु कि पाइथनमा प्रोग्रामिंग गरेर तपाईलाई बिटवाईस, कचरा सor्कलन गर्ने वा पोइन्टरको बारेमा ज्ञान छैन। बरु, तपाई पाइथनमा प्रोग्राम गर्न सक्नुहुन्छ यो के हो भनेर पनि थाहा नहुनु। जहाँसम्म, म धेरै शंका गर्दछु जुन C ++ प्रोग्रामरको लागि हुन्छ। र स्पष्टतः मैले तुलनाको काम गर्दछु जब पाइथनले "बहुउद्देशीय भाषा" को क्षेत्र प्रवेश गर्छ, वेब प्रोग्रामिंगको लागि होईन।

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

          म जिद्दी गर्दछु, तपाईले आफ्नो सन्देशलाई आधारभूत बनाउनुहोला कि PHP कति खराब छ (जुन एक निश्चित अंशमा म सहमत छु)। यो मेरो लागि सहि देखिन्छ, मेरो सन्देश त्यो बारेमा होईन बाहेक, तर किन PHP प्रयोग हुन जारी छ र यो भोलि हराउने छैन तपाईको सोचाइ अनुसार।

          धन्यवाद!

  5.   nadie भन्यो

    सी -> जानुहोस् -> (लिस्प | हस्केल | जाभा | जे भए पनि)

    1.    क्रिसएडीआर भन्यो

      हालसालै एक पाठकले मलाई मेरो ईमेलमा गो पुस्तकको सिफारिश पठायो, निश्चित रूपमा भविष्यमा ध्यानमा राख्नको लागि एउटा भाषा र जसमा शायद त्यहाँ पोष्ट हुनेछ will साझा गर्न धेरै ग्राफिक्स

  6.   mvr1981 भन्यो

    ठिक छ ... र म के कार्यक्रम गर्छु? पहिले नै अवस्थित त्यस्ता राम्रा र अनुभवी प्रोग्रामरहरूको साथ आज किन प्रोग्रामिंग भाषा सिक्ने? कुन समस्याहरू म समाधान गर्न सक्छु कि अरुले पहिले नै अझ बढी प्रभावकारी ढ solved्गमा समाधान गरेका छैनन्?… संक्षेपमा: आज प्रोग्रामर हुनु कत्तिको मौलिक हो? म कसरी ज्ञान र अनुभव को कमी को द्वारा लात हान्ने वा बहिष्कार नगरी अरूसँग सहयोग गर्न सक्छु?

    1.    क्रिसएडीआर भन्यो

      नमस्ते mvr1981, साँच्चै चाखलाग्दो प्रश्न - हामी तिनीहरूलाई अन्तिम एकबाट पहिलोमा रील गर्न जाँदैछौं।

      म कसरी ज्ञान र अनुभव को कमी को द्वारा लात हान्ने वा बहिष्कार नगरी अरूसँग सहकार्य गर्न सक्छु?

      यदि तपाईं लात हान्ने चाहनुहुन्न भने, पहिलो चरण भनेको प्रक्रिया सिक्नु हो, तपाईं कल्पना गर्न सक्नुहुन्न कि परियोजनामा ​​आएका व्यक्तिहरू उनीहरूको तरिकाले कार्य गर्न चाहान्छन्, समुदायलाई उनीहरूको इच्छा अनुसार अनुकूल बनाउन चाहन्छन्। यो निश्चित रूपमा तपाईको घरमा आएर गडबडी गरेको र तपाईको परिवारको अनादर गरेको जस्तो छ (त्यस्तै धेरै चोटि यस्तो महसुस हुन्छ)। यदि तपाइँ यसलाई हुनबाट रोक्न चाहानुहुन्छ भने, योगदान पुर्‍याउने दिशानिर्देशहरूमा ध्यान दिनुहोस्, जसमार्फत यो गर्ने हो, र केहि अपूर्ण नपठाउनुहोस्, यदि तपाईंलाई सहयोगको आवश्यक पर्‍यो भने सँधै संचार गर्ने साधनहरू हुन्छन्, तर खराब कामले काम गर्दैन। सायद खराब पहिलो छापहरू सिर्जना गर्नुहोस्। यदि तपाइँ आफैंमा भर पर्न चाहानुहुन्न भने, तपाइँ उसलाई बेकार प्रोग्रामरको रूपमा देख्न सक्नुहुन्छ जुन उसलाई थाहा छैन कि उसले के गरिरहेको छ वा एउटा उत्कृष्ट प्रोग्रामर बन्नको लागि उसको बाटोमा एक हो, र त्यो अभ्याससँगै हुन्छ र निश्चित रूपमा बाटोमा बगहरू सहित। म Gentoo मा मेरो विकासकर्ता स्थिति पाउनु भन्दा पहिले म धेरै पटक गलत भएको छु, र त्यसले मलाई "खराब समय" को बावजूद प्रयास गर्नबाट रोक्दैन 🙂।

      आज प्रोग्रामर हुनको लागि कत्ति वास्तविक छ?

      - यो मौलिकताको बारेमा होईन, आज यो एक आवश्यकता हो, केवल निम्नको बारेमा सोच्नुहोस्, २० वा years० वर्ष अघि टाइप गर्नु एक आवश्यकता थियो, धेरै रोजगारहरू अनुमान गरिएको थियो जुन तपाईंलाई थाहा थियो वा कमसेकम यो गर्न सक्थ्यो। आज कार्यालय जान्नु एक आवश्यकता हो, त्यहाँ व्यावहारिक रूपमा कुनै काम छैन जुन तपाइँलाई अफिस कागजातहरूको अगाडि राख्दैन। भोली, धेरै छिट्टै, प्रोग्रामिंगको आवश्यकता हुनेछ। र यो व्यक्तिगत दृष्टिकोणबाट पनि लागू हुन्छ, कार्यक्रमहरूमा के हुन्छ भनेर जानेर तपाईलाई पैसा, स्वास्थ्य, परिवार जत्तिकै महत्त्वपूर्ण चीजहरू हस्तान्तरण गर्नु भनेको मेरो लागि केही तार्किक छ, किनकि तपाईं उनीहरूको सीमितताहरू मात्र जान्न सक्नुहुनेछ यदि तपाईंलाई कसरी थाँहा छ भनेर जान्नुहुन्छ भने। काम गर्नुहोस् र यो जान्नको लागि तपाईले प्रोग्राम कसरी गर्ने जान्नु आवश्यक छ।

      कुन समस्याहरू म समाधान गर्न सक्दछु जुन अरूले पहिले नै अझ बढी प्रभावकारी तरिकामा समाधान गरेका छैनन्?

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

      पहिले नै अवस्थित त्यस्ता राम्रा र अनुभवी प्रोग्रामरहरूको साथ आज किन प्रोग्रामिंग भाषा सिक्ने?

      दोस्रो प्रश्नमा यसको उत्तर छ - तर अब म यो कुरा थप्न सक्छु कि पुस्ताले पहिले नै विकसित भएको कामलाई समर्थन गर्न सक्षम हुनुपर्दछ, यसको मतलब मेरो ती ती "अनुभवी" विकासकर्ताहरू बिस्तारै हराउँदै जान्छन् र यो आवश्यक हुनेछ " जवान »विकासकर्ताहरूले जिम्मेवारी लिन्छ र चक्रलाई जीवित राख्न मद्दत गर्दछ, युवा र अनुभवहीन व्यक्ति नभएको समुदाय समयसँगै हराउने झुकाव हो, निश्चित रूपमा किनभने त्यहाँ ज्ञान सार्ने अवसर हुँदैन।

      र मैले के तालिका बनाउने?

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

      यो एक उदाहरण हो, यो केहि सरल छ र त्यो पक्कै पनि कुनै अन्य "विशेषज्ञ" प्रोग्रामरले यो गरिसकेको हुन सक्छ, तर समयको स्पष्ट अभावका कारण यो त्यस्तो भएको छैन, अब म त्यस्तो व्यक्ति हुँ जसमा गर्ने सम्भावना छ यो, वास्तवमा एक सुपर प्रोग्रामर बिना।

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

      अभिवादन र फेरि धन्यवाद

      1.    nadie भन्यो

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

        1.    क्रिसएडीआर भन्यो

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

      2.    mvr1981 भन्यो

        तपाईंलाई धन्यवाद। धेरै राम्रा उत्तरहरू छन्।

    2.    Guillermo भन्यो

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

  7.   मार्सेलो भन्यो

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

  8.   Ricardo भन्यो

    प्रोग्रामि Forको लागि, सिक्नको लागि पहिलो भाषा अ English्ग्रेजी हो, त्यसपछि एउटा जुन उनीहरूलाई सबैभन्दा अपील गर्दछ र तिनीहरूलाई सबैभन्दा सुन्दर देखिन्छ।

    1.    क्रिसएडीआर भन्यो

      मैले यो लेखेको होइन, तर सत्य हो - अ🙂्ग्रेजीको ज्ञानले धेरै मद्दत गर्दछ किनकि यसमा प्रायः जसो भाषाहरू लेखिएका हुन्छन्, तर यो पनि किनभने पहिलो हेण्ड जानकारीको अधिक मात्रा पनि también साझा गर्नका लागि धेरै धेरै धन्यवाद

  9.   रुबेन साल्गाडो भन्यो

    उत्प्रेरणाको अतिरिक्त उत्कृष्ट लेख।

    1.    क्रिसएडीआर भन्यो

      धेरै दयालु, धेरै धेरै धन्यवाद 🙂 अभिवादन

  10.   गोंजालो मार्टिनेज भन्यो

    प्रोग्रामिंगले कसरी तर्क गर्ने र त्यस तर्कलाई निर्देशनहरूमा अनुवाद गर्ने तरीकाले जानिरहेको छ।

    लेखको बारेमा दुई स्पष्टीकरणहरू:

    १) लगभग १० बर्षको लागि एक प्रोग्रामिंग शिक्षकको रूपमा मेरो अनुभवको आधारमा, यसले तपाईंको कुन भाषासँग सिक्ने फरक पर्दैन, तर तपाईं कसरी सिक्नुहुन्छ र यो कति जटिल छ।

    मलाई लाग्छ कि संरचित तरीकाले सिक्न सकिने भाषा, र त्यसपछि अन्य धेरै जटिल चीजहरूमा जान, शुरू देखि जाभा जस्तो भाषाबाट सुरू गर्नु भन्दा सजिलो छ।

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

    २) चाहे कुनै भाषा व्याख्या गरिएको होस् वा कम्पाइल गरिएको छ त्यसको भाषामा होइन, यसको कार्यान्वयनमा निर्भर गर्दछ। उदाहरणको लागि, यदि पाइथन प्रयोग गरिएको छ भने, वेब अनुप्रयोगको लागि जसले wsgi प्रयोग गर्दछ (या त अप्पाचे मा mod_wsgi, वा Nginx को लागी uwsgi), python कोड कम्पाइल गरिएको छ जब सम्बन्धित मोड्युल सुरू गर्दा, .pyc फाईलहरू उत्पन्न गर्दै

    त्यहाँ जाभाका लागि बाइनरी फाईल जेनरेटरहरू पनि छन् (जसले बाइटेकोडको सट्टा नेटिभ बाइनरीहरू उत्पन्न गर्दछ), वा शुद्ध बाइनरीमा php स्क्रिप्टको कम्पाइलरहरू।

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

    यहाँ सम्म कि म धेरै बर्ष देखि एक प्रणाली प्रशासक को रूप मा काम गरीरहेको छु र विकासकर्ताको काम छोडेको छु, हरेक पटक मैले PHP कोड केही चीजमा राख्नु पर्छ।

    1.    क्रिसएडीआर भन्यो

      नमस्ते गोंजालो, साझेदारीको लागि धन्यवाद,

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

      ठाउँ सीमित भएकाले पोष्टको मुख्य उद्देश्य भनेको दुई ठूला भाषाहरू छन् कि प्रोग्रामरहरू पढ्न चाहने पाठकहरूलाई देखाउँनु हो, "परम्परागत रूपमा" अनुवाद गरिएको "बढी" सरल छ, कि "परम्परागत" संकलित थोरै हो धेरै "जटिल" तर यो जटिलताको त्यो स्तरको लायक हुन्छ कि अझ ठोस समझ हुनुपर्दछ र प्रत्येक व्यक्तिले भाषा छनौट गर्ने कुरामा निर्भर गर्दछ, किनकी प्रोग्रामिंग दृष्टिकोणमा निर्भर रहँदा, उनीहरूले उनीहरूको मनपर्ने परियोजनाहरू छनोट गर्न सक्नेछन् र एकै समयमा उनीहरूले बुझ्न सक्नेछन्। तिनीहरू के पढ्छन् र / वा लेख्छन् 🙂

      धेरै धेरै धन्यबाद, बधाई छ।

      1.    गोंजालो मार्टिनेज भन्यो

        यो त्रुटि हो, त्यहाँ कुनै कम्पाईल गरिएको वा अनुवादित भाषाहरू छैनन्, प्रत्येक भाषाका लागि दोभाषे र कम्पाइलरहरू छन्, दुबै बिभिन्न केसहरूको लागि।

        यो जानकारी लिने सूचना ओभरलोड होईन, अब यो उल्लेख गर्नु गल्ती हो। मेरो राय मा, यो दोभाषे बेवास्ता गर्न अधिक उत्पादक हुने थियो यदि तपाईं जानकारी संग अतिभार गर्न चाहनुहुन्न।

        1.    क्रिसएडीआर भन्यो

          स्पष्टीकरण को लागी धन्यवाद, जब म विषयमा फर्कन्छु, यसलाई ध्यानमा राख्नेछु। चियर्स

  11.   Ares भन्यो

    तपाइँले कुन भाषा सर्वर साइडलाई ध्यानमा राख्नुहुन्छ जुन PHP लाई नमिल्ने भयो?
    डाटाबेसको लागि समान, मलाई थाहा छैन त्यहाँ MySQL भन्दा राम्रो र केही अधिक आधुनिक हुनेछ।

    1.    क्रिसएडीआर भन्यो

      PHP पक्षबाट बाहिर आएको छैन ... प्रत्येक भाषाको जीवन चक्र हुन्छ, र php निश्चित रूपमा पहिले नै यस्तो भाषा हो जुन "परिपक्व" को मापनमा प्रवेश गर्छ, जसले यसलाई व्यवसायको स्तरमा उपयोगी बनाउँदछ, जहाँ स्थिरता सबै भन्दा माथि छ ... केही बैंकहरू जस्ता यो अझै जाभामा विकसित भएको छ, जुन php भन्दा "परिपक्व" छ र यसको पक्कै यसको अनुयायी र डिटेक्टरहरू छन् ... र COBOL उल्लेख नगर्ने ...

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

      आजकल ORM (वस्तु रिलेशनल म्यापर्स) रिलेशनल डाटा व्यवस्थापनको मामलामा धेरै बल लिइरहेको छ। यो SQL सिन्ट्याक्सबाट वर्ग र एट्रिब्यूट ह्यान्डलिंगमा जान्छ ... लगभग सबै भाषाहरू (यदि सबै होईन भने) केही ORM ह्यान्डल गर्दछ।

      । मोंगो डीबी रिलेशनल डाटाबेसको विकल्प हो जुन एकदम महत्त्वपूर्ण भएको छ तर जे होस्, यसको पक्ष र विपक्षहरू जान्नु आवश्यक छ र यदि यो विशिष्ट आवश्यकतामा निर्भर गर्दछ भने यो उत्तम समाधान हो भने मान्य हुन्छ।

      म आशा गर्छु कि यसले तपाईलाई मद्दत गर्दछ, बधाई छ 🙂

      1.    Ares भन्यो

        धन्यबाद, म त्यो जाँच गर्नेछु।

      2.    Ares भन्यो

        मैले बिर्सिए।

        लिनक्समा जाभासँग काम गर्न तपाईले मलाई के सुझाव दिनुहुन्छ?
        यदि तपाईं स्वतन्त्र र बन्दको बीचमा भिन्नता राख्न सक्नुहुनेछ।

        1.    क्रिसएडीआर भन्यो

          इक्लिप्स र नेटबीन्स खुला स्रोत हुन्, मलाई यकिन छैन कि त्यहाँ कुनै सफ्ट्वेयर सफ्टवेयर छ कि छैन, मलाई भिम प्रयोग गर्ने बानी छ किनकि कहिलेकाँही कोडको मात्राले सम्पूर्ण आईडीई प्रयोग गरेर ढिलो बनाउँदछ र कार्यान्वयन त्रुटिहरूको प्रवण हुन्छ। अभिवादन 🙂

        2.    पाउलजेटा भन्यो

          लिनक्समा जाभाको साथ काम गर्न मँ इंटेलिज प्रयोग गर्दछु।

          1.    क्रिसएडीआर भन्यो

            PS, IntelliJ स्वामित्व सफ्टवेयर हो 🙂

  12.   je भन्यो

    गाईहरुलाई पनि यो याद छ कि ... म एक बैंक मा काम गर्छु र म तिमीलाई भन्छु कि प्रोग्रामिंग भाषाहरुले SQL र भण्डारित कार्यविधि पहिले जान दिनको लागि पछाडि सीट लिन्छ।

    1.    गोंजालो मार्टिनेज भन्यो

      तपाईंले तिनीहरूलाई भण्डारण प्रक्रियाहरू खातामा लिनुपर्दछ, तर इन्जिनहरू बीच पोर्टेबल भाषा प्रयोग नगरी, मेरो अनुभवमा, यो जहिले पनि यसलाई बेवास्ता गर्ने बारेमा हुन्छ जबसम्म त्यहाँ अन्य विकल्प हुँदैन।