क्या पुरानी जावा प्रोग्रामिंग किताबें पढ़ना फायदेमंद है? [बन्द है]


10

मेरी कई जावा पुस्तकें 5 - 10 वर्ष पुरानी हैं। क्या यह अभी भी उन्हें पढ़ने में मदद करता है, या मुझे 2 वर्षों के भीतर कुछ का उपयोग करना चाहिए।


2
पर निर्भर यह अभी भी अप्रचलित है पढ़ने के लिए निवेश किए गए समय को पढ़ने के लिए इसे अप-टू-डेट किताब पढ़ने के लिए समय के उपयोग के साथ तुलना की जानी चाहिए।
सारावुत पोसिट्विन्यू

जवाबों:


26

यदि किताबें भाषा के बारे में हैं , तो इसे खो दें और एक नया प्राप्त करें।

यदि पुस्तक एक विषय (कला, विषय, अनुशासन, तकनीक, जो भी हो) के रूप में प्रोग्रामिंग के बारे में है , तो यह निश्चित रूप से पढ़ने लायक है। सबसे अच्छी प्रोग्रामिंग किताबें जो मैंने 10 साल पहले लिखी थीं।


12
कोई यह तर्क दे सकता है कि K & R, C के बारे में है और यह सबसे अच्छी C पुस्तक है जिसे आप खोजने जा रहे हैं।
विटोर पाइ

7
मैं @Victor Braga से सहमत हूं। यह उस समय के बारे में नहीं है जब पुस्तक लिखी गई थी, लेकिन यह इस बारे में है कि भाषा कितनी बदल गई है। पिछले 5-10 वर्षों में जावा बहुत बदल गया है। हालांकि, सी नहीं है। आपकी 5 साल की जावा पुस्तकें बहुत बेकार हैं। हालाँकि, 1978 से K & R C पुस्तक का आपका पहला संस्करण अधिक अद्यतित है (हालाँकि यह 100% सटीक नहीं है, और न ही 1988 से दूसरा संस्करण है)। मुख्य कारक यह है कि पुस्तक के प्रकाशन के बीच भाषा और सहायक उपकरण कितने बदल गए हैं और जब आप पुस्तक का उपयोग करना चाहते हैं।
थॉमस ओवेन्स

1
+1 छोटी पुस्तकें 30 साल पुरानी हैं और अभी भी अमूल्य हैं।
कामिल टोमिक

8

यह पुस्तक पर निर्भर करता है और आप उनसे और आप पर क्या सीखना चाहते हैं।

पुरानी पुस्तकें पढ़ने के लिए सामान कारण हैं:

  • यदि वे अवधारणाओं को अपने नए समकक्षों से बेहतर पढ़ाते हैं।
  • यदि वे विशिष्ट तकनीकों के बजाय सामान्य सिद्धांत सिखाते हैं।
  • यदि वे जो तकनीक सिखाते हैं वह बहुत ज्यादा नहीं बदली है।

व्यक्तिगत रूप से, मैं अपनी पुरानी प्रोग्रामिंग पुस्तकों में से कुछ रखता हूँ:

  • मुझे पता है कि मुझे क्या ढूंढना है।
  • उनमें मेरे एनोटेशन हैं।
  • उन्होंने नई किताबों से बेहतर मेरी याददाश्त को जॉग किया।
  • यह (obviosuly) नया खरीदने से सस्ता है।

उदाहरण के लिए, ZX81 (1981 के आसपास) के लिए उपयोगकर्ता पुस्तिका में एक सीधी रेखा ड्राइंग एल्गोरिथ्म का शानदार विवरण है। यह अभी भी मेरे लिए कुछ भी समझ में आता है जो मैंने पढ़ा है। मैंने इसे वर्षों में कई बार कार्यान्वयन के आधार के रूप में उपयोग किया है।

उस सबने कहा, मैं नई किताबें भी पढ़ता हूं। मैं निश्चित रूप से अंधेरे युग में फंसना नहीं चाहता।


4

यदि वे अच्छे थे और फिर वे जो भाषा सुविधाएँ सिखाते हैं वे नहीं बदले हैं - तो क्यों नहीं!

मुझे नहीं लगता कि 1.2 (या जावा 2) के बाद से जावा के फ़नलडाउन बहुत बदल गए हैं।


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

5
@World इंजीनियर - यह डरावना है। 12 साल पहले 1999 था, जिसका मतलब है कि जावा 1.2 बाहर था। उसके बाद, RMI में परिवर्तन किए गए, JNDI कोर बन गया, मुखर कीवर्ड जोड़ा गया, regex में परिवर्तन किए गए, और NIO और लॉगिंग API, जेनरिक, स्कैनर वर्ग, ऑटोबॉक्सिंग, एनम, वैरगैस और फॉर-प्रत्येक लूप थे जोड़ा। AWT, स्विंग, JDBC और कंपाइलर और JIT कंपाइलर में परिवर्तन का उल्लेख नहीं है। वह विश्वविद्यालय किसी को भी बुरी आदत सिखा रहा है जो उस पुस्तक को पढ़ता है। मैं किसी को जो कि इस कार्यक्रम से स्नातक के मूल्य के सवाल करने के लिए अगर वे पहले पाठ्यक्रमों के लिए पर्याप्त संसाधन उपयोग नहीं कर सकते के लिए होता है
थॉमस ओवेन्स

3
@ थोमस ने कहा कि "शुरुआती कोर्स"। आपके द्वारा सूचीबद्ध कुछ भी किसी भी परिचयात्मक पाठ्यक्रम में नहीं पढ़ाया जा सकता है, सिवाय इसके कि शायद एक फॉर्च्यूनर।
पीट

2
@ पेइट हमने अपने पहले साल के सीएस सीक्वेंस की पहली दो तिमाहियों (एक सेमेस्टर और एक आधा) के बारे में जेनरिक, स्कैनर, एनम, ऑटोबॉक्सिंग और स्विंग का इस्तेमाल किया।
थॉमस ओवेन्स

1
पाठ एक संदर्भ से अधिक था, स्विंग और स्कैनर्स ने पहले सप्ताह में दिखाया।
वर्ल्ड इंजीनियर

2

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

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

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

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


1
पहला भाग सत्य है, लेकिन मैं दूसरे भाग से सहमत नहीं हूँ। जावा पर एक पुस्तक आम तौर पर आपको सिखाती है कि कैसे जावा के साथ निर्माण करना है, न कि एक प्रणाली को डिज़ाइन करना जो अंततः जावा में लागू होने जा रही है। और यह भी, एक अपेक्षाकृत अपरिवर्तित भाषा (जैसे सी) की तुलना तेजी से बदलती भाषा (जैसे जावा) में त्रुटिपूर्ण है।
थॉमस ओवेन्स

2

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

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


0

Amazon.com पर जाएं और जावा किताबें देखें। आमतौर पर किताबें उसी के बारे में होती हैं लेकिन आप यह पता लगा सकते हैं कि कौन सी समीक्षा पढ़कर बेहतर है। मैं हमेशा उस तरह की किताबें चुनता हूं - समीक्षा पढ़ें और फिर तय करें कि मैं कौन सा पढ़ने जा रहा हूं।


-1

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

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