آموزش ️️برنامه نویسی جاوا | Java

@javapro_ir


🎓آکـــــــــادمی جاواپـــــــــــــــرو
آموزش پیش نیازهای برنامه نویسی
آموزش مقدماتی تا پیشرفته جاوا
آموزش Spring Boot
سفارش پروژه ، دوره و تدریس خصوصی: @rzutab
مشاهده دوره ها و ثبت نام👇
wwww.academyjavapro.com
گروه جاوا : @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 21:21


قبل از شروع برنامه نویسی داکیومنت، سناریو و جزییات کامل پروژه مطالعه شود، ابهامات پروژه رو برطرف کنید و بعد شروع به کدنویسی کنید😂

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 21:10


آقای کارفرما تو نمی دونی من چی کشیدم تا این پروژه برنامه نویسی انجام شد....😭


🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 21:06


کدنویسی با رسم شکل....


🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 21:05


یک قطعه کد....


#موفقیت #رشد

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 20:57


▶️لیست کانال های یوتیوب خارجی برای یادگیری انواع زبان برنامه نویسی


لایک کردن شما به تیم جاواپرو انگیزه میده🥰👍


#برنامه_نویسی #آموزش #یادگیری

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 15:57


مهارت برنامه نویسی خودت رو با کارهای زیر بهتر کن

1️⃣هر روز کدنویسی کن

2️⃣از دیگران یاد بگیر

3️⃣به دیگران آموزش بده

4️⃣یادداشت‌برداری کن

5️⃣پروژه‌ های جدید انجام بده

6️⃣از گیت‌هاب برای انتشار کد استفاده کن

7️⃣برنامه‌ریزی کن

8️⃣برای یادگیری وقت بگذار

9️⃣در انجمن های مرتبط با تکنولوژی فعال باش

0️⃣1️⃣کتاب‌ها و مستندات مرتبط را بخوان

1️⃣1️⃣کنجکاو باش


لایک کردن شما به تیم جاواپرو انگیزه میده🥰👍


#برنامه_نویسی #مهارت_نرم

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 07:40


🟢بهترین ابزارهای رایگان و غیر رایگان هوش مصنوعی


#ai #هوش_مصنوعی

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 06:50


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


#برنامه_نویس #برنامه_نویس_وب #هوش_مصنوعی #موبایل

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 06:42


Channel photo updated

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 06:42


Channel photo removed

آموزش ️️برنامه نویسی جاوا | Java

22 Oct, 06:09


🔵کاربرد تخصص های برنامه نویسی


#برنامه_نویس #برنامه_نویسی

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

21 Oct, 16:00


📘 موضوع -> مدیریت دقیق حافظه و استفاده بهینه از آن در برنامه‌نویسی جاوا

جاوا به دلیل دارا بودن Garbage Collector (زباله جمع‌کن) به صورت خودکار مدیریت حافظه را بر عهده دارد، و این ویژگی باعث می‌شود بسیاری از برنامه‌نویسان به این مسئله توجه چندانی نکنند. اما عدم توجه به مدیریت صحیح منابع می‌تواند منجر به مشکلاتی مانند نشت حافظه (Memory Leak) یا عملکرد کند برنامه شود.

📚 توضیح:
- (زباله جمع‌کن) Garbage Collection: جاوا به صورت خودکار حافظه‌ای را که دیگر استفاده نمی‌شود آزاد می‌کند. اما این بدان معنا نیست که شما نباید نگران مصرف حافظه باشید. برنامه‌نویسان باید از روش‌های درست استفاده کنند تا از نگه داشتن غیرضروری آبجکت‌ها جلوگیری شود.

- نشت حافظه (Memory Leak): اگر برنامه‌نویس آبجکت‌هایی را که دیگر نیازی به آنها نیست، همچنان در دسترس نگه دارد (مثلاً با نگه‌داشتن مرجع به آنها در لیست یا آرایه)، این آبجکت‌ها توسط Garbage Collector آزاد نخواهند شد و این باعث می‌شود که حافظه مصرف شده باقی بماند و سیستم کند شود.

