Programmer City «شهر برنامه‌نویس»
1.15K subscribers
4.2K photos
954 videos
159 files
1.96K links
دنیای برنامه‌نویسی و مهندسی کامپیوتر🌈

📱ارتباط با ما: پیج اینستاگراممون🎈
IG: ProgrammerCity

لینک ناشناسمون:
https://t.me/BitnetChat_bot?start=sec-ehdiahcie
Download Telegram
🎯 چالش ProgrammerCity

آخرین باری که یک پروژه یا Task رو تموم کردی، آیا بعدش برگشتی و بررسی کردی که:

«چطور میتونستم بهتر انجامش بدم؟»

1️⃣ همیشه
2️⃣ گاهی
3️⃣ خیلی کم
4️⃣ اصلاً تا حالا بهش فکر نکرده بودم

👇 شماره گزینه رو بنویس.

اگر گزینه ۲، ۳ یا ۴ رو انتخاب کردی، نگران نباش؛ از همین Task بعدی میتونی شروع کنی. 🌱

📅 قسمت بعدی:
حالا که درباره رشد یک جونیور صحبت کردیم، وقتشه بریم سراغ یکی از مهم‌ترین مهارت‌های واقعی محیط کار:

🧩 چطور یک مسئله بزرگ را به چند مسئله کوچیک‌تر تبدیل کنیم؟

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🔥1👏1
💼 از دانشگاه تا شرکت
🚀 فصل دوم | قسمت هفدهم
🧩 چطور یک مسئله بزرگو به چند مسئله کوچیکتر تبدیل کنیم؟

🎬 داستان امروز از یک روز واقعی در دنیای برنامه‌نویسی...

لید تیم یک Task جدید بهت میده:

«یک سیستم گزارش‌گیری برای کاربران بساز.»

😐 چند ثانیه به صفحه خیره میشی...

سیستم گزارش‌گیری؟

یعنی چی؟

از کجا شروع کنم؟

خیلی از برنامه‌نویس‌های تازه‌کار اینجا گیر میکنن.

نه به خاطر اینکه کدنویسی بلد نیستن...

بلکه چون یک مشکل بزرگو نمیدونن چطور به بخش‌های کوچیکتر تقسیم کنن.

امروز درباره یکی از مهم‌ترین مهارت‌های حل مسئله صحبت میکنیم:

🧩Problem Decomposition

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1👏1
🧠 برنامه‌نویس‌های حرفه‌ای معمولاً مستقیم سراغ کد نمیرن.

اول مسئله بزرگو خرد میکنن.

مثلاً:

«ساخت سیستم فروشگاه»

خیلی بزرگ و مبهمه.

اما اگر تقسیمش کنیم:

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

حالا هر بخش تبدیل به یک مسئله قابل مدیریت شده.

📌 مغز انسان با مسئله‌های کوچیک بهتر کار میکنه.

یک برنامه‌نویس خوب کسی نیست که همیشه جوابو بدونه؛

کسیه که بلد باشه یک مشکل بزرگو به چند سؤال کوچیکتر تبدیل کنه.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1👏1
🎯 تمرین ProgrammerCity

فرض کن به تو یک Task داده شده:

«ساخت اپلیکیشن یادداشت‌برداری»

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

مثلاً:

🔹 بخش اول: ...

🔹 بخش دوم: ...

🔹 بخش سوم: ...

جوابتو بنویس. 👇

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

📝 چرا برنامه‌نویس‌های حرفه‌ای قبل از کدنویسی الگوریتم طراحی میکنن؟

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1👏1
💼 از دانشگاه تا شرکت
🚀 فصل دوم | قسمت هجدهم
📝 چرا قبل از کدنویسی باید فکر کنیم؟

🎬 داستان امروز از یک روز واقعی در دنیای برنامه‌نویسی...

یک Task جدید گرفتی:

«یک سیستم مرتب‌سازی برای لیست کاربران بنویس.»

اولین واکنش:

💻 سریع ادیتور را باز میکنی.

شروع به تایپ میکنی...

اما بعد از چند دقیقه:

🤔 «صبر کن... اصلاً راه‌حل من درست بود؟»

اینجاست که یک عادت مهم برنامه‌نویس‌های حرفه‌ای خودشو نشون میده:

قبل از نوشتن کد، اول راه‌حلو طراحی کن.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🔥1
📝 طراحی الگوریتم یعنی قبل از کدنویسی مشخص کنیم:

🔹 ورودی ما چیه؟
🔹 خروجی مورد انتظار چیه؟
🔹 چه مراحلی باید انجام شه؟
🔹 چه حالت‌های خاصی وجود داره؟

مثلاً برای پیدا کردن بزرگ‌ترین عدد یک لیست:

مستقیم شروع به کدنویسی نکن.

اول فکر کن:

اولین عددو به عنوان بزرگ‌ترین در نظر میگیرم.
بقیه اعدادو بررسی میکنم.
اگر عدد بزرگتری پیدا کردم، مقدارو تغییر میدم.
در پایان نتیجه رو برمیگردونم.

حالا نوشتن کد خیلی ساده‌تر میشه.

📌 کد زدن سریع همیشه نشانه حرفه‌ای بودن نیست.

گاهی حرفه‌ای‌ترین کار اینه که چند دقیقه بیشتر فکر کنیم.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
🔥1👏1
🎯 یک سؤال:

وقتی یک مسئله جدید بهت داده میشه، معمولاً چکاری انجام میدی؟

1️⃣ سریع شروع به کدنویسی میکنم.
2️⃣ اول درباره راه‌حل فکر میکنم.
3️⃣ اول نمونه‌های مشابه رو پیدا میکنم.
4️⃣ از یک نفر کمک میگیرم.

👇 شماره گزینه رو بنویس.

📅 قسمت بعدی:

🚀 چطور یک برنامه‌نویس میتونه سرعت یادگیری خودشو چند برابر کنه؟

━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1👏1
#مدیرکانال

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
🔥1
💼 از دانشگاه تا شرکت
🚀 فصل دوم | قسمت ۱۹
🚀 چطور سرعت یادگیری برنامه‌نویسی‌مونو بیشتر کنیم؟

🎬 داستان امروز از یک روز واقعی در دنیای برنامه‌نویسی...

دو برنامه‌نویس تازه‌کارو تصور کن.
هر دو باید یک تکنولوژی جدید یاد بگیرن.

👨‍💻 نفر اول:
«بذار اول یه دوره ۳۰ ساعته کامل ببینم.»

👩‍💻 نفر دوم:
«من اول ببینم دقیقاً برای Task فعلی به چی نیاز دارم.»

یک هفته بعد...

نفر اول هنوز وسط دوره است.
نفر دوم یک قابلیت واقعی ساخته. 😅

کدوم روش بهتره؟

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

یادگیری هدفمند.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🥰1
🧠 برای یادگیری سریعتر، لازم نیست همیشه بیشتر یاد بگیری؛ باید درستتر یاد بگیری.

یک روش ساده:

1️⃣ هدف مشخص کن
«می‌خوام Java یاد بگیرم.»
«میخوام با Java یک REST API ساده بسازم.»

2️⃣ فقط چیزهای موردنیازتو پیدا کن
لازم نیست تمام مستندات یا یک دوره ۵۰ ساعته رو کامل بخونی.

3️⃣ سریع وارد عمل شو
چیزی که یاد گرفتیو در یک پروژه کوچیک استفاده کن.

4️⃣ با مشکل واقعی روبه‌رو شو
وقتی گیر کردی، تحقیق کن.

5️⃣ چیزی که یاد گرفتی رو دوباره استفاده کن
این مرحله باعث میشه دانش از حالت «اطلاعات» به «مهارت» تبدیل بشه.

📌 یادگیری واقعی = یاد گرفتن → استفاده کردن → اشتباه کردن → اصلاح کردن

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🔥1
🎯 یک سؤال برای کاربرای ProgrammerCity:

وقتی میخوای یک تکنولوژی جدید یاد بگیری، کدوم روشو بیشتر انجام میدی؟

1️⃣ یک دوره کامل میبینم.
2️⃣ مستندات رو میخونم.
3️⃣ با یک پروژه کوچیک شروع میکنم.
4️⃣ همزمان از چند منبع استفاده میکنم.

👇 شماره گزینه رو مشخص کن.

📅 فردا میریم سراغ یک موقعیت خیلی واقعی:

«یک تکنولوژی جدید بهت دادن و هیچ چیزی ازش نمیدونی؛ از کجا شروع کنی؟» 📚

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🔥1
💼 از دانشگاه تا شرکت
🚀 فصل دوم | قسمت ۲۰
📚 چطور یک تکنولوژی جدیدو یاد بگیریم؟

🎬 داستان امروز از یک روز واقعی در دنیای برنامه‌نویسی...

لید تیم میاد سراغت:

«برای Task بعدی باید با Redis کار کنی.»

تو:

🙂 «حتماً.»

ولی در ذهنت:

😐 «Redis دیگه چیه؟!»😂

این اتفاق برای یک برنامه‌نویس کاملاً طبیعیه.

در دنیای واقعی قرار نیست همه تکنولوژی‌ها رو از قبل بلد باشی.

مهم اینه که بلد باشی چطور یک چیز جدیدو یاد بگیری.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1👏1
📚 وقتی با یک تکنولوژی جدید روبه‌رو شدی، این مسیرو امتحان کن:

① اول بفهم دقیقاً چیست.

مثلاً: Redis چه مشکلیو حل میکنه؟

② کاربرد اصلیش رو پیدا کن.

کجا ازش استفاده میشه؟

③ مستندات رسمیو ببین.

نه اینکه از اول تا آخر بخونیش!
فقط بخش‌هایی که برای شروع نیاز داری.

④ یک مثال ساده اجرا کن.

مثلاً یک پروژه خیلی کوچیک بساز.

⑤ بعد سراغ استفاده واقعی برو.

حالا چیزی که یاد گرفتیو در Task خودت استفاده کن.

📌 لازم نیست قبل از شروع کار، متخصص یک تکنولوژی باشی.

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

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1👏1
🎯 چالش امروز

فرض کن فردا وارد یک پروژه میشی و میبینی باید با یک تکنولوژی کار کنی که تا حالا اسمشو هم نشنیدی.

اولین کاری که میکنی چیه؟

1️⃣ یک دوره کامل درباره‌ش پیدا میکنم.
2️⃣ از هوش مصنوعی میپرسم.
3️⃣ مستندات رسمی و یک مثال ساده رو بررسی میکنم.
4️⃣ از هم‌تیمی‌ام میخوام همه‌چیزو برام توضیح بده.

👇 شماره گزینه رو بنویس و اگر گزینه دیگه‌ای داری، خودت پیشنهاد بده.

📅 قسمت بعدی میرسیم به یکی از مهم‌ترین مهارت‌های یک برنامه‌نویس:

🔎 چرا «خوب سرچ کردن» خودش یک مهارت برنامه‌نویسیه؟

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🔥1