WEBVTT

1
00:06.910 --> 00:12.490
Şimdi senkron ve asenkron programlamaya
bir örnek daha verelim ve

2
00:12.490 --> 00:17.590
bu durumda senkron ve asenkron iletişim
modlarının ne olduğunu tartışacağız.

3
00:18.730 --> 00:23.770
Dolayısıyla bu örnekler, eşzamanlı ve
eşzamansız zamanı gerçek hayatla
ilişkilendirmenize yardımcı olacaktır.

4
00:24.850 --> 00:31.450
Şimdi bir örnek daha verelim: telefonla
konuşma eşzamanlı iletişime bir örnektir.

5
00:32.560 --> 00:39.040
Yani telefonda konuşma yaptığınızda,
adımları ve ne duyduğunuzu, diğerinin ne

6
00:39.040 --> 00:45.100
söylediğini analiz edelim ve karşı taraf
cümlesini tamamlayana kadar bekleyin.

7
00:45.760 --> 00:49.120
Ve biri konuşurken diğeri aktif olarak
burada.

8
00:49.900 --> 00:53.500
Konuşurken ya da buradayken başka bir şey
yapmıyorsunuz.

9
00:54.100 --> 00:54.490
Tamam.

10
00:54.790 --> 00:57.580
Yani burada asenkron programlamanın
belirtilerini görebilirsiniz.

11
00:57.880 --> 01:00.130
Bu adımları belirli bir sırayla
gerçekleştirirsiniz.

12
01:00.940 --> 01:07.150
Ayrıca engellenme veya bir şeyin
tamamlanmasını beklemekten

13
01:07.150 --> 01:07.930
başka bir şey yapmama unsurlarını da
bulursunuz.

14
01:09.920 --> 01:10.340
Tamam.

15
01:10.940 --> 01:14.330
İşte bu, eşzamanlı iletişim yöntemine bir
örnektir.

16
01:14.900 --> 01:20.660
Şimdi ABD'nin eşzamanlı iletişim yöntemi
örneğine geliyoruz ve bu

17
01:20.660 --> 01:22.280
da bir sohbet üzerinden e-posta yoluyla
iletişimi içeriyor.

18
01:23.480 --> 01:29.480
Dolayısıyla, e-posta görüşmesi veya sohbet
görüşmesinin özelliklerini analiz

19
01:29.480 --> 01:31.910
ederseniz, başkalarının yanıtını beklemek
zorunda olmadığınızı göreceksiniz.

20
01:32.660 --> 01:38.510
E-postanızı ya da kitlenizi, her ikisinin
de almaya hazır durumda olup olmadığını
bilmeden gönderiyorsunuz.

21
01:38.960 --> 01:40.070
Mesajınızı okuyun.

22
01:41.120 --> 01:43.220
Cevap gelmesini de beklemiyorsunuz.

23
01:43.670 --> 01:44.120
Tamam.

24
01:44.780 --> 01:46.190
Sen başka bir şey yap.

25
01:46.190 --> 01:47.990
Ve cevap geldiği zaman gelir.

26
01:47.990 --> 01:54.330
Ancak karşı taraftan cevap gelmesini
gerçekten beklemiyorsunuz

27
01:54.330 --> 01:55.760
ve cevabın alındığına dair bildirim
alıyorsunuz.

28
01:56.600 --> 02:02.060
Burada asenkron iletişimin tamamen
senkronize

29
02:02.060 --> 02:02.570
olmayan iletişimle ilgili olduğunu
görebilirsiniz.

30
02:03.050 --> 02:06.950
İki taraf da diğerini umursamıyor.

31
02:08.740 --> 02:14.500
Taraflardan biri cevap vermez, diğer taraf
istediği zaman mesajını gönderir.

32
02:15.460 --> 02:22.630
Ve burada asenkron iletişimin unsurlarını
buluyorsunuz, başkalarının yanıtını

33
02:22.660 --> 02:25.330
veya başka bir şeyi tamamlamasını beklemek
zorunda değilsiniz.

34
02:27.050 --> 02:29.510
Cevap için beklemenize gerek yok.

35
02:30.710 --> 02:35.570
Yanıtın alındığına dair bildirim size
bildirilir.

