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

لینک جهت حمایت‌های مالی شما:
http://zarinp.al/programmercity

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

لینک ناشناسمون:
https://t.me/BitnetChat_bot?start=sec-ehdiahcie
Download Telegram
🎯 اگر اولین تسک کاریت فقط رفع یک باگ کوچیک باشه، چه حسی داری؟

1️⃣ خوشحال میشم؛ فرصت خوبیه که پروژه رو بشناسم.
2️⃣ ترجیح میدم یک قابلیت جدید بنویسم.
3️⃣ فرقی برام نمیکنه.
4️⃣ کمی ناامید میشم.

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

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

چطور وقتی گیر میکنی، بدون اتلاف وقت کمک بگیری؟

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

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

اولین هفته کاریت گذشته.

روی یک باگ ساده کار میکنی، اما هر کاری انجام میدی، مشکل حل نمیشه.

یک ساعت...
دو ساعت...

حالا دو راه داری:

همچنان بدون نتیجه ادامه بدی.

یا به شکل درست از تیم کمک بگیری.

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

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
👏1
💡 کمک گرفتن یعنی آماده بودن، نه فقط سؤال پرسیدن.

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

هدفت چی بوده؟
چه کاری انجام دادی؟
چه پیام خطایی دیدی؟
چه راه‌حل‌هایی رو امتحان کردی؟

وقتی این اطلاعات رو ارائه میدی، هم سریع‌تر جواب میگیری، هم نشون میدی خودت برای حل مسئله تلاش کردی.

📌 بهترین برنامه‌نویس‌ها، بهترین سؤال‌ها رو میپرسن.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1
💬 فرض کن دو ساعت روی یک مشکل وقت گذاشتی و هنوز به نتیجه نرسیدی.

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

1️⃣ باز هم ادامه میدم.
2️⃣ مستندات و اینترنت رو دوباره بررسی میکنم.
3️⃣ با توضیح کامل از یکی از اعضای تیم کمک میگیرم.
4️⃣ کار رو رها میکنم و سراغ تسک دیگه میرم.

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

📅 فردا درباره یکی از مهم‌ترین جلسه‌های هر تیم نرم‌افزاری صحبت میکنیم:

تعریف Daily Stand-up چیه و چرا فقط چند دقیقه طول میکشه؟

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

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

ساعت ۹ صبحه.

همه اعضای تیم دور هم جمع شدن.

فکر میکنی قراره یک جلسه طولانی شروع بشه...

اما فقط ۱۰ دقیقه بعد، همه برمیگردن سراغ کارشون!

این جلسه کوتاه، یکی از مهم‌ترین عادت‌های تیم‌های نرم‌افزاریه.

اسمش Daily Stand-up هست.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1
💡 هدف Daily Stand-up گزارش دادن به مدیر نیست.

هدف اینه که اعضای تیم از وضعیت هم باخبر باشن و اگر کسی به کمک نیاز داره، سریع مشخص بشه.

معمولاً هر نفر به سه سؤال جواب میده:

دیروز روی چه کاری کار کردم؟
امروز روی چه کاری کار میکنم؟
آیا مانعی برای ادامه کار دارم؟

📌 اگر جلسه بیشتر از چند دقیقه طول بکشه، احتمالاً از هدف اصلی خودش دور شده.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
👏1
💬 اگر قرار باشه در یک Daily Stand-up شرکت کنی، به نظرت گفتن کدوم مورد از همه مهم‌تره؟

1️⃣ کارهایی که دیروز انجام دادی.
2️⃣ برنامه امروزت.
3️⃣ مشکلی که باعث شده نتونی ادامه بدی.
4️⃣ هر سه مورد به یک اندازه مهم هستن.

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

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

چطور زمان انجام یک تسکو درست تخمین بزنیم و چرا نباید قول‌های غیرواقعی بدیم؟

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 فصل دوم | قسمت پنجم
چرا برنامه‌نویس‌ها گاهی زمان انجام یک تسکو اشتباه تخمین میزنن؟

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

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

«این قابلیتو تا فردا میتونی تحویل بدی؟»

تو هم با اعتمادبه‌نفس میگی:

«آره، فکر کنم چند ساعت بیشتر طول نکشه.»

فردا میشه...

هنوز کارت تموم نشده!

یک باگ پیدا کردی، یک بخش پروژه رو بهتر نفهمیدی و یک مشکل دیگه هم وسط کار به وجود اومده.

حالا سؤال:

مشکل از کجا بود؟

آیا برنامه‌نویس ضعیفی بودی؟

یا از اول زمان انجام کار رو درست تخمین نزدی؟

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

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
2
تخمین زمان یعنی قبل از شروع کار، حدس بزنیم انجام یک Task واقعاً چقدر زمان میبره.

اما یک اشتباه رایج وجود داره:

«فکر کنم دو ساعت طول بکشه.»

برنامه‌نویس حرفه‌ای قبل از تخمین، اول Task رو بررسی میکنه.

مثلاً:

🔹 دقیقاً چه چیزی باید ساخته بشه؟
🔹 چه بخش‌هایی باید تغییر کنن؟
🔹 آیا با بخش ناشناخته‌ای از پروژه روبه‌رو هستیم؟
🔹 نیاز به تست داریم؟
🔹 احتمال وجود مشکل یا وابستگی وجود داره؟

📌 تخمین خوب یعنی حدس زدنِ شانسی نیست؛
یعنی شناختن کاری که قراره انجام بدی.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
🏆2
🎯 یک موقعیت واقعی:

لید تیم ازت میپرسه:

«این قابلیت رو کی میتونی تحویل بدی؟»

تو هنوز دقیقاً پروژه رو بررسی نکردی.

چه جوابی میدی؟

1️⃣ «امروز تمومش میکنم.»
2️⃣ «فکر کنم دو روز زمان ببره.»
3️⃣ «اجازه بده اول Task رو بررسی کنم، بعد زمان دقیق‌تری بهت بدم.»
4️⃣ «نمیدونم.»

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

📅 فردا میریم سراغ قدمی که قبل از تخمین زمان باید انجام بدی:

📝 چطور یک Task رو درست تحلیل کنیم؟

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

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

یک Task بهت داده شده:

«قابلیت جستجوی محصولات رو به سایت اضافه کن.»

خب...

میری سراغ کدنویسی؟ 💻

صبر کن!

این جمله خیلی کلیه.

قبل از اینکه حتی یک خط کد بنویسی، باید بفهمی:

جستجو دقیقاً باید چطور کار کنه؟

و همین‌جا مهارت مهمی به اسم Task Analysis وارد ماجرا میشه.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🔥1
📝 برای تحلیل یک Task، اول باید ابهام‌ها رو از بین ببری.

مثلاً برای قابلیت جستجوی محصولات، میتونی بپرسی:

🔹 جستجو بر اساس نام محصوله یا دسته‌بندی هم شامل میشه؟
🔹 اگر نتیجه‌ای پیدا نشد، چه چیزی نمایش داده بشه؟
🔹 جستجو باید لحظه‌ای باشه یا بعد از زدن دکمه؟
🔹 حروف بزرگ و کوچک اهمیت دارن؟
🔹 نتیجه‌ها چطور مرتب بشن؟

بعد از مشخص شدن این موارد، Task خیلی واضح‌تر میشه.

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

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

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

«به اپلیکیشن، قابلیت ثبت‌نام کاربر اضافه کن.»

قبل از اینکه شروع به کدنویسی کنی، حداقل ۳ سؤال از کسی که Task رو بهت داده میپرسی؟

سؤالاتت رو همین‌جا بنویس. 👇

مثلاً:

🔹 چه اطلاعاتی باید از کاربر دریافت بشه؟
اما سعی کن سؤال‌های خودتو پیدا کنی. 😉

📅 قسمت بعدی:

🧪 چرا برنامه‌نویس‌های حرفه‌ای قبل از تحویل Task، خودشون کدشونو تست میکنن؟

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

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

بالاخره Task رو تموم کردی! 🎉

کدت اجرا میشه و همه‌چیز به نظر درست میاد.

پس سریع برای لید میفرستیش:

«انجام شد »

اما چند دقیقه بعد...

🚨 یک باگ پیدا میشه!

و اولین سؤال لید:

«خودت قبل از تحویل تستش کردی؟» 😅

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

🧪 قبل از اینکه کسی کدتو تست کنه، خودت تستش کن.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
@programercity
━━━━━━━━━━━━━━━━━━
1🔥1
🧪 تست کردن یعنی فقط یکبار برنامه رو اجرا کنی و ببینی خطا میده یا نه؟

نه!

قبل از تحویل یک Task، حداقل این حالت‌ها رو بررسی کن:

حالت معمولی
کاربر اطلاعات درست وارد میکنه.

⚠️ ورودی اشتباه
کاربر اطلاعات ناقص یا نامعتبر وارد میکنه.

🔲 حالت خالی
مثلاً فرم رو بدون وارد کردن اطلاعات ارسال میکنه.

🚨 حالت غیرمنتظره
مثلاً مقدار خیلی بزرگ یا یک داده غیرعادی وارد میشه.

📌 برنامه‌نویس حرفه‌ای فقط نمیپرسه:

«آیا برنامه من کار میکنه؟»

میپرسه:

«چطور ممکنه برنامه من خراب بشه؟»

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

فرض کن یک فرم «ورود به حساب کاربری» ساختی.

قبل از تحویل، چه حالت‌هایی رو تست میکنی؟

حداقل ۳ مورد بنویس. 👇

مثلاً:

🔹 رمز عبور اشتباه

اما دو مورد دیگه رو خودت پیدا کن. 😉

📅 فردا میرسیم به مرحله بعد:

📤 اولین Pull Request

و میبینیم وقتی کدت آماده شد، چطور باید اونو برای بررسی به تیم تحویل بدی.

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

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

خب Task رو انجام دادی.

کدتو هم تست کردی. 🧪

حالا باید تغییراتتو به تیم تحویل بدی.

اما یک سؤال:

آیا مستقیم کدتو وارد Branch اصلی پروژه میکنی؟

معمولاً نه! 😅

اینجاست که با یکی از مهم‌ترین مفاهیم کار تیمی آشنا میشی:

📤 Pull Request یا PR

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