1 00:00:00,330 --> 00:00:01,290 ‫Tekrar hoş geldiniz. 2 00:00:01,320 --> 00:00:05,280 ‫Bu videoda, değer tipi ile referans tipi arasındaki farka bakacağız. 3 00:00:05,280 --> 00:00:12,630 ‫Dolayısıyla veri türleri, bellek konumunu nasıl işgal ettiklerine bağlı olarak iki kategoriye ayrılabilir. 4 00:00:13,020 --> 00:00:16,650 ‫Ve bu türleri ayrıntılı olarak inceleyeceğiz. 5 00:00:16,650 --> 00:00:19,080 ‫Bu yüzden öncelikle değer türüne bakıyoruz. 6 00:00:19,080 --> 00:00:26,520 ‫Adından da anlaşılacağı gibi, bildirilip bir değer atandığında, bu değeri doğrudan kendi bellek 7 00:00:26,520 --> 00:00:29,310 ‫alanında tutan bir veri türüdür. 8 00:00:29,310 --> 00:00:29,670 ‫Tamam. 9 00:00:29,670 --> 00:00:37,110 ‫Dolayısıyla değer türü, değeri saklamak için bir yığın kullanır. Değer türlerine örnek olarak int float long double char bool 10 00:00:37,110 --> 00:00:40,230 ‫decimal double gibi veri türleri verilebilir. 11 00:00:40,230 --> 00:00:45,780 ‫Yani temel olarak basit veri tipleri Şimdi bir değer tipinin resimsel gösterimine bakalım. 12 00:00:45,780 --> 00:00:51,300 ‫Diyelim ki Z adında yeni bir değişken yarattık ve değeri 234. 13 00:00:51,300 --> 00:00:58,860 ‫Şimdi bu 234 değeri RAM'de bu Z değişkeninin konumunda saklanacaktır. 14 00:00:59,370 --> 00:00:59,820 ‫Tamam. 15 00:00:59,820 --> 00:01:05,640 ‫Referans tipine daha ayrıntılı bakarsak, değeri doğrudan bellekte saklamak yerine, 16 00:01:05,670 --> 00:01:12,660 ‫yalnızca gerçek verinin bellek konumunu saklayan bir değişken tipi olduğunu görebiliriz. 17 00:01:13,590 --> 00:01:18,870 ‫Buradaki değişken doğrudan veriyi değil, verinin bellek referansını saklar. 18 00:01:18,900 --> 00:01:20,160 ‫Aradaki büyük fark budur. 19 00:01:20,160 --> 00:01:20,610 ‫Değil mi? 20 00:01:20,610 --> 00:01:29,010 ‫Yani referans veri türleri string sınıfı dizilerdir, temelde daha karmaşık olan ve tabiri caizse çok daha fazla alana ihtiyaç 21 00:01:29,010 --> 00:01:30,870 ‫duyan veri türleridir. 22 00:01:31,080 --> 00:01:37,140 ‫Bu, kaynaklardan tasarruf etmek ve programımızı olabildiğince hızlı hale getirmek için yapılır, çünkü o zaman 23 00:01:37,140 --> 00:01:40,740 ‫değeri almamız ve değeri her zaman hareket ettirmemiz gerekmez. 24 00:01:40,740 --> 00:01:47,100 ‫Ancak şunu söyleyebiliriz: Tamam, değer şu konumdadır, bu nedenle örneğin bu veriyi kullandığımızda 25 00:01:47,100 --> 00:01:51,720 ‫kopyalamak yerine onu oradan alabilirsiniz. 26 00:01:52,290 --> 00:01:52,560 ‫Tamam. 27 00:01:52,560 --> 00:01:57,870 ‫Dolayısıyla, bir veri tipinin bu referans tipini kopyaladığımızda, sadece verinin bellek adresini kopyalayacaktır. 28 00:01:57,870 --> 00:02:02,940 ‫Böylece aynı veriye işaret eden iki değişkenimiz olacaktır. 29 00:02:02,940 --> 00:02:05,700 ‫Şimdi buradaki resimsel gösterime bakalım. 30 00:02:05,700 --> 00:02:12,960 ‫Yani önce Dennis adında bir dizemiz, sonra değişken değer adresimiz ve sonra da gerçek 31 00:02:12,960 --> 00:02:14,820 ‫değerimiz var. 32 00:02:14,820 --> 00:02:17,130 ‫Yani burada şunu görebilirsiniz. 33 00:02:18,210 --> 00:02:27,810 ‫Buradaki değer sadece burada görebileceğiniz adrestir, ancak değişken adının adresi buradadır. 34 00:02:27,810 --> 00:02:35,430 ‫Yani değişken değer adresi ve gerçek değer RAM'inizde iki farklı konumda saklanır. 35 00:02:35,610 --> 00:02:40,680 ‫Yani genel olarak, değişken değer adresi süper kısadır. 36 00:02:40,710 --> 00:02:43,830 ‫Bu gerçekten çok basit bir sayı, değil mi? 37 00:02:43,830 --> 00:02:48,270 ‫Ancak diğer yandan, gerçek değer oldukça karmaşık olabilir. 38 00:02:48,270 --> 00:02:52,800 ‫Yani oldukça karmaşık ve içinde çok fazla bilgi depolanmış bir nesne olabilir. 39 00:02:52,800 --> 00:02:58,380 ‫İşte bu yüzden programlarımız için bu yaklaşımı kullanmak ya da genel olarak C sharp için daha iyidir. 40 00:02:59,800 --> 00:03:04,690 ‫Diyelim ki bir kiralama şirketine gittiniz ve bir araba almak istiyorsunuz. 41 00:03:04,720 --> 00:03:05,050 ‫Doğru. 42 00:03:05,050 --> 00:03:11,240 ‫Yani bir araba kiralamaya gidiyorsunuz ve sonra kontuardasınız ve sipariş ettiğiniz arabayı almak istiyorsunuz. 43 00:03:11,260 --> 00:03:16,270 ‫Sayaçta arabanız yok ama arabanızın yeri var. 44 00:03:16,270 --> 00:03:23,260 ‫Böylece size anahtarları verecek ve size şu yöne gitmenizi söyleyecek ve arabayı falanca sırada, falanca sütunda, 45 00:03:23,260 --> 00:03:26,500 ‫falanca katta ya da her neyse orada bulacaksınız. 46 00:03:26,500 --> 00:03:30,160 ‫Böylece oraya gidip arabanızı alabilirsiniz. 47 00:03:30,160 --> 00:03:36,310 ‫Yani arabayı sayacın içinde saklamak yerine, ki bu işe yaramazdı çünkü araba çok büyük olurdu, arabaların 48 00:03:36,310 --> 00:03:43,030 ‫olduğu tüm bu referanslara sahipler, böylece onları kolayca alabilirsiniz, her ne kadar bu örnek burada sahip 49 00:03:43,030 --> 00:03:47,860 ‫olduğumuz karmaşıklığın geri kalanından biraz yoksun olsa da. 50 00:03:47,860 --> 00:03:53,260 ‫Ancak belki bu, referans türünü biraz daha iyi anlamanıza yardımcı olur. 51 00:03:53,920 --> 00:03:54,460 ‫Tamam. 52 00:03:54,460 --> 00:03:55,600 ‫Şimdilik bu kadar. 53 00:03:55,600 --> 00:03:56,980 ‫Cody'ye geri dönelim. 54 00:03:57,010 --> 00:03:58,210 ‫Bir sonraki videoda görüşmek üzere.