Fara_Java | فرا جاوا: آموزش برنامه‌نویسی جاوا
532 subscribers
53 photos
5 videos
228 links
🧑‍💻 فرا جاوا — آموزش برنامه‌نویسی جاوا

🔸 آموزش زبان Java
🔸 کار با IntelliJ IDEA
🔸 کار با فریمورک Spring
🔸 ساخت رابط گرافیکی با JavaFX
🔸 و صدها ساعت آموزش جذاب

🚀 برای مشاهده تمام آموزش‌های ویدیویی، روی لینک زیر بزنید:👇
fdrs.ir/tc/java
Download Telegram
✳️ عبارت‌های لامبدا (lambda) در جاوا ۸ — مرور سریع

‏اگر برنامه‌نویس جاوا هستید یا علاقه‌مندید که اطلاعات بیشتری در مورد عبارت‌های لامبدا در جاوا ۸ بدانید، در این نوشته با ما همراه باشید تا نگاهی به ساختار لامبدا و استفاده‌های آن داشته باشیم.

══ فهرست مطالب ══

‏ ○ برخی عبارت‌های ساده لامبدا
‏ ○ کدنویسی تمیز و فشرده
‏ ○ استفاده از لامبدا در برنامه‌نویسی رابط کاربری گرافیکی (GUI)


🔸 برخی عبارت‌های ساده لامبدا

‏در ادامه برخی نمونه‌های ساده از عبارت‌های لامبدا را ارائه کرده‌ایم.

‏عبارت لامبدای زیر دو عدد x و y را گرفته و مجموع آن‌ها را محاسبه می‌کند:

‏نوع پارامتر برای نمایش خلاصه‌تر حذف شده است:


🔸 کدنویسی تمیز و فشرده

‏با استفاده از عبارت‌های لامبدا می‌توان کد مرتب و فشرده‌ای نوشت. بدین منظور کلاس‌های جاوا ۸ استفاده گسترده‌ای از لامبدا داشته‌اند.

‏کلاس‌های کلکسیون مانند List، Set، Queue و امثال آن اینترفیس Iterable را پیاده‌سازی کرده‌اند که ایجاد حلقه بر روی عناصر را آسان‌تر ساخته است.

‏یک فهرست نام‌ها اعلان می‌کنیم:



مطالعه ادامه مطلب 👇👇

🔗 عبارت‌های لامبدا (lambda) در جاوا ۸ — مرور سریع — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی جاوا

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی جاوا را در کانال اختصاصی [@Fara_Java] دنبال کنید. 👇

@Fara_Java — مطالب و آموزش‌های برنامه‌نویسی جاوا فرادرس

👍1
✳️ اتصال به پایگاه داده MySQL با استفاده از زبان جاوا — آموزش گام به گام

‏در زبان جاوا، قابلیتی با عنوان «اتصال پایگاه داده جاوا» (Java DataBase Connectivity) یا به طور مخفف «JDBC»، به عنوان بخشی از «کیت توسعه نرم‌افزار» (Software Development Kit) یا اصطلاحاً «SDK» ارائه می‌شود. با استفاده از این «رابط کاربردی برنامه‌نویسی» (Application Programming Interface) یا «API»، اتصال به یک پایگاه داده و اجرای عملیات متداولی مانند انجام «کوئری» (Query)، درج اطلاعات، به‌روزرسانی و حذف سوابق، بسیار آسان خواهد شد.

══ فهرست مطالب ══

‏ ○ گام اول: نصب درایور پایگاه داده MySQL
‏ ○ گام دوم: ایجاد یک پایگاه داده نمونه
‏ ○ گام سوم: تنظیم مسیر کلاس جاوا
‏ ○ گام چهارم: اتصال MySQL از طریق جاوا
‏ ○ گام پنجم: اجرای کوئری پایگاه داده توسط جاوا


🔸 گام اول: نصب درایور پایگاه داده MySQL

