تولید کننده آموزش و محصولات مبتنی بر برنامه نویسی مدرن

۳۸ مطلب با کلمه‌ی کلیدی «cpp» ثبت شده است

الگوی طراحی Template در c plus plus

الگوی طراحی قالب (C++‎ Template Design Pattern)

 

ویژگی های Template Design

  • الگوی طراحی Template  یک الگوی رفتاریست .
  • هیچ ارتباطی به Template های سی پلاس پلاس ندارد
  • الگوی Template یک الگوی رایج در برنامه نویسی شی گراست داشتن یک کلاس ابسترکت (که یک یا چند تابع مجازی خالص دارند ) یک مثال ساده از الگوی طراحی تمپلیت است .
  • در الگوی طراحی Template بخش هایی از برنامه که به خوبی تعریف شده اند مثل یک الگوریتم در کلاس پایه به عنوان یک تابع غیر مجازی تعریف می‌شوند و بقیه قسمت ها در کلاس بیس مجازی تعریف می‌شود و پیاده سازی آن‌ها در کلاس های نشات گرفته انجام می‌شود.
  • به تابعی که الگوریتم در ان پیاده سازی شده تابع Template  گفته می‌شود و به کلاس پایه که این تابع را در بر دارد Template  گفته می‌شود .

کد زیر کاربرد الگوی طراحی Template را نشان می‌دهد :

ادامه مطلب...
۱۰ دی ۹۶ ، ۱۹:۲۷ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

الگوی طراحی Observer در c plus plus

الگوی طراحی Observer در c++‎ چیست ؟

  • الگوی Observer یک الگوی رفتاریست .
  • الگوی Observer برای بروز رسانی و همگام سازی چندین شی با یک تغییر است مانند مفهوم Model-View-Controller (MVC)
  • مفید برای پیاده سازی سناریوهای رویداد محور و مدیریت رویداد
  • دو کلاس درگیر هستند .
  • Observable کلاس که تغییر واقعی در آن ایجاد می‌شود و از کلاسهایی که باید از تغییرات مطلع شوند خبر دارد .
  • Observer یک کلاس ابسترکت است که اینترفیس مورد نیاز برای کلاس هایی که باید از تغییرات مطلع شوند را فراهم می‌کند .

کد موجود در لینک منبع :

ادامه مطلب...
۰۹ دی ۹۶ ، ۲۱:۳۰ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

الگوی طراحی Factory Pattern در c plus plus

الگوی طراحی Factory Pattern در c++‎

  • الگوی طراحی Factory Pattern یک الگوی خلاقانه است .
  • ایده و هدف Factory Pattern محلی سازی ساخت شی است .
  • این از مزاحمت سیستم ورودی برای معرفی نوع جدید جلوگیری می‌کند.
  • معمولا وقتی نوع جدیدی معرفی می‌شود فقط یک مکان از کد تغییر می‌کند جایی که شی ساخته شده تا تصمیم بگیرید کدام کانستراکتور را فراخوانی کند
  • ساده ترین راه تعریف یک تابع استاتیک در کلاسه پایه است که شی مورد نیاز را بر اساس نوع ایجاد می‌کند .
  • نوع دیگر Abstract Factory است .
  • کلاس های واقعی جدا شده هستند .
  • کلاینت حتی نمی‌داند کدام کلاس نیازش را برطرف می‌کند .

کد مثال نوع استاتیک :

ادامه مطلب...
۰۹ دی ۹۶ ، ۲۰:۰۰ ۲ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

الگوی طراحی Singleton در c++

الگوی طراحی Singleton در c++‎

  • Singleton یک الگوی طراحی خلاقانه است .
  • الگوی طراحی برای ارائه یک نمونه تنها از یک شی.
  • ساخت سازنده کلاس به صورت خصوصی
  • ساخت شی را خصوصی نگه دارید .
  • دسترسی عمومی به صورت پابلیک توسط یک تابع ایجاد کنید
  • توانایی گسترش برای ایجاد یک استخر (pool) از اشیا

پروژه نمونه :

ادامه مطلب...
۰۹ دی ۹۶ ، ۱۴:۲۵ ۲ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

هزار و یک نکته در سی پلاس پلاس نکته دوم (اعضای استاتیک و ارث بری )

همانطور که اطلاع دارید در برنامه سی پلاس پلاس از هر عضو استاتیک فقط یک نمونه موجود است و به ازای ساختن اشیای بیشتر از کلاس عضو استاتیک تکثیر نمی‌شود اما اگر از یک کلاس که داری عضو استاتیک است به ارث ببریم چه اتفاقی می افتد ؟

خب اجازه بدهید یا یک تکه کد این مورد را بررسی کنیم

ادامه مطلب...
۰۹ دی ۹۶ ، ۰۲:۱۷ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

هزار و یک نکته در سی پلاس پلاس نکته اول (وکتور و اسمارت پوینتر ها )

خب دوستان تصمیم دارم در سی پست های هزار و یک نکته در سی پلاس پلاس براتون نکات جالبی که بر میخورم توی مطالعات یا کارهایی که انجام میدم بر اساس تجربه شخصیم رو منتشر کنم .

 

همونطور که میدونید وقتی یک وکتور درست میکنیم برامون یک آرایه درست میکنه و وقتی عنصری بهش اضافه میکنیم اگر از ظرفیتش بزنیم بالا یعنی ارایه ای که درست کرده پر شده باشه و بخوایم عضو جدید اضافه کنیم میاد یک ارایه با اندازه یکی بزرگ تر از ارایه قبلی درست میکنه و تمام عناصر قبلی رو کپی میکنه توی ارایه جدید و بعد عنصری که میخوایم اضافه کنیم رو هم اضافه میکنه و این برای اضافه یا حذف کردن هر عضو انجام میشه مگر این که یه تعداد مشخص رو براش رزرو کنیم مثلا 100 تا ولی باز از 100 که بزنیم بالا جریان همونه خب حالا این حذف و کپی که انجام میشه برامون خیلی هزینه داره از طرفی اگر کانستراکتور داشته باشیم برای کلاسی که ازش وکتور ساخنیم این برامون خیلی هزینش بیشتر میشه من داشتم یه چیزی رو تست میکردم برام جالب بود و اونم اینه که مثلا بجای این که بیام یک وکتور از کلاس Test درست کنم بجاش اومدم یک وکتور از یونیک پی تی ار استفاده کردم دیگه دیستراکتو ها و کانستراکتور ها فراخوانی نشد و برای ریختن اشاره گرهام توی وکتور هم از move استفاده کردم اینجا یه کد کوچیک میذارم که خودتون هم تست کنید :

 

ادامه مطلب...
۰۷ دی ۹۶ ، ۰۱:۲۳ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

آشنایی با دیتاویژوالیزیشن یا مجسم سازی داده ها در برنامه نویسی

با سلام خدمت دوستان و همراهان همیشگی 

خب من این اواخر پروژه هایی بهم خورد که روی بحث دیتا ویژوالیزیشن یا همون مجسم سازی داده ها تمرکز داشتند منم تجربیاتی بدست اوردم که دوست دارم با شما در میون بگذارم .

کتابخانه های بسیاز زیادی برای این کار وجود داره اگر بخوایم خیلی سطح پایین کار کنیم که معمولا محدودیت زمانی پروژه اجازه همچین کاری رو نمیده چون در صورتی که بخواید این کار رو بکنید باید با اوپن جی ال یک کتابخانه برای این کار توسعه بدید و با اون کار کنید که تا وقتی دلیل محکمی برای استفاده نکردن از کتابخانه های دیگه نداشته باشیم کار مسخره ایه . 

ادامه مطلب...
۲۶ آبان ۹۶ ، ۱۵:۵۹ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

خرابی لینک های آموزش کیوت Qml

با سلام خدمت دوستان و همراهان همیشگی 

با توجه ه گزارش های اخیر دوستان در مورد خرابی لینک های اپارات تصمیم گرفتم تا به اینجای آموزش رو با کیفیت 1080 توی یک فایل فشرده اپلود کنم برای دوستانی که میخواند دانلودش کنند .

تا به اینجای کار 16 قسمت از آموزش منتشر شده و مورد استقال هم قرار گرفته و امیدوارم فرصت کنم تا بقیه قسمت ها رو هم به زودی منتشر کنم این هم :

لینک دانلود 16 قسمت ابتدایی دوره کیوت Qml

با تشکر از همراهیتون 

بهنام صباغی

۲۱ شهریور ۹۶ ، ۰۹:۲۳ ۳ نظر موافقین ۱ مخالفین ۰
بهنام صباغی

آموزش استفاده از gif در qml

با سلام

دوستان خیلی سوال میشد چطور طراحی های خلاقانه و liquid توی qml باید طراحی بشه .

خب دوتا راه وجود داره یکیش این هست که با کد توی canvas طراحیشون کنید . که خب سختی های خودش رو داره چون باید تسلط به نوع رفتار مایعات داشته باشید .

راه دوم که فکر میکنم ساده‌تر هست اینه که اون طراحی رو که مد نظرتون هست رو توی ابزارهایی که برای طراحی ساخته شدند مثل افترافکت بسازید و ازش یه خروجی gif بگیرید و توی برنامتون میتونید روی پخش شدن فریم‌های gif کنترل داشته باشید و تا هرکجای انیمیشن رو که میخواید اجرا کنید . من یه gif از سایت uplabs.com پیدا کردم و با اون یه مثال خیلی ساده نوشتم که وقتی شما روی صفحه کلیک کنید یک قسمت از انیمیشن اجرا میشه ولی وقتی اجراش کنید میبینید یه مقداری اولش که میزنید طول میکشه تا اجرا بشه . که خب این برای این هست که طراحی که انجام شده اولش چندین فریم ثابت داره که البته میشه با ست کردن currentFrame اون رو هم از بین برد که البته من این کار رو نکردم و گذاشتم خودتون تمیرین کنید .

کد مثال استفاده از gif در qml

 

۰۶ مرداد ۹۶ ، ۱۳:۰۶ ۵ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

انتشار قسمت پانزدهم آموزش Qml به زبان فارسی

با سلام خدمت دوستان و همراهان همیشگی

این قسمت درباره آموزش انواع انیمیشن در qml تهیه شده و در آن به بررسی چندین مثال از مثال‌های تهیه شده که در ریپازتوری گیتهاب به آدرس :

کد مثال انیمیشن با qml در گیتهاب

و در پایان

لینک آپارات ویدئو

فعلا به دلیل مشغله یه مدت وقفه میوفته بین آموزش ها ولی به محض این که فرصت پیدا کنم هم این دوره رو ادامه میدم هم بقیه دوره‌ها رو شروع میکنم laugh

۰۹ تیر ۹۶ ، ۲۱:۴۸ ۱۸ نظر موافقین ۲ مخالفین ۰
بهنام صباغی