
در این قسمت، اصل DRY (Don't Repeat Yourself) و اهمیت آن در کاهش redundancy و ارتقای maintainability کد بررسی میشود. DRY Principle: Inter-Developer Duplicationبه طور خاص، مفهوم تکرار بین توسعهدهندگان را مورد بررسی قرار میدهیم، و نحوه همکاری و ارتباط بین توسعهدهندگان را برای بهینهسازی استفاده مجدد از کد و سرعت بخشیدن به فرایند توسعه مورد بررسی قرار میدهیم.به ما بپیوندید تا راهکارها و بینشهای عملی را برای تقویت رویههای کدزنی کارا در تیمهای خود کشف کنیم. این بحث را که قول میدهد تجربه مهندسی نرمافزار شما را به سطح بالاتری برساند، از دست ندهید!لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803---------------------------------------------------------------Spotify:https://lnkd.in/eKduRAVy---------------------------------------------------------------Apple Podcasts:https://lnkd.in/euBQRGZT---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi----------------------------------------------------------------Telegram:https://t.me/ardiland_tm----------------------------------------------------------------Twitter:https://twitter.com/Ardiland3
Jun 10, 2024
6 min
Video

دوستان سلام،خوش اومدین به ویدئوی جدید ما با عنوانThe Dark Side of the Agile, Challenges & Risks که به تبیین ده چالش و ریسک مواجههای که یک تیم توسعه نرمافزار ممکن است در حین پیادهسازی روش Agile با آن مواجه شود، میپردازد.پیادهسازی روش Agile همیشه یک کار سرراست و مستقیم نیست و ممکن است با چالشها و ریسکهای زیادی روبهرو شود که میتواند به شکست کلی فرآیند منجر شود. در این ویدئو، ما به طور جامع به این مسئله میپردازیم و تمامی جنبههایی که ممکن است توانمندی تیم Agile را تحت تاثیر قرار دهد، را بررسی میکنیم.در این ویدئو، با مواردی زیر آشنا میشیم:- انتقال ناقص: یکی از چالشهای بزرگ پیادهسازی Agile، انتقال ناقص از روشهای قبلی و عدم انطباق کامل با مفاهیم Agile است.- کمبود آموزش و پشتیبانی: عدم آموزش کافی و عدم پشتیبانی میتواند باعث مواجهه با مشکلاتی در فرآیند پیادهسازی Agile شود.- مقاومت در برابر تغییرات: برخورد با مقاومت اعضای تیم در برابر تغییرات معمولاً یکی از چالشهای مهم است.- تاکید بیش از حد بر روی فرآیندها: بیشتر مراکز توجه به فرآیندها و قوانین ممکن است از مهمترین چالشها در پیادهسازی Agile باشد.- کمبود مشارکت مدیران و سایر افراد مرتبط: مشارکت ناکافی سایر ذینفعان میتواند روند Agile را کند کند.- چالشهای مقیاسپذیری: با افزایش اندازه تیم یا پروژه، ممکن است چالشهایی مانند مقیاسپذیری به وجود آید.- ارتباطات ناکارآمد: ارتباطات ناموفق میتواند باعث ابهامات و تداخلها در فرآیند Agile شود.- کمبود توانمندسازی: کمبود اعتماد به تیم و عدم توانمندسازی افراد میتواند توسعه Agile را مختل کند.- ناکافی بودن بهبود مداوم: عدم توجه به بهبود مداوم فرآیندها و روشهای Agile میتواند باعث ایجاد مشکلات پیشبینینشده شود.- عدم موفقیت در تحویل مداوم: عدم موفقیت در اجرای تحویل مداوم میتواند به از دست رفتن اعتماد و عدم موفقیت در پیادهسازی Agile منجر شود. با ما همراه باشید تا با این چالشها آشنا شوید و راهکارهایی را برای مقابله با آنها بیاموزید.شروع (00:0)Incomplete Transition (01:47)Lack of Training and Support (02:30)Resistance to Change (03:52)Overemphasis on Processes (04:51)Inadequate Stakeholder Involvement (06:51)Scaling Challenges (07:55)Ineffective Communication (09:15)Lack of Empowerment (10:56)Inadequate Continuous Improvement (12:55)Failed Continuous delivery (13:37)لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803---------------------------------------------------------------Spotify:https://lnkd.in/eKduRAVy---------------------------------------------------------------Apple Podcasts:https://lnkd.in/euBQRGZT---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi----------------------------------------------------------------Telegram:https://t.me/ardiland_tm----------------------------------------------------------------Twitter:https://twitter.com/Ardiland3
Jun 6, 2024
15 min

Pragmatic Programmer, Dry Principle, Part 2برنامه نویس عملگرا، رویکرد عملگرایانهDRY Principle, Don't repeat yourselfقسمت دومتو این ویدئو رفتیم سراغ یکی دیگه از اصول طراحی نرم افزار و در واقع یکی از مهمترین اصول طراحی. اصل DRYاین اصل تاکید روی پرهیز از تکرار در نرم افزار داره. تو این ویدئو میبینیم که اصولا تکرار چه مشکلاتی به وجود میاره و از اون مهم تر اینکه، منظور از تکرار، فقط کد تکراری نیست.لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803---------------------------------------------------------------Spotify:https://lnkd.in/eKduRAVy---------------------------------------------------------------Apple Podcasts:https://lnkd.in/euBQRGZT---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi----------------------------------------------------------------Telegram:https://t.me/ardiland_tm----------------------------------------------------------------Twitter:https://twitter.com/Ardiland3
Jun 2, 2024
7 min

الگو های طراحی و اهمیت زبان مشترکچرا ما حرف همدیگه رو نمی فهمیم؟!Design Pattern - Part 2دوستان سلام،در این ویدئو به بررسی اهمیت زبان مشترک در زمینه الگوهای طراحی میپردازیم. الگوهای طراحی به عنوان یک زبان مشترک بین اعضای تیمهای نرم افزاری عمل میکنند و این ارتباط نقش حیاتی در فهم صحیح و هماهنگی بین اعضا دارد.با مثالی از الگوی Observer به عمق موضوع پرداخته و ریسک عدم شناخت الگوهای طراحی را مورد بررسی قرار میدهیم. اگر یک نفر در گذشته مشکلی را حل کرده باشد، عدم اطلاع از این حل ممکن است به مشکلاتی منجر شود.در ادامه، به اهمیت درک طراحی در سطح پترن پرداخته و نحوه تأثیرگذاری الگوهای طراحی بر تیمهای نرم افزاری را مورد بررسی قرار میدهیم. چرا ما گاهی اوقات حرف یکدیگر را نمیفهمیم و چگونه این ابهامات میتوانند در فرآیند توسعه نرم افزار تأثیر گذار باشند؟با ما همراه باشید تا در دنیای الگوهای طراحی و اهمیت زبان مشترک در آن عمیقاً فرا بگیریم و بهترین راهکارها را برای ارتقاء هماهنگی در تیمهای نرم افزاری کشف کنیم.سرفصل مطالب عنوان شده در این دیدئو:شروع (0:00)اهمیت زبان مشترک (1:37)الگوهای طراحی به عنوان زبان مشترک (2:08)مثال، Observer Pattern (2:30)ریسک عدم شناخت الگوهای طراحی (5:17)یک نفر قبلا حلش کرده (6:30)طراحی در سطح پترن (8:29)الگوهای طراحی و تیم های نرم افزاری (12:35)---------------------------------------------------------------لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803 ---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi---------------------------------------------------------------Telegram:https://t.me/+QA61h-IHgSo1Y2Y0---------------------------------------------------------------Twitter:https://twitter.com/Ardiland3---------------------------------------------------------------
May 29, 2024
14 min

اجایل چیست؟این ۱۰ دقیقه رو از دست ندین !در این ویدیو، با مفهوم اجایل (Agile) آشنا می شویم و به طور کلی با اهمیت و اصول این متدولوژی در مدیریت پروژهها و توسعه نرمافزارها آشنا خواهیم شد. سپس به یک تعریف خلاصه از اجایل میپردازیم و به سرعت نگاهی به مبانی و اهداف این متدولوژی میاندازیم.همچنین با مفهوم Agile Mineset آشنا میشوید و چگونگی بهبود فرآیندهای توسعه نرمافزار با استفاده از این ابزار مهم را میفهمید. در ادامه به خلاصه مانیفست اجایل میپردازیم و اصول اساسی که این متدولوژی بر آنها تأکید دارد را بررسی میکنیم.همچنین به یک خلاصه از اصول اجایل میپردازیم و چگونگی پیادهسازی این اصول در محیط کاری را بررسی میکنیم. در انتها، با کاراکترهای اصلی تفکر چابک آشنا میشوید و نحوه تاثیرگذاری آنها در فرآیندهای توسعه و مدیریت پروژه را مشاهده میکنید.این ویدیو را از دست ندهید تا در دنیای پویا و تغییرات مداوم، با بهترین رویکردها به پروژههای خود مسلط شوید!شروع (0:00)اجایل چیست(0:55)تعریف خلاصه اجایل (2:54)Agile Mineset(3:25)خلاصه مانیفست اجایل(5:23)خلاصه اصول اجایل (6:12)کاراکترهای اصلی تفکر چابک(7:52)جمع بندی(10:20)---------------------------------------------------------------لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803 ---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi---------------------------------------------------------------Telegram:https://t.me/+QA61h-IHgSo1Y2Y0---------------------------------------------------------------Twitter:https://twitter.com/Ardiland3---------------------------------------------------------------
May 25, 2024
14 min

DRY فقط کد تکراری نیستبرنامه نویس عملگرا، رویکرد عملگرایانهDRY Principle, Don't repeat yourselfقسمت اولتو این ویدئو رفتیم سراغ یکی دیگه از اصول طراحی نرم افزار و در واقع یکی از مهمترین اصول طراحی. اصل DRYاین اصل تاکید روی پرهیز از تکرار در نرم افزار داره. تو این ویدئو میبینیم که اصولا تکرار چه مشکلاتی به وجود میاره و از اون مهم تر اینکه، منظور از تکرار، فقط کد تکراری نیست.لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803---------------------------------------------------------------Spotify:https://lnkd.in/eKduRAVy---------------------------------------------------------------Apple Podcasts:https://lnkd.in/euBQRGZT---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi----------------------------------------------------------------Telegram:https://t.me/ardiland_tm----------------------------------------------------------------Twitter:https://twitter.com/Ardiland3
May 21, 2024
7 min

چرا هر برنامه نویسی باید Design Pattern بلد باشه؟دوستان سلام،بالاخره سری ویدئو های آمورش دیزاین پترن ها شروع شد. موضوعی که تا حالا درخواست براش خیلی زیاد بوده.تا الان توی ویدئوها به دیزاین پترن ها اشاره زیاد شده و حتی در مواردی آشنایی اولیه با بعضی از پترن های طراحی اتفاق افتاده، ولی این سری جایی هست که متمرکز و تخصصی فقط در مورد Design Patterns صحبت می کنیم.برای رسیدن به این نقطه، یه سری پیش نیاز وجود داشت که محتوای مربوطه حالا توی کانال وجود داره و پیشنهاد می کنم اگر نیاز به مرور این پیش نیازها داشتین به پلی لیست هر کدوم رجوع کنید.تو این ویدئو که در واقع فصل مقدمه این سری محسوب میشه، مثل روال همیشگی محتویات این کانال اول به بررسی مفاهیم پایه و چرایی استفاده از دیزاین پترن ها پرداختم. پیشنهاد می کنم که این سری ویدئو ها رو حتما با نتوورک خودتون و خصوصا همکارانتون به اشتراک بذارین.سرفصل مطالب عنوان شده در این دیدئو:شروع (0:00)جوجه کباب و دیزاین پترن (2:09)زبان مشترک (4:31)یکی قبلا حلش کرده (5:41)افزایش Maintainability (6:05)وقتی OOP کم میاره (7:03)Experience reuse vs. Code reuse (7:54)چطور از Design Pattern استفاده کنیم (9:18)ِAll you need is Design Pattern?! (10:18)پیش نیاز یادگیری دیزاین پترن ها (11:26)معرفی ساختار و محتوای کتاب Head First Design Patterns (12:02)پایان(13:42)---------------------------------------------------------------لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803 ---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi---------------------------------------------------------------Telegram:https://t.me/+QA61h-IHgSo1Y2Y0---------------------------------------------------------------Twitter:https://twitter.com/Ardiland3---------------------------------------------------------------
May 17, 2024
14 min

8 دلیل که تیم ها به سمت اجایل می روند.تغییر ساختار، نحوه کار کردن و روش های مورد استفاده، فرآیندی طاقت فرسا می باشد که برای تاب آوری، نیاز است که دلایلی محکم این تصمیم را پشتیبانی کند.صرف اینکه سایر سازمان ها و تیم ها از معماری، فریموورک، تکنولوژی و ابزاری استفاده می کنند، دلیل مناسبی برای استفاده از ابزارها نیست و دلایلی معتبرو منطبق با نیاز تیم و سازمان نیاز است. در این ویدئو، 8 مورد از دلایل موجهی که تیم ها را به سمت اجایل می برد بررسی می کنیم.شروع (0:00)Start with Why(0:44)Faster Time-to-Market (3:31)Increased Flexibility and Adaptability(4:20)Enhanced Customer Satisfaction(5:09)Improved Collaboration and Communication (5:36)Continuous Improvement(6:15)Reduced Risks and Increased Predictability(7:01)Optimized Resource Utilization (8:39)Empowered and Engaged Teams(9:10)Agile Practices Overview(10:08)پایان(12:57)---------------------------------------------------------------لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803 ---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi---------------------------------------------------------------Telegram:https://t.me/+QA61h-IHgSo1Y2Y0---------------------------------------------------------------Twitter:https://twitter.com/Ardiland3---------------------------------------------------------------
Feb 17, 2024
14 min

تو این ویدئو برخی اشتباهات رایج در مصاحبه کاری رو عنوان کردم. اشتباهاتی مثل:- کلی گویی و بیش از اندازه لازم جواب دادن( روده درازی، پر چونگی!)- بد گویی از شرکت قبلی، مدیر قبلی، کد قبلی، همکارای قبلی، کلا غر غر کردن- رزومه نادقیق، بی ربط به موقعیت کاری و یا غیر واقعی- ...شروع (0:00)روده درازی ممنوع (2:03)بد گویی از شرکت قبلی (4:09) رزومه نادقیق (8:53)پایان (12:33)---------------------------------------------------------------لینک کانال در سایر شبکه های اجتماعیYouTube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Telegram:https://t.me/+QA61h-IHgSo1Y2Y0---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------Twitter:https://twitter.com/Ardiland3---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------
Feb 13, 2024
14 min

معرفی کتاب برنامه نویسیسلام، تا امروز بارها دوستانی که کانال اردیلند رو دنبال می کنند، درخواست کردند که لیستی از کتاب هایی که برنامه نویس ها و مهندسین نرم افزارباید بخونن رو معرفی کنم. تو این ویدئو چندین کتاب معتبر و توصیه شده دنیای برنامه نویسی و معماری نرم افزار رو معرفی کردم. لیست این کتاب ها رو در ادامه می بینیم. (این لیست رو یه جا برای خودتون ذخیره کنید، در آینده بهش مراجعه خواهید کرد!)ضمنا برای ارتباط بیشتر و به اشتراک گذاری منابع و تجربیات، گروه تلگرامی اردیلند رو تشکیل دادم و از طریق این لیست می تونین وارد گروه بشید:https://t.me/+QU5hgp_rjG41MGM0لیست کتاب ها:Software Design and Craftsmanship:- "Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin (2008)- "The Pragmatic Programmer: Your Journey to Mastery" by Andrew Hunt and David Thomas (1999)- "Head First Design Patterns (A Brain Friendly Guide)" by Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra (2004)- "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (1994)- "Clean Architecture: A Craftsman's Guide to Software Structure and Design" by Robert C. Martin (2017)- "Code Complete: A Practical Handbook of Software Construction" by Steve McConnell (1993/2004)- "Refactoring: Improving the Design of Existing Code" by Martin Fowler (1999)- "Test-Driven Development: By Example" by Kent Beck (2002)- "Working Effectively with Legacy Code" by Michael Feathers (2004)--------Domain-Driven Design:"Domain-Driven Design: Tackling Complexity in the Heart of Software" by Eric Evans (2003)- "Implementing Domain-Driven Design" by Vaughn Vernon (2013)- "Domain-Driven Design Distilled" by Vaughn Vernon (2016)---------Microservices and Architecture:- "Building Microservices: Designing Fine-Grained Systems" by Sam Newman (2014)- "Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith" by Sam Newman (2019)- "Fundamentals of Software Architecture: An Engineering Approach" by Neal Ford, Mark Richards (2020)- "Software Architecture: The Hard Parts" by Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani (2021)- "Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems" by Martin Kleppmann (2017)---------Agile and Development Practices:- "Clean Agile: Back to Basics" by Robert C. Martin (2019)- "The Clean Coder: A Code of Conduct for Professional Programmers" by Robert C. Martin (2011)- "Extreme Programming Explained: Embrace Change" by Kent Beck, Cynthia Andres (1999)- "Scrum: The Art of Doing Twice the Work in Half the Time" by Jeff Sutherland (2014)- "The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses" by Eric Ries (2011)-------DevOps and Project Management:- "The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win" by Gene Kim, Kevin Behr, George Spafford (2013)- "The Unicorn Project: A Novel about Developers, Digital Disruption, and Thriving in the Age of Data" by Gene Kim (2019)- "Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation" by Jez Humble and David Farley (2010)- "Accelerate: The Science of Lean Software and DevOps" by Nicole Forsgren, Jez Humble, and Gene Kim (2018)-------Computer Science and Theory:- "Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein (1989/2009)- "Introduction to the Theory of Computation" by Michael Sipser (2005)- "The Art of Computer Programming" by Donald E. Knuth (1968-present, multiple volumes)--------Business and Entrepreneurship:- "Start With Why: The Inspiring Million-Copy Bestseller That Will Help You Find Your Purpose" by Simon Sinek (2009)---------Classics and Essays:- "The Mythical Man-Month: Essays on Software Engineering" by Frederick P. Brooks Jr. (1975)-------------------------------------------------------لینک کانال در سایر شبکه های اجتماعیYoutube:https://www.youtube.com/c/Ardiland1---------------------------------------------------------------Castbox:https://castbox.fm/channel/id5051803---------------------------------------------------------------Spotify:https://lnkd.in/eKduRAVy---------------------------------------------------------------Apple Podcasts:https://lnkd.in/euBQRGZT---------------------------------------------------------------Instagram:https://www.instagram.com/ardiland_ig/---------------------------------------------------------------LinkedIn:https://www.linkedin.com/in/ardalan-ebrahimi---------------------------------------------------------------GitHub:https://github.com/ardalanebrahimi----------------------------------------------------------------Telegram:https://t.me/ardiland_tm----------------------------------------------------------------Twitter:https://twitter.com/Ardiland3
Feb 9, 2024
14 min
Load more