‏همان‌طور که در بالا نیز توضیح داده شد، برای اتصال به پایگاه داده MySQL، به درایور JDBC برای MySQL نیاز است. نام این درایور «Connector/J» است و می‌توانید آن را از سایت MySQL دانلود کنید. پس از دانلود فایل در یکی فرمت‌های ZIP یا TAR.GZ، محتوای آن را استخراج کرده و فایل «mysql-connector-java–bin.jar» را درون یک محل مناسب کپی کنید. برای اجرای تمام کدهایی که از درایور JDBC استفاده می‌کنند، وجود این فایل ضروری است.


🔸 گام دوم: ایجاد یک پایگاه داده نمونه

‏پایگاه داده MySQL را دانلود و آن را در یک محل قابل دسترس نصب کنید. اکنون می‌خواهیم برای استفاده از MySQL به منظور اتصال و اجرای کوئری‌ها، یک پایگاه داده نمونه بسازیم. در ابتدا، باید با استفاده از یک «کلاینت» (Client) دلخواه به پایگاه داده متصل شد و با اجرای دستورات زیر، پایگاه داده نمونه را ایجاد کرد.

‏علاوه بر این، برای اتصال به پایگاه داده به نام کاربری و کلمه عبور نیاز خواهد بود؛ مگر اینکه بخواهید به عنوان ادمین این ارتباط را برقرار کنید (معمولاً چنین کاری توصیه نمی‌شود). کد زیر، یک کاربر با نام «testuser» را ایجاد می‌کند که می‌تواند با استفاده از کلمه عبور «securepwd» و از طریق ماشینی که پایگاه داده MySQL در آن اجرا می‌شود (localhost)، اتصال را برقرار کند.

‏اگر قصد دارید به پایگاه داده‌ای متصل شوید که در یک ماشین دیگر (remotemc) اجرا می‌شود، باید از کد زیر استفاده کنید (عبارت remotemc می‌تواند نام یک سرویس میزبان یا یک آدرس آی‌پی باشد):



مطالعه ادامه مطلب 👇👇

🔗 اتصال به پایگاه داده MySQL با استفاده از زبان جاوا — آموزش گام به گام — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی جاوا

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی جاوا را در کانال اختصاصی [@Fara_Java] دنبال کنید. 👇

@Fara_Java — مطالب و آموزش‌های برنامه‌نویسی جاوا فرادرس

✳️ متدهای جاوا — به زبان ساده

‏متدهای جاوا بخشی از این زبان هستند که می‌توان منطق تجاری یک اپلیکیشن را با آن‌ها تعریف کرد. متدها تعامل‌های میان داده‌های موجود در یک شیء را تعریف می‌کنند. در این راهنما با ساختار متدهای جاوا آشنا می‌شویم و تعریف امضای متد و شیوه فراخوانی و overload متدها را در جاوا خواهیم آموخت.

══ فهرست مطالب ══

‏ ○ ساختار متدهای جاوا
‏ ○ امضای متد
‏ ○ فراخوانی متد
‏ ○ Overload کردن متد
‏ ○ سخن پایانی


🔸 ساختار متدهای جاوا

‏ابتدا باید اشاره کنیم که یک متد دارای شش بخش است:

‏– مادیفایر دسترسی: به طور اختیاری می‌توان یک مادیفایر دسترسی برای متد تعریف کرد که بخش‌هایی از اپلیکیشن که امکان دسترسی به این متد را دارند تعیین می‌کند.

‏– نوع بازگشتی: در صورتی که متد بازگشتی داشته باشد، نوع مقدار بازگشت یافته از سوی متد را تعریف می‌کند.

‏– شناسه متد: نامی است که به متد می‌دهیم.

‏– لیست پارامتر: یک لیست جدا شده با کاما از ورودی‌های متد است.

‏– لیست استثنا: یک لیست اختیاری از استثناهایی است که متد می‌تواند تولید کند.

