انجمن جاواکاپ
2.33K subscribers
825 photos
12 videos
17 files
152 links
کانال رسمی انجمن جاواکاپ

ادمین: @JavaCupAdmin

رسانه‌های جاواکاپ👇
سایت
javacup.ir

اینستاگرام
instagram.com/javacup.ir

لینکدین
shorturl.at/csty2
shorturl.at/atBN7

توییتر
twitter.com/javacupir
Download Telegram
#مقاله #در_سایت_جاواکاپ_بخوانید

در این مقاله با قابلیت جدید Sealed Class یا کلاس مهر و مو‌م‌شده در جاوا ۱۵ آشنا می‌شویم.

کلاس‌های مهر و موم‌شده مهم‌ترین تغییر جاوا ۱۵ بوده و امکانات شی‌گرایی جاوا را بسیار بهتر کرده‌ است. با اضافه شدن این امکان به جرأت می‌توان گفت جاوا شی‌گراترین زبان برنامه‌نویسی موجود است. برای تکمیل این ویژگی، قرار است امکان switch زدن روی نوع کلاس اشیا هم به جاوا اضافه شود که البته قول این ویژگی و pattern matching مدت زیادی است که به برنامه‌نویس‌ها داده شده ولی هنوز به صورت رسمی به جاوا اضافه نشده‌اند.

همان‌طور که می‌دانید، هدف اصلی از وراثت در جاوا، استفاده دوباره از کد (code reuse) است. با این امکان، کلاس‌های متعدد می‌توانند از یک کلاس دیگر ارث‌بری کنند و از متد‌های از قبل تعریف‌شده آن برای خودشان استفاده کنند یا آن‌‌ها را گسترش دهند. هدف مهم دیگر این است که مدل و سلسله‌مراتبی برای درک بهتر پروژه طراحی شود.

با کمک «کلاس‌های مهر و موم‌شده»، با محدود کردن این‌که چه کلاسی می‌تواند از کلاس ما ارث‌بری کند، کارمان راحت‌تر شده است.
javacup.ir/sealed-classes/


#امید_نژادعباسی
@JavaCupIR
#مقاله #در_سایت_جاواکاپ_بخوانید

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

بهینه‌سازی زودهنگام (Premature optimization)، به معنای صرف وقت بیش از حد روی چیزیست که ممکن است اصلا نیاز نشود.

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

بهینه‌سازی زودهنگام چیزیست که باید همیشه آن را گوشه ذهن داشته باشید و چیزیست که باید همیشه در کارهای روزانه‌تان از آن دوری کنید.
javacup.ir/premature-optimizations

#روزبه_شریف_نسب
@JavaCupIR
🔅اطلاعیه برگزاری وبینار مقدمه‌ای بر Domain-Driven Desgin🔅

در انجمن DDD ایران، بار دیگر میزبان یک سخنران بین‌المللی هستیم. مارکو هایمس‌هاف (Marco Heimeshoff) توسعه دهنده ارشد نرم‌افزار، مشاور بین‌المللی، مربی و از بنیانگذاران انجمن DDD آلمان است.
در کارنامه او، سازماندهی کنفرانس KanDDDinsky آلمان و عضویت فعال در انجمن VirtualDDD را هم می‌توان دید.
مارکو در حوزه‌های توسعه چابک DDD، Functional Programming, CQRS, Event Sourcing فعالیت چشم‌گیری داشته و به تیم‌ها کمک می‌کند تا در کاربردی کردن روش‌ها و رویکردهای نوین توسعه نرم‌افزار موفق شوند.

بر همین اساس، از مارکو دعوت کرده‌ایم تا وبیناری برای ایرانیان علاقه‌مند به DDD داشته باشد با عنوان:

مقدمه‌ای بر Domain-Driven Desgin

زمان: پنج‌شنبه | ۳۰ اردی‌بهشت | ساعت ۲۰:۳۰

توجه: این وبینار به زبان انگلیسی و رایگان برگزار می‌شود.

لینک ثبت‌نام:
https://meetu.ps/e/K24rL/z9YW0/d

- انجمن DDD ایران
@DDD_IRAN
#کارآموزی_جاواکاپ
انجمن جاواکاپ از برنامه‌نویسان جوان برای حضور در یک دوره کارآموزی فشرده و متفاوت دعوت به عمل می‌آورد.
.
📍این دوره کارآموزی رایگان است و از همان نقطه شروع، با همکاری و هماهنگی شرکت‌ها پیش می‌رود و هدفش استخدام خروجی‌های دوره است. در ابتدای دوره، متقاضی با یک شرکت حامی به توافق می‌رسد تا در صورت موفقیت، در فرایند جذب وی قرار گیرد.

📍کارآموزان در قالب چند تمرین هدفمند با مطالبی متنوع و عمیق مواجه خواهند شد و یک معین در کنارشان این فرایند را راه‌بری خواهد کرد.

📍علاوه بر فناوری‌ها، روی طراحی، کیفیت کد و اخلاق کاری خوب و حرفه‌ای نیز تمرین خواهند کرد.

