نام کتاب
Why Learn C

Go Behind the Curtain of Modern Systems with C23

Paul J. Lucas

Paperback432 Pages
PublisherApress
Edition1
LanguageEnglish
Year2025
ISBN9798868815966
1K
A6475
انتخاب نوع چاپ:
جلد سخت
696,000ت
0
جلد نرم
636,000ت
0
طلق پاپکو و فنر
646,000ت
0
مجموع:
0تومان
کیفیت متن:اورجینال انتشارات
قطع:B5
رنگ صفحات:سیاه و سفید
پشتیبانی در روزهای تعطیل!
ارسال به سراسر کشور

#C

#C23

توضیحات

⚙️ C رو دست‌کم نگیر! زبان کلاسیکی که هنوز استخون‌بندی دنیای نرم‌افزاره.


سیستم‌عامل‌ها، پایگاه‌داده‌ها، کتاب‌خانه‌ها، سیستم‌های توکار، و حتی قلب بسیاری از زبان‌های مدرن، هنوز با C زنده‌ان 🧠

کتاب Mastering C23 Programming (اسم رسمی‌اش در نسخه‌ی چاپی دقیقاً همینه) نه فقط آموزش زبان C23ه، بلکه پایه‌ای قوی برای درک عمیق مفاهیم برنامه‌نویسی در هر زبانی برات می‌سازه.


📚 چی یاد می‌گیری؟

  • نوشتن برنامه با ویژگی‌های جدید استاندارد C23
  • بخش‌های پیشرفته یا کم‌توضیحی از C که جاهای دیگه اصلاً سراغش نمی‌رن
  • درک پیاده‌سازی از صفر برای چیزهایی مثل رشته‌ها، لیست‌ها، نقشه‌ها، دیس‌پچ پویا و مدیریت استثناء تا بفهمی پشت‌صحنه زبان‌های دیگه واقعاً چی می‌گذره

کتاب با یه تور کلی از C شروع می‌شه؛

بعد به‌صورت سیستماتیک کل ویژگی‌های C23 رو پوشش می‌ده، از رفتارهای Undefined گرفته تا assertions، متغیرهای atomic، برنامه‌نویسی بدون قفل (lock‑free)، دیباگ پیشرفته، و مریخی‌ترین چیزها مثل ماکروهای هوشمند با ‎_Generic‎ 😎

آخرش هم مثال‌هایی واقعاً جذاب میاره که نشون می‌دن چطور مفاهیم مدرن زبون‌هایی مثل ++C، Java یا Go رو می‌شه توی خود C پیاده کرد.


💬 توی متن کلی یادداشت‌های درون‌خطی داره — توضیحات تاریخی، Best Practiceها، چرایی تصمیمات طراحی، و جزئیاتی که معمولاً در زبان‌های جدید محو شدن. هر مثال با اضافه شدن قابلیت‌های جدید به‌تدریج رشد می‌کنه، تا کل مسیر توسعه‌ی زبان برات ملموس بشه.


💡 درباره‌ی فناوری

C هنوز ستون فقرات نرم‌افزارهای سیستمیه — از Kernel OS گرفته تا Compilerها و Embedded Firmware.

استاندارد جدید C23 امکاناتی برای هم‌روندی امن‌تر، تایپ پیشرفته، assertهای بهبود‌یافته، و کنترل بهتر حافظه معرفی کرده که هم عملکرد رو بالا می‌بره، هم کدنویسی مدرن‌تر رو ممکن می‌کنه.


👨‍💻 مخاطب‌ها

برای برنامه‌نویس‌های حرفه‌ای، مدرّسان علوم‌کامپیوتر، دانشجوها یا علاقه‌مندان جدی که مفاهیم پایه‌ای مثل متغیر، تابع، حلقه، آرایه و کلاس رو بلدن و با یادداشت Big O آشنا هستن.


📑 فهرست فصل‌ها

