شما به این ویدیو دسترسی ندارید

دیزاین پترن factory این امکان رو به ما میده که بتونیم superclass بسازیم که مسئول ساخت object باشه و به subclass اجازه بدیم که بتونن نوع آبجکتی که ساخته میشه رو تغییر بدن

پیش نیاز:

abstract



0

intro

4:28

رایگان

1

Singleton

13:3

رایگان

2

Factory

17:9

4

Prototype

12:39

5

Builder

18:8

6

Adapter

8:31

7

Decorator

15:6

8

Facade

10:4

9

Proxy

11:36

10

Composite

16:10

11

Bridge

19:14

13

Command

21:2

14

Observer

13:17

15

Mediator

19:34

16

Template Method

8:28

17

Strategy

10:32

18

State

14:26

19

Memento

26:14

20

Visitor

18:57

دوره های پیشنهادی

دوره آموزش دیتابیس پستگرس postgresql
دوره آموزش دیتابیس پستگرس postgresql
تکمیل ضبط
امیرحسین بیگدلو
دوره آموزش گیت(git)
دوره آموزش گیت(git)
تکمیل ضبط
امیرحسین بیگدلو
دوره آموزش Multi Threading در پایتون
دوره آموزش Multi Threading در پایتون
تکمیل ضبط
امیرحسین بیگدلو



ارسال نظر

برای ارسال نظر باید لاگین کنید

علی

2 سال قبل

سلام و خسته نباشید. راستش من نفهمیدم چرا باید از این دیزاین پترن استفاده کنیم وقتی میتونیم همچین کدی رو بجاش بزنیم؟

class Json:
def edit(self, file):
return f'Working on {file} Json ...'

class Xml:
def edit(self, file):
return f'Working on {file} Xml ...'

def client(file: str, format: str):
formats = {
'json': Json,
'xml': Xml,
}
result = formats[format]()
return result.edit(file)

print(client('show', 'json'))


امیرحسین بیگدلو

2 سال قبل

سلام
خب این چیه نوشتی؟ :/
توی این کد چه دلیلی داشته که از کلاس استفاده کردی؟ هیچ استفاده از کلاس‌های نکردی.
دیزاین پترن‌ها برای زمانی هستند که کد بزرگی دارید.

سجاد تاج

3 سال قبل

سلام وقت شما بخیر.
امیدورام سلامت تندرست باشید.

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

ممنون میشم بنده رو راهنمایی کنید.
با تشکر


امیرحسین بیگدلو

3 سال قبل

سلام
بهم ایمیل بزن

student

3 سال قبل

سلام
توی مثال اول (که از abstract استفاده نشده) توی متد edit (کلاس B) اخرش اینو return میکنه:
return edit(file)
این قسمت نباید خود edit رو ریترن کنه؟
اخه انگار اینجوری داره دوباره متد رو صدا میزنه.


مهدی

3 سال قبل

سلام و خیلی ممنون

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

مثله همیشه عالی بودی


Mahdi

4 سال قبل

در کال ادیت، حتی نیاز به متغییری به اسم پروداکت هم نداریم!
مستقیم پشت سر هم ریترنش میکنیم:
def _call_edit(self):
return self.make().edit()
الان این کد همون نتیجه رو میده!
راستی درباره ی صدا زدن متود ها پش سر هم اگر یک ویدئو بسازی خیلی عالی میشه. من بصورت تجربی میدونستم کار میکنه ولی علت دقیقش رو هنوز نمیدونم.


امیرحسین بیگدلو

4 سال قبل

خوانایی کد رو فدای کوتاه بودن نکن

Mahdi

4 سال قبل

سلام امیر
در قسمت کریتور، چه نیازی بود که بیای بریزی داخل ریزالت و بعد ریترن کنی ریزالتو!!!
خب درجا متود ادیت داخل متود پروداکت رو ریترن کنیم دیگه:
def _call_edit(self):
product = self.make()
# result = product.edit()
# return result
return product.edit()

فکر نکنم به مشکلی منطقی برخورد کنیم.
من تست کردم و همه چی درست کار میکرد.


امیرحسین بیگدلو

4 سال قبل

سلام
بله. حق با شماست

مونگارد