جدول المحتويات
الفصل الأول: النماذج الأولية والبيئات .. 1
النماذج الأولية في بايثون .. 1
النماذج الأولية باستخدام REPL. 2
النماذج الأولية بنص بايثون. 6
النماذج الأولية مع البرامج النصية و PDB .. 7
النمذجة مع Jupyter. 11
النمذجة في هذا الفصل .. 15
إعداد البيئة .. 18
إقامة مشروع جديد. 19
وضع نماذج أولية لسيناريوهاتنا .. 20
تثبيت التبعيات. 23
التصدير إلى ملف .py .. 27
بناء واجهة سطر الأوامر. 29
وحدة النظام و ARGV .. 30
جدل .. 32
انقر . 34
تجاوز الحدود .. 37
حبات بعيدة. 38
تطوير كود لا يمكن تشغيله محليًا .. 42
السيناريو المكتمل .. 46
ملخص .. 48
موارد إضافية .. 49
الفصل الثاني: الفحص ، الفحص ، الفحص .. 51
الاختبار .. 54
متى تكتب الاختبارات. 57
إنشاء وظائف تنسيق لتحسين إمكانية الاختبار. 59
بيتيست. 63
فحص النوع. 77
تركيب مايبي .. 78
مضيفا تلميحات الكتابة. 79
الأصناف الفرعية والميراث .. 82
أنواع عامة. 85
التصحيح والإفراط في الكتابة .. 87
متى تستخدم الكتابة ومتى تتجنبها .. 89
الاحتفاظ بتلميحات الكتابة منفصلة عن التعليمات البرمجية. 90
لينتينج. 92
تركيب فليك 8 و بلاك .. 94
إصلاح الكود الموجود. 94
يعمل تلقائيًا. 96
يعمل على طلبات السحب. 98
ملخص .. 99
موارد إضافية .. 100
الفصل 3: نصوص التغليف. 103
المصطلحات .. 104
هيكل الدليل .. 105
إعداد البرامج النصية والبيانات الوصفية .. 108
التبعيات. 109
التشكيلات التصريحية .. 110
أشياء يجب تجنبها في الإعداد. py .. 111
باستخدام setup.cfg .. 117
خوادم الفهرس المخصصة. 119
إنشاء pypiserver .. 121
متانة . 123
سرية . 123
النزاهة . 124
تنسيقات العجلات وتنفيذ الكود عند التثبيت. 125
تثبيت البرنامج النصي لوحدة التحكم باستخدام نقاط الدخول. 129
README، DEVELOP، التغييرات 130
تنسيق Markdown .. 131
إعادة تنسيق النص .. 133
اقرأني. 135
CHANGES.md والإصدار .. 136
دبابيس إصدار التبعية المنبع .. 138
دبابيس فضفاضة. 139
دبابيس صارمة .. 140
مخطط التثبيت الذي يجب استخدامه. 141
تحميل نسخة .. 141
تكوين خيوط .. 143
ملخص .. 144
موارد إضافية .. 144
الفصل 4: من النص إلى الإطار. 147
كتابة مكون إضافي لجهاز الاستشعار. 148
تطوير البرنامج المساعد .. 149
إضافة خيار أمر جديد .. 152
الأوامر الفرعية. 153
خيارات القيادة. 156
معالجة الخطأ .. 157
تحليل غير تحميل للنقر مع أنواع الوسيطات. 162
أنواع وسيطات النقر المخصصة .. 163
المعلبات .. 166
السماح بوحدات استشعار الطرف الثالث .. 167
الكشف عن البرنامج المساعد بأسماء ثابتة .. 169
الكشف عن البرنامج المساعد باستخدام نقاط الدخول .. 170
ملفات التكوين . 174
متغيرات البيئة . 178
منهج مستشعرات apd.sensors مقابل البرامج المماثلة .. 179
ملخص .. 180
موارد إضافية .. 181
الفصل الخامس: واجهات بديلة .. 183
خدمات الويب المصغرة .. 183
WSGI .. 184
تصميم API .. 190
قارورة .. 192
ديكورات بايثون. 196
اختبار وظيفة الرؤية .. 210
تعيين . 213
تمديد البرمجيات كطرف ثالث .. 214
الاتفاق على توقيع خاص مع الأقران. 221
فئات أساسية مجردة. 223
استراتيجيات احتياطية .. 227
جمع كل ذلك معا. 233
إصلاح مشكلة التسلسل في كودنا. 235
الترتيب 239
الإصدار APIs. 240
قابلية الاختبار .. 242
ملخص .. 244
موارد إضافية .. 245
الفصل السادس: عملية التجميع. 247
247
إنشاء قالب جديد. 249
إنشاء حزمة التجميع .. 252
أنواع قواعد البيانات .. 254
مثالنا .. 257
مصممو الخرائط العلائقية للكائنات. 258
إصدار قاعدة البيانات .. 263
تحميل البيانات .. 270
تقنيات جديدة. 279
قواعد البيانات .. 279
سلوك السمة المخصصة. 279
مولدات كهرباء . 280
ملخص .. 280
موارد إضافية .. 280
الفصل السابع: الموازاة وعدم التزامن 283
غير محجوب IO .. 284
جعل الكود الخاص بنا غير محظور. 289
تعدد العمليات والمعالجات المتعددة. 291
خيوط منخفضة المستوى 292
بايت كود .. 296