‏– بدنه متد: تعریف منطق متد است و می‌تواند خالی نیز باشد.

‏به مثال زیر توجه کنید:

‏در ادامه هر کدام از شش بخش مختلف متدها را به تفصیل مورد بررسی قرار می‌دهیم.


🔸 امضای متد

‏امضای متد چنان که از تعریفش برمی‌آید از دو مؤلفه تشکیل یافته است که شامل نام متد و لیست پارامتر است. در ادامه یک متد ساده می‌نویسیم:

‏امضای این متد به صورت getName(String firstName, String lastName) است.

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



مطالعه ادامه مطلب 👇👇

🔗 متدهای جاوا — به زبان ساده — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی جاوا

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی جاوا را در کانال اختصاصی [@Fara_Java] دنبال کنید. 👇

@Fara_Java — مطالب و آموزش‌های برنامه‌نویسی جاوا فرادرس

✳️ متدهای wait و notify در جاوا — از صفر تا صد

‏در این مقاله به بررسی یکی از بنیادی‌ترین سازوکارهای جاوا می‌پردازیم که «همگام‌سازی نخ» (Thread Synchronization) ‌نام دارد. ابتدا برخی اصطلاح‌های مرتبط با همزمانی را معرفی می‌کنیم. سپس یک اپلیکیشن ساده می‌نویسیم که مشکلات همزمانی در آن بررسی می‌شوند. هدف از ین مقاله آشنایی بیشتر با متدهای wait و notify در جاوا است.

══ فهرست مطالب ══

‏ ○ همگام‌سازی نخ در جاوا
‏ ○ بلوک‌های محافظت شده در جاوا
‏ ○ متد ()wait
‏ ○ متدهای ()notify و ()notifyAll
‏ ○ مسئله همگام‌سازی فرستنده-گیرنده
‏ ○ چرا باید ()wait را درون یک حلقه while قرار دهیم؟
‏ ○ چرا باید متدهای send()‎ و receive()‎ را همگام‌سازی کنیم؟
‏ ○ سخن پایانی


🔸 همگام‌سازی نخ در جاوا

‏در محیط چندنخی، ‌نخ‌های مختلف تلاش می‌کنند تا منابع یکسانی را ویرایش کنند. اگر نخ‌ها به درستی مدیریت نشوند، این وضعیت منجر به مشکلاتی در یکپارچگی می‌شود.


🔸 بلوک‌های محافظت شده در جاوا

‏یکی از ابزارهایی که می‌توان در جاوا برای هماهنگ کردن کارها روی نخ‌های مختلف استفاده کرد، «بلوک‌های محافظ» (Guarded Blocks) نام دارند. این بلوک‌ها پیش از ازسرگیری یک اجرا، ‌شرط خاصی را بررسی می‌کنند. بدین ترتیب می‌توان کارهای زیر را انجام داد:

‏– ()Object.wait – برای تعلیق یک نخ.

‏– ()Object.notify – برای ازسرگیری یک نخ.

‏این موضوع را با مشاهده نمودار زیر که چرخه عمر یک نخ را به تصویر کشیده است، بهتر درک می‌کنیم:

‏توجه کنید که روش‌های مختلفی برای کنترل کردن چرخه عمر وجود دارند؛ ‌با این حال در این مقاله قصد داریم صرفاً روی ()wait و ()notify تمرکز کنیم.



مطالعه ادامه مطلب 👇👇

🔗 متدهای wait و notify در جاوا — از صفر تا صد — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی جاوا

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی جاوا را در کانال اختصاصی [@Fara_Java] دنبال کنید. 👇

@Fara_Java — مطالب و آموزش‌های برنامه‌نویسی جاوا فرادرس

✳️ کدنویسی جاوا در پلتفرم اندروید — بخش اول