💡 روش‌های بهینه:
1. کاهش زمان استفاده از آبجکت‌ها: مطمئن شوید که پس از اتمام کار با یک آبجکت، مرجع به آن را از بین ببرید.

2. استفاده از ابزارهای تحلیل حافظه: از ابزارهایی مانند VisualVM یا JProfiler برای مانیتورینگ و بررسی مصرف حافظه و کشف نشت‌های حافظه استفاده کنید.

3. بهینه‌سازی استفاده از ساختارهای داده: برای مثال، استفاده از WeakHashMap به جای HashMap در مواردی که می‌خواهید اجازه دهید کلیدها در صورت عدم نیاز، جمع‌آوری شوند.

4. دقت در استفاده از اشیاء بزرگ: به خصوص در پردازش‌هایی که با داده‌های حجیم سروکار دارند، اشیاء بزرگ نباید بدون نیاز در حافظه باقی بمانند.

🔍 مثال:
فرض کنید در برنامه جاوا یک لیست از آبجکت‌های بزرگ دارید و به اشتباه آنها را پس از استفاده حذف نمی‌کنید:


List<String> bigList = new ArrayList<>();
for (int i = 0; i < 100000; i++) {
bigList.add(new String("Sample data" + i));
}
// بعد از اتمام پردازش نیازی به bigList نیست، اما حذف نمی‌شود.


در این حالت، لیست هنوز در حافظه باقی مانده و جمع‌آوری نخواهد شد، حتی اگر دیگر به آن نیاز نباشد. برای جلوگیری از نشت حافظه، می‌توانید پس از اتمام کار آن را پاک کنید:


bigList.clear();


📌 نتیجه‌گیری:
مدیریت دقیق حافظه در برنامه‌های جاوا یک موضوع حیاتی است که می‌تواند تأثیر زیادی بر عملکرد و پایداری برنامه‌ها داشته باشد. توجه به جزئیات کوچک و استفاده از تکنیک‌های بهینه‌سازی حافظه می‌تواند به جلوگیری از مشکلات مربوط به حافظه کمک کند.


🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

21 Oct, 07:39


آموزش ️️برنامه نویسی جاوا | Java pinned «📚کتاب رایگان آموزش مبتدی تا پیشرفته برنامه نویسی جاوا در این کتاب الکترونیکی رایگان برنامه نویسی جاوا نویسنده موارد زیر که هر کدام به چندین زیر شاخه تقسیم می شود را آموزش می دهد: معرفی و تاریخچه زبان جاوا معرفی ابزارها و نرم افزارهای لازم برای برنامه نویسی…»

آموزش ️️برنامه نویسی جاوا | Java

21 Oct, 07:39


📚کتاب رایگان آموزش مبتدی تا پیشرفته برنامه نویسی جاوا

در این کتاب الکترونیکی رایگان برنامه نویسی جاوا نویسنده موارد زیر که هر کدام به چندین زیر شاخه تقسیم می شود را آموزش می دهد:

معرفی و تاریخچه زبان جاوا
معرفی ابزارها و نرم افزارهای لازم برای برنامه نویسی جاوا
نوشتن اولین برنامه ساده با زبان جاوا
آشنایی محیط IntelliJ IDEA
مفاهیم پایه جاوا نظیر متغیرها،شرطها،عملگرها،حلقه ها ،آرایه ها و…
مفاهیم شی گرایی نظیر اشیا و کلاس ،ارث بری،اینترفیس،Enumeration و…
کنترل خطاها و استثناها
پکیج های جاوا
کاراکترها و رشته ها
ساختمان داده ها
جنریک
کار بافایل
چندنخی
کار با پایگاه داده ها
عبارت های با قاعده
آشنایی با Annotation ها
واسط کاربری
آشنایی با Logging
عبارت های لامبدا و کلاس های تو در تو
آشنایی با Reflection
چند زبانی (Internationalization)
ابزار JAR
آشنایی با Javadoc

‼️این کتاب جاوا در دیجی کالا ناموجود شده و شما می توانید در آکادمی جاواپرو به صورت رایگان دانلود کنید.

✳️ جهت دانلود رایگان کتاب اینجا کلیک کنید

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

19 Oct, 17:09


