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

۵۸ مطلب با موضوع «اموزش :: CPP» ثبت شده است

معرفی inja

inja یک تمپلیت انجین برای سی پلاس پلاس مدرن است.

از قابلیت‌های این ابزار میتوان به موارد زیر اشاره کرد:

  • متغیر‌ها
  • حلقه‌های تکرار
  • شروط
  • include
  • توابع
  • توابع سفارشی
  • کامنت

در ادامه برای هرکدام مثال آماده شده inja را می‌آوریم

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

استفاده از ابزار مدلینگ UML در QtCreator

UML چیست ؟

آموزش UML از سایت تحلیل داده

برای آشنایی با UML میتوانید به لینک های بالا مراجعه کنید.

می توانید از ویرایشگر مدل برای ایجاد مدل های سبک جهانی مدل سازی (UML) با نمودارهای ساختاری و رفتاری استفاده کنید که دیدگاه های مختلفی از سیستم شما ارائه می دهد. با این حال ، ویرایشگر از نوع UML استفاده می کند و فقط زیر مجموعه ای از خواص برای مشخص کردن ظاهر عناصر مدل ارائه شده است.

QtCreator برای مدلسازی UML ابزاری توسعه داده که می‌توانید در لینک زیر با آن آشنا شوید.

لینک Modeling در QtCreator

 

با آرزوی موفقیت روز افزون در مسیر درست

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

آموزش تنظیم تم برای برنامه Qt Widgets

برای اعمال تم روی برنامه‌های Qt Widget کافیست یک فایل qss تم را برنامه بخوانید و به عنوان استایلشیت برنامه تنظیم کنید
برای مثال:
 


برای نوشتن فایل استایل ( یا همان تم ) میتوانید از مستندات موجود در لینک‌های زیر استفاده کنید :
1. https://doc.qt.io/Qt-5/stylesheet-syntax.html
2. https://doc.qt.io/qt-5/stylesheet-reference.html

و در صورتی که میخواهید از فایل‌های آماده استفاده کنید کافیست در نت جستجو کنید تا به مثال های آماده برسید برای مثال در لینک زیر چندین تم موجود است که میتوانید استفاده کنید :
https://github.com/GTRONICK/QSS

در پناه حق

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

بحثی در مورد یک لاگر گرافیکی خوب در کیوت با رعایت اصول معماری

باسلام

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

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

ماکرو برای تعریف یک استرینگ با مقدار اولیه نام کلاس در خود کلاس

یک قطعه کد کوچک برای تعریف یک متغیر از نوع std::string توی کلاس که با اسم کلاس مقدار دهی اولیه شده :

 

 

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

سی پلاس پلاس بعد از کنسول

با سلام

پیرو سوالی که امشب یه خانم محترم از بنده پرسیدند لازم دونستم یک سری توضیحات رو در قالب یک پست منتشر کنم.

سوال ایشون این بود که :

سلام
میخاستم منو در مورد ساخت یک برنامه کامل با سی پلاس راهنمایی کنید
برای مثال
یک نرم افزار مدیریت کتاب برای کتابخانه
چطوری چنین نرم افزاری با سی پلاس بسازیم تا دیگران درکامپیوترشون نصبش کنن و استفاده کنن
و مثل بقیه ظاهر زیبایی هم داشته باشه
من سی پلاس بلدم ولی فقط درکنسول کارکردم
ممنون میشم راهنمایی کنید
سپاس

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

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

معرفی منابع آموزشی boost.asio

با سلام خدمت دوستان عزیز

در این پست تصمیم دارم چندین منبع آموزشی برای boost.asio را برای شما معرفی کنم :

منابع رسمی boost.asio برای فراگیری

  1. Overview
  2. Using Boost.Asio
  3. Tutorial
  4. C++11 Examples
  5. Networking TS compatibility

سه کتاب موجود برای یادگیری boost.asio

  1. Boost.Asio C++ Network Programming
  2. Boost.Asio C++ Network Programming - Second Edition
  3. Boost.Asio C++ Network Programming Cookbook

دوره ویدئویی آشنایی با boost

دوستان دقت داشته باشید یاد گرفتن boost دیگه تقریبا برای همه واجبه چون کم کم داره قسمت‌های مختلفش با تغییرات کمی به اصل سی پلاس پلاس اضافه میشه و بهتره قبل از این که تمامش به سی پلاس پلاس اضافه بشه شما اون رو یاد گرفته باشید تا بعد از اضافه شدنش مشکلی با کار کردن باهاش نداشته باشید مثلا filesystem توی استاندارد 2017 به سی پلاس پلاس اضافه شد و همینطور any و optional و خیلی چیزای دیگه تا جایی که میدونم توی استاندارد 2020 قراره بخش شبکه (Network) هم اضافه بشه .

موفق و پیروز باشید.

۰۲ آذر ۹۷ ، ۱۱:۵۸ ۱ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

انواع معماری اتصالات سیگنال و اسلات در کیوت بین c++ و qml

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

 

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

دانلود نسخه افلاین سی پلاس پلاس ویژوال استدیو (2 و خورده ای گیگ)

با سلام

همانطور که اطلاع دارید نسخه 2017 ویژوال استدیو با توجه به ابزار های بی‌کاربرد و کم کاربردی مانند ابزار های برنامه نویسی زبان‌های شارپ دار مانند F# و B# و c# و ... حجم بسیار بالایی دارد که دانلود و نصب آن را به شدت سخت کرده .

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

 

برای دانلود فایل و اطلاعات بیشتر میتوانید به لینک زیر از سایت رسمی خود ویژوال استدیو مراجعه کنید :

Create an offline installation of Visual Studio 2017

موفق باشید.

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

هزار و یک نکته در سی پلاس پلاس نکته چهارم ( چرا نباید از Singleton استفاده کنیم ؟)

در سری پست‌های الگوی طراحی الگوی Singleton را به شما معرفی کردم ولی در این پست قصد دارم دلایلی برای استفاده نکردن از این الگوی طراحی را توضیح دهم .

  1. آنها معمولا به عنوان شی گلوبال در نظر گرفته می‌شوند. بدی انها این است که وابستگی‌های کد را بجای افشا کردن در اینترفیس در کد مخفی می‌کنند. گلوبال کردن یک شی برای ارسال نکردن آن به اطراف یک بوی بد کد است .
  2. آن‌ها اصل مسئولیت واحد را زیر پا می‌گذارند. چون علاوه بر کار اصلی خود ساخت خود و مدیریت چرخه حیاط خود را نیز در دست دارند.
  3. آنها به شدت Coupling را بالا می‌برند و این باعث سختی تست آنها می‌شود.
  4. آنها طول عمر نرم‌افزار را در اختیار دارند و این برای یونیت تست که باید یک وضعیت به طور کامل خاتمه پیدا کند یک مشکل اساسی است چون باید هر واحد تست کاملا جدا از واحد‌های دیگر باشد. به همین دلیل برای یونیت تست به هیچ وجه نباید از سینگلتون استفاده کرد.

نظر شما در این مورد چیست ؟

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