<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های دانیال حاتمی</title><link>https://virgool.ir/feed/@danialhatami</link><description></description><language>fa</language><pubDate>2026-11-12 04:42:03</pubDate><image><url>https://files.virgool.ir/upload/users/13701/avatar/tT43eV.png</url><title>دانیال حاتمی</title><link>https://virgool.ir/@danialhatami</link></image><item><title>راه‌هایی برای حل مشکلات رایج در برنامه‌نویسی!</title><link>https://virgool.ir/@danialhatami/common-problems-common-solutions-qqtkmrnlyjl1</link><description>الگوها یا Pattern در دنیای نرم‌افزار، به راه‌‌های گفته میشه که برای حل مشکلات و دغدغه‌های مشخص و رایج هستن!به طور مثال زمانی که می‌خواید یه وب اپلیکیشن بسازید به طوریکه ۲ نفر به طور موازی و سریع روی پروژه کار کنن و یک نفر ظاهرش رو آماده کنه و نفر دیگه قسمت منطق و کنترلر‌ها رو پیاده سازی کنه بهتره که از الگوی MVC استفاده کنیدتعداد الگو‌ها کم نیست و بهترین راه یادگیری این الگوها، اینه که کاملا متوجه بشید که چه مشکل و دغدغه‌ای رو حل می‌کنن و به مرور زمان متوجه میشید که در کدوم قسمت برنامه‌تون بهتره از این الگوها استفاده کنید!شما برای درک عمیق این قسمت، فقط نیاز به تمرین دارید. مفاهیم رو خوب بخونید، درک کنید و مثال‌هایی با توجه به تکنولوژی که کار می‌کنید، بررسی کنید.۲ نکته کنکوریالگو‌هایی مثل MVC و یا MVVM ذاتا از نوع معماری هستن، دلیلی که شما از این الگو‌ها استفاده می‌کنید اینه که پروژتون رو سازمان‌دهی و منظم میکنه و سرعت توسعه رو افزایش میده.یک سری از الگوها برای رفع نقص‌ها و کمبودها در زبان برنامه‌نویسی هستن. البته شما برای زبان‌های برنامه‌نویسی که راحت نوشته و خونده میشن نیازی به این الگوها ندارید اما همیشه ممکنه انتخاب‌های زیادی داشته باشید. اکثر الگوهای GoF در این دسته قرار میگیرن.وصله پینه!این نکنه یادتون بمونه که زمانی از الگو‌ ها و پترن ‌ها در نرم‌افزارتون و اپلیکیشن‌تون استفاده کنید که می‌خواید مشکل مناسب رو حل کنید. هیچ‌وقت برنامه‌ای ننویسید که حاصل وصله پینه کردن الگو‌هاست!برای همه مشکلات برنامه‌نویسی، الگو و راه‌حل مشخصی وجود نداره، چون در این صورت برنامه نویسی صرفا تمرین وصله زدن الگوها میشد!ضد الگو یا Anti Pattern!الگوها برای حل مشکلات رایج ایجاد شدند و ضد الگوها برای حل نکردن مسائل، چون باعث نتایج نادرست و افتضاحی میشن!یکی از راه‌های ایجاد ضدالگو استفاده نادرست از الگو‌هاست، که ممکنه باعث ایجاد بار اضافه یا پیچدگی در کدهای برنامه بشه ( به طوری که مزایای استفاده از الگوی مورد نظر اصلا به چشم نیان ) چطور؟ مثلا اگر برنامه نویس یک کلاس (Class) بنویسه که کارهای زیادی رو داخل این کلاس انجام بده، منجر به یک ضد الگو به اسم God Object میشه. این ضد الگو باعث میشه که مثلا با تغییر یک قسمت از کد برنامه، نیاز به تغییر قسمت های دیگه‌ی برنامه هم باشه! در نهایت این رو مد نظر داشته باشید که شما باید تصمیم بگیرید که چه زمانی و در کدوم قسمت برنامه از چه الگویی استفاده کنید.</description><category>دانیال حاتمی</category><author>دانیال حاتمی</author><pubDate>Sun, 19 Apr 2020 23:42:07 +0430</pubDate></item><item><title>چطور در یک هفته تبدیل به برنامه‌نویس حرفه‌ای شویم؟؟</title><link>https://virgool.ir/@danialhatami/become-a-pro-programmer-in-1-week-cywyocupetpq</link><description>به نظرتون یادگیری برنامه نویسی سخته؟خب! خیلی‌ها به این سوال جواب مثبت میدن و واقعیت تلخ اینه که خیلی‌ها در این مسیر تسلیم میشن! اما موردی که این افراد در نظر نمی‌گیرن اینه که یه شبه نمی‌شه برنامه‌نویس شد و برای اینکار باید وقت گذاشت و تمرین کرد. اگر شما هم فکر می‌کنید که بعد از یک هفته یادگیری می‌تونید برای IBM یک برنامه بنویسید، تعجبی نداره که فکر کنید برنامه‌نویسی سخته.اگر دنبال یه قرص جادویی برای تبدیل شدن به یک برنامه‌نویس حرفه‌ای هستید، متاسفانه باید بگم که هیچوقت پیداش نمی‌کنید!چرا یادگیری برنامه‌نویسی سخته؟!خیلی از مردم از شوق &#34;یادگیری برنامه‌نویسی&#34; هیجان زده می‌شن. اون‌ها انتظار دارن که بعد از دیدن یک آموزش، نهایتا دو تا، به یک سوپراستار در دنیای برنامه‌نویسی تبدیل بشن! دنبال آموزش‌های آنلاین میگردن، بعد از اینکه آموزش‌ها رو کامل دیدن، متوجه می‌شن که هیچ پیشرفتی نکردن و نه تنها برنامه‌نویس نشدن! حتی نمی‌دونن برای داشتن یک وبسایت یا اپلیکیشن از کجا باید شروع کنن! اینجا همون نقطه‌ایه که می‌ترسن! گریه می‌کنن! افسرده میشن! و میگن ...- &#34;برای من خیلی سخته&#34;- &#34;من خیلی باهوش نیستم &#34;- &#34;من برای برنامه نویسی ساخته نشدم&#34;- &#34;من باید خودم رو بکشم و از دست این زندگی کوفتی راحت بشم&#34;اما واقعا این جملات درست نبوده و برنامه نویس شدن سخت نیست، فقط کافیه زمان بیشتری بذارید و بیشتر تمرین کنید. برای تبدیل شدن به یک برنامه‌ نویس خوب، باید یاد بگیرید که چطور محصول تولید کنید نه اینکه چطور کد بنویسید! برای تبدیل شدن به توسعه‌دهنده وب، باید یاد بگیرید که چطور یک وبسایت بسازید نه اینکه فقط یاد بگیرید که تگ‌های HTML چی هستن! برای تبدیل شدن به توسعه دهنده موبایل، باید یاد بگیرید که چطور اپلیکیشنی که دوست دارید رو بسازید و یادگرفتن ساخت یک آبجکت در جاوا یا Objective-C کافی نیست!الگوی جادویی!اکثر آموزش‌های برنامه نویسی این موارد رو پوشش نمی‌دن و تعجبی هم نداره که خیلی از مردم ناامید و تسلیم میشن. به نظرم یکی از دلایلی که می‌تونه برنامه‌نویسی رو سخت جلوه بده، اینه که محصول یا نتیجه‌ای نمی‌بینید! اینکه طبق مراحل یک ویدیو آموزشی پیش برید هیچ وقت شما رو تبدیل به برنامه‌نویس نمی‌کنه و برای پیشرفت باید شروع کنید به ساختن.پروژه خودت رو شروع کنکلید اصلی در ارتقا سطح برنامه‌نویسی اینه که فراتر از آموزش‌ها پیش‌ برید و پروژه خودتون رو شروع کنید. این پروژه می‌تونه یک وب‌سایت، اپلیکیشن یا هرچیزی که دوست دارید باشه، نیازی نیست که یک پروژه خیلی  بزرگ باشه، می‌تونید با یک پروژه ساده شروع کنید و مهارت‌هایی که در برنامه‌نویسی یادگرفتید رو به چالش بکشید.یادتون باشه که کد نوشتن مرحله آخره! هدف شما نباید صرفا یادگیری کدنویسی باشه، بلکه باید ساختن یک محصول باشه! این مورد به شما کمک می‌کنه که تجربه‌ای که برای حرفه‌ای شدن نیاز دارید رو به‌ دست بیارید و محصول شما یک نتیجه‌ست که می‌تونید بهش افتخار کنید.محصول اول رو که تموم کردید محصول دوم رو شروع کنید و همینطور ادامه بدید و هر چه بیشتر جلو می‌رید متوجه میشید که برنامه‌نویس خیلی ساده‌تر از چیزی هست که فکرش می‌کردید.“Learning to write programs stretches your mind, and helps you think better, creates a way of thinking about things that I think is helpful in all domains.”‍‍—Bill Gates</description><category>دانیال حاتمی</category><author>دانیال حاتمی</author><pubDate>Fri, 17 Apr 2020 15:51:57 +0430</pubDate></item></channel></rss>