بخش I – یادگیری C

  1. مروری بر زبان C
  2. کامنت‌ها، نام‌گذاری و انواع داده
  3. عملگرها
  4. اعلان‌ها (Declarations)
  5. دستورات کنترلی
  6. آرایه‌ها و اشاره‌گرها
  7. شمارش‌ها (Enumerations)
  8. پیش‌پردازنده (Preprocessor)
  9. توابع
  10. ساختارها (Structures)
  11. اجتماع‌ها (Unions)
  12. ورودی، خروجی و فایل‌ها
  13. سازمان‌دهی برنامه (Program Organization)
  14. چندریسمانی (Multithreading)

بخش II – موضوعات منتخب

  1. رفتار تعریف‌نشده (Undefined Behavior)
  2. Assertions
  3. ‎_Atomic و برنامه‌نویسی بدون قفل
  4. دیباگ پیشرفته
  5. ‎_Generic و متا‌برنامه‌نویسی در سطح پیش‌پردازنده
  6. ‎setjmp و ‎longjmp
  7. ‎restrict و بهینه‌سازی حافظه
  8. ‎volatile و کنترل حافظه اشتراکی

بخش III – مثال‌های توسعه‌یافته

  1. رشته‌ها (Strings)
  2. لیست‌ها (Lists)
  3. نقشه‌ها (Maps)
  4. دیس‌پچ پویا (Dynamic Dispatch)
  5. مدیریت استثناء در C


👨‍🔬 درباره‌ی نویسنده

پاول جی. لوکاس (Paul J. Lucas)

برنامه‌نویسی رو از دوران دبیرستان با Commodore PET شروع کرد. اولین کامپیوتر شخصی‌اش یه Apple II Plus بود که باش با BASIC، Pascal، Fortran، و اسمبلی 6502 کد می‌زد. بعد از ورود به دانشگاه خودش C رو یاد گرفت و از اون موقع تا حالا (با استراحت‌هایی کوتاه 😅) هنوز عاشق C و ++C مونده.

کارش رو در AT&T Bell Labs شروع کرد — در حوزه تلفنی، تصویرسازی لاگ فایل‌ها و تست اولین کامپایلر ++C به‌نام cfront. نویسنده‌ی کتاب معروف The C++ Programmer’s Handbookه و سابقه کار توی NASA Ames Research Center، چندین استارت‌آپ و در نهایت Splunk رو داره.

دارنده چندین پتنت در زمینه‌ی کتابخانه‌های تصویرسازی داده، تحلیل بصری لاگ‌ها، سیستم‌های نوع‌زبان، جست‌وجوی زمان‌بندی‌شده و کش‌محور، و نویسنده پروژه‌های متن‌بازی مثل CHSM (کامپایلر و سیستم اجرای اتوماتاهای متناهی) که در شرکت‌های مخابراتی و حتی مؤسسه‌ی CERN استفاده می‌شه. نگه‌دارنده‌ی ابزار معروف cdecl هم هست — همون مفسر که اعلان‌های پیچیده‌ی ‎C و ++C‎ رو به انگلیسی ساده ترجمه می‌کنه 😄



Don’t count C out. The classic programming language remains the backbone of many modern software systems including operating systems, relational databases, libraries, embedded systems, and even the core components of other programming languages.


This book teaches C23 while also building a foundation that strengthens your programming skills regardless of what language you normally program in. Starting with a tour of C, it highlights C’s core concepts using example programs to give you the flavor of C. Next, it covers the entire C23 language including topics not often covered elsewhere such as undefined behavior, assertions, atomic variables, lock-free programming, debugging, advanced use of the preprocessor using _Generic, and more. Finally, it gives extended examples of how features common in modern programming languages might be implemented—including lists, maps, dynamic dispatch, and exceptions.


This book includes many in-line notes containing commentary, explanations for why something is the way it is, historical context, best practices, and details often glossed over in modern languages. Additionally, it gives examples that evolve with the introduction of new language features.


