لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش معماری نرم افزار و طراحی سیستم های مدرن در مقیاس بزرگ
Software Architecture & Design of Modern Large Scale Systems
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
با تسلط بر معماری نرم افزار، طراحی سیستم و پردازش داده های بزرگ، یک معمار نرم افزار یا رهبر فنی شوید. معماری نرمافزار سیستمهای مقیاس بزرگ، قادر به رسیدگی به میلیونها درخواست در روز طراحی سیستمهای نرمافزاری بسیار مقیاسپذیر، بسیار در دسترس و کارآمد بهکارگیری الگوهای معماری نرمافزار اثباتشده در صنعت، بلوکهای سازنده و بهترین شیوهها تعریف الزامات فنی سیستم، اجزای سطح بالا و API کسب اطمینان for an upcoming System Design Interview پیش نیازها: دانش پایه برنامه نویسی و مهندسی نرم افزار
آیا آماده هستید تا حرفه خود را به سطح بعدی ببرید؟
آیا می خواهید بر معماری نرم افزار و طراحی سیستم مسلط شوید؟
به جای درستی آمدید!
در این دوره عملی، میآموزید که چگونه سیستمهای واقعی را که در مقیاس میلیونها کاربر روزانه طراحی میشوند، و همچنین پردازش و ذخیره پتابایت دادهها.
اگر میخواهید یک معمار نرمافزار شوید، یا در حال حاضر یک معمار نرمافزار هستید و به یک تازهکننده خوب نیاز دارید، این بهترین منبع شماست.
این همچنین مکان مناسبی برای آماده سازی و کسب اطمینان برای مصاحبه آینده طراحی سیستم است.
برخی از چیزهایی که یاد خواهید گرفت عبارتند از:
شناسایی الزامات فنی سیستم ها بدون از دست دادن هیچ جزئیات
تعریف APIهای آسان برای استفاده و قوی
بهکارگیری تکنیکهای بلوکهای ساختمانی معماری مدرن برای مقیاسپذیری، در دسترس بودن و عملکرد بالا
پیروی از بهترین شیوههای الگوهای معماری نرمافزار اثباتشده در صنعت
معماری سیستم های بسیار مقیاس پذیر برای ترافیک گسترده اینترنت و پردازش کلان داده
مثل یک معمار نرمافزار حرفهای واقعی فکر میکنید و مبادله میکنید
در پایان دوره، شما تمام مهارتهایی را خواهید داشت که نیاز دارید تا یک نیاز مبهم و سطح بالا را بپذیرید و تمام مراحل طراحی سیستم را طی کنید، تا معماری نرمافزار نهایی آن را طی کنید.
اگرچه این دوره شامل کدنویسی نمیشود، اما یک دوره بسیار کاربردی است که به شما دانش اساسی برای ساختن سیستمهای دنیای واقعی میدهد.
تمام تکنیک ها و الگوهای پوشش داده شده در دوره توسط شرکت های نرم افزار برتر استفاده می شود.
علاوه بر سخنرانی های ویدیویی،
را نیز خواهید یافت
منابع بسیاری، مرتبط با موضوعات تحت پوشش دوره.
آزمونهایی که به شما کمک میکنند پیشرفت خود را تأیید کنید و مطالب دوره را مرور کنید
پیوندهای خارجی به مقالات و ویدیوهای مرتبط برای افزایش تجربه یادگیری شما
این دوره برای شما عالی است اگر:
میخواهید بر معماری نرمافزار مسلط شوید، موضوعی که معمولاً در کالجها یا بوتکمپهای کدنویسی تدریس نمیشود
میخواهید یک معمار نرمافزار یا یکی از اعضای ارشد کارکنان فنی، مانند مهندس ارشد/اصلی نرمافزار یا سرپرست فنی شوید
شما در حال آماده شدن برای یک مصاحبه طراحی سیستم هستید و می خواهید شانس خود را برای موفقیت افزایش دهید، و همچنین از بین کاندیداها متمایز شوید
پس منتظر چه چیزی هستید؟ :)
بیایید شروع کنیم!
سوالات متداول
- آیا برای شرکت در این دوره باید معمار نرم افزار باشم؟
مطمئناً نه! یک معمار نرم افزار فقط یک عنوان است. در واقع، بسیاری از شرکت ها این عنوان رسمی را به کسی نمی دهند. بیشتر معماری نرم افزار و طراحی سیستم توسط مهندسان مورد اعتماد در سازمان انجام می شود. برای دریافت این اعتماد از مدیران خود، باید دانش کاملی از معماری نرم افزار و طراحی سیستم نشان دهید. این دقیقاً همان چیزی است که در این دوره خواهید آموخت.
- اهمیت معماری نرم افزار چیست و چرا باید آن را یاد بگیرم؟
توسعه نرم افزار مدرن سیستم های در مقیاس بزرگ بسیار پیچیده است. به طور معمول شامل چندین ماه کار چندین مهندس نرم افزار می شود. همانطور که هیچ کس تلاشی برای ساخت یک آسمان خراش بدون نقشه و معماری مستحکم نمی کند، انجام یک پروژه نرم افزاری بزرگ بدون طراحی مناسب و معماری نرم افزاری تایید شده غیرقابل تصور است. اگر معماری نرم افزار یک سیستم ضعیف انجام شود، پروژه احتمالاً شکست خواهد خورد. با این حال، اگر معماری نرمافزار به درستی انجام شود، میتواند تأثیر مثبت زیادی بر زندگی بسیاری داشته باشد و به رشد و شکوفایی سازمان شما کمک کند.
- آیا برنامه نویسی در این دوره وجود دارد؟
خیر. معماری نرم افزار بخشی از مرحله طراحی یک سیستم در مقیاس بزرگ است. کدگذاری تنها زمانی انجام می شود که معماری نرم افزار نهایی شود. قطعاً برای درک اینکه کدنویسی تنها بخش کوچکی از مهندسی نرم افزار است، جهش ذهنی خاصی لازم است. و اگر معماری نرم افزار و طراحی به درستی انجام شود، کار کدنویسی و هر چیزی که بعد از آن می آید می تواند بسیار آسان و ساده باشد. از سوی دیگر، اگر معماری نرم افزار به درستی انجام نشود، مرحله پیاده سازی می تواند به یک چالش بزرگ تبدیل شود.
- آیا هر مهندس نرم افزاری باید آرزو داشته باشد که یک معمار نرم افزار شود؟
بله و خیر. با کسب تجربه بیشتر از شما انتظار می رود که معماری و طراحی نرم افزار بیشتری انجام دهید. نقش یک مهندس ارشد نرم افزار در اکثر سازمان ها مستلزم مهارت های معماری نرم افزار است، حتی اگر نقش شما "معمار نرم افزار" را نداشته باشد. علاوه بر این، حتی اگر بخواهید کدنویسی را ادامه دهید، کد شما همیشه باید معماری کلی نرم افزار را در نظر بگیرد. در غیر این صورت آنقدر موثر نخواهد بود. با این حال، اگر تصمیم بگیرید که نقش یک معمار نرمافزار را دنبال کنید، مسئولیت پذیری و تأثیرگذاری بیشتری دریافت خواهید کرد که معمولاً با رضایت شغلی بالاتر، امنیت شغلی و دستمزد بالاتر همراه است.
سرفصل ها و درس ها
معرفی
Introduction
مقدمه ای بر معماری نرم افزار
Introduction to Software Architecture
کتاب کار دوره را دانلود کنید
Download the Course Workbook
سیستم مورد نیاز و درایورهای معماری
System Requirements & Architectural Drivers
مقدمه ای بر طراحی سیستم و درایورهای معماری
Introduction to System Design & Architectural Drivers
مقدمه ای بر طراحی سیستم و انواع مورد نیاز - آزمون
Introduction to System Design & Requirement Types - Quiz
الزامات ویژگی - فرآیند گام به گام
Feature Requirements - Step by Step Process
فرآیند جمع آوری ویژگی های مورد نیاز - آزمون
Feature Requirements Gathering Process - Quiz
الزامات ویژگی های کیفیت سیستم
System Quality Attributes Requirements
ذخیره سازی داده ها در مقیاس جهانی
Data Storage at Global Scale
پایگاه های داده رابطه ای و تراکنش های ACID
Relational Databases & ACID Transactions
معاملات اسید
ACID Transactions
پایگاه داده های غیر رابطه ای
Non-Relational Databases
پایگاه داده های غیر رابطه ای - راه حل ها
Non-Relational Databases - Solutions
تکنیک هایی برای بهبود عملکرد، در دسترس بودن و مقیاس پذیری پایگاه های داده
Techniques to Improve Performance, Availability & Scalability Of Databases
تکنیکهایی برای بهبود عملکرد، در دسترس بودن و مقیاسپذیری پایگاههای داده - آزمون
Techniques to Improve Performance, Availability & Scalability Of Databases-Quiz
قضیه بروئر (CAP)
Brewer’s (CAP) Theorem
قضیه CAP - آزمون
CAP Theorem - Quiz
ذخیره سازی داده های بدون ساختار مقیاس پذیر
Scalable Unstructured Data Storage
ذخیره سازی داده های بدون ساختار مقیاس پذیر - راه حل های ابری و منبع باز
Scalable Unstructured Data Storage - Cloud and Open Source Solutions
الگوها و سبک های معماری نرم افزار
Software Architecture Patterns and Styles
مقدمه ای بر الگوها و سبک های معماری نرم افزار
Introduction to Software Architecture Patterns & Styles
معماری چند لایه
Multi-Tier Architecture
معماری چند لایه - آزمون
Multi-Tier Architecture - Quiz
نمایش نظرات