36
02:36.200 --> 02:36.650
Tamam.

37
02:36.920 --> 02:42.500
Böylece asenkron programlama veya asenkron
iletişim modunun unsurlarını
görebilirsiniz.

38
02:43.190 --> 02:48.620
Ve programınızda herhangi bir nedenle blog
yazmanız gerekiyorsa bu neredeyse kötü bir
yazılım tasarımıdır.

39
02:49.310 --> 02:51.970
Ancak, engelleme birkaç senaryoda haklı
görülebilir.

40
02:51.980 --> 02:55.490
Örneğin, programınız kullanıcıdan bir
girdi istiyor.

41
02:55.910 --> 03:02.450
Ses programı, kitlelerin soketlere
ulaşmasını beklerken select sistem
çağrısında bloke olur.

42
03:03.230 --> 03:09.500
Elbette, yazılımınızın birisinin kendisine
kitleler

43
03:09.500 --> 03:10.010
göndermesini bekliyorsa beklemesi
gerektiği açıktır.

44
03:10.580 --> 03:16.010
Ama aynı zamanda yazılımınız öyle bir
konumda olmalı ki tepkisiz kalmamalı.

45
03:20.150 --> 03:20.600
Tamam.

46
03:22.860 --> 03:28.710
Son kullanıcı olarak, programınız başka
bir makineden ya da başka

47
03:28.860 --> 03:33.420
bir tehditten bazı kitlelerin gelmesini
beklerken programınızla etkileşime
girebilmelisiniz.

48
03:34.620 --> 03:40.290
İnternetten belirli bir dosyayı
indirdiğiniz için bilgisayarınız

49
03:40.680 --> 03:44.790
engellenirse ve işletim sisteminizde
bilgisayarınızla başka herhangi

50
03:45.240 --> 03:46.130
bir etkinlik yapamazsanız nasıl
hissedersiniz? Pekâlâ, öyle.

51
03:46.140 --> 03:47.490
Bu çok sinir bozucu olurdu.

52
03:48.840 --> 03:54.240
Bu, sadece senkron ve asenkronun ne olduğu
hakkında

53
03:54.240 --> 03:55.770
bir fikir vermek için tartıştığımız bir
başka örnektir.

54
03:57.740 --> 04:04.820
İşleri belirli bir sırayla yapıyorsanız ve
belirli

55
04:04.820 --> 04:11.300
görevlerin tamamlanmasını beklemeniz
gerekiyorsa ve yalnızca belirli

56
04:11.300 --> 04:14.210
görevler tamamlandığında
ilerleyebiliyorsanız, bunlar senkron
programlama örnekleridir.

57
04:15.230 --> 04:24.260
Eşzamansızlık, işlerin tamamen senkronize
olmayan bir düzende yapılmasını

58
04:24.260 --> 04:25.220
içerirken, bu dünya doğası gereği son
derece eşzamansızdır.

59
04:25.670 --> 04:29.690
Hayatınızda meydana gelen olaylar
eşzamanlıdır.

60
04:29.960 --> 04:35.780
Yarın ne olacağını asla bilemezdiniz ve
yarın ne olursa olsun,

61
04:35.780 --> 04:37.910
o durumla başa çıkmak için hızlı bir
şekilde pozisyon aldınız.

62
04:38.810 --> 04:39.170
Tamam.

63
04:40.760 --> 04:43.790
Benzer felsefe yazılım geliştirme dünyası
için de geçerlidir.

64
04:45.260 --> 04:53.120
Yazılım programınız, yazılımın içinde veya
dışında üretilen her türlü

65
04:53.360 --> 04:57.230
olayla başa çıkabiliyorsa, yüksek düzeyde
eşzamansız olduğu söylenir.

66
04:58.560 --> 05:05.280
Örneğin, kullanıcı UI veya komut satırı
arayüzü aracılığıyla yazılımla etkileşime
giriyor,

67
05:05.280 --> 05:10.920
ancak aynı zamanda yazılımınız ağ
paketlerini de alabilecek bir konumda.

68
05:11.400 --> 05:11.820
Tamam.

69
05:12.090 --> 05:17.040
Bu, çeşitli ağ protokollerine örnek olarak
yazdığınız soket programlarıdır.


