کتاب Extreme C یا حد نهایت C، یک منبع آموزشی فوقالعاده برای یادگیری زبان برنامهنویسی قدرتمند C میباشد. این کتاب که نویسنده آن یک فرد ایرانی است با مثالها و توضیحات دقیق و گویا این زبان را آموزش داده و در قسمتهای مختلف به کار گرفته است.
مقدمهای بر کتاب Extreme C:
این کتاب دارای 7 قسمت است. در هر یک از این 7 قسمت، برخی از جنبههای خاص برنامهنویسی C را پوشش میدهیم. بخش اول به چگونگی ساخت یک پروژه C متمرکز است، قسمت دوم به حافظه، قسمت سوم به شیگرایی و بخش چهارم در ابتدا به Unix و رابطه آن با C. میپردازد. قسمت پنجم به بحث همزمانی میپردازد، قسمت ششم ارتباطات بین فرآیند را پوشش میدهد، و در آخر قسمت هفتم کتاب در مورد آزمایش و نگهداری است. در زیر خلاصهای از هر 23 فصل موجود در این کتاب آمده است.
فصل 1، ویژگیهای اساسی:
این فصل از کتاب Extreme C، در مورد ویژگیهای اساسی موجود در C است که تأثیر زیادی بر نحوه استفاده از C. دارند. ما اغلب در طول کتاب از این ویژگیها استفاده خواهیم کرد. مباحث اصلی پیش پردازش و دستورالعملهایی برای تعریف ماکرو، متغیرها و اشارهگرهای عملکرد، مکانیسمهای فراخوانی عملکرد و ساختارها هستند.
فصل 2، تدوین و پیوند دادن:
به عنوان بخشی از این فصل، ما در مورد چگونگی ساخت یک پروژه C بحث میکنیم. خط لوله تلفیقی، هم از نظر خط لوله به طور کلی و هم از نظر اجزای جداگانه خط لوله، با جزئیات کامل بررسی میشود.
بیشتر بخوانید: خط لوله یا Pipeline چیست؟
فصل 3، پروندههای اشیاء:
این فصل از کتاب Extreme C، محصولات پروژه C را پس از ساختن آن با استفاده از خط لوله تلفیقی، بررسی میکند. ما پروندههای اشیاء و انواع مختلف آنها را معرفی میکنیم. ما همچنین نگاهی به داخل این پروندههای شی میاندازیم و می بینیم چه اطلاعاتی را میتوان استخراج کرد.
فصل 4، ساختار حافظه پردازش:
در این فصل، طرح حافظه پردازش را بررسی میکنیم. ما می بینیم که چه بخشهایی را میتوان در این طرح حافظه یافت و منظور از طرحبندی حافظه ایستا و پویا است.
فصل 5، پشته و پشته:
به عنوان بخشی از این فصل، ما به طور خاص بخشهای پشته و هیپ را مورد بحث قرار میدهیم. ما در مورد متغیرهای Stack و Heap و نحوه مدیریت طول عمر آنها در C. صحبت میکنیم. همچنین در مورد بهترین روشهای مربوط به متغیرهای Heap و نحوه مدیریت آنها بحث میکنیم.
فصل 6، OOP و Encapsulation:
این اولین فصل از یک گروه چهار فصله است که در مورد شیگرایی در C. بحث میکند. به عنوان بخشی از این فصل، ما تئوری نهفته در شیگرایی را مرور میکنیم و تعاریف مهمی را برای اصطلاحاتی که اغلب در ادبیات وجود دارد بیان میکنیم.
فصل هفتم، ترکیب و جمع:
این فصل از کتاب Extreme C، بر ترکیب و شکل خاصی از آن تمرکز دارد: جمع. ما در مورد تفاوت بین ترکیب و تجمع بحث میکنیم و برای نشان دادن این تفاوتها مثال میزنیم.
فصل 8، وراثت و چند شکلی:
وراثت یکی از مهمترین مباحث در برنامهنویسی شیگرا (OOP) است. در این فصل، ما نشان میدهیم که چگونه میتوان یک رابطه ارثی بین دو کلاس برقرار کرد و چگونه میتوان آن را در C. ایجاد کرد. چندشکلی موضوع مهم دیگری است که به عنوان بخشی از این فصل مورد بحث قرار میگیرد.
فصل 9، انتزاع و OOP در ++ C:
به عنوان آخرین فصل در قسمت سوم کتاب Extreme C، ما در مورد انتزاع صحبت میکنیم. ما در مورد انواع دادههای انتزاعی و چگونگی پیادهسازی آنها در C. بحث میکنیم. ما در مورد داخلی C ++ بحث میکنیم و نشان میدهیم که چگونه مفاهیم شیگرا در ++ C اجرا میشوند.
فصل 10، یونیکس – تاریخچه و معماری:
نمیتوانید در مورد C صحبت کنید و یونیکس را فراموش کنید. در این فصل، ما توضیح میدهیم که چرا آنها به شدت به یکدیگر متصل هستند، و چگونه یونیکس و C تاکنون به یکدیگر کمک کرده اند تا زنده بمانند. معماری یونیکس نیز مورد بررسی قرار گرفته است و ما میبینیم که چگونه یک برنامه از ویژگیهای در معرض سیستمعامل استفاده میکند.
فصل 11، فراخوانی سیستم و هسته:
در این فصل از کتاب Extreme C، ما بر روی حلقه هسته در معماری Unix تمرکز میکنیم. ما در مورد فراخوانی سیستم با جزئیات بیشتری بحث میکنیم و یک فراخوان سیستمی جدید را به Linux اضافه میکنیم. ما همچنین در مورد انواع مختلف هسته صحبت میکنیم، و ما یک ماژول هسته جدید ساده برای لینوکس مینویسیم تا نحوه کارکرد ماژولهای هسته را نشان دهیم.
فصل 12، جدیدترین C:
به عنوان بخشی از این فصل، نگاهی به جدیدترین نسخه استاندارد C یعنی، C18 میاندازیم. میبینیم که تفاوت آن با نسخه قبلی، C11 چیست. ما همچنین برخی از ویژگیهای تازه اضافه شده را در مقایسه با C99 نشان میدهیم.
فصل 13، همزمانی:
این فصل اول از قسمت پنجم کتاب Extreme C است و مربوط به همزمانی است. این فصل عمدتاً در مورد محیطهای همزمان و خصوصیات مختلف آنها مانند محل تلاقیها صحبت میکند. ما توضیح میدهیم که چرا این سیستمها تعیینکننده نیستند و چگونه این ویژگی میتواند منجر به مسائل همزمانی مانند شرایط مسابقه شود.
فصل 14، همگامسازی:
در این فصل از کتاب Extreme C، ما بحث خود را در مورد محیطهای همزمان ادامه میدهیم و انواع مختلفی را که میتوان انتظار داشت در یک سیستم همزمان مشاهده کنیم، بحث میکنیم. شرایط مسابقه، مسابقه دادهها و بنبستها از جمله مواردی است که ما در مورد آنها بحث میکنیم. ما همچنین در مورد تکنیکهایی صحبت میکنیم که میتوانیم برای غلبه بر این مسائل استفاده کنیم. متغیرهای نشانبرها (Semaphores)، موتکس و متغیرهای شرطی در این فصل مورد بحث قرار گرفتهاند.
فصل 15، اجرای موضوع:
به عنوان بخشی از این فصل، ما نشان میدهیم که چگونه تعدادی رشته میتواند اجرا شود و چگونه میتوان آنها را مدیریت کرد. ما همچنین در مورد مسائل همزمانی بحث شده در فصل قبل مثالهای واقعی C ارائه میدهیم.
فصل 16، همگامسازی موضوع:
در این فصل از کتاب Extreme C، ما به تکنیکهایی میپردازیم که میتوانیم برای همگامسازی تعدادی از رشتهها استفاده کنیم. متغیرهای نشانبر، موتکس و شرط از موضوعات قابل توجهی هستند که در این فصل مورد بحث و نمایش قرار گرفتهاند.
فصل 17، اجرای فرآیند:
این فصل از کتاب Extreme C، در مورد راههایی است که میتوانیم یک فرآیند جدید را ایجاد کنیم. ما همچنین در مورد تکنیکهای مبتنی بر فشار و کشش برای به اشتراک گذاشتن حالت بین تعدادی از فرآیندها بحث میکنیم. ما همچنین مباحث مربوط به همزمانی را که در فصل 14، همگامسازی با استفاده از مثالهای واقعی C بحث شده نشان میدهیم.
فصل 18، همگامسازی فرآیند:
این فصل از کتاب Extreme C، عمدتاً با مکانیزمهای موجود برای همگامسازی تعدادی از فرآیندهای مستقر در همان ماشین سروکار دارد. متغیرهای نشانبرهای مشترک فرآیند، موتکسهای پردازش شده و شرایط مشترک فرآیند از جمله تکنیکهای مورد بحث در این فصل است.
فصل 19، IPC و سوکتهای تک میزبان:
در این فصل، ما به طور عمده درباره تکنیکهای ارتباط میان پردازشی مبتنی بر فشار (IPC) بحث میکنیم. تمرکز ما روی تکنیکهای موجود برای فرآیندهای مستقر در همان ماشین است. ما همچنین برنامهنویسی سوکت و زمینه مورد نیاز را برای ایجاد کانال بین فرآیندهای مستقر در گرههای مختلف شبکه معرفی میکنیم.
فصل 20، برنامهنویسی سوکت:
به عنوان بخشی از این فصل، ما در مورد برنامهنویسی سوکت از طریق مثالهای کد بحث میکنیم. ما بحث خود را با آوردن مثالی پیش میبریم که از انواع مختلف پریزها پشتیبانی میکند. سوکتهای دامنه یونیکس، سوکتهای TCP و UDP که روی هر دو جریان یا کانال دیتاگرام کار میکنند مورد بحث قرار گرفتهاند.
فصل 21، ادغام با زبانهای دیگر:
در این فصل از کتاب Extreme C، ما نشان میدهیم كه چگونه میتوان كتابخانه C كه به عنوان پرونده شی اشتراكی ساخته شده است را در برنامههای نوشته شده باC ++ ،Java ، Python و Golang بارگیری و مورد استفاده قرار داد.
فصل 22، واحد تست و اشکالزدایی:
این فصل از کتاب Extreme C، به تست و اشکالزدایی اختصاص یافته است. برای نیمه تست، ما مراحل مختلف تست را توضیح میدهیم، اما ما بر آزمایش واحد در C. تمرکز داریم. ما همچنین CMocka و Google Test را به عنوان دو کتابخانه موجود برای نوشتن مجموعههای آزمایشی در C. معرفی میکنیم. برای قسمت اشکالزدایی، ما از ابزارهای مختلف موجود استفاده میکنیم که میتواند برای اشکالزدایی انواع مختلف اشکالات استفاده شود.
فصل 23، سیستمهای ساخت:
در فصل آخر کتاب Extreme C، ما در مورد سیستمهای ساخت و تولید مولدهای اسکریپت بحث میکنیم. Make ،Ninja و Bazel سیستمهای ساختاری هستند که به عنوان بخشی از این فصل توضیح میدهیم. CMake همچنین تنها مولد buildscript است که در این فصل به بحث میپردازیم.
همچنین شما میتوانید برای یادگیری زبان ++C از کتاب C++ Programming: An Object-Oriented Approach استفاده نمائید.
سرفصلهای کتاب Extreme C:
- Chapter 1: Essential Features
- Chapter 2: From Source to Binary
- Chapter 3: Object Files
- Chapter 4: Process Memory Structure
- Chapter 5: Stack and Heap
- Chapter 6: OOP and Encapsulation
- Chapter 7: Composition and Aggregation
- Chapter 8: Inheritance and Polymorphism
- Chapter 9: Abstraction and OOP in C++
- Chapter 10: Unix – History and Architecture
- Chapter 11: System Calls and Kernels
- Chapter 12: The Most Recent C
- Chapter 13: Concurrency
- Chapter 14: Synchronization
- Chapter 15: Thread Execution
- Chapter 16: Thread Synchronization
- Chapter 17: Process Execution
- Chapter 18: Process Synchronization
- Chapter 19: Single-Host IPC and Sockets
- Chapter 20: Socket Programming
- Chapter 21: Integration with Other Languages
- Chapter 22: Unit Testing and Debugging
- Chapter 23: Build Systems
- Index
فایل کتاب Extreme C را میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.