📝 موضوع -> روش‌های پیمایش HashMap در جاوا 🌟

در جاوا، کلاس HashMap یک نوع داده کلید-مقدار (Key-Value) است که برای ذخیره و مدیریت مجموعه‌ای از داده‌ها به کار می‌رود. گاهی اوقات نیاز داریم که تمام عناصر موجود در HashMap را پیمایش کنیم. در این پیام آموزشی، به بررسی روش‌های مختلف پیمایش در HashMap می‌پردازیم:

1️⃣ پیمایش کلیدها (Keys) 🔑
برای پیمایش فقط کلیدها، از متد keySet() استفاده می‌کنیم. این متد مجموعه‌ای از کلیدها را بازمی‌گرداند.


HashMap<String, Integer> map = new HashMap<>();
map.put("Apple", 100);
map.put("Banana", 200);

// پیمایش کلیدها
for (String key : map.keySet()) {
System.out.println("Key: " + key);
}


2️⃣ پیمایش مقادیر (Values) 💰
برای پیمایش فقط مقادیر، از متد values() استفاده می‌کنیم که لیستی از مقادیر را بازمی‌گرداند.


// پیمایش مقادیر
for (Integer value : map.values()) {
System.out.println("Value: " + value);
}


3️⃣ پیمایش کلیدها و مقادیر (Entry) 📜
برای پیمایش همزمان کلیدها و مقادیر، از متد entrySet() استفاده می‌کنیم که مجموعه‌ای از Map.Entry ها را بازمی‌گرداند.


// پیمایش کلید و مقدار
for (Map.Entry<String, Integer> entry : map.entrySet()) {
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}


4️⃣ پیمایش با استفاده از Iterator 🔄
از Iterator نیز می‌توان برای پیمایش HashMap استفاده کرد.


Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, Integer> entry = iterator.next();
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}


5️⃣ استفاده از forEach و Lambda در جاوا 8 و بالاتر 🚀
در نسخه‌های جدیدتر جاوا، از forEach و توابع لامبدا برای پیمایش ساده‌تر استفاده می‌شود.


map.forEach((key, value) -> {
System.out.println("Key: " + key + ", Value: " + value);
});


📌 نکات مهم:
- HashMap به طور پیش‌فرض ترتیب خاصی ندارد و کلیدها و مقادیر ممکن است به صورت تصادفی ذخیره شوند.
- استفاده از روش forEach باعث می‌شود کد شما تمیزتر و خواناتر باشد، به ویژه در نسخه‌های جدید جاوا.

🔍 با استفاده از این روش‌ها، می‌توانید به راحتی به داده‌های موجود در HashMap دسترسی پیدا کرده و آن‌ها را پیمایش کنید. 💻


🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

17 Oct, 15:56


🔒 موضوع -> سطوح دسترسی در جاوا 🔒

در جاوا، سطوح دسترسی (Access Modifiers) برای کنترل دسترسی به اعضای کلاس (متغیرها، متدها، سازنده‌ها و...) استفاده می‌شوند. سه سطح دسترسی مهم public، private و protected هستند که هر کدام کاربرد و ویژگی‌های خاص خود را دارند. بیایید هر کدام را بررسی کنیم

🔑 1. public (عمومی)

در این مثال، متغیر و متدی با سطح دسترسی public داریم که از هر کجا قابل دسترسی است، چه در داخل کلاس باشد و چه در پکیج‌های دیگر.

مثال:

// کلاس اصلی در پکیج animals
package animals;

public class Animal {
public String name = "Lion"; // قابل دسترس از هر جا
public void sound() {
System.out.println("Roar!");
}
}

// کلاس دیگر در پکیج human
package human;
import animals.Animal;

public class Main {
public static void main(String[] args) {
Animal animal = new Animal();
System.out.println(animal.name); // "Lion"
animal.sound(); // "Roar!"
}
}


📌 نکته: حتی در صورتی که از پکیج دیگری باشیم، اعضای public همچنان قابل دسترسی هستند.

---

🔒 2. private (خصوصی)

