preloder
آموزشاخبار

غلط‌نامه

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

در حال حاضر، اسلایدها (فایل pdf و ppt) به روزرسانی شده و اصلاحات لازم در آن‎ها صورت گرفته است.

هم‌چنین، در صفحه آموزش جاوا، در بخش‎هایی که نیاز به اصلاحات داشتند، یک فایل با عنوان غلط‌نامه اضافه شده است که تصریح می‎کند در دقیقه چند از فیلم آموزشی، نکته مورد نظر به اشتباه بیان شده است. 

به این دو نکته، در جلسات ۶، ۷، ۱۰ و ۱۴ فیلم‎های آموزشی اشاره شده و برای این جلسات غلط‌نامه‌ای منتشر شده است. 

به علاقه‌مندان توصیه می‌شود این غلط‌نامه‌ها را مطالعه کنند و این دو نکته اشتباه را در ذهن خود نیز تصحیح کنند.

در ادامه نیز به اختصار این دو نکته را ذکر می‎کنیم:

۱- نکته اول، در مورد نحوه مقداردهی اولیه اشیا و به طور خاص، ترتیب اجرای مقداردهی درخط و بلوک‌های مقداردهی است.

در فیلم جلسه ۶ و ۷ آموزشی و هم‌چنین نسخه اول اسلایدهای این دو جلسه، به اشتباه بیان شده است که همواره ابتدا مقداردهی درخط و سپس بلوک‌های مقداردهی اجرا می‌شوند. در حالی که مقداردهی درخط و بلوک مقداردهی، اولویتی بر هم ندارند و به همان ترتیبی که در کد نوشته شده‌اند، اجرا می‌شوند.

۲- نکته دوم، در مورد اضافه کردن اشیا به Set است.

در فیلم‌ جلسه ۱۰ و ۱۴ آموزشی و هم‌چنین نسخه اول اسلایدهای این دو جلسه، به اشتباه اشاره شده است که در تلاش برای اضافه کردن شی تکراری به Set، شی اولیه حذف شده و شی جدید اضافه می‌شود. در حالی که اینطور نیست و شی جدید به Set اضافه نشده و در واقع Set تغییری نمی‌کند.

 

لطفاً اگر احیاناً اشتباه دیگری در فیلم‌های جاواکاپ می‌شناسید، حتماً با ما در میان بگذارید. مثلاً ذیل همین مطلب کامنت بگذارید.

.

.

.

با ما همراه باشید

آدرس کانال تلگرام: JavaCupIR@

آدرس اکانت توییتر: JavaCupIR@

آدرس صفحه اینستاگرام: javacup.ir

آدرس گروه لینکدین: Iranian Java Developers

[تعداد: 4    میانگین: 5/5]
برچسب ها
نمایش بیشتر

نوشته های مشابه

‫۸ نظرها

  1. در ویدیوی اموزش ۱۴ مربوط به containerها در اسلاید ۱۲ در مورد متد remove عبارت remove(new student(“ALI ALAVI”) یک شی جدید داخل متد ساخته میشه و چون این شی جدید داخل ARRAYLIST نیست چیزی حذف نمیشه ولی تو توضیحات ویدیو گفته میشه چون متد Remove .get)0( صدا زده شده چیزی حذف نمیشه این خیلی غلط اندازه ممنون میشم بررسی کنید

    1. سلام
      مطلبی که فرمودید بررسی شد. نکته‎ای که شما می‎فرمایید در شرایطی که متد equals برای کلاس Student بازنویسی نشده باشد، کاملا صحیح است.
      در اسلایدها هم پیاده‎سازی کلاس Student آورده نشده اما در توضیحات فیلم، فرض شده که دو شی Student در صورتی که نام یکسانی داشته باشند، با هم برابرند و اگر در خط قبلی، ALI ALAVI حذف نشده بود، در این خط حذف می‎شد.
      ممنون که به این نکته اشاره کردید.
      سعی می‎می‎کنیم در آینده به نحوی این موضوع را شفاف‎سازی کنیم.

  2. من سعی میکنم نکته ها و سوال های خوبی که بهش بر میخورم رو توی کانال تلگرام زیر بزارم
    اگه کسی هم سوال خوب داشت میتونه ارسال کنه برای من تا توی کانال بزارم
    چون اینجا کد جاوا رو خوب نشون نمیده
    t.me/java_cup_questions

    اینم یه سوال خیلی خوب
    What is the result of the following code?
    ۱: public abstract class Bird {
    ۲: private void fly() { System.out.println(“Bird is flying”); }
    ۳: public static void main(String[] args) {
    ۴: Bird bird = new Pelican();
    ۵: bird.fly();
    ۶: }
    ۷: }
    ۸: class Pelican extends Bird {
    ۹: protected void fly() { System.out.println(“Pelican is flying”); }
    ۱۰: }

    A. Bird is flying
    B. Pelican is flying
    C. The code will not compile because of line 4.
    D. The code will not compile because of line 5.
    E. The code will not compile because of line 9

  3. جناب آقای علی اکبری بسیاری از تازه کاران حوزه جاوا من جمله خودم واقعا مدیون تلاشهای شما و دست اندرکاران جاواکاپ و تهیه کننده گان ویدئوهای جاواکاپ هستیم. این دقت و مسئولیت پذیری شما در بیان مطالب آموزشی و اصلاح آن واقعا موردی نایاب است. واقعا سپاسگذار شما و همکاران محترمتون هستم. به امید موفقیت روز افزون این انجمن

  4. سلام و عرض ادب
    خیلی خیلی ممنونم از زحماتی که میکشین
    من میخوام نکاتی که به نظرم برای آزمون جالب هست رو بنویسم اگه اشکالی نداره
    از دوستانی که برای آزمون آماده میشن هم خواهش میکنم اگه وقت کردن این کار رو انجام بدن

    یه نکته که فکر میکنم توی فیلم های جاواکاپ پوشش داده نشده method hiding هست
    یه تفاوتی بین override کردن متد و hide کردن متد وجود داره .
    در override کردن متد , متد override شده هم در فراخوانی های داخل کلاس پدر و هم در فراخوانی های داخل کلاس فرزند استفاده میشه .
    ولی در hide کردن متد , متد hide شده فقط در فراخوانی های داخل کلاس فرزند استفاده میشه

    به عنوان مثال خروجی برنامه زیر چیه

    class Parent {
    public static void a() { System.out.println(“Parent static”); }
    public void b() { System.out.println(“Parent nonStatic”); }
    public void f1() { a(); b();}
    }

    class Child extends Parent {
    public static void a() { System.out.println(“Child static”); }
    public void b() { System.out.println(“Child nonStatic”); }
    public void f2() { a(); b();}
    }

    public class CodeForces {
    public static void main(String[] args) {
    Child c = new Child();
    Parent p = c;
    p.f1();
    c.f2();
    }
    }

    1. من سوال هایی که به نظرم جالب هست و آموزنده رو توی کانال زیر میزام
      فعلا فقط یک سوال گذاشتم که اگه کسی عضو شد بازم بزارم
      اگه سوال یا نکته جالب دارید هم میتونید برای من ارسال کنید تا توی کانال بزارم
      اگه کسی علاقه داشت هم میتونیم گروه درست کنیم تا از هم دیگه سوال بپرسیم

      t.me/java_cup_questions

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا