Kayseri’nin İlk Hackathon’u Erciyes Teknopark’ta Gerçekleşti

Microsoft Açık Akademi‘nin destek verdiği ve Kayseri‘de yapılan ilk hackhathon etkinliği Meet4App, Android, iOS, Windows Phone ve Windows 8 platformlarında uygulama geliştirmek isteyen üniversite öğrencileriyle yapıldı. 21 Aralık’ta başlayan ve 24 saat süren etkinlikte Microsoft ürünleri kullanılarak ve MSP‘lerin de desteğiyle çok sayıda uygulama geliştirildi.

Etkinlikte yer alan katılımcılara verilen Windows Azure hesabı için de en iyi kazanımlardan biriydi.

1519933_675706945803155_745917714_o

d
Teknopark Sera’dan bir kare

İlgili Haberler

Microsoft Blog

Elektrikport

Erciyesera

Webrazzi

Facebook Etkinlik Sayfası

Reklamlar

C# : Metin İçinde Metin Arama – 2

İlk yazıda kullandığımız IndexOf metodu yerine aynı sorunu LINQ sorguları ile çözmeye çalışacağız. Öncelikle LINQ mimarisine bakarsak, üzerinde çalıştığımız çeşitli arayüzler içeren veri kümelerinde ve veri kaynaklarında(XML, JSON vs.) sorgulama yapmamızı sağlayan ifadelerdir. Aslında LINQ yapısı programlama diline, sorgulama becerisi ekler, sorgulama ve sonuç kümesi döndürme gibi işlemleri ise sağlayıcı(provider) dediğimiz yapılar gerçekleştirir. Bu sorun için LINQ yapısının veri kümeleri üzerinde sorgulama yapmamıza imkan veren ifadeler olduğunu bilmemiz yeterli. Yazıda bir metin içinde aranan kelimeyi LINQ to Objects sağlayıcısının bize sunduğu Count metodunu kullanarak bulmaya çalışacağız.

 string metin, aranan;
 char[] noktalama= { ',', '!', '#', '$', '%', '&', '(', ')', '*', '+', '-', /*'.',*/ '/', ':', ';', '<', '=', '>', '?', '@', '[', '/', ']', '^', '{', '|', '}', ' ' };
 Console.WriteLine("Metni giriniz: ");
 metin = Console.ReadLine().ToString();
 Console.WriteLine("Aranan kelimeyi giriniz: ");
 aranan = Console.ReadLine().ToString();
 string[] kelimeler = metin.Split(noktalama);
 int adet = kelimeler.Count(kelime => kelime == aranan);
 Console.WriteLine(aranan + " kelimesi " + adet + " adet bulunmustur.");
 Console.ReadLine();

iTunes Radio Nasıl Kullanılır?

Apple‘ın yeni işletim sistemi iOS 7‘nin müzik dünyasına kattığı bir başka yeniliği iTunes Radio‘nun sıradan bir radyo olmaması için üzerinde düşünülmüş diyebiliriz. iTunes Radio şimdilik Amerika’da kullanılabilir durumda, 2014’ten itibaren İngilitere, Yeni Zelanda ve bir kaç ülkede daha ulaşılabilir olacak. Ancak şimdiden denemek istiyorsanız küçük bir çözümü var.

Gerekli olan iki şeyden biri iTunes yazılımınızı 11.1 sürümüyle güncelleştirmek (buradan indirebilirsiniz), diğeri ise ABD konumunu kullanarak Apple ID almak.

iTunes 11.1‘i kurduktan sonra altta yer alan Türk bayrağına tıklayarak United States’i seçin. Daha sonra yukarıdaki menüden AppStore’a giderek herhangi bir uygulamaya tıkladığınızda çıkacak Apple kimliği yarat seçeneğine tıklayarak hesap oluşturun. Oluşturduğunuz hesabı doğruladıktan sonra iTunes üzerinden dinlemeye başlayabilirsiniz.

30 farklı kategoriyi ya da sanatçıları seçerek istasyon oluşturabilirsiniz. Diğer bir seçenek de önceden hazırlanmış 200 istasyondan birini seçmek olabilir.

Adsız

iOS cihazınızda kullanmak için Ayarlar -> iTunes Store/App Store yolundan ABD konumlu Apple kimliği ile girmek yeterli olacaktır. Daha sonra Müzik uygulamasında iTunes Radio’nun simgesi görünecektir. Kullanımı için daha fazla bilgiyi buradaki videodan edinebilirsiniz.

Denemek isteyenlerin aklına ilk etapta ücreti gelebilir. Apple, iTunes Radio’nun tüm kullanıcılara ücretsiz olacağını ancak bu kullanımın beraberinde reklam gösterimini ve radyoları dinlerken şarkıları geçmenin sayı sınırını getirecek. Reklamları kapatmak isteyen kullanıcılar ise uygulamaya ayda 24.99 $ ücretiyle abone olmaları gerekecek.

Bir diğer soru ise Pandora kullanıcılarından gelebilir, Pandora Radio ile çalışma şekilleri benzer olan iTunes Radio’nun en önemli farkları kullanıcıların kendi seçimleriyle radyolarını oluşturabilmesi ve iTunes’dan gelen oldukça geniş müzik arşivi. Apple, hem bu iki özellikle hem de Pandora Radio’nun kullanılamadığı ülkelere (İngiltere, Kanada vs.) hizmet sağlayarak geç girdiği online radyo sektöründe önemli bir yer edinmeyi amaçlıyor.

C#: PadLeft ve PadRight Metotları

C# dilinin string sınıfı için sağladığı çok sayıda yararlı özellik bulunuyor, Pad metodu da karakter sayısının önemli olduğu işlemlerde kullanılan pratik bir metot.

PadLeft ve PadRight metotlarını kısaca açıklarsak string ifadelerimizin karakter sayısı ne olursa olsun belli bir karakter sayısına uymasını istiyorsak o sayıya tamamlamasını sağlıyor. Bir örnek olarak decimal sayıları binary olarak çevirdiğimizde soldaki 0 değerlerini göremeyiz, ancak uygulamada göstermek istiyorsak PadLeft metotundan yardım alabiliriz.

for (int i = 0; i < 16; i++)
  {
     dizi[i] = Convert.ToString(i, 2);
     dizi[i] = dizi[i].PadLeft(4, '0');
  }

Burada 0-15 arasındaki sayıları binary hale getiriyoruz ancak PadLeft metotunu kullanmasaydık örneğin 2 sayısı ’10’ olarak görülecekti. Biz string ifadenin değerine bakmaksızın 4 karakter halinde kaydetmiş olduk.

Metodun ilginç bir özelliği de aritmetik işlemlerde kullandığınızda yeni bir sayı olarak kabul etmesi. Ancak bu durum, metotların string bir ifadeyi değiştirmediğini, sadece istenen karakter sayısına tamamladığını unutmamak gerek.

string deger = "3";
int sonuc = Convert.ToInt32(deger.PadRight(2, '0')) - 1;
Console.Write(sonuc); // 29 yazdırır.
Console.Read();

Eğer string ifadenin soluna ya da sağına herhangi bir karakter yerine boşlukla doldurmak istiyorsak metoda sadece istenen karakter sayısını vermek yeterli oluyor.

string str = "'Solda 10 bosluk olacak'";
Console.Write("Pad Kullanımı");
Console.WriteLine(str.PadLeft(32));
Console.Read();

str değişkenimiz 22 karakterden oluştuğundan soldan 10 karakter boşluk bırakmak için PadLeft metoduna 32 değerini vermiş olduk. PadRight metodu da sağdan karakter doldurmak için PadLeft ile aynı mantıkta kullanılabilir.

SQL Sorgusunu Sayısal Değer Olarak Kullanma

Otomatik hesaplama yapan ya da sütunlar arasında aritmetik işlemler gerektiren bir uygulama üzerinde çalışıyorsanız bir SQL sorgusundan dönen değeri sayısal olarak ifade etmeniz gerekecektir.

Örnek olarak fiyatı belli olan bir ürünün alış miktarı kullanıcıdan alınsın, her ikisi de tablolarda sütun olarak yer alan alış miktarı ve fiyatı bilgisinin çarpımını elde etmek için ExecuteScalar() metotuna başvurmalıyız. Hatta kullanıcı üründen ne kadar aldığını textBox1’e girdiği anda toplam tutarı textBox2’ye yazdıralım.

  private void textBox1_TextChanged(object sender, EventArgs e)
        {
            SqlConnection baglanti = 
            new SqlConnection("server=.;database=StokTakip;Integrated Security=True");
            baglanti.Open();
            SqlCommand cmd = new SqlCommand("select Fiyati from Urunler 
            where UrunAdi = '" + textBox3.Text + "'",baglanti);
            int fiyat = Convert.ToInt32(cmd.ExecuteScalar());
            int tutar = fiyat * Convert.ToInt32(textBox1.Text);
            try
            {
                textBox2.Text = tutar.ToString();
            }
            catch
            {
                MessageBox.Show("Lutfen sayi giriniz.");
            }
            finally
            {
                textBox1.text = "";
            }
            baglanti.Close();
        }

Kodu kısaca açıklarsak; textBox3 ile aldığımız ürün adının fiyatını getirdik. Kullanıcının textBox2 ile girdiği alış miktarı ile çarpmadan önce fiyatın integer değer çevrilmesi gerekiyor. Bu durumun çözümünde ExecuteScalar() metotu oldukça yararlı.

ExecuteScalar() metotu, veritabanından toplam gibi tek bir değeri döndürmeyi sağlayan hızlı bir araçtır. Döndürdüğü değer, Resultset’in ilk elemanınıdır ve bu elemanın hangi tipte olduğu ilk etapta bilinemeyeceği için nesne(object) olarak kabul edilir. Eğer doğrudan int, string gibi farklı bir türe atamak isterseniz  ‘Cannot implicitly convert type ‘object’ to ‘int’. An explicit conversion exists (are you missing a cast?)’ hatası alırsınız. Bu yüzden gerekli çevirme işlemlerini yapmak gerekir.



			

Algoritma Örnekleri – 1

Problem: 1’den 10’a kadar sayan sayaç ve kullanıcıdan alınan x(sınır değer) değeri ile x+(i*2)^2 kuralı ile tanımlanan s değerlerini hesaplamak ve her biri için asal olup olmadığını kontrol etmek. Bulunan asal sayıların toplamını ve kaç tane olduğunu ekrana yazdırmak.
(Örnek:
x:5, bulunan asal sayı:2 asal sayıların toplamı:190
x:8  bulunan asal sayı:0 asal sayıların toplamı:0)

x2

static void Main(string[] args)
        {
            int i, x, m, s = 0;
            int toplam_asal = 0, sayi_asal = 0;
            Console.WriteLine("Deger giriniz:");
            x = Convert.ToInt32(Console.ReadLine());
            for (i = 1; i <= 10; i++)
            {
                s = x + (i * 2) * (i * 2);
                for (m = 2; m < s; m++)
                {
                    if (s % m == 0)
                    {
                        break;
                    }
                    if(m==s-1)
                    {
                        toplam_asal = toplam_asal + s;
                        sayi_asal = sayi_asal + 1;
                    }
                }

            }
            Console.WriteLine("Deger:" + x + "Bulunan asal sayi: " + sayi_asal + "Toplam:" + toplam_asal);
            Console.ReadLine();
        }
    }

WTA İstanbul 2012’nin Kazananı Serena Williams

23 – 28 Ekim’de düzenlenen WTA Championships 2012’de dünyanın en iyi 8 kadın raketi İstanbul’daydı. Turnuvaya Maria Sharapova ve Serena Williams teşrif etmiş ve onların yanısıra Victoria Azarenka (Belarus),  Agnieszka Radwanska (Polonya), Petra Kritova (Çek. Cum.), Angelique Kerber (Almanya), Li Na (Çin), Sara Errani (İtalya) diğer isimlerdi.

Turnuvanın 5. ve 6. günü olan haftasonu maçlarını izleme fırsatına eriştim. Çiftlerin ilk yarı finalinde dünya çiftlerde birinci sırada buunan Lisa Raymond –  Liezel Huber ikilisi kaybeden taraf olsa da çok iyi oyun çıkardılar. Lisa Raymond’un 39 yaşında olduğunu belirtmeden geçemeyeceğim.

Okumaya devam et “WTA İstanbul 2012’nin Kazananı Serena Williams”