ModernCpp.ir
270 subscribers
685 photos
41 videos
13 files
910 links
site : moderncpp.ir
Mail : info@moderncpp.ir
Admin: @FONQRI
C++ tutorials and ...
Download Telegram
#سوال و #جواب
سوال : میشه یه مختصری بگید منظور از cmake زدن چیه🤦‍♂️

جواب :

ببین پروژه های سی پلاس پلاس برای بیلد باید به کامپایلر داده بشند با کلی فلگ و اسم فایل و اطلاعات در مورد لینک و ... خب دستی که نمیتونیم بدیم اینها رو به کامپایلر اذیت میشیم در همین راستا یه فایل هایی هست که اینها رو توش مینویسند و اون میده به کامپایلر به اینها میگند بیلد سیستم مثلا make بیلد سیستم هست و از روی فایل MakeFile میخونه

حالا کار با اینها هم سخته چون دستورات سطح پایین توشون هست برای همین یه لایه روش اضافه کردند به اسم build system generator اینها خیلی سطح بالا هستند و معمولا اسکریپتی توشون مینویسی همه چیز رو سطح بالا بعد اینها میتونند به بیلد سیستم های مختلف ترجمه کنند مثلا qmake یکیشون هست که توی کیوت به صورت پیشفرض استفاده میشه و از فایل های .pro و .pri استفاده میکنه و از اون بهتر cmake هست که تمامی اطلاعات لازم رو توی CMakeLists.txt مینویسیم و این میاد خودش برای ما بیلد سیستم رو تولید میکنه مثلا توی لینوکس میخوایم کامپایل کنیم به بیلد سیستم پیشفرض یعنی make راحت تبدیل میشه و وقتیم بخوایم از ویژوال استدیو استفاده کنیم میزنیم با cmake-gui یا همون رابط کامند لاینیش یعنی cmake برایمون sln درست میکنه که با بیلد سیستم ویژوال یعنی namke کار میکنه اینطوری یکبار پروژت رو با cmake مینویسی و از این به بعد هم میتونی مستقیم توی کیوت بازش کنی هم میتونی راحت بزنی مختص ویژوال sln درست کنه هم همه ide های دیگه از جمله کدبلاکس و clion و .... پشتیبانیش میکنند و میتونی کدت رو توی هرکدوم بخوای ادیت و کامپایل کنی

Channel Link : https://t.me/moderncpp_ir

#cmake #qt #qmake #nmake #visual #studio #sln #build #system
#سوال و #جواب

سوال : راهی هست بشه چند تا کلایت رو به ی سوکت توی سرور وصل کرد و هر کلاینی که ی دیتایی رو میفرسته به اون سوکت سرور به همه کلایت های متصل بهش اون رو بفرسته ؟

جواب :

دقیق متوجه نشدم چی میخوای توضیحات میدم اگر کارت راه افتاد که چه بهتر اگر نه دقیق توضیح بده
- سوکت udp به این صورت عمل میکنه که دیتا روی یه پورت پابلیش میشه و هرکس میتونه از اون بخونه به اصطلاح بهش میگند برودکست اگر این کارتو راه میندازه که از این استفاده کن فقط این روش ترتیب ارسال پکت ها و رسیدنشون رو تضمین نمیکنه یعنی ممکنه یه سری پکت ها نرسند یا با ترتیبی که فرستادی نرسند
- روش دیگه که میخوای چندین نفر به یه سوکت توی سرور وصل بشند میشه همون مثلا سوکت tcp که روی یک پورت و ایپی لیسن میکنه هر کلاینتی هم میاد یه سوکت جدید درست میکنه متصلش میکنه تو میتونی خودت سمت سرور هندل کنی که همه این ارتباط ها رو نگه داره و دیتایی که میخوای رو به همشون بفرستی ولی برای ای کار پرتکول های سطح بالا هم زده شدند مثلا ZMQ نسخه پابلیشر سابسکرایبر هست برای همین کار
یعنی یه پابلیشر داری که منتشر کننده دیتا هست و روی یک ایپی و پورت با پرتکول tcp پابلیش میکنه دیتا رو و بقیه میتونند دنبال کننده یا همون سابسکرایبر باشند اینطوری پرتکول tcp هست دستا حتما میرسه و ترتیبش هم درسته و همه کسایی که سابسکرایب کردند دیتا رو میگیرند برای همه زبانی هم کلاینت داره


Channel Link : https://t.me/moderncpp_ir
#zmq #udp #tcp #publisher #subscriber #socket
#سوال و #جواب

سوال :
تازه شروع کردم به یادگیری و نمیدونم از کجا شروع کنم که بتونم کار بکنم و شرکت ها چی میخواند ؟

جواب :
شرکت ها توانایی میخواند ولی از اون مهم تر براشون اثبات توانایی هست خب این به چند روش امکان پذیره
- یکی این که سابقه کار توی شرکت داشته باشی که خب تا سابقه نداشته باشی معمولا استخدامت نمیکنند برای همین به عده میرند کارآموزی و یه مدت مجانی کار میکنند که شاید شرکته نگهشون داره و یک سال سابقه کار براشون درست بشه البته یه عده هم میرند کارآموزی که کار یاد بگیرند و توی محیط واقعی کار کنند
- یه راهش اینه که نمونه کار داشته باشی مثلا پروژه های انجام شده که البته سخته بدون مشتری پروژه ای بزنی که واقعا نیاز جامعه باشه ولی میتونی توی پروژه هایی که میزنی توانایی هات رو به نمایش بذاری مثلا اگر vtk بلدی یه پروژه هرچند ساده باهاش بزنی یا ...
- راه بعدی مشارکت توی پروژه های اوپن سورس هست یعنی یه پروژه بزرگ پیدا کنی بری مشکلاتی که دارند رو حل کنی پیدا کردن مشکل رو میتونی از روی ایشو هایی که توی گیتهاب میزنند پیدا کنی اما کار کردن روی این پروژه ها به شدت سخته ولی خب قرار هم نیست آسون باشه باید یاد بگیریم با بقیه توی یک پروژه همکاری کنید و روی کد بقیه کار کنید و کد بقیه رو بفهمید ولی یه همکاری خوب توی یک پروژه اوپن سورس هم میتونه حسابی چیز یادتون بده هم میتونه به عنوان یک نمونه کار خوب ارائه بشه

Post Link : http://moderncpp.ir/post/144
Channel Link : https://t.me/moderncpp_ir
#start #work #resume #opensource
دوستان چند تا سوال دارم میخوام از امروز تا نیمه شعبان هر روز یه سوال ازتون بپرسم در انتها در نیمه شعبان براتون خبر‌های خوب دارم 😃

لینک کانال تلگرام: https://t.me/moderncpp_ir
#نیمه_شعبان #آموزش #سوال #پروژه
آموزش به صورت کتاب بهتره یا ویدئو ؟

لینک کانال تلگرام: https://t.me/moderncpp_ir
#نیمه_شعبان #آموزش #سوال #کتاب #ویدئو
آموزش پروژه محور بهتره یا موضوعی ؟

لینک کانال تلگرام: https://t.me/moderncpp_ir
#نیمه_شعبان #آموزش #سوال #پروژه_محور #موضوعی
و اما خبر
چند وقتی هست شغول کاری هستم ولی گفتم خبرش رو الان بهتون بدم که در جریان باشید و در صورت نیاز بتونم ازتون در مورد کم و کاستش نظر بپرسم
کتاب QML Book رو نگاه کردم یه قسمت‌هاییش واقعا خوبه و یه قسمت‌هاییش کم وکاست داره و تصصمیم گرفتم نسخه فارسیش رو شروع کنم و یک فصلش رو ترجمه کردم و یه مقداری هم کم و کاستی‌هاشو پوشش دادم تا الان شده حدود 48 صفحه و انشاءالله به مرور تکمیلش میکنم تا موضوعاتی که لازم دارم رو پوشش بده ولی در اصل این کتاب برای شما نیست برای خودمه که موضوعات ویدئوهایی که میسازم رو سامان بده و بتونم از روش بهتون آموزش بدم بنابراین
هم کتاب و هم ویدئو رو توی این پکیج خواهیم داشت 😂 در واقع نظرسنجی برای این بود که در جریان قرار بگیرید
و در کنارش دیدم آموزش رو چطور بدم بهتره ؟ تصمیم گرفتم هر دو حالت رو تلفیق کنم یعنی هم آموزش مبانی داشته باشم و هم پروژه محورش کنم یعنی مثلا یک قسمت آموزش یک موضوع باشه و قسمت بعد استفاده از اون موضوع توی پروژه و آشنا شدن با ریز و درشت اون پروژه توی کار پس
هم موضوعی هم پروژه محور هست این آموزش 😃
و در انتها دنبال این بودم که آموزش رو بر پایه یک پروژه واقعی بنا کنم برای همین شروع کردم به توسعه یک پروژه و امروز روز هفتمش هست و تا جاهای خوبیش پیش رفته و اگر دیتابیس رو تکمیل کنم تقریبا مکانیزمش کامل هست ولی تصمیم دارم این پروژه رو توی کافه بازار منتشر کنم تا یه نمونه واقعی باشه از پروژه‌ی این آموزش و به همین خاطر ممکنه یه مقدار تکمیل شدنش طول بکشه ولی الان یه عکس ازش براتون به اشتراک میذارم در واقع از صفحات مختلف بازی که تا الان در دست توسعه قرار گرفته امیدوارم خوشتون بیاد پس
هم پروژه و هم آموزش


لینک کانال تلگرام: https://t.me/moderncpp_ir
#نیمه_شعبان #آموزش #سوال #پروژه_محور #موضوعی
انشاءالله مواردی که توی این پکیج هست به صورت زیر هستند
کتاب آموزشی
ویدئو‌های آموزشی
سورس پروژه‌ای که توی ویدئو‌ها توسعه داده میشه
و صد البته پشتیبانی و پاسخ بنده به سوالات شما دوستان

لینک کانال تلگرام: https://t.me/moderncpp_ir
#نیمه_شعبان #آموزش #سوال #پروژه_محور #موضوعی