C# Merak Ettiklerim

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    patates
    patates's avatar
    Kayıt Tarihi: 18/Haziran/2007
    Erkek

    Bildiğiniz gibi alaylı olarak kendi kendime netten videolar izleyerek okuyarak daha çokda basitten yazarak öğrenmeye çalışıyorum.

    merak ettiğim bir soru var bu soru belki çok basit ama  çok basit olduğundan hiçbiryerde açıklamasınıda göremedim. merakta ediyorum buraya sorayım dedim.

     

    Şimdi biz saysal değerlerle işlem yapacağımız zaman. 

    benim diyelimki işim  pozitif çift sayı ile alakalı bunun için double kullanılıyor.

    fakat aynı kümeyi long da içine alıyor.

    dolayısı ile o daha geniş küme de tanımlamam daha rahat bir yöntem değilmi?  yada int aralığı zaten yetiyor ama ben long olarak tanımladım ne farkediyor?

     

    bunun haricinde şöyle birşeye rastgeldim.

     

    http://www.csharpuygulamalar.com/2013/12/c-sharp-form-haritadan-sehir-ismi-bulma-oyunu.html

     

    bu sitede çeşitli basit oyunlar var. kodlarını filan inceliyorum .

    bu attığım linkteki kodda şöyle yazıyor.

    /*
    Copyright HolyOne
    Aytek Üstündağ
    http://www.tahribat.com
    holyone@tahribat.com
    */
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Drawing;
    using System.Windows.Forms;
    namespace HolyOne
    {
      public   class Turkey
        {
          public class City

    :) buda güzel tesadüf oldu

     

     

     

     

     


    https://t.me/pump_upp
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SerYolcu
    SerYolcu's avatar
    Kayıt Tarihi: 14/Ocak/2010
    Erkek

    Şimdi bir programın vardır, mesela bir takvim programı.

    Bir takvimde günleri sayarsak en fazla 365 gün, hade 366 gün vardır,

    ve bu nedenle kodlayacağımız program en fazla 366 rakamına kadar işlem yapacaktır.

    366 rakamı en fazla 10 bit yer kaplayacaktır.

    Uygulamamız gün sayısı için 16 bit bellek alanı ayıracaktır.

    Ama biz günleri sayan uygulamamız için 366 rakamını kapsayan long tipinden bir veri tanımlar isek.

    Yılın birinci günü için de yılın 366 ıncı günü içinde uygulamamız 64 bit yer ayıracaktır.

    1 uygulamada yer alan veri için bellekte 16 bit yer ayırması ile 64 bit yer ayırması çok önemli bir fark olmayabilir.

    Ama uygulamamızı aynı anda 1 milyon kişinin kullandığını düşünür isek,

    bu sefer sistemin bellek alanı yetmeyecektir. Ve uygulamamız çökecektir.

    Kısacası, senin sorunun cevabı belleğin verimli kullanımıdır.

     


    Ondan çocuk olmamıştır (Kimsenin babası değildir). Kendisi de doğmamıştır (kimsenin çocuğu değildir). İhlas Suresi 3 üncü ayette bunlar yazar.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    patates
    patates's avatar
    Kayıt Tarihi: 18/Haziran/2007
    Erkek

    hım evet tabloda yanlarda 2byt 4 byte filan yazıyordu minik şeyler diye takmadım kafama.

     

    boşuna kalabalık arasından işlem yaptırmayalım diye o zaman :)


    https://t.me/pump_upp
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    YeniHarman
    YeniHarman's avatar
    Kayıt Tarihi: 17/Haziran/2012
    Erkek
    patates bunu yazdı

     

    ...Şimdi biz saysal değerlerle işlem yapacağımız zaman. 

    benim diyelimki işim  pozitif çift sayı ile alakalı bunun için double kullanılıyor.

    fakat aynı kümeyi long da içine alıyor.

    dolayısı ile o daha geniş küme de tanımlamam daha rahat bir yöntem değilmi?  yada int aralığı zaten yetiyor ama ben long olarak tanımladım ne farkediyor?... 

    Bellek tasarrufunun yanı sıra işlemcinin mimarisi de etken. Örneğin 32 bitlik işlemci en basit anlamda 32bitlik veriler üzerinde işlemi tek seferde tamamlarken 64 bitlik veride 2-3 çevrim yapması gereklidir. Şayet 32 bitlik parçaları yazmaçlarına alır, toplar, kalan bitini aktifleştirir, ikinci kısımları alır, toplar elde bitini ekler yerine koyar gibi... Sadece .NET için değil de C kodu için konuşursak sadece bu da etken değil. Bazı apiler (ya da bileşenler) belirli boyutta değişken kümeleri ya da yapılara ihtiyaç duyar. Bu yüzden daha düşük aralıklarda veri depolayan tipler var. Örneğin: https://msdn.microsoft.com/en-us/library/system.runtime.interopservices.structlayoutattribute%28v=vs.110%29.aspx Ağ üzerinden (soketler aracılığıyla) bir şey transfer ettiğinde düşün bir de.

     

    İkincisi şu: Bilgisayar kayar noktalı sayıları bizim gibi ele almaz. Virgülden sonraki her bitin değeri (2)^(-n) şeklindedir. Yani (101.101)2 = 5,625'e eşittir. Yani sen float, double gibi tiplerle örneğin 3,12'yi tutturamazsın. Aşağıdaki döngü işe sonsuz olabilir:

    for(float f= 0.0f; f < 4.0; f+=0.1f)

    {

    }


    Olaylara karışmayın!
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DuPi
    DuPi's avatar
    Kayıt Tarihi: 21/Ağustos/2005
    Erkek

    Önce bi temel edinmen lazım.

    video izleyerek öğreniyorsan videoları pür dikkat izle çünkü bir anlık anlatımı kaçırırsan bazı işlerin işleyişini anlayamazsın

    en basitinden adam if'i anlatır dinlersin bir an başka bi iş ile uğraşırsın if içindeki işlem önceliğini söyler bir cümleden orayı kaçırırsın.

    sonra hayda :) neden okumuyor şart sağlıyor dersin if içinde tek koşulda zaten problem yaşamıyorsun ama çok koşul olunca önce hangi koşulu denetleyecek gibi bir muhabbet :)

    senaryoyu kafadan yazdım çürütmeyin hemen :)


    Ne zaman birşey öğrenmek istesem, Birden Vaktim Kalmıyor ?
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    patates
    patates's avatar
    Kayıt Tarihi: 18/Haziran/2007
    Erkek

    evet. hiçbir video yokki sıfırdan paldır küldür bu işe başlayana en temel şeyi dahi anlatarak ilerlesin.

    Açıkçası düzenli ve sabit bir yoldada ilerlemiyorum. Youtubedan açık akademiden biraz izledim.

    bir kaç hesap makinası tarzı basit işler yaptım örneklere bakarak.

    bir kaç mühendisliklerin sanıyorum ilk vize soruları vardı onların algoritmasını ve mantığını çıkarabildim fakat doğru şekilde cod a geçiremedim.

    alışkın olmadığım için. burda if kullanılır burda şu kullanılır ı biliyorum. fakat yazarken hatalarım oluyo.

    çoğunlukla basit bir uygulamaya netten bakıp. bunu nasıl yapmıştır diye düşünüp bir kağıda yazıyorum. sonra kodlamasına bakıyorum. öyle öyle anlamaya başladım.

     

    fakat ben şu an kitap alıcam. yani eğitimi karışık yaptığım için başından kıçından olmuyor:)

    tavsiyeleriniz varsa çok makbule geçer:)


    https://t.me/pump_upp
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    RockZs
    RockZs's avatar
    Kayıt Tarihi: 30/Haziran/2002
    Erkek
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    patates
    patates's avatar
    Kayıt Tarihi: 18/Haziran/2007
    Erkek

    bir app aracılığı ile ingilizce olarak öğrenmey eçalıştığım ayrı bir serüven yaşıyorum. Bununla birlikte ağır olabilir. 

    ama arama vs yaptığım zaman yabancı fotmumlarda genelde ref olarak bunu atmış oluyorlar kurcalıyorum yani


    https://t.me/pump_upp
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    YeniHarman
    YeniHarman's avatar
    Kayıt Tarihi: 17/Haziran/2012
    Erkek

    Kitapsız olmaz bu işler. Sefer Algan'ın kitabından şaşma. http://www.kitapyurdu.com/kitap/her-yonuyle-c-60/53477.html

    Her ne kadar yazar pek sevilmese ve C/C++ kitapları hatalarla dolu olduğu söylense de http://www.hepsiburada.com/c-4-0-herkes-icin-pm-kalfa63799 kitabı gayet anlaşılır ve C#'ı baştan öğrenmek için iyi.


    Olaylara karışmayın!
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    İnce Memed
    ComputerWolf
    ComputerWolf's avatar
    Üstün Hizmet Madalyası
    Kayıt Tarihi: 26/Mart/2003
    Erkek

    Küçük basit uygulamalar için memory işlemleri o kadar önemli olmaz, yani günümüz bilgisayarları oldukça geliştiği için aradaki performans farkını hissedemezsin ancak çok büyük uygulamalarda bu performans olayları göze batmaya başlar. Veri Tipleri konusunu bir gözden geçirirsen kafanda olaylar daha da netleşir diye düşünüyorum.


    Hep denedin. Hep yenildin. Olsun yine dene , yine yenil ama daha iyi yenil !
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo

    Açıkakademi varken ne bileyim başka kaynak aramak 

Toplam Hit: 1584 Toplam Mesaj: 12
c#