أقفال ومآزق. 300
تجنب الدولة العالمية. 306
أساسيات المزامنة الأخرى. 312
ProcessPoolExecutors. 321
جعل كودنا متعدد الخيوط .. 321
أسينسيو. 322
غير متزامن def. 323
انتظر .. 324
المتزامن ل .. 327
غير متزامن مع. 331
بدائل قفل غير متزامن. 332
العمل مع المكتبات المتزامنة .. 334
جعل كودنا غير متزامن .. 335
مقارنة . 339
الاختيار 341
ملخص .. 343
موارد إضافية .. 343
الفصل 8: عدم التزامن المتقدم. 345
اختبار الكود غير المتزامن. 345
اختبار الكود .. 347
كائنات سخيفة لتسهيل اختبار الوحدة. 356
قواعد البيانات غير المتزامنة .. 368
أسلوب SQLAlchemy الكلاسيكي. 369
باستخدام run_in_executor .. 373
الاستعلام عن البيانات .. 376
تجنب الاستفسارات المعقدة. 378
البدائل. 391
المتغيرات العامة في كود غير متزامن. 392
ملخص .. 395
موارد إضافية .. 395
الفصل 9: عرض البيانات. 397
وظائف الاستعلام. 397
تصفية البيانات. 404
مكررات متعددة المستويات .. 408
مرشحات إضافية .. 415
اختبار وظائف الاستعلام لدينا. 417
عرض مجسات متعددة .. 421
معالجة البيانات .. 425
التفاعل مع أدوات Jupyter. 430
مضاعفة التعليمات البرمجية المتداخلة المتزامنة وغير المتزامنة .. 431
الترتيب .. 437
نقاط النهاية المستمرة. 439
رسم الخرائط والبيانات الجغرافية. 440
أنواع قطع الأرض الجديدة. 442
دعم مخططات نوع الخريطة في apd.aggregation. 445
رسم خريطة مخصصة باستخدام التكوينات الجديدة. 448
ملخص .. 451
موارد إضافية .. 452
الفصل العاشر: تسريع الأمور. 453
تحسين وظيفة .. 453
التنميط والخيوط. 455
تفسير تقرير الملف الشخصي .. 459
المحللون الآخرون. 462
تحسين تدفق التحكم. 468
تصور بيانات التنميط. 473
التخزين المؤقت .. 477
ملخص .. 489
موارد إضافية .. 489
الفصل 11: تحمل الخطأ .. 491
معالجة الأخطاء . 491
إحضار الأشياء من حاوية .. 492
استثناءات مخصصة .. 498
عمليات التتبع التي تتضمن استثناءات متعددة. 502
اختبار لمعالجة الاستثناءات .. 507
تحذيرات. 514
مرشحات التحذير. 518
تسجيل . 520
الحطابين المتداخلة .. 522
الإجراءات المخصصة .. 523
تكوين التسجيل .. 530
معالجات أخرى. 532
تصميم حول المشاكل .. 533
جدولة عمليات البحث عن أجهزة الاستشعار. 533
ملخص .. 539
موارد إضافية .. 540
الفصل 12: عمليات الاسترجاعات وتحليل البيانات. 541
تدفق بيانات المولد .. 541
المولدات التي تستهلك إنتاجها الخاص. 543
مولدات محسنة .. 548
طوابير .. 556
اختيار تدفق التحكم. 559
هيكل لأفعالنا. 560
كوروتين تحليل. 561
استيعاب البيانات .. 567
تشغيل عملية التحليل .. 571
حالة العملية .. 574
عمليات الاسترجاعات. 578
تمديد الإجراءات المتاحة .. 581
ملخص .. 584
موارد إضافية .. 584
الخاتمة . 585
فهرس . 589

رابط التحميل