در این مثال، متغیر و متدی با سطح دسترسی private داریم. این اعضا فقط درون همان کلاس قابل استفاده هستند و حتی کلاس‌های دیگری که در همان پکیج هستند هم نمی‌توانند به آن‌ها دسترسی داشته باشند.

مثال:

// کلاس اصلی در پکیج animals
package animals;

public class Animal {
private String name = "Lion"; // فقط در این کلاس قابل دسترسی
private void sound() {
System.out.println("Roar!");
}

public void showName() {
System.out.println("Animal's name is " + name); // دسترسی به متغیر private
}
}

// کلاس دیگر در همان پکیج
package animals;

public class Main {
public static void main(String[] args) {
Animal animal = new Animal();
// System.out.println(animal.name); // ارور: name قابل دسترسی نیست
animal.showName(); // قابل دسترسی از متد عمومی
}
}


📌 نکته: private اعضای کلاس را مخفی می‌کند و فقط درون خود کلاس قابل استفاده است.

---

🛡 3. protected (محافظت‌شده)

در این مثال، از سطح دسترسی protected استفاده می‌کنیم که در پکیج‌های مختلف، تنها برای کلاس‌هایی که از این کلاس ارث‌بری (inheritance) کرده‌اند قابل دسترسی است.

مثال:

// کلاس اصلی در پکیج animals
package animals;

public class Animal {
protected String name = "Lion"; // محافظت‌شده: در فرزندان در دسترس
protected void sound() {
System.out.println("Roar!");
}
}

// کلاس فرزند در پکیج different
package different;
import animals.Animal;

public class Lion extends Animal {
public void printDetails() {
System.out.println("Lion's name: " + name); // دسترسی به name از کلاس والد
sound(); // دسترسی به متد sound از کلاس والد
}
}

public class Main {
public static void main(String[] args) {
Lion lion = new Lion();
lion.printDetails(); // "Lion's name: Lion" و "Roar!"
}
}


📌 نکته: اعضای protected برای کلاس‌های فرزند قابل استفاده است، حتی اگر در پکیج‌های مختلف قرار داشته باشند.


🔥 مقایسه و جمع‌بندی
سطح public: برای همه (چه در همان پکیج، چه در پکیج دیگر) در دسترس است.
سطح private: فقط در داخل همان کلاس قابل دسترسی است.
سطح protected: برای کلاس‌های در همان پکیج و کلاس‌های فرزند در پکیج‌های دیگر در دسترس است.


📚 نکته کاربردی: در برنامه‌نویسی حرفه‌ای، استفاده از سطوح دسترسی مناسب به مدیریت بهتر کد و جلوگیری از دسترسی‌های غیرمجاز کمک می‌کند.
مثال: وقتی متغیری فقط درون یک کلاس باید استفاده شود، حتماً آن را private کنید تا از دسترسی‌های ناخواسته جلوگیری شود!

💡 استفاده از `protected` زمانی مناسب است که شما قصد دارید قابلیت‌هایی را در کلاس‌های فرزند (subclass) در دسترس قرار دهید اما همچنان از کلاس‌های دیگر مخفی نگه دارید.

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

15 Oct, 22:48


🔑موضوع -> دسترسی‌ها در جاوا: Public, Private, Static 🔑

در زبان جاوا، سه کلمه کلیدی public**، **private و static نقش مهمی در کنترل دسترسی و نحوه استفاده از اعضای کلاس (متغیرها و متدها) دارند. بیایید به هر کدام نگاهی بیندازیم:

1. `public`:
- اعضایی که با public تعریف می‌شوند، از هر جای برنامه (هر کلاس و پکیج) قابل دسترسی هستند.
- مثال:

public class MyClass {
public int myNumber = 10;

public void printMessage() {
System.out.println("Hello, World!");
}
}

- 🔍 خلاصه: اعضای public از همه جا در دسترس هستند.

2. `private`:
- اعضایی که با private تعریف می‌شوند، تنها از داخل همان کلاس قابل دسترسی هستند و از بیرون کلاس نمی‌توان به آن‌ها دسترسی داشت.
- مثال:

public class MyClass {
private int myNumber = 10;

private void printMessage() {
System.out.println("Hello, World!");
}
}

