در این مطلب، ویدئو کپسوله سازی پایتون | برنامه نویسی شی گرا پایتون | آموزش پایتون | ادورکا با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:14:58
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,810 –> 00:00:11,120
[موسیقی]
2
00:00:11,120 –> 00:00:13,650
سلام به همه این صحنه از Ed
3
00:00:13,650 –> 00:00:15,420
Eureka است و من به همه شما خوش آمد می گویم به این
4
00:00:15,420 –> 00:00:17,570
جلسه که در آن قرار است در مورد
5
00:00:17,570 –> 00:00:20,340
کپسوله سازی در پایتون صحبت کنم، بنابراین اجازه دهید ابتدا
6
00:00:20,340 –> 00:00:21,720
به دستور کار این جلسه نگاهی بیندازیم و
7
00:00:21,720 –> 00:00:24,029
توضیح خواهم داد که چه چیزی به
8
00:00:24,029 –> 00:00:26,369
طور کلی کپسوله سازی است و با حرکت
9
00:00:26,369 –> 00:00:28,250
بیشتر خواهیم دید که چگونه می توانیم
10
00:00:28,250 –> 00:00:31,560
کپسوله سازی را در پایتون پیاده سازی کنیم و در نهایت برای
11
00:00:31,560 –> 00:00:33,030
جمع بندی این جلسه نگاهی
12
00:00:33,030 –> 00:00:35,520
به چند نمونه کپسوله سازی پایتون خواهیم انداخت
13
00:00:35,520 –> 00:00:37,380
14
00:00:37,380 –> 00:00:40,200
.
15
00:00:40,200 –> 00:00:42,120
برای آموزش های هیجان انگیز بیشتر در اریکا مشترک شوید و
16
00:00:42,120 –> 00:00:43,950
نماد زنگ را فشار دهید تا آخرین
17
00:00:43,950 –> 00:00:46,710
به روز رسانی های Eddie wake up را دریافت کنید
18
00:00:46,710 –> 00:00:48,390
و برنامه گواهی برنامه نویسی Python Eddie Rica را
19
00:00:48,390 –> 00:00:50,820
بررسی کنید. پیوند
20
00:00:50,820 –> 00:00:53,430
در جعبه توضیحات زیر اکنون بدون
21
00:00:53,430 –> 00:00:55,140
هیچ مقدمه دیگری داده
22
00:00:55,140 –> 00:00:57,629
شده است. بنابراین Python دقیقاً چه
23
00:00:57,629 –> 00:01:00,989
چیزی کپسوله سازی است کپسوله سازی به جمع
24
00:01:00,989 –> 00:01:03,660
کردن داده ها در زیر یک واحد اشاره دارد
25
00:01:03,660 –> 00:01:06,479
و مکانیزمی است که کد
26
00:01:06,479 –> 00:01:09,720
و داده هایی را که یک را دستکاری می کند پیوند می دهد.
27
00:01:09,720 –> 00:01:12,119
راه دیگر برای اندیشیدن در مورد کپسوله سازی این
28
00:01:12,119 –> 00:01:14,640
است که یک سپر محافظ است که از دسترسی به
29
00:01:14,640 –> 00:01:16,920
داده ها توسط کدهای
30
00:01:16,920 –> 00:01:20,130
خارج از این شیلد جلوگیری می کند و در این حالت
31
00:01:20,130 –> 00:01:22,409
متغیر یا داده های یک کلاس
32
00:01:22,409 –> 00:01:24,930
از هر کلاس دیگری پنهان است و
33
00:01:24,930 –> 00:01:26,939
فقط از طریق هر عضوی قابل دسترسی است.
34
00:01:26,939 –> 00:01:29,460
عملکرد کلاس خودی که در
35
00:01:29,460 –> 00:01:31,829
آن اعلام می شود که آنها این را نمی فهمند،
36
00:01:31,829 –> 00:01:34,110
ما قیاسی داریم که می توانیم به آن مربوط کنیم،
37
00:01:34,110 –> 00:01:36,360
بنابراین مثال یک کپسول پزشکی
38
00:01:36,360 –> 00:01:39,150
که در آن دارو همیشه در داخل کپسول ایمن است،
39
00:01:39,150 –> 00:01:41,909
به طور مشابه از طریق کپسوله
40
00:01:41,909 –> 00:01:44,310
کردن روش ها و متغیرهای یک کلاس.
41
00:01:44,310 –> 00:01:46,979
بسیار خوب مخفی و ایمن هستند و یکی از
42
00:01:46,979 –> 00:01:48,930
نمونه ها می تواند یک ماشین فروش خودکار باشد،
43
00:01:48,930 –> 00:01:51,509
بنابراین آنچه ما می بینیم یک دستگاه فروش خودکار است،
44
00:01:51,509 –> 00:01:53,670
اما چندین عملیات یا
45
00:01:53,670 –> 00:01:55,380
فرآیند دیگر در داخل دستگاه خودکار انجام می
46
00:01:55,380 –> 00:01:57,030
شود تا محصول مورد نظر ما را به ما ارائه دهد،
47
00:01:57,030 –> 00:01:58,979
بنابراین آن محصولات و
48
00:01:58,979 –> 00:02:00,659
عملیاتی که در داخل ماشین فروش اتفاق می افتد،
49
00:02:00,659 –> 00:02:02,399
می توانید آنها را
50
00:02:02,399 –> 00:02:05,070
متغیرهای پنهان یا داده های ماشین
51
00:02:05,070 –> 00:02:06,869
فروش که از هر شخص دیگری مخفی می شود
52
00:02:06,869 –> 00:02:08,910
نام ببرید. o میتوانیم آن را از بیرون ببینیم،
53
00:02:08,910 –> 00:02:11,370
بنابراین این یک مثال دیگر است که میتوانیم
54
00:02:11,370 –> 00:02:12,959
با آن ارتباط برقرار کنیم، وقتی که در مورد آن صحبت میکنیم، و
55
00:02:12,959 –> 00:02:13,790
56
00:02:13,790 –> 00:02:16,099
سپس در مورد مزایای کپسولهسازی صحبت میکنیم،
57
00:02:16,099 –> 00:02:18,620
بنابراین اولین
58
00:02:18,620 –> 00:02:22,250
مزیت مخفی کردن دادهها است، بنابراین آنچه اتفاق میافتد این است که
59
00:02:22,250 –> 00:02:24,560
کاربر نخواهد داشت. هیچ ایده ای در مورد
60
00:02:24,560 –> 00:02:26,510
پیاده سازی داخلی کلاس وجود ندارد و
61
00:02:26,510 –> 00:02:29,150
حتی کاربر از نحوه
62
00:02:29,150 –> 00:02:30,799
ذخیره مقادیر کلاس در
63
00:02:30,799 –> 00:02:33,620
متغیرها آگاه نخواهد بود، آنها فقط آنچه را که ما
64
00:02:33,620 –> 00:02:35,090
می خواهیم ببینند که در واقع
65
00:02:35,090 –> 00:02:37,099
انتقال مقدار به یک متد و
66
00:02:37,099 –> 00:02:38,750
سپس متغیرها است را می بینند. با آن مقدار مقداردهی اولیه میشوند،
67
00:02:38,750 –> 00:02:41,150
بنابراین آنها واقعاً
68
00:02:41,150 –> 00:02:43,489
نمیدانند داخل کلاس چه میگذرد و
69
00:02:43,489 –> 00:02:45,739
این یکی از مزایایی است که ما برای
70
00:02:45,739 –> 00:02:48,620
بچههای کپسولهسازی داریم، مزیت دیگر
71
00:02:48,620 –> 00:02:50,689
افزایش انعطافپذیری است، بنابراین
72
00:02:50,689 –> 00:02:52,340
میتوانیم متغیرهای کلاس را که میدانید
73
00:02:52,340 –> 00:02:54,709
بر اساس نحوه ایجاد کنیم. ما میخواهیم از آنها استفاده کنند در
74
00:02:54,709 –> 00:02:56,689
صورتی که میخواهیم فقط یک روش فقط خواندنی باشد
75
00:02:56,689 –> 00:02:59,780
یا میدانید که میتوان آن را فقط
76
00:02:59,780 –> 00:03:02,030
بسته به آنچه ما نیاز داریم نوشت، در این صورت ما
77
00:03:02,030 –> 00:03:04,159
مزایای استفاده مجدد را
78
00:03:04,159 –> 00:03:06,169
داریم که اساساً آن را داریم. قابلیت استفاده مجدد را بهبود می بخشد
79
00:03:06,169 –> 00:03:08,329
و تغییر آن با الزامات جدید آسان تر می شود،
80
00:03:08,329 –> 00:03:11,840
بنابراین
81
00:03:11,840 –> 00:03:13,310
بیایید به چند تفاوت بین
82
00:03:13,310 –> 00:03:16,129
انتزاع و کپسوله نگاهی بیندازیم تا بدانیم
83
00:03:16,129 –> 00:03:17,659
که یک کپسوله سازی برای
84
00:03:17,659 –> 00:03:19,669
بسته بندی کد و داده ها برای
85
00:03:19,669 –> 00:03:21,620
اطلاعات ضروری شناخته می شود در حالی که
86
00:03:21,620 –> 00:03:23,810
انتزاع اساساً انتزاع یا انتزاع را ارائه می دهد.
87
00:03:23,810 –> 00:03:26,599
میدانید
88
00:03:26,599 –> 00:03:29,120
که ضروریترین جزئیات را در دادهها به شما میدهد
89
00:03:29,120 –> 00:03:31,280
و فقط جزئیات مفیدی
90
00:03:31,280 –> 00:03:33,919
است که در انتزاع مشاهده خواهید کرد، اما در
91
00:03:33,919 –> 00:03:36,470
کپسولهسازی کل کد و تمام
92
00:03:36,470 –> 00:03:38,000
اطلاعات لازم یا همه چیز در
93
00:03:38,000 –> 00:03:40,729
کنار هم قرار میگیرند در حالی که انتزاع
94
00:03:40,729 –> 00:03:42,979
عمدتاً روی چیزی تمرکز میکند. روشی که
95
00:03:42,979 –> 00:03:44,900
قرار است باشد یا هر تابعی که
96
00:03:44,900 –> 00:03:46,849
قرار است باشد و کپسولاسیون از سوی دیگر
97
00:03:46,849 –> 00:03:48,739
اساساً بر نحوه عملکرد
98
00:03:48,739 –> 00:03:51,260
پیادهسازی روی هر متد یا متغیر معینی تمرکز میکند،
99
00:03:51,260 –> 00:03:54,409
سپس انتزاع
100
00:03:54,409 –> 00:03:56,620
وقتی به یک انتزاع پیچیدگی میرسد
101
00:03:56,620 –> 00:03:58,370
اساساً
102
00:03:58,370 –> 00:04:00,199
همه چیز را از آن پنهان میکند. شما و آن فقط به
103
00:04:00,199 –> 00:04:02,150
شما یک تصویر انتزاعی می دهد که چگونه
104
00:04:02,150 –> 00:04:04,189
این تنها فایده است ul اطلاعاتی که
105
00:04:04,189 –> 00:04:06,290
از دادههای خود نیاز دارید، اما از طرف دیگر
106
00:04:06,290 –> 00:04:08,689
و کپسولاسیون،
107
00:04:08,689 –> 00:04:11,120
کار داخلی را پنهان میکند و اساساً
108
00:04:11,120 –> 00:04:13,250
به شما کمک میکند تا بتوانید بعداً آن را تغییر دهید
109
00:04:13,250 –> 00:04:14,120
و همین
110
00:04:14,120 –> 00:04:15,650
حالا اجازه دهید فقط در مورد نحوه
111
00:04:15,650 –> 00:04:18,738
کار کپسولهسازی در پایتون صحبت کنیم که در
112
00:04:18,738 –> 00:04:21,589
پایتون ساده است. از ویژگیها
113
00:04:21,589 –> 00:04:24,349
برای دستیابی به کپسولهسازی استفاده میشود، این
114
00:04:24,349 –> 00:04:26,000
نیز با کمک قراردادهای نامگذاری انجام میشود
115
00:04:26,000 –> 00:04:27,440
که از طریق آن
116
00:04:27,440 –> 00:04:28,780
میتوانیم بین
117
00:04:28,780 –> 00:04:32,300
اعضای محافظت شده و خصوصی تمایز قائل شویم، بنابراین
118
00:04:32,300 –> 00:04:34,070
میتوانیم امتیاز دوگانه خود را در مقابل
119
00:04:34,070 –> 00:04:37,490
متغیر و هر نام تابعی که میتواند
120
00:04:37,490 –> 00:04:40,280
آنها را پنهان کند اضافه کنیم. هنگام دسترسی به آنها از خارج
121
00:04:40,280 –> 00:04:42,170
از کلاس یا خارج از محدوده
122
00:04:42,170 –> 00:04:44,720
کلاس، اساساً چیزی که در اینجا می خواهم بگویم این
123
00:04:44,720 –> 00:04:46,730
است که پایتون واقعاً هیچ
124
00:04:46,730 –> 00:04:49,340
روش خصوصی واقعی ندارد اما می توانیم از این
125
00:04:49,340 –> 00:04:52,130
قرارداد نامگذاری دو نمره استفاده کنیم که به وسیله آن
126
00:04:52,130 –> 00:04:54,470
می توانیم آنها را به روش های خصوصی تبدیل کنیم. به نوعی
127
00:04:54,470 –> 00:04:56,930
و همچنین زمانی که از آندرخط دوبل استفاده
128
00:04:56,930 –> 00:04:59,060
میکنیم، همچنان میتوانیم به متغیرهای خصوصی دسترسی داشته
129
00:04:59,060 –> 00:05:01,310
باشیم، اما باید این کار را با
130
00:05:01,310 –> 00:05:04,040
تکنیکهای خاصی انجام دهیم، بنابراین اجازه دهید آن را
131
00:05:04,040 –> 00:05:06,230
به Jupite برسانیم. دوستان r notebook و ما سعی خواهیم کرد
132
00:05:06,230 –> 00:05:09,350
آن را از چند مثالی که داریم یاد بگیریم
133
00:05:09,350 –> 00:05:11,960
، بنابراین من این نوت بوک مشتری
134
00:05:11,960 –> 00:05:14,210
را اینجا باز کرده ام، بنابراین کاری که ما انجام می دهیم این است
135
00:05:14,210 –> 00:05:15,920
که ابتدا چند عملکرد
136
00:05:15,920 –> 00:05:17,780
ایجاد می کنیم. اجازه دهید من فقط یک کلاس ایجاد کنم. بنابراین من فقط
137
00:05:17,780 –> 00:05:21,290
یک کلاس ایجاد می کنم و شما rekha اکنون در داخل
138
00:05:21,290 –> 00:05:22,550
این اول از همه می خواهم یک تابع تعریف
139
00:05:22,550 –> 00:05:24,080
کنم بنابراین با init
140
00:05:24,080 –> 00:05:29,170
function guys و self در اینجا شروع می
141
00:05:29,370 –> 00:05:31,560
کنم اکنون کاری که انجام می دهم این است که سعی می کنم چند مورد ایجاد کنم.
142
00:05:31,560 –> 00:05:34,380
متغیرها پس اول از همه
143
00:05:34,380 –> 00:05:35,700
بیایید بگوییم من یک متغیر می سازم فرض کنید
144
00:05:35,700 –> 00:05:38,700
دوره برابر است با
145
00:05:38,700 –> 00:05:44,670
دوره برنامه نویسی پایتون و بگذارید فقط
146
00:05:44,670 –> 00:05:46,470
در مورد فناوری نیز صحبت کنیم بنابراین
147
00:05:46,470 –> 00:05:48,540
این یک مثال ساده است که می خواهم
148
00:05:48,540 –> 00:05:50,700
به شما بچه ها نشان دهم بنابراین من فقط آن را
149
00:05:50,700 –> 00:05:54,420
به عنوان فرض کنید پایتون می نویسم اکنون یک تابع دیگر دارم
150
00:05:54,420 –> 00:05:56,040
مثلاً و این مانند
151
00:05:56,040 –> 00:06:00,420
نام دوره Almeida است و در داخل آن
152
00:06:00,420 –> 00:06:07,460
بیایید ببینیم می خواهم دوره self dot را برگردانم
153
00:06:07,460 –> 00:06:14,220
و می خواهم آن را با
154
00:06:14,220 –> 00:06:18,450
فناوری self dot درست برگردانم اکنون Loess
155
00:06:18,450 –> 00:06:21,900
یک شی برای این کلاس Eddie Rekha
156
00:06:21,900 –> 00:06:25,650
و با استفاده از thi می سازم هدف من قرار است
157
00:06:25,650 –> 00:06:29,520
دوره را دریافت کنم و فقط با استفاده
158
00:06:29,520 –> 00:06:32,700
از این، فناوری را نیز فناوری صدا میکنم و در
159
00:06:32,700 –> 00:06:34,860
آخر، روش
160
00:06:34,860 –> 00:06:37,920
را به تنهایی نام دوره را صدا میزنم، پس بیایید
161
00:06:37,920 –> 00:06:40,080
ببینیم اگر خطای نام دوره داشته باشیم، خروجی چیست.
162
00:06:40,080 –> 00:06:43,230
آرگومان های موقعیتی را می گیرد و
163
00:06:43,230 –> 00:06:46,710
در واقع یکی در اینجا داده می شود، بنابراین بیایید
164
00:06:46,710 –> 00:06:49,410
ببینیم که خطای OP واقعاً چه مشکلی دارد،
165
00:06:49,410 –> 00:06:52,440
بنابراین فراموش کردم که خود را اینجا بنویسم،
166
00:06:52,440 –> 00:06:54,270
بنابراین بیایید ببینیم آیا به درستی اجرا می
167
00:06:54,270 –> 00:06:57,570
شود یا نه، بنابراین ما دوره برنامه نویسی
168
00:06:57,570 –> 00:07:02,790
پایتون و پایتون درست داریم، بنابراین بیایید سعی کنیم
169
00:07:02,790 –> 00:07:07,290
این قسمت را کامنت کنید، بنابراین ما داریم و بیایید
170
00:07:07,290 –> 00:07:10,670
سعی کنیم این را نیز به
171
00:07:10,800 –> 00:07:12,720
درستی نظر دهیم، بنابراین یک عبارت چاپی به آن اضاف