09982292579
info@mehraeen.ac.ir
فارسی پرچم
فارسی
یک زبان را انتخاب کنید
فارسی پرچم
فارسی
0
دسته ها
خانه تقویم‌آموزشی مدرس وبلاگ چارت‌‌دروس تماس‌با‌ما درباره‌ما انجمن‌ها
برنامه سازی پیشرفته

جلسه 1 آشنایی با زبان جاوا

خلاصه نکات کلیدی دوره: جاوا یک زبان شیءگرا، مستقل از پلتفرم و قدرتمند است. JVM نقش حیاتی در اجرای کدهای جاوا دارد. ساختارهای کنترلی (if, for, while) و انواع داده‌ها اساس برنامه‌نویسی هستند. مفاهیم OOP (کلاس، شیء، کپسوله‌سازی، وراثت، پلی‌مورفیسم) برای نوشتن کدهای ماژولار و قابل نگهداری ضروری‌اند. Collections Framework ابزارهای کارآمدی برای مدیریت مجموعه‌ای از داده‌ها فراهم می‌کند. مدیریت استثناها برای نوشتن برنامه‌های پایدار و مقاوم در برابر خطا الزامی است. توانایی کار با فایل‌ها برای ذخیره و بازیابی داده‌ها کاربرد فراوانی دارد.

مقدمه و تاریخچه جاوا


  • تیتر: جاوا چیست و چرا اهمیت دارد؟

  • تاریخچه مختصر جاوا (پیدایش، اهداف اولیه).

  • ویژگی‌های کلیدی جاوا: شیءگرایی، مستقل از پلتفرم (Write Once, Run Anywhere)، امنیت، کارایی.

  • کاربردهای جاوا: توسعه وب (سمت سرور)، اپلیکیشن‌های موبایل (اندروید)، نرم‌افزارهای دسکتاپ، بازی‌ها، سیستم‌های بزرگ سازمانی.

  • مثال: مقایسه جاوا با زبان‌های دیگر (مثل C++ یا Python) از نظر سینتکس، فلسفه و کاربرد.

  • نکات کلیدی:

  • JVM (Java Virtual Machine) و نقش آن در استقلال از پلتفرم.

  • JDK (Java Development Kit) و JRE (Java Runtime Environment).


بخش ۲: نصب و راه‌اندازی محیط توسعه


  • تیتر: آماده‌سازی محیط برنامه‌نویسی جاوا

  • نصب JDK.

  • معرفی IDEهای محبوب (مانند IntelliJ IDEA, Eclipse, VS Code) و نحوه نصب یکی از آن‌ها.

  • نوشتن اولین برنامه جاوا (“Hello, World!”).

  • مثال:

java
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}

  • تمرین پایان فصل:


  1. JDK را نصب کنید و از نصب صحیح آن اطمینان حاصل کنید.

  2. یک IDE انتخاب کرده و نصب کنید.

  3. برنامه “Hello, World!” را با نام خودتان اجرا کنید (مثلاً “Hello, [Your Name]!”).


بخش ۳: مبانی زبان جاوا


  • تیتر: ساختار اولیه برنامه‌ها و انواع داده‌ها

  • قواعد نام‌گذاری (کلاس‌ها، متغیرها، متدها).

  • انواع داده‌های اولیه (Primitive Data Types): int, float, double, boolean, char, byte, short, long.

  • متغیرها (Variables) و ثابت‌ها (Constants).

  • عملگرها (Operators): حسابی، رابطه‌ای، منطقی، انتساب.

  • ساختارهای کنترلی جریان (Control Flow Statements):

  • شرطی: if, else if, else, switch.

  • تکرار: for, while, do-while.

  • مثال:

java
public class BasicJava {
public static void main(String[] args) {
int age = 25;
double salary = 50000.50;
boolean isStudent = true;

if (age >= 18 && salary > 30000) {
System.out.println("Eligible for loan.");
} else {
System.out.println("Not eligible.");
}

for (int i = 0; i < 5; i++) {
System.out.println("Count: " + i);
}
}
}

  • تمرین پایان فصل:


  1. برنامه‌ای بنویسید که دو عدد را از ورودی گرفته و حاصل جمع، تفریق، ضرب و تقسیم آن‌ها را نمایش دهد.

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

  3. با استفاده از حلقه for، اعداد ۱ تا ۱۰ را به همراه مربعشان نمایش دهید.


بخش ۴: برنامه‌نویسی شیءگرا در جاوا (مفاهیم پایه)


  • تیتر: کلاس‌ها، اشیاء و ویژگی‌های اصلی OOP

  • مفهوم کلاس (Class) و شیء (Object).

  • تعریف کلاس: فیلدها (Fields) و متدها (Methods).

  • ایجاد شیء از روی کلاس (Instantiation).

  • سازنده‌ها (Constructors): نقش و انواع آن.

  • کلمه کلیدی this.

  • مفاهیم کپسوله‌سازی (Encapsulation): public, private, protected.

  • Getter و Setter ها.

  • مثال:

java
class Dog {
String name;
String breed;

// Constructor
public Dog(String name, String breed) {
this.name = name;
this.breed = breed;
}

// Method
public void bark() {
System.out.println(name + " says Woof!");
}

public String getName() {
return name;
}
}

public class OOPBasics {
public static void main(String[] args) {
Dog myDog = new Dog("Buddy", "Golden Retriever");
myDog.bark();
System.out.println("My dog's name is: " + myDog.getName());
}
}

  • تمرین پایان فصل:


  1. کلاسی به نام Book با فیلدهای title (String)، author (String) و pages (int) تعریف کنید. یک سازنده برای مقداردهی اولیه این فیلدها بنویسید.

  2. متدهایی برای نمایش اطلاعات کتاب (displayInfo) و دریافت تعداد صفحات (getPages) اضافه کنید.

  3. در متد main، یک شیء از کلاس Book ساخته و اطلاعات آن را نمایش دهید.