- 🔍 خلاصه: اعضای private فقط از داخل همان کلاس قابل دسترسی هستند.

3. `static`:
- اعضای static به کلاس تعلق دارند و نیازی به ایجاد یک شیء از کلاس برای دسترسی به آن‌ها نداریم. به عبارت دیگر، اعضای static با کلاس مرتبط هستند نه با شیء.
- مثال:

public class MyClass {
public static int myStaticNumber = 5;

public static void printStaticMessage() {
System.out.println("This is a static method.");
}
}

public class Main {
public static void main(String[] args) {
System.out.println(MyClass.myStaticNumber); // دسترسی به متغیر استاتیک
MyClass.printStaticMessage(); // دسترسی به متد استاتیک
}
}

- 🔍 خلاصه: اعضای static بدون نیاز به ساخت شیء از کلاس قابل دسترسی هستند.

🚀 تفاوت‌ها:
1. `public`:
دسترسی از هر جای برنامه (کلاس‌ها و پکیج‌ها).
2. `private`:
دسترسی فقط از داخل همان کلاس.
3. `static`:
اعضای کلاس که نیازی به ساخت شیء ندارند و به طور مستقیم از کلاس قابل دسترسی هستند.

📚 کاربردها:
- از `public` برای اعضایی که نیاز دارید همه جا دسترسی داشته باشند استفاده کنید.
- از `private` برای اطلاعات حساس یا متدهایی که فقط در همان کلاس استفاده می‌شوند.
- از `static` برای اعضایی که باید به کل کلاس وابسته باشند (نه به هر شیء جداگانه).

🔔 نکته مهم: اعضای static می‌توانند هم public و هم private باشند، بسته به اینکه دسترسی به آن‌ها چگونه باید باشد.

🆔 @javapro_ir
🆔 @group_javapro

آموزش ️️برنامه نویسی جاوا | Java

13 Oct, 14:10


📢 موضوع -> توابع در جاوا

در جاوا، توابع (یا همان متدها) نقش مهمی در سازمان‌دهی کدها و استفاده مجدد از آن‌ها دارند. توابع بلوک‌هایی از کد هستند که برای انجام یک وظیفه خاص استفاده می‌شوند. در ادامه به انواع توابع و چگونگی نوشتن آن‌ها می‌پردازیم.

انواع توابع در جاوا:
1. توابع بدون ورودی و خروجی:
این توابع نه ورودی دریافت می‌کنند و نه مقداری برمی‌گردانند.


public void printMessage() {
System.out.println("Hello, World!");
}


2. توابع با ورودی ولی بدون خروجی:
این توابع مقداری به عنوان ورودی دریافت می‌کنند، اما مقداری برنمی‌گردانند.


public void greetUser(String name) {
System.out.println("Hello, " + name);
}


3. توابع بدون ورودی ولی با خروجی:
این توابع مقداری برمی‌گردانند، ولی ورودی دریافت نمی‌کنند.


public int getNumber() {
return 5;
}


4. توابع با ورودی و خروجی:
این توابع هم ورودی دریافت می‌کنند و هم مقداری برمی‌گردانند.


public int sum(int a, int b) {
return a + b;
}


چگونه یک تابع در جاوا بنویسیم؟
برای نوشتن یک تابع در جاوا، باید ابتدا نوع خروجی (مثل int, void, String و غیره)، نام تابع و سپس پارامترها (در صورت نیاز) را مشخص کنید. پس از آن کدهای مربوط به انجام وظیفه درون بدنه تابع نوشته می‌شوند.

مثالی از یک تابع با ورودی و خروجی:


public class Main {
public static void main(String[] args) {
int result = sum(5, 3);
System.out.println("The result is: " + result);
}

public static int sum(int a, int b) {
return a + b;
}
}


در این مثال، تابع sum دو عدد را به عنوان ورودی دریافت کرده و حاصل‌جمع آن‌ها را به برنامه بازمی‌گرداند.

📌 نکته: برای تعریف تابع در جاوا، کلمه کلیدی public یا private (دسترسی) و static (در صورت نیاز به استفاده بدون ایجاد شیء) می‌تواند به کار رود.


🆔 @javapro_ir
🆔 @group_javapro