‏سیستم‌عامل اندروید (Android)، یکی از محبوب‌ترین سیستم‌عامل‌های تلفن همراه است. برای برنامه‌نویسی برنامه‌های اندرویدی می‌توان از تعداد زیادی از زبان‌های برنامه‌نویسی استفاده کرد. با این حال، گوگل (Google) توسعه‌دهندگان را به استفاده از زبان جاوا تشویق می‌کند. اگرچه، زبان برنامه‌نویسی جاوا مورد بحث در این مقاله، دقیقاً مشابه با زبان جاوا در دیگر پلتفرم‌ها نیست. در اینجا، یک سری تفاوت‌های ظریف و ویژگی‌های متفاوتی وجود دارد که یادگیری آن‌ها برای یک توسعه‌دهنده اندروید بسیار مهم است.

══ فهرست مطالب ══

‏ ○ جاوا و اندروید
‏ ○ کدنویسی جاوا برای پلتفرم اندروید متفاوت است
‏ ○ مقدمه‌ای بر کاربرد زبان جاوا در اندروید


🔸 جاوا و اندروید

‏نکته جالب در مورد اندروید این است که این پلتفرم از «جاوای محض» استفاده نمی‌کند. شاید این موضوع کمی عجیب به نظر برسد زیرا اگر شما کدهای یک برنامه قدیمی جاوا را با یک برنامه مشابه اندرویدی مقایسه کنید، پیدا کردن تفاوت‌های بین این دو دشوار خواهد بود. با اینکه کدنویسی و توسعه یک برنامه اندرویدی به نحوی مشابه با توسعه جاوا است، شباهت‌های موجود، در هنگام «کامپایل» (Compile) و اجرای برنامه ناگهان از بین خواهد رفت. از این‌رو، دلیل اصلی مواجه با یک محیط ناشناخته در هنگام کار با اندروید، نحوه مدیریت برنامه‌های اندرویدی در حین فرآیند کامپایل کردن است.

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

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


🔸 کدنویسی جاوا برای پلتفرم اندروید متفاوت است

‏کامپایل کردن یک برنامه برای اندروید، مسیری مشابه با تبدیل فایل‌های جاوا به بایت‌کد را دنبال می‌کند. زمانی که برنامه (متشکل از بایت‌کد) بر روی یک دستگاه نصب می‌شود، مرحله دوم کامپایل در حین فرآیند نصب رخ می‌دهد. بایت‌کد برنامه به کد ماشین بهینه‌شده برای دستگاه اندرویدی تبدیل می‌شود و عملکرد زمان اجرای برنامه را بهبود می‌بخشد. این فرایند با عنوان «کامپایل جلوتر از زمان» یا (Ahead of Time – AOT) شناخته و امکان آن توسط «ماشین مجازی اندروید» (Android Runtime) فراهم شده است. مفهوم AOT، در بسیاری از زبان‌های برنامه‌نویسی مورد استفاده قرار می‌گیرد.

‏کامپایل AOT، تنها در اندروید KitKat (نسخه ۴.۴) و نسخه‌های بالاتر قابل مشاهده است اما قابلیت سازگاری با نسخه‌های پیشین را نیز ارائه می‌کند. نسخه‌های ابتدایی اندروید از یک ماشین مجازی دیگر با عنوان «Dalvik» استفاده می‌کردند. Dalvik نیز مانند ART، با ایجاد تغییر و تبدیل بایت‌کد جاوا، آن‌ها را به شکل خاصی تبدیل می‌کرد. این تغییرات متعدد بهره‌وری، به منظور بهینه‌سازی برنامه (برنامه‌های دستگاه‌های اندرویدی کم قدرتی که برای Dalvik طراحی شده بودند) صورت می‌گرفت.



مطالعه ادامه مطلب 👇👇

🔗 کدنویسی جاوا در پلتفرم اندروید — بخش اول — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی جاوا

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی جاوا را در کانال اختصاصی [@Fara_Java] دنبال کنید. 👇

@Fara_Java — مطالب و آموزش‌های برنامه‌نویسی جاوا فرادرس