بخش ۵: مفاهیم پیشرفته‌تر OOP


  • تیتر: وراثت، پلی‌مورفیسم و انتزاع

  • وراثت (Inheritance): کلمه کلیدی extends. کلاس والد (Superclass) و کلاس فرزند (Subclass).

  • super keyword.

  • پلی‌مورفیسم (Polymorphism): Overloading و Overriding متدها.

  • کلاس‌های انتزاعی (Abstract Classes) و متدهای انتزاعی (Abstract Methods).

  • واسط‌ها (Interfaces): تعریف و پیاده‌سازی.

  • مثال:

java
// Superclass
class Animal {
public void makeSound() {
System.out.println("The animal makes a sound");
}
}

// Subclass
class Cat extends Animal {
@Override
public void makeSound() {
System.out.println("The cat meows");
}
}

public class PolymorphismDemo {
public static void main(String[] args) {
Animal myAnimal = new Animal();
Animal myCat = new Cat(); // Polymorphism

myAnimal.makeSound(); // Output: The animal makes a sound
myCat.makeSound(); // Output: The cat meows
}
}

  • تمرین پایان فصل:


  1. یک کلاس انتزاعی به نام Shape با یک متد انتزاعی calculateArea() تعریف کنید.

  2. دو کلاس Circle و Rectangle بسازید که از Shape ارث‌بری کنند و متد calculateArea() را برای هر کدام پیاده‌سازی کنید.

  3. در متد main، نمونه‌هایی از Circle و Rectangle ساخته و مساحت آن‌ها را محاسبه و نمایش دهید.


بخش ۶: مجموعه‌ها (Collections) و استثناها (Exceptions)


  • تیتر: کار با داده‌های ساختاریافته و مدیریت خطا

  • مجموعه‌های جاوا (Java Collections Framework):

  • List (مثل ArrayList, LinkedList).

  • Set (مثل HashSet, TreeSet).

  • Map (مثل HashMap, TreeMap).

  • مدیریت استثناها (Exception Handling):

  • try, catch, finally.

  • استثناهای Checkable و Uncheckable.

  • کلمه کلیدی throw.

  • مثال:

java
import java.util.ArrayList;
import java.util.List;

public class CollectionsAndExceptions {
public static void main(String[] args) {
List<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");

try {
System.out.println("Second name: " + names.get(1));
System.out.println("Fourth name: " + names.get(3)); // This will cause an IndexOutOfBoundsException
} catch (IndexOutOfBoundsException e) {
System.err.println("Error: Index out of bounds. " + e.getMessage());
} finally {
System.out.println("List processing finished.");
}
}
}

  • تمرین پایان فصل:


  1. یک ArrayList از اعداد صحیح بسازید و ۱۰ عدد تصادفی را به آن اضافه کنید. سپس مجموع اعداد موجود در لیست را محاسبه و نمایش دهید.

  2. برنامه‌ای بنویسید که سعی کند یک عدد را بر صفر تقسیم کند و با استفاده از try-catch، خطای ArithmeticException را مدیریت کند.


بخش ۷: مقدمه‌ای بر برنامه‌نویسی فایل (File I/O)


  • تیتر: خواندن و نوشتن اطلاعات در فایل‌ها

  • مفاهیم اولیه کار با فایل‌ها در جاوا.

  • کلاس‌های File, FileReader, FileWriter, BufferedReader, BufferedWriter.

  • خواندن اطلاعات از یک فایل متنی.

  • نوشتن اطلاعات در یک فایل متنی.

  • مثال:

java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class FileIOExample {
public static void main(String[] args) {
// Writing to a file
try (PrintWriter writer = new PrintWriter(new FileWriter("output.txt"))) {
writer.println("This is the first line.");
writer.println("This is the second line.");
} catch (IOException e) {
System.err.println("Error writing to file: " + e.getMessage());
}

// Reading from a file
try (BufferedReader reader = new BufferedReader(new FileReader("output.txt"))) {
String line;
System.out.println("Reading from output.txt:");
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
System.err.println("Error reading from file: " + e.getMessage());
}
}
}

  • تمرین پایان فصل:


  1. برنامه‌ای بنویسید که لیستی از نام دانشجوها را از یک فایل متنی (students.txt) بخواند و آن‌ها را به ترتیب الفبا مرتب کرده و در فایل دیگری (sorted_students.txt) ذخیره کند.


خلاصه نکات کلیدی دوره:










































  • جاوا یک زبان شیءگرا، مستقل از پلتفرم و قدرتمند است.

  • JVM نقش حیاتی در اجرای کدهای جاوا دارد.

  • ساختارهای کنترلی (if, for, while) و انواع داده‌ها اساس برنامه‌نویسی هستند.

  • مفاهیم OOP (کلاس، شیء، کپسوله‌سازی، وراثت، پلی‌مورفیسم) برای نوشتن کدهای ماژولار و قابل نگهداری ضروری‌اند.

  • Collections Framework ابزارهای کارآمدی برای مدیریت مجموعه‌ای از داده‌ها فراهم می‌کند.

  • مدیریت استثناها برای نوشتن برنامه‌های پایدار و مقاوم در برابر خطا الزامی است.

  • توانایی کار با فایل‌ها برای ذخیره و بازیابی داده‌ها کاربرد فراوانی دارد.
درس متنی 1/19
در حال مشاهده
جلسه 1 آشنایی با زبان جاوا