سؤال

الوثائق المتاحة على تعزيز موقع هو...محدودة.

من ما كنت قادرا على قراءة التوافق العام في الآراء هو أنه ببساطة من الصعب العثور على وثائق جيدة على دفعة::اسيو المكتبة.

هذا هو الحال فعلا ؟ إذا كان الأمر كذلك, لماذا ؟

ملاحظات:

  • لقد وجدت بالفعل (غير زيادة) اسيو الموقع - وثائق تبدو متطابقة إلى أن على تعزيز الموقع.
  • وأنا أعلم أن دفعة::اسيو هو جديد!أنا أبحث عن حلول لا أعذار.

تحرير:

  • هناك اقتراح إضافة الشبكات المكتبة القياسية مكتبة TR2 كتبها المؤلف من دفعة:اسيو (كريستوفر Kohlhoff).في حين أنها ليست وثائق دفعة:اسيو ، فإنه استخدامه كأساس TR2 الاقتراح.منذ المؤلف بذل المزيد من الجهد في هذه الوثيقة ، لقد وجدت لها أن تكون مفيدة إلى حد ما ، إن لم يكن كمرجع ، ثم على الأقل لمحة عامة.
هل كانت مفيدة؟

المحلول

أولاً، أنا أستخدم Boost.Asio منذ فترة طويلة بالفعل - وأنا أشاركك قلقك.لمعالجة سؤالك:

  • هناك بالفعل وثائق نادرة جدًا حول Boost.Asio بصرف النظر عن المقدمة والبرنامج التعليمي.أنا لست المؤلف، ولكن هذا يرجع في الغالب إلى وجود الكثير من الأشياء التي يجب توثيقها لشيء منخفض المستوى مثل مكتبة الإدخال والإخراج غير المتزامنة.
  • الأمثلة تعطي معلومات أكثر مما تفعله البرامج التعليمية.إذا كنت لا تمانع في قضاء بعض الوقت في النظر إلى الأمثلة المختلفة، أعتقد أنها كافية للبدء.إذا كنت تريد الهرب به، فيجب أن تساعدك الوثائق المرجعية كثيرًا.
  • اسأل في القائمة البريدية لـ Boost Users و Boost Developers إذا كنت عالقًا بالفعل أو تبحث عن إرشادات محددة.أنا متأكد تمامًا من أن الكثير من الأشخاص سيكونون على استعداد لمعالجة مخاوفك في القوائم البريدية.

هناك جهود (ليست جزءًا من Boost.Asio) للكشف عن الكثير من الوظائف وحالات الاستخدام البديلة المحتملة.وهذا في أحسن الأحوال منتشر عبر الويب في المدونات وغيرها من أشكال الوثائق غير المجمعة.

الشيء الوحيد غير الواضح والذي سيحتاج حقًا إلى تنسيق وثيق مع مؤلف ومطوري مكتبة Boost.Asio هو توسيعها وتخصيصها لمنصة معينة أو إضافة وظائف جديدة محددة.يجب تحسين هذا ولكن الشيء الجيد هو أنه يبدو أن Asio سيكون تطبيقًا مرجعيًا لتقرير فني قياسي للمكتبة (لمكتبة إدخال/إخراج غير متزامنة في STL) في المستقبل.

نصائح أخرى

يمكن العثور على بعض الوثائق الرائعة حول التعزيز بما في ذلك فصل عن asio في كتاب التعزيز (المجاني) على http://en.highscore.de/cpp/boost/index.html.يقدم الفصل الخاص بـ asio نظرة عامة ثم يذهب أبعد من ذلك إلى كيفية تطوير ملحقات asio المخصصة الخاصة بك.جهد رائع حقًا من بوريس شيلينج!

لقد كتبت مقالتين صغيرتين يمكن استخدامهما كمقدمات لـ Boost.asio.وهي متوفرة من موقعي

ملحوظة:لقد اتصلت بـ gamedev.net لإعلامهم بمشكلات التنسيق.لسوء الحظ، في وقت كتابة هذا التعليق، كان من الصعب التوصية بهذا المورد بسبب بعض التغييرات في موقعه على الويب والتي تخفي/تحذف عبارات #include + مورد ملف مضغوط مفقود.

يمكن العثور هنا على برنامج تعليمي جديد وجيد جدًا للمبتدئين لـ Boost.Asio (الذي يقدم أيضًا كيفية استخدامه بشكل فعال مع bind وshared_ptr وthreads):

http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting-started-with-boostasio?pg=1

ملحوظة:إذا كنت تستخدم ميزات c++0x، فيمكن استبدال العديد من الاستخدامات البسيطة لـ bind لإنشاء عامل بـ lambdas، وتتوفر Shared_ptr/bind أيضًا في أحدث إصدار من الاستوديو المرئي (أو gcc الذي يتضمن أيضًا سلاسل رسائل.)

عندما كنت أبحث عن وثائق أو برنامج تعليمي، ظل هذا السؤال يظهر في أعلى نتائج البحث، لذلك من المهم تحديثه باستمرار مع ظهور برامج تعليمية جديدة.

لقد كنت فضوليًا جدًا بشأن ذلك أيضًا، لكن هذه الصفحة أعطتني بعض البداية.إنه باللغة الفرنسية، ولكن يمكنك استخدام ترجمة جوجل التي يمكن قراءتها بسهولة (كان علي أن أتبع هذا المسار بنفسي).

http://gwenael-dunand.developpez.com/tutoriels/cpp/boost/asio/

وثائق asio، المتوفرة في التعزيز، بسيطة ولكنها دقيقة للغاية، كل كلمة مهمة.ومع ذلك، لقد تعلمت asio (وما زلت أتعلم) بشكل أساسي من SO.

في رأيي، إجابة ل 'يتم الخلط عند حظر/إلغاء حظر طريقة التشغيل Boost::asio::io_service"هي الخطوة الأولى، اقرأ القراءة مرة أخرى حتى تفهمها حقًا، الجواب الثاني مفيد أيضًا.

ثم لقد اشتركت في RSS أحدث سؤال حول علامة SO Boost-ASIO وإلى هذين المجيبين:

تانر سانزبري, ، صاحب الإجابة أعلاه، إجاباته دائمًا دقيقة جدًا، وشاملة، ومزودة بمراجع، حتى مخطط جميلس. تغذية ار اس اس
صحيح (آسف سيهي، الثاني فقط). تغذية ار اس اس

مع كل هذه المواد، ستصبح قريبًا خبيرًا في آسيا!

لقد تأخرت الحفلة قليلاً ولكن هناك كتابًا بعنوان "Boost Asio Network Programming" (نشر Packt).

لقد اشتريت نسخة من هذا، وقرأته خلال عطلة نهاية الأسبوع ثم كتبت كاملاً على الخادم بلغة C++ دون مشكلة كبيرة.

تنصل:ليس لدي أي علاقة مع الكتاب

لقد عثرت على ملف pdf التالي:http://boost.cowic.de/rc/pdf/asio_doc.pdf

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top