What You Will Learn:

  • Write programs in C using the new features introduced in C23.
  • Explore advanced or obscure parts of C not explained well elsewhere, if at all.
  • See how strings, lists, maps, dynamic dispatch, and exceptions might be implemented from scratch to understand what’s really going on in whatever language you program in.


Who This Book is for:

Professional programmers, computer science instructors, students or experienced hobbyists who understand programming language concepts (variables, statements, loops, functions, arrays, classes, objects, etc.) and have basic familiarity with algorithm characterization given in “big O” notation.


Table of Contents

Part I Learning C

Chapter 1 A Tour of C

Chapter 2 Comments, Names, and Types

Chapter 3 Operators

Chapter 4 Declarations

Chapter 5 Statements

Chapter 6 Arrays and Pointers

Chapter 7 Enumerations

Chapter 8 Preprocessor

Chapter 9 Functions

Chapter 10 Structures

Chapter 11 Unions

Chapter 12 Input, Output, and Files

Chapter 13 Program Organization

Chapter 14 Multithreading

Part II Selected Topics

Chapter 15 Undefined Behavior

Chapter 16 Assertions

Chapter 17 _Atomic

Chapter 18 Debugging

Chapter 19_Generic

Chapter 20 setjmp and longjmp

Chapter 21 restrict

Chapter 22 volatile

Part Ill Extended Examples

Chapter 23 Strings

Chapter 24 Lists

Chapter 25 Maps

Chapter 26 Dynamic Dispatch

Chapter 27 Exceptions in C


About the Author

Paul J. Lucas started programming on Commodore PETs at his high school. Courtesy of his parents, the first computer he owned was an Apple ][plus that he programmed in BASIC, Pascal, Fortran, and 6502 Assembly. At some point, he upgraded to a Macintosh. During his undergraduate studies, he taught himself C. He’s been programming in C (on and off) ever since. He’s also programmed in Bash, Go, Java, Perl, and Python. Of all those, C and C++ are still his favorites.

He started his career at AT&T Bell Labs in telephony, log file visualization, testing cfront (the original C++ compiler), and wrote The C++ Programmer’s Handbook. He’s also worked at NASA Ames Research Center, various start-ups, and lastly at Splunk. He holds patents on data visualization class libraries, visual log file analysis, programming language type systems, skewing of scheduled search queries, and cache-aware searching. He developed open-source projects including CHSM, a finite state automata compiler and run-time system, used by both telecommunications companies and CERN for managing complex reactive systems; and maintains cdecl, the C and C++ gibberish-to-English translator.

دیدگاه خود را بنویسید
نظرات کاربران (0 دیدگاه)
نظری وجود ندارد.
کتاب های مشابه
C
155
Professional CUDA C Programming
901,000 تومان
C
589
Modern C for Absolute Beginners
571,000 تومان
C
1,070
Professional CMake
1,184,000 تومان
C
742
Pointers on C
990,000 تومان
C
1,129
Mastering Algorithms with C
939,000 تومان
C
751
Beginning C
1,267,000 تومان
C
1,024
C in a Nutshell
1,226,000 تومان
C
1,069
String Algorithms in C
489,000 تومان
C
943
Advanced C and C++ Compiling
584,000 تومان
++C
1,538
LLVM Techniques, Tips, and Best Practices Clang and Middle-End Librari...
570,000 تومان
قیمت
منصفانه
ارسال به
سراسر کشور
تضمین
کیفیت
پشتیبانی در
روزهای تعطیل
خرید امن
و آسان
آرشیو بزرگ
کتاب‌های تخصصی
هـر روز با بهتــرین و جــدیــدتـرین
کتاب های روز دنیا با ما همراه باشید
آدرس
پشتیبانی
مدیریت
ساعات پاسخگویی
درباره اسکای بوک
دسترسی های سریع
  • راهنمای خرید
  • راهنمای ارسال
  • سوالات متداول
  • قوانین و مقررات
  • وبلاگ
  • درباره ما
چاپ دیجیتال اسکای بوک. 2024-2022 ©