📍به صورت غیرحضوری برگزار می‌شود و منعی برای شرکت از سایر شهرها وجود ندارد.

📍عزیزانی که امکان همکاری تمام‌وقت دارند یا ظرف چند ماه آینده امکان همکاری تمام‌وقت داشته باشند، در اولویت هستند.

کسب اطلاعات بیشتر در خصوص این دوره و آشنایی با نحوه ثبت درخواست:
javacup.ir/internship-2/

@JavaCupIR
#مقاله
#در_سایت_جاواکاپ_بخوانید

به عنوان توسعه‌دهنده و معمار نرم‌افزار، دائما در حال فراخوانی و تجمیع سرویس‌های مختلف به وسیله APIهای REST هستیم. گاهی اوقات به دلیل طراحی ضعیف یا داکیومنت‌های کم، استفاده از این APIها بسیار سخت است. این موضوع باعث می‌شود تا برنامه‌نویسان قادر به استفاده از سرویس‌های موجود نباشند و مجبور شوند همان کارکرد را از اول پیاده‌سازی کنند.

در این مقاله، بحث‌مان را با توضیح REST و اینکه منظور از «طراحی APIهای REST» چیست، شروع می‌کنیم.

سپس ۱۲ نکته مفید برای طراحی بهتر APIهای REST را با هم مرور می‌کنیم.

javacup.ir/rest-api-best-pratice

#روزبه_شریف‌_نسب
@JavaCupIR
#مقاله
#در_سایت_جاواکاپ_بخوانید

چرا کاتلین؟
بخش اول

کاتلین در سال ۲۰۱۱ معرفی شد ولی اولین نسخه پایدار آن (نسخه ۱.۰) سال ۲۰۱۶ منتشر شد. کاتلین زبان متن‌باز و رایگانی است که توسط مهندسان JetBrains توسعه یافته‌ است.
در این سال‌ها توجهات بسیاری را جلب کرده است. مخصوصا از زمانی که گوگل اعلام کرد می‌توان از کاتلین برای توسعه برنامه‌های اندروید استفاده کرد و حتی زبان توصیه‌شده برای اندروید را کاتلین معرفی کرد.

کاتلین یک زبان مدرن با تایپ ایستا است که هم قابلیت نوشتن برنامه‌های شی‌گرا و هم تابعی را برای برنامه‌نویس فراهم می‌کند.

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

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

در بخش اول مقاله، دو مورد از این هشت مورد را با هم بررسی می‌کنیم.
۱- سینتکس تمیز و جمع و جور
۲- داشتن (تقریبا) یک تایپ‌سیستم

javacup.ir/why-kotlin-1
روزبه شریف‌نسب
@JavaCupIR
#مقاله

ایجاد آشوب یا به‌انتظار آشوب؟

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

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

🔗 لینک مقاله

📌 شما هم دانش و تجربه‌تان را از طریق جاواکاپ با دیگران به اشتراک بگذارید.

📌 از این پس، در کانال تلگرامی جاواکاپ مقالات مرتبط فارسی که لزوما در سایت جاواکاپ منتشر نشده‌اند را هم پروموت خواهیم کرد.
@JavaCupIR
🎉 جاوا ۱۷ (جدیدترین نسخه LTS جاوا) چند رو پیش منتشر شد.

🔗JDK 17 is now available!

@JavaCupIR
اصلاحات اقتصادی در ایران حتما از مسیر فناوری اطلاعات می‌گذرد. به نظر می‌رسد صنعت نرم‌افزار ایران برای به عهده گرفتن این مسئولیت نیاز به خبرگی و چابکی بیشتری دارد.

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

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

ثبت‌نام رایگان در این رویداد:
 https://evnd.co/WtgOE

@JavaCupIR
#مقاله

راه‌اندازی سرور CI: کوزه‌گری که از کوزه شکسته‌ آب می‌خورد!

در این مطلب، عمران باتمان‌غلیچ از زاویه نگاه کیفیت به سراغ گوشه‌ای از گودِ توسعه‌ی محصول می‌رود که با اینکه داعیه‌دار ارتقای کیفیت محصولات نرم‌افزاری‌ست، اما عمدتا خودش کیفیت بالایی ندارد: سرور CI

🔗 لینک مقاله

📌 شما هم دانش و تجربه‌تان را از طریق جاواکاپ با دیگران به اشتراک بگذارید.

@JavaCupIR
#مقاله
#در_سایت_جاواکاپ_بخوانید

همه‌ی ما با برنامه‌نویسی شی‌گرا آشنا هستیم. کم و بیش با Aspect Oriented Programming نیز آشنایی داریم. اخیرا Reactive Programming فراگیرتر شده‌است. ولی خیلی از ما چیز زیادی راجع به پارادایم Actor Model نمی‌دانیم.

مهندس پیشوایی در این مقاله برخی از خواص برنامه‌نویسی با مدل اکتور را توضیح داده‌اند. با این امید که توجه بیشتری به این پارادایم مفید و پرکاربرد در ایران ایجاد شود.

🔗لینک مقاله

@JavaCupIR
#مقاله

آنچه یک توسعه‌دهنده جاوا باید در مورد Garbage Collector بداند
قسمت اول

یکی از چیزهایی که برنامه‌نویس‌‌های جاوا معمولا اون رو دست کم می‌گیرن، Garbage Collector یا زباله‌روبه.
در این مطلب، تجربه‌‌ یک توسعه‌دهنده ارشد جاوا از دست‌وپنجه نرم کردن با زباله‌روب و تنظیماتش؛ و دانسته‌‌های به‌روزش رو به صورت کاربردی می‌خونیم.

🔗 لینک مقاله

📌 شما هم دانش و تجربه‌تان را از طریق جاواکاپ با دیگران به اشتراک بگذارید.

@JavaCupIR
رویداد «نقشه‌راه بهبود معماری و کیفیت نرم‌افزار»، چهارشنبه 4 اسفند برگزار خواهد شد.

تیم چکاپ (از زیرمجموعه‌های شرکت اعوان)، در سال‌های اخیر برای کمک به سازمان‌های بزرگ جهت بهبود کیفیت و معماری نرم‌افزارها تلاش کرده است. هدف از برگزاری رویداد مذکور، تبادل نظر و مرور چالش‌ها، تجربه‌ها و راه‌حل‌های مشترک در تولید و بهره‌برداری نرم‌افزار در سازمان‌های بزرگ و متوسط است.
در این رویداد، موضوعاتی مثل فرایند بهبود معماری نرم‌افزار و تضمین کیفیت نرم‌افزار را مرور می‌کنیم و به بررسی چالش‌ها و راهکارهای لازم در زمینه فرهنگ‌سازی، فرایندسازی و مستندسازی در این روند می‌پردازیم.

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

🔗 ثبت‌نام رایگان در این رویداد

اگر هنوز دانشجو هستید یا تجربه کمتر از یک سال کار در صنعت را دارید، شاید این مطالب برایتان جذاب نباشد ...
انجمن جاواکاپ
رویداد «نقشه‌راه بهبود معماری و کیفیت نرم‌افزار»، چهارشنبه 4 اسفند برگزار خواهد شد. تیم چکاپ (از زیرمجموعه‌های شرکت اعوان)، در سال‌های اخیر برای کمک به سازمان‌های بزرگ جهت بهبود کیفیت و معماری نرم‌افزارها تلاش کرده است. هدف از برگزاری رویداد مذکور، تبادل…
سلام

وبینار «نقشه‌راه بهبود معماری و کیفیت نرم‌افزار در سازمان‌های متوسط و بزرگ» روز چهارشنبه ۴ اسفند برگزار شد.
مجددا از همه افرادی که در این جلسه حضور داشتند، سپاسگزاریم.
لطفا با بیان نظرات و بازخوردهای خود، در بهبود برگزاری رویدادهای مشابه به ما کمک کنید.

🔗 دریافت فایل و مشاهده فیلم ارائه

@JavaCupIR
پشت صحنهٔ شبکه کوبرنتیز چه می‌گذرد؟

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

👤ارائه‌دهنده: مسعود حسنی‌فرد، نزدیک به ۱۰ سال تجربه در صنعت نرم‌افزار دارد و مهندس ارشد اتکاپذیری (SRE) در سحاب است.

📆 سه‌شنبه ۳۱ خرداد | ۱۷:۰۰ - ۱۸:۰۰

🔗 ثبت‌نام رایگان:
sahab.ir/stt

@JavaCupIR
#مقاله
#در_سایت_جاواکاپ_بخوانید

با وجود اینکه به طور کلی جاوا زبان کندی نیست، اما مدت زمان راه‌اندازی برنامه‌ها راضی‌کننده نیست!

زمان راه‌اندازی برنامه‌ها در پروژه‌های کوچک یا برنامه‌های کاربردی مشکل قابل‌توجهی به حساب نمی‌آید، اما در پروژه‌های بزرگ‌‌تر که classpath بزرگی دارند، در زمان توسعه به مسئله‌ای مهم تبدیل می‌شود. به طور خاص، در برنامه‌های Spring Boot با اینکه روند توسعه سریعی دارند،‌ اما با اضافه کردن تعدادی وابستگی‌، مدت زمان راه‌اندازی برنامه طولانی‌ می‌شود.

در این مقاله به شما چند آرگومان ماشین مجازی جاوا معرفی می‌شود که با کمک آن‌ها می‌توان مدت زمان راه‌اندازی را کمتر کرد.

هم‌چنین چند نکته را با هم مرور می‌کنیم که در نظر گرفتن آن‌ها در زمان توسعه‌ یک برنامه‌ Spring، روی مدت زمان راه‌اندازی برنامه تاثیر چشم‌گیری دارد.

🔗 javacup.ir/improve-startup-time
روزبه شریف‌نسب
@JavaCupIR