- عنوان کتاب: Core Java Vol. I Fundamentals
 - نویسنده: Cay S. Horstmann
 - حوزه: برنامهنویسی جاوا
 - سال انتشار: 2026
 - تعداد صفحه: 2035 (فونت درشت)
 - زبان اصلی: انگلیسی
 - نوع فایل: pdf
 - حجم فایل: 13.6 مگابایت
 
فصل ۱ مروری بر قابلیتهای جاوا دارد که آن را از سایر زبانهای برنامهنویسی متمایز میکند. این فصل توضیح میدهد که طراحان این زبان چه کاری را شروع کردند و تا چه حد در آن موفق شدند. در ادامه، تاریخچه کوتاهی از جاوا ارائه میشود که جزئیات چگونگی پیدایش و تکامل جاوا را شرح میدهد. در فصل ۲، نحوه دانلود و نصب JDK و مثالهای برنامه برای این کتاب را خواهید دید. سپس شما را در کامپایل و اجرای یک برنامه کنسول و یک برنامه گرافیکی راهنمایی خواهم کرد. خواهید دید که چگونه از JDK ساده، یک IDE جاوا و ابزار JShell استفاده کنید. فصل ۳ بحث زبان جاوا را آغاز میکند. در این فصل، اصول اولیه را پوشش میدهم: متغیرها، حلقهها و توابع ساده. اگر برنامهنویس C یا C++ هستید، این کار آسان است زیرا نحو این ویژگیهای زبان اساساً مشابه C است. اگر از پیشینه غیر C مانند Visual Basic آمدهاید، باید این فصل را با دقت بخوانید. برنامهنویسی شیگرا (OOP) اکنون در جریان اصلی برنامهنویسی قرار دارد و جاوا یک زبان برنامهنویسی شیگرا است. فصل ۴، کپسولهسازی، اولین بلوک از دو بلوک اساسی سازندهی شیگرایی، و مکانیزم زبان جاوا برای پیادهسازی آن – یعنی کلاسها و متدها – را معرفی میکند. علاوه بر قوانین زبان جاوا، نکاتی در مورد طراحی صحیح OOP نیز خواهید یافت. در نهایت، ابزار شگفتانگیز javadoc را که کامنتهای کد شما را به صورت مجموعهای از صفحات وب لینکشده قالببندی میکند، پوشش میدهم. اگر با ++C آشنا هستید، میتوانید به سرعت این فصل را مرور کنید. برنامهنویسانی که پیشینهی غیرشیگرا دارند، باید انتظار داشته باشند که قبل از ادامهی کار با جاوا، زمانی را برای تسلط بر مفاهیم OOP صرف کنند. کلاسها و کپسولهسازی تنها یک بخش از داستان OOP هستند و فصل ۵ بخش دیگر – یعنی وراثت – را معرفی میکند. وراثت به شما امکان میدهد یک کلاس موجود را بگیرید و آن را مطابق با نیازهای خود تغییر دهید. این یک تکنیک اساسی برای برنامهنویسی در جاوا است. مکانیزم وراثت در جاوا کاملاً شبیه به C++ است. بار دیگر، برنامهنویسان C++ میتوانند بر تفاوتهای بین زبانها تمرکز کنند. فصل ۶ به شما نشان میدهد که چگونه از مفهوم رابط جاوا استفاده کنید. رابطها به شما اجازه میدهند فراتر از مدل وراثت ساده فصل ۵ بروید. تسلط بر رابطها به شما این امکان را میدهد که به قدرت رویکرد کاملاً شیگرای جاوا به برنامهنویسی دسترسی کامل داشته باشید. پس از پوشش رابطها، به عبارات لامبدا میپردازم، روشی مختصر برای بیان بلوکی از کد که میتواند در زمان دیگری اجرا شود. سپس یک ویژگی فنی مفید جاوا به نام کلاسهای داخلی را توضیح میدهم. فصل ۷ در مورد مدیریت استثنا – مکانیسم قوی جاوا برای مقابله با این واقعیت که اتفاقات بد میتواند برای برنامههای خوب رخ دهد – بحث میکند. استثناها روشی کارآمد برای جداسازی کد پردازش عادی از مدیریت خطا به شما میدهند. البته، حتی پس از سختسازی برنامه شما با مدیریت تمام شرایط استثنایی، ممکن است همچنان مطابق انتظار عمل نکند. سپس فصل به ثبت وقایع (logging) میپردازد. در بخش پایانی این فصل، تعدادی نکته مفید در مورد اشکالزدایی به شما ارائه میدهم. فصل ۸ مروری بر برنامهنویسی عمومی ارائه میدهد. برنامهنویسی عمومی خواندن برنامههای شما را آسانتر و ایمنتر میکند. من به شما نشان میدهم که چگونه از تایپ قوی استفاده کنید و تبدیلهای ناخوشایند و ناامن را حذف کنید، و چگونه با پیچیدگیهایی که از نیاز به سازگاری با نسخههای قدیمیتر جاوا ناشی میشود، مقابله کنید. موضوع فصل 9 چارچوب مجموعهها در پلتفرم جاوا است. هر زمان که میخواهید چندین شیء را جمعآوری کرده و بعداً آنها را بازیابی کنید، باید از مجموعهای استفاده کنید که برای شرایط شما مناسبتر باشد، نه اینکه فقط عناصر را در یک آرایه قرار دهید. این فصل به شما نشان میدهد که چگونه از مجموعههای استانداردی که برای استفاده شما از پیش ساخته شدهاند، بهره ببرید. فصل 10 به همزمانی میپردازد که شما را قادر میسازد وظایف را به صورت موازی برنامهریزی کنید. این یک کاربرد مهم و هیجانانگیز از فناوری جاوا در عصری است که پردازندهها دارای چندین هسته هستند که میخواهید آنها را مشغول نگه دارید. در فصل 11، در مورد حاشیهنویسیها یاد خواهید گرفت که به شما امکان میدهد اطلاعات دلخواه (که گاهی اوقات فراداده نامیده میشوند) را به یک برنامه جاوا اضافه کنید. ما به شما نشان میدهیم که چگونه پردازندههای حاشیهنویسی میتوانند این حاشیهنویسیها را در سطح فایل منبع یا کلاس برداشت کنند و چگونه میتوان از حاشیهنویسیها برای تأثیرگذاری بر رفتار کلاسها در زمان اجرا استفاده کرد. حاشیهنویسیها فقط با ابزارها مفید هستند و امیدواریم بحث ما به شما در انتخاب ابزارهای مفید پردازش حاشیهنویسی برای نیازهایتان کمک کند. در فصل ۱۲، با سیستم ماژول پلتفرم جاوا آشنا خواهید شد که تکامل منظم پلتفرم جاوا و کتابخانههای اصلی را تسهیل میکند. این سیستم ماژول، کپسولهسازی برای بستهها و مکانیسمی برای توصیف الزامات ماژول را فراهم میکند. شما ویژگیهای ماژولها را یاد خواهید گرفت تا بتوانید تصمیم بگیرید که آیا از آنها در برنامههای خود استفاده کنید یا خیر. حتی اگر تصمیم به استفاده از آنها نگیرید، باید قوانین جدید را بدانید تا بتوانید با پلتفرم جاوا و سایر کتابخانههای ماژولار تعامل داشته باشید. پیوست، کلمات رزرو شدهی زبان جاوا را فهرست میکند…
Chapter 1 gives an overview of the capabilities of Java that set it apart from other programming languages. The chapter explains what the designers of the language set out to do and to what extent they succeeded. A short history of Java follows, detailing how Java came into being and how it has evolved. In Chapter 2, you will see how to download and install the JDK and the program examples for this book. Then I’ll guide you through compiling and running a console application and a graphical application. You will see how to use the plain JDK, a Java IDE, and the JShell tool. Chapter 3 starts the discussion of the Java language. In this chapter, I cover the basics: variables, loops, and simple functions. If you are a C or C++ programmer, this is smooth sailing because the syntax for these language features is essentially the same as in C. If you come from a non-C background such as Visual Basic, you will want to read this chapter carefully. Object-oriented programming (OOP) is now in the mainstream of programming practice, and Java is an object-oriented programming language. Chapter 4 introduces encapsulation, the first of two fundamental building blocks of object orientation, and the Java language mechanism to implement it—that is, classes and methods. In addition to the rules of the Java language, you will also find advice on sound OOP design. Finally, I cover the marvelous javadoc tool that formats your code comments as a set of hyperlinked web pages. If you are familiar with C++, you can browse through this chapter quickly. Programmers coming from a non-objectoriented background should expect to spend some time mastering the OOP concepts before going further with Java. Classes and encapsulation are only one part of the OOP story, and Chapter 5 introduces the other—namely, inheritance. Inheritance lets you take an existing class and modify it according to your needs. This is a fundamental technique for programming in Java. The inheritance mechanism in Java is quite similar to that in C++. Once again, C++ programmers can focus on the differences between the languages. Chapter 6 shows you how to use Java’s notion of an interface. Interfaces let you go beyond the simple inheritance model of Chapter 5. Mastering interfaces allows you to have full access to the power of Java’s completely object-oriented approach to programming. After covering interfaces, I move on to lambda expressions, a concise way for expressing a block of code that can be executed at a later point in time. I then explain a useful technical feature of Java called inner classes. Chapter 7 discusses exception handling—Java’s robust mechanism to deal with the fact that bad things can happen to good programs. Exceptions give you an efficient way of separating the normal processing code from the error handling. Of course, even after hardening your program by handling all exceptional conditions, it still might fail to work as expected. Then the chapter moves on to logging. In the final part of this chapter, I give you a number of useful debugging tips. Chapter 8 gives an overview of generic programming. Generic programming makes your programs easier to read and safer. I show you how to use strong typing and remove unsightly and unsafe casts, and how to deal with the complexities that arise from the need to stay compatible with older versions of Java. The topic of Chapter 9 is the collections framework of the Java platform. Whenever you want to collect multiple objects and retrieve them later, you should use a collection that is best suited for your circumstances, instead of just tossing the elements into an array. This chapter shows you how to take advantage of the standard collections that are prebuilt for your use. Chapter 10 covers concurrency, which enables you to program tasks to be done in parallel. This is an important and exciting application of Java technology in an era where processors have multiple cores that you want to keep busy. In Chapter 11, you will learn about annotations, which allow you to add arbitrary information (sometimes called metadata) to a Java program. We show you how annotation processors can harvest these annotations at the source or class file level, and how annotations can be used to influence the behavior of classes at runtime. Annotations are only useful with tools, and we hope that our discussion will help you select useful annotation processing tools for your needs. In Chapter 12, you will learn about the Java Platform Module System that facilitates an orderly evolution of the Java platform and core libraries. This module system provides encapsulation for packages and a mechanism for describing module requirements. You will learn the properties of modules so that you can decide whether to use them in your own applications. Even if you decide not to, you need to know the new rules so that you can interact with the Java platform and other modularized libraries. The Appendix lists the reserved words of the Java language.
این کتاب را میتوانید از لینک زیر بصورت رایگان دانلود کنید:
Download: Core Java Vol. I Fundamentals
            
                            
  
  
  
  
  
  
  
  
  
  
                  
    
  
  
  
  
  
  
  
  
  
  
                                                
                                                
                                                
                                                
                                                
                                                
                                                
                                                
                                                
                                                
نظرات کاربران