<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های مسعود افسر</title><link>https://virgool.ir/feed/@masud.afsar</link><description>توسعه‌دهنده‌ی وب و بازی موبایل</description><language>fa</language><pubDate>2026-11-11 10:46:54</pubDate><image><url>https://files.virgool.ir/upload/users/13194/avatar/CKyKhx.jpeg</url><title>مسعود افسر</title><link>https://virgool.ir/@masud.afsar</link></image><item><title>برای تصمیم‌گیری بهتر، کلاهت رو بزار سَرت و فکر کن!</title><link>https://virgool.ir/@masud.afsar/برای-تصمیمگیری-بهتر-کلاهت-رو-بزار-سَرت-و-فکر-کن-ohn8zz5h1y5b</link><description>طراحی شده با استفاده از سایت flaticon.comمعمولاً مهم‌ترین دلیلِ تشکیل جلسات در تیم‌ها، حل مشکلات و تصمیم‌گیری گروهی است. کار تیمی و به طبع تصمیم‌گیری گروهی این امکان رو به ما میده تا بتونیم تمام جنبه‌های کار را بررسی کنیم و به بهترین جواب برسیم. به همین دلیل باید روش تفکر هدفمند را یاد بگیریم تا بتونیم به بهترین شکل ممکن در جلسات تیمی تاثیر گذار باشیم به شکلی که تصمیم نهایی تیم بهترین تصمیم ممکن باشه.من در طول دوران فعالیتم در تیم‌های مختلف و به خصوص تیم بازی‌سازی اردیبهشت استودیو با حضور در جلسات مختلف و بررسی مشکلات تیم متوجه این موضوع شدم که در جلسات، من همیشه جنبه‌ی منفی مسئله رو مطرح میکنم و این باعث میشه بقیه اعضای تیم همیشه فکر کنند که من با موضوع مطرح شده مخالفم!همین موضوع باعث شد که به فکر بیوفتم که دلیل این اتفاق چیه و چه چیزی باعث میشه من این طور به مسائل نگاه کنم. با کمی پرس و جو به کتابی رسیدم به اسم Six Thinking Hats نوشته آقای ادوارد دِ بونو. در این کتاب به این موضوع پرداخته میشه که برای این‌که بتوان در جلسه‌ای همه ابعاد یک مسئله رو بررسی کرد باید اعضای تیم بتوانند طرز تفکر متفاوت و هدفمندی داشته باشند. این کتاب آدم‌ها رو به شش دسته تقسیم میکنه و به هرکدوم وظایف و نقش خاصی میده تا به بقیه کمک کنند که مسئله رو از دید نقشی که دارند هم ببینند. این نقش‌ها در قالب آدم‌هایی مطرح میشه که کلاه‌های رنگی به سر دارند و هر رنگ نماینده یک طرز تفکر است.کلاه سفید: داده‌ها و حقایق کلاه سفید: داده‌ها و حقایقکلاه سفید به ما کمک می‌کنه تا واقع‌گرایانه‌ترین و خنثی‌ترین شکل ممکن به مسائل نگاه کنیم. با این طرز تفکر ما باید روی داده‌های موجود تمرکز کنیم و به اطلاعاتی که داریم نگاه کرده و از آنها یاد بگیریم.دیدگاه:ارایه واقعیت‌ها و داده‌هاخنثی و واقع‌گرایانهفرآیند‌گراسوالاتی که باید جواب بده:چه چیزی می‌دونیم؟چه چیزی را باید بدونیم؟چگونه و از کجا می‌تونیم این اطلاعات رو بدست بیاریم؟کلاه قرمز: احساسات کلاه قرمز: احساساتکلاه قرمز به ما کمک می‌کنه تا بتونیم احساسات، شواهد و هیجانات خودمون رو از مسئله به راحتی بروز دهیم و از پذیرفتن این احساسات و هیجانات یا قضاوت شدن ترسی نداشته باشیم.دیدگاه:بررسی شواهد تجربیبیان احساسات و همدلی با بقیهصمیمی و غیر رسمیسوالاتی که باید جواب بده:در مورد این موضوع چه چیزی را دوست دارم / ندارم؟دیگران چه احساسی خواهند داشت؟چه احساسی دارم؟کلاه سیاه: احتیاطکلاه سیاه: احتیاطنقش کلاه سیاه نگاه از جنبه منفی به مسائل است. او به این فکر می‌کنه که ممکن است چه چیزهایی به درستی پیش نروند و تفکری را در بقیه افراد فعال می‌کنه که احتیاط بیشتری داشته باشند و عواقب تصمیم رو بسنجند.دیدگاه:احتیاط و قضاوتبه چالش کشیدن وقایع و داده‌های موجودتمرکز روی این‌که چرا کار نخواهد کردسوالاتی که باید جواب بده:اگر بدترین اتفاق بیوفته چی میشه؟نقاط ضعف و لغزش کجاست؟چطور این‌قدر مطمئن هستید؟کلاه زرد: تفکر مثبتکلاه زرد: تفکر مثبتکلاه زرد برعکس کلاه سیاه سعی می‌کنه جنبه‌های مثبت ماجرا رو مطرح کنه و به بقیه کمک می‌کنه که بفهمند چرا باید این تصمیم رو بگیریم و چه منافعی برای تیم داره.دیدگاه:سازنده و خوش‌بینریسک و اکتشافتمرکز روی آنچه کار خواهد کردسوالاتی که باید جواب بده:نقاط قوت و فرصت‌ها چیست؟چه مزایایی دارد؟چگونه این کار را انجام خواهیم داد؟کلاه سبز: تفکر خلاقکلاه سبز: تفکر خلاقکلاه سبز با دید خلاقانه‌اش به ما کمک می‌کنه تا تفکری واگرایانه و جانبی به موضوع داشته باشیم.وظایف:خلاق و خیال‌پردازپذیرای تغییر و ایده نوتمرکز بر رشد و یادگیریسوالاتی که باید جواب بده:اگر این را امتحان کنیم چی میشه؟چه کار دیگه‌ای می‌تونستیم انجام بدیم؟چرا همیشه این کار رو می‌کردیم؟کلاه آبی: کنترلکلاه آبی: کنترلو در آخر، کلاه آبی کسی است که کلاه‌های دیگر را کنترل می‌کنه. اون زمان رو نگه می‌داره و موضوعات رو مرتب می‌کنه و روند تفکر رو می‌سازه و در آخر از صحبت‌ها نتیجه‌گیری می‌کنه.دیدگاه:دید کلیحفظ تمرکز گروه و مسیر جلسهدرباره روند تفکر، فکر می‌کنهسوالاتی که باید جواب بده:الان کجا هستیم؟چه چیزهایی یاد گرفته‌ایم؟به چه چیز دیگری نیاز داریم؟بعدش چی؟!نتیجه‌گیری:انتخاب کلاه به دیدگاه افراد تیم نسبت به موضوع مطرح شده در جلسه ممکنِ تغییر کنه. یا ممکنِ یه نفر کلاه‌های مختلفی داشته باشه. در کل این روش برای این ابداع شده که بازدهی در جلسات تیمی بالاتر بره و محدودیت‌ها رو از بین ببره. از طرفی هم باید این نکته رو به یاد داشته باشیم که مهم‌ترین وظیفه هر کلاه تحریک نوع دیدگاه خود در بقیه کلاه‌ها است و همه به یک اندازه مهم و تاثیر گذارند.منابع: (+, +, +)</description><category>مسعود افسر</category><author>مسعود افسر</author><pubDate>Sun, 10 Nov 2019 16:26:16 +0330</pubDate></item><item><title>آماده‌سازی یونیتی برای استفاده از گیت</title><link>https://virgool.ir/unity3d/آماده-سازی-یونیتی-برای-استفاده-از-گیت-fhrqilyznubi</link><description>آماده‌سازی پروژه یونیتی برای گیتمعمولا استودیو‌های بازی‌سازی در تیم خود چندین توسعه‌دهنده دارند و برای ایجاد هماهنگی بیشتر بین آنها نیاز به ابزارهای مختلفی دارند. یکی از مهمترین آنها ابزاری برای مدیریت تغییرات در کد و فایل‌های پروژه است. به این ابزار Version Control System یا به اختصار VCS گفته میشه. ما در اردیبهشت‌استودیو از گیت که محبوب‌ترین ابزارِ VCS هست، استفاده می‌کنیم که به صورت منبع باز و برای سیستم عامل‌های مختلف در اختیار عموم قرار گرفته است.در این پست قصد ندارم به آموزش گیت بپردازم و فعلا به آموزش نحوه پیکربندی اون در پروژه‌های یونیتی بسنده می‌کنم. فرض من بر اینه که پروژه‌ای از قبل وجود داره و باید برای گیت آماده بشه.پیکربندی یونیتیدر ابتدا باید نحوه ذخیره‌سازی فایل‌ها در یونیتی رو مشخص کنیم تا در آینده بتونیم تغییراتی که در فایل‌ها ایجاد شد رو به اصطلاح track کنیم. برای این کار پروژه خود رو باز کنید و به منوی زیر بروید:Edit  &gt;  Project Settings  &gt;  Editorحال تنظیمات زیر رو اعمال کنید:پیکربندی یونیتیبا تنظیمات بالا فایل‌هایی نظیر unity، asset و prefab که توسط خود یونیتی ساخته می‌شوند به صورت yaml ذخیره می‌شوند که خوانایی نسبی به فایل‌ها میده و در آینده می‌توان تغییرات ایجاد شده در فایل رو مشاهده کرد.ساخت فایل gitignoreوقتی پروژه‌ای رو در موتور یونیتی باز می‌کنیم، برنامه به طور خودکار کد‌ها رو کامپایل و فایل‌ها Resource کد میکنه تا بتونه خیلی سریع و زنده تغییرات بازی رو نمایش بده. این فایل‌ها هم حجم خیلی زیادی دارند و هم نیازی به ذخیره (commit) کردن نداره. برای همین موضوع باید از فایل‌هایی که خودکار توسط موتور یا سیستم عامل ساخته میشن چشم پوشی کرد.برای این منظور در پوشه اصلی پروژه یه فایل به نام زیر ایجاد کنید:.gitignoreبه کاراکتر نقطه قبل از اسم حتما توجه کنید. حال محتویات زیر رو در فایل کپی کنید: https://gist.github.com/masudafsar/bbf28daf8f13e03b38641fed4e109486 حالا کافیه terminal یا git bash خودتون رو باز کنید و در مسیر پروژه دستور git init رو بزنید و وارد دنیای گیت بشید.آماده‌سازی گیتقدم آخردر آخر پروژه شما آماده است که با خیال راحت در کنار گیت توسعه یابد ?. البته این مبحث همین جا تموم نمیشه و امیدوارم در آینده نزدیک بتونم مباحث پیشرفته‌تری درباره مدیریت پروژه‌های بازی‌سازی بنویسم.</description><category>مسعود افسر</category><author>مسعود افسر</author><pubDate>Wed, 19 Sep 2018 20:17:24 +0430</pubDate></item></channel></rss>