Please open Telegram to view this post
VIEW IN TELEGRAM
آموزش برنامه نویسی جاوا | Java
این دسته محتواها چطوره؟ اگر میپسندید لایکش کنید که بازخورد مثبتش ببینیم که دوباره تهیه بشه اگه نه هم که سبک محتوا رو عوض کنیم.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
با توجه به اختلالات اخیر در اینترنت بینالملل، دسترسی به دورههای جاواپرو برای بسیاری از دانشجویان به خصوص دانشجویان خارج از کشور با محدودیت یا قطع کامل همراه بود.
از شکیبایی و همراهی شما سپاسگزاریم.
آکادمی جاواپرو
www.javapro.ir
www.academyjavapro.com
Please open Telegram to view this post
VIEW IN TELEGRAM
https://eitaa.com/javapro_ir
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
به نشانه همدلی و آرامش،
دوره فریمورک Spring Boot آکادمی جاواپرو به مدت ۲ هفته رایگان شد❤
برای استفاده از این فرصت، هنگام ثبتنام کد تخفیف زیر رو وارد کنید:
🆓 JAVAPRO
📆 مهلت استفاده: تا [ ۱۸ تیر ۱۴٠۴]
🔺 جهت ثبت نام کلیک کنید
به اشتراک بگذارید تا شاید دل کسی آرومتر بشه...🕊
#درکنار_هم🌿
➡️ اشتراک 👍 لایک 💬 کامنت
➖ ➖ ➖ ➖ ➖ ➖ ➖ ➖
⚡️ @javapro_ir
✈️ @group_javapro
➖ ➖ ➖ ➖ ➖ ➖ ➖ ➖
#جاواپرو #SpringBoot #جاوا
دوره فریمورک Spring Boot آکادمی جاواپرو به مدت ۲ هفته رایگان شد
برای استفاده از این فرصت، هنگام ثبتنام کد تخفیف زیر رو وارد کنید:
📆 مهلت استفاده: تا [ ۱۸ تیر ۱۴٠۴]
به اشتراک بگذارید تا شاید دل کسی آرومتر بشه...
#درکنار_هم
#جاواپرو #SpringBoot #جاوا
Please open Telegram to view this post
VIEW IN TELEGRAM
آکادمی جاواپرو
دوره آموزش فریمورک Spring Boot
آموزش مباحث فریمورک (اسپرینگ بوت) Spring Boot در زبان برنامه نویسی جاوا همراه با آموزش پروژه محور ساخت کتاب فروشی با اسپرینگ بوت
آموزش برنامه نویسی جاوا | Java pinned «به نشانه همدلی و آرامش، دوره فریمورک Spring Boot آکادمی جاواپرو به مدت ۲ هفته رایگان شد❤ برای استفاده از این فرصت، هنگام ثبتنام کد تخفیف زیر رو وارد کنید: 🆓 JAVAPRO 📆 مهلت استفاده: تا [ ۱۸ تیر ۱۴٠۴] 🔺 جهت ثبت نام کلیک کنید به اشتراک بگذارید تا شاید دل…»
اگر تا حالا با جاوا کار کرده باشید، احتمالاً از HashMap استفاده کردهاید.
اما آیا واقعاً میدانید پشت صحنه چه اتفاقی میافتد؟
در ادامه به زبانی ساده و قابل فهم توضیح داده شده که HashMap چطور داخل خودش دادهها را مدیریت میکند 👇
🔹 ساختار کلی:
✅ در داخل HashMap، یک آرایه از «باکتها» وجود دارد.
✅ هر باکت میتواند چند «کلید-مقدار» را به صورت نود (گره) ذخیره کند.
✅ اگر چند کلید مختلف به یک باکت برسند، دادهها به صورت لیست پیوندی ذخیره میشوند (از نسخه ۸ جاوا به بعد، اگر تعداد زیاد شود، تبدیل به درخت Red-Black میشود).
🔹 هش کردن و پیدا کردن موقعیت:
🤔 وقتی یک کلید به HashMap اضافه میشود:
✅ جاوا با استفاده از متد hashCode() یک مقدار هش برای آن تولید میکند.
✅ بعد با این فرمول محل دقیق قرار گرفتن آن در آرایه مشخص میشود:
👨🏻💻 index = (n - 1) & hash
این روش باعث میشود کلیدها بهطور یکنواخت در آرایه پخش شوند و دسترسی سریعتر انجام شود.
🔹 برخورد چند کلید در یک جا:
🤔 اگر چند کلید به یک باکت برسند:
✅ اول جاوا بررسی میکند آیا کلید جدید با یکی از کلیدهای موجود برابر است (equals()).
✅ اگر برابر نباشد، کلید جدید به لیست یا درخت اضافه میشود.
🔹 تبدیل به درخت (در جاوا ۸ به بعد):
اگر تعداد نودها در یک باکت بیشتر از ۸ تا شود و کل اندازه نقشه حداقل ۶۴ باشد، لیست پیوندی به درخت Red-Black تبدیل میشود تا جستجوها سریعتر انجام شود (O(log n) بهجای O(n)).
🔹 ظرفیت، ضریب بار و آستانه:
✅ ظرفیت: تعداد باکتهای فعلی (پیشفرض ۱۶ عدد است)
✅ ضریب بار: عددی بین ۰ و ۱ (پیشفرض ۰٫۷۵) که مشخص میکند چه زمانی باید ظرفیت بیشتر شود
✅ آستانه: ظرفیت × ضریب بار؛ اگر تعداد عناصر از این مقدار بیشتر شود، HashMap بزرگتر میشود.
🔁 بزرگتر شدن (Resizing):
🤔 وقتی تعداد عناصر از آستانه عبور کند:
✅ ظرفیت آرایه دو برابر میشود
✅ همه کلیدها دوباره هش میشوند و در آرایه جدید قرار میگیرند
✅ این فرآیند زمانبر است، پس اگر از ابتدا ظرفیت مناسب انتخاب شود، کارایی بهتری خواهید داشت.
🔹 مدیریت null:
✅ HashMap فقط یک کلید null را قبول میکند
✅ اما میتواند چندین مقدار null داشته باشد
✅ کلید null همیشه در باکت شماره صفر ذخیره میشود.
💡 نکته مهم:
اگر از کلاسهای خودتان بهعنوان کلید استفاده میکنید، حتماً متدهای equals() و hashCode() را بازنویسی (override) کنید.
این کار از بروز خطا جلوگیری میکند و باعث میشود HashMap درست کار کند.
📈 چرا دانستن این نکات مهم است؟
✔️ به شما کمک میکند کدی سریعتر و بهینهتر بنویسید
✔️ برای مصاحبههای شغلی و طراحی سیستم آمادگی بیشتری خواهید داشت
✔️ درک عمیقتری از مجموعههای جاوا بهدست میآورید
اگر به جاوا، Spring Boot یا طراحی بکاند علاقهمندید، جاواپرو را دنبال نمایید 🙌
#جاواپرو #SpringBoot #جاوا
Please open Telegram to view this post
VIEW IN TELEGRAM
آموزش برنامه نویسی جاوا | Java
به نشانه همدلی و آرامش، دوره فریمورک Spring Boot آکادمی جاواپرو به مدت ۲ هفته رایگان شد❤ برای استفاده از این فرصت، هنگام ثبتنام کد تخفیف زیر رو وارد کنید: 🆓 JAVAPRO 📆 مهلت استفاده: تا [ ۱۸ تیر ۱۴٠۴] 🔺 جهت ثبت نام کلیک کنید به اشتراک بگذارید تا شاید دل…
بیش از 100 نفر در 24 ساعت در دوره فریمورک Spring Boot شرکت کردن.
ثبت نام در این دوره در جهت رسالت اجتماعی جاواپرو و حمایت از دانشجویان عزیز تا ۱۸ تیر رایگان شده است.
➗ با کد تخفیف 100% زیر ثبت نام کنید
✨ JAVAPRO
🖱 ثبت نام
شرایط سخت پایدار نیست، در کنار هم هستیم🌱
ثبت نام در این دوره در جهت رسالت اجتماعی جاواپرو و حمایت از دانشجویان عزیز تا ۱۸ تیر رایگان شده است.
شرایط سخت پایدار نیست، در کنار هم هستیم
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
آیا تا به حال به این فکر کردهاید که دادهها در برنامهنویسی چگونه منتقل میشوند؟ بیایید با دو روش بنیادی در این زمینه آشنا شویم:
در این روش، یک نسخهی کپی (copy) از مقدار متغیر ارسال میشود.
یعنی وقتی یک متغیر (variable) را به یک تابع (function) میفرستید، در واقع فقط یک نسخه از مقدار آن را منتقل کردهاید. بنابراین، هر تغییری که داخل تابع انجام شود، روی متغیر اصلی تأثیری ندارد.
این روش معمولاً در زبانهایی مانند C و جاوا (Java) برای نوعهای دادهای اولیه (primitive types) استفاده میشود.
در این روش، به جای ارسال یک نسخهی کپی، آدرس یا مرجعی (reference) به خود متغیر اصلی ارسال میشود.
به همین دلیل، تغییراتی که در تابع (function) انجام میشوند، مستقیماً روی متغیر اصلی تأثیر میگذارند.
این روش بیشتر در کار با اشیاء (objects) در زبانهایی مانند جاوا (Java) و پایتون (Python) دیده میشود.
چگونه میتوان مطمئن شد که از روش درست در کد (code) خود استفاده میکنید؟
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
ثبت نام در این دوره در جهت رسالت اجتماعی جاواپرو و حمایت از دانشجویان عزیز تا ۱۸ تیر رایگان شده است.
شرایط سخت پایدار نیست، در کنار هم هستیم
Please open Telegram to view this post
VIEW IN TELEGRAM
آموزش برنامه نویسی جاوا | Java
سعی کنید با ایمیل و شماره تلفن واقعی ثبت نام کنید چون اگر رمزتون فراموش کردید تنها رمز از طریق ایمیل ریکاوری میشه....
🎓لیست دوره ها:
Please open Telegram to view this post
VIEW IN TELEGRAM
آموزش برنامه نویسی جاوا | Java pinned «➗ 60 درصد تخفیف روی تمامی دوره های آکادمی جاواپرو تا 18 تیر ماه اعمال شد. 🟤 در زمان ثبت نام کد تخفیف زیر را وارد نمایید. 🔣 کد تخفیف: JAR 🎓لیست دوره ها: 💎 دوره پرتاب | آموزش پیش نیازهای برنامه نویسی 💎 دوره مقدماتی جاوا 💎 دوره شاهکار پیشرفته جاوا 💎 دوره…»
آموزش برنامه نویسی جاوا | Java
اگر تا ۱۰ تیر ماه در این دوره ثبتنام کنید، از ۶۵٪ تخفیف استثنایی بهرهمند خواهید شد!
برای دریافت کد تخفیف و ثبتنام، به آیدی زیر پیام دهید:
📩 @rzutab
Please open Telegram to view this post
VIEW IN TELEGRAM
عزیزانی که همراه جاواپرو هستند، بهخوبی میدانند که ارائه چنین درصدی از تخفیف در شرایط عادی مرسوم نیست. این تخفیفات تنها با هدف حمایت از علاقهمندان به یادگیری در شرایط خاص امروز است و قصد دارن دورهها را با قیمت اقتصادی تهیه کنند، در نظر گرفته شده است.
دوره Spring Boot همچنان با کد تخفیف «Javapro» تا 18 تیر رایگان خواهد بود.
دوره Spring Boot همچنان با کد تخفیف «Javapro» تا 18 تیر رایگان خواهد بود.