Loading

16 Temmuz 2012 Pazartesi

HUGO OYUNLARI TARİHÇESİ

,

Sanıyorum aramızda “Hugo” karakterini tanımayanınız yoktur. Özellikle doksanlı yıllarda Show TV’de gösterime başlayan televizyon oyunu programı “Hugo ve Tolga Abi” programıyla gönüllerimizde taht kurmuş bir hayali maceraperest çizgi kahramandır Hugo..
Bu web sitesi ise, Hugo oyunlarını tek çatı altında toplamak amacıyla kurulmuş. Ayrıca Hugo oyunları dışında binlerce eğlenceli ve bir o kadar da kaliteli oyunu düzenli ve kaliteli bir şekilde ziyaretçilerine sunmayı amaçlıyor.
Günümüzde, internette onbinlerce oyun oyna sitesi olduğunu düşünecek olursak, bu piyasa içerisinde gerekli mevkilere yükselebilmesi için ziyaretçilerinin desteğini alması şart. Bizde bu konuda bu ekibe destek vermek istedik…
Dediğimiz gibi özellikle doksanlı yılların gençliğinin gönüllerinde çok farklı bir yeri olan Hugo karakteri ve Hugo oyunları , günümüz gençliği tarafından da fazlasıyla bilinmekte ve sevilmektedir.
Hugo’yu Türkiye’ye ilk olarak “Hugo ve Tolga Abi” programı ile tanıdı.. Bu program bir çeşit televizyon oyunuydu diyebiliriz. Hugo oyunları oldukça zorlu engellerle dolu oyunlardı ve bu oyunlar telefon tuşları ile oynanmaktaydı. Yarışmaya katılan kişileri, Tolga abi karşılar, küçük bir konuşma geçer ve ardından Hugo oyunlarından birini seçmesi istenirdi.

devamı için HER GÜN YENİ BİR BİLGİ  tıklayın

13 Temmuz 2012 Cuma

Formspring Şifreleri Çalındı

,

Kullanıcıların birbirlerine sorular sorarak cevapladığı popüler sosyal ağ Formspring, dün bir hacker saldırısına uğradı.
 
Resmi blogdan yapılan açıklamada dün sabah bir güvenlik açığının meydana geldiği ve bazı kullanıcı şifrelerinin çalınmış olabileceği dile getirildi. Sorun çözülene kadar tüm şifreler devre dışı bırakıldı ve kullanıcılardan şifrelerin değiştirilmesi istendi.
 
Bazı çevreler 26 milyon şifrenin çalınmış olabileceğini belirtiyor. 
 
Formspring ise bir güncelleme yaparak olayın perde arkasını anlattı. Bilgilere göre 420 000 şifre, bir güvenlik forumunda ortaya çıktı ve bunların Formspring şifresi olabileceğinden şüphelenen bir kullanıcı yetkilileri haberdar etti. Forumda kullanıcı adlarının paylaşılmadığı belirtiliyor.
 
Site şu anda login işlemlerini durdurdu ve sorunun nereden kaynaklandığını anlamaya çalışıyor. İhtimaller, geliştirici sunucusuna sızan hackerların şifreleri çalmış olabileceği üzerinde yoğunlaşıyor. Formspring, derhal açığı kapatarak güvenlik protokollerini devreye sokmuş. 
 
Sistem normale döndüğünde ise kullanıcılardan email yoluyla şifrelerini değiştirmesi istenecek.

4 Temmuz 2012 Çarşamba

Mozilla, Firefox OS Için Görüşmelere Başladı

,

 
Mozilla, üzerinde çalıştığı Boot to Gecko adındaki HTML5 tabanlı mobil işletim sistemi için operatörlerle görüşmelere başladığını duyurdu.
 
Mozilla yeni işletim sisteminin adını Firefox OS şeklinde değiştirmiş. Mozilla; Deutsche Telekom, Etisalat, Smart, Sprint, Telecom Italia, Telefonica ve Telenor gibi farklı ülke operatörleriyle ortaklık görüşmelerine başladı. Operatörlerin de desteğini arkasına alan Mozilla, platformlar arasında açık webstandartları tecrübesi inşa ederek, maliyetleri düşürmeyi planlıyor.
 
Mozilla mobil ekosistemini tamamen açık kaynak ve HTML5 tabanlı olmasını istiyor. TCL ve ZTE firmaları, Snapdragon işlemcisini temel alan ilk Firefox OS cihazlarını üretmek istediklerini açıkladı. İlk Firefox OS telefonları 2013 yılında Brezilya'da Telefonica tarafından piyasaya sürülecek.
 
İnternet dünyasına açık kaynak tarayıcısı ile yeni bir anlayış kazandıran Mozilla, mobil işletim sistemi ile bu anlayışı mobil dünyasında devam ettirmek istiyor. 

28 Haziran 2012 Perşembe

Ado.Net 2.0 ve Toplu Güncelleme İşlemleri (Batch-Updates),Mars

,

Toplu güncelleştirme işlemleri, birden fazla sql ifadesinin (insert,update,delete,select gibi) arka arkaya gelecek şekilde ancak tek bir seferde çalıştırılmasını baz alan bir tekniktir. Ado.Net 2.0 ile, toplu güncelleştirme işlemlerine daha fazla fonksiyonellik kazandırılmıştır. Bu koşul elbetteki toplu güncelleştirme işlemlerini destekeleyen veritabanı sunucuları üzerinde geçerli olmaktadır. Şu an için, yönetimsel kodda yer alan Oracle ve Sql nesnelerinin desteklediği bu fonksiyonelliği kazanmak için aşağıda prototipi verilen ve SqlDataAdapter yada OracleDataAdapter sınıflarına ait olan, UpdateBatchSize özelliği kullanılmaktadır.
public override int UpdateBatchSize {get;set;}
Bu özellik bir anlamda, DataAdapter nesnesinin Update komutu ile veritabanına doğru yapılacak güncelleme işlemlerinin toplu olarak hangi periyotta gerçekleştirileceğini belirtir. Örneğin, 1 varsayılan değeridir ve her bir güncelleme işleminin (insert,update veya delete) her satır için ayrı ayrı yapılacağını belirtir. Daha derin düşünecek olursa, örneğin Sql Sunucusunda yer alan sp_executesql stored procedure' ünün her bir satır için birer kez ilgili komutu (Insert gibi) çalıştıracağını belirtir.
Diğer yandan, bu özelliğe 0 değerini verdiğimizde tüm güncelleme işlemleri tek bir seferde gerçekleştirilir. Bir başka deyişle veritabanına doğru n sayıda güncelleme işlemi varsa, Sql Sunucusunda yer alan sp_executesql stored procedure' ü bu n sayıdaki işlemleri içeren toplu bir komut kümesini tek bir seferde çalıştırılacaktır. Ayrıca UpdateBatchSize özelliğine 0 ve 1 haricinde verilecek olan pozitif değerler, her bir toplu güncelleştirme işleminin kaç iç komut içereceğini belirtmektedir. Konuyu daha kolay bir şekilde anlayabilmek için basit bir Console uygulması geliştirelim.
#region Using directives

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;

#endregion

namespace BatchUpdates
{
    class Program
    {
        static void Main(string[] args)
        {
            SqlConnection con = new SqlConnection("data source=localhost;initial catalog=AdventureWorks;integrated security=SSPI");
            SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM MailList", con);
            DataTable dt = new DataTable();
            da.Fill(dt);

            DataRow dr;
            for (int i = 1; i <= 5; i++)
            {
                dr = dt.NewRow();
                dr["AD"] = "AD_" + i.ToString();
                dr["SOYAD"] = "SOYAD_" + i.ToString();
                dr["MAIL"] = "MAIL_" + i.ToString();
                dt.Rows.Add(dr);
            }
            da.UpdateBatchSize = 1;
            SqlCommandBuilder cm = new SqlCommandBuilder(da);
            da.Update(dt);
            Console.WriteLine("İŞLEMLERİN SONU");
            Console.ReadLine();
        }
    }
}
Bu uygulamada Ado.Net 1.1 ile yapabildiğimiz işlemlerden farklı bir şey yoktur. Yukon üzerinde yer alan MailList tablomuza SqlDataAdapter nesnesi vasıtasıyla 5 adet satır giriyoruz. Bizim için önemli olan UpdateBatchSize değerinin 1 olarak belirtilmesidir. Uygulamamızı çalıştırmadan önce, Sql Profiler aracını kullanarak yeni bir Trace başlatalım ve Sql Sunucumuzda gerçekleşen işlemleri izlemeye çalışalım. Trace' imiz çalışırken uygulmamamızı yürütecek olursak, Sql Sunucusu üzerinde aşağıdaki olayların gerçekleştirildiğini görürüz.
Şekil 1. UpdateBatchSize değeri 1 olduğunda.
Dikkat edecek olursanız, sp_executesql stored procedure' ü girilen her satır için insert komutunu birer kez çalıştırmıştır. Bunun nedeni UpdateBatchSize özelliğinin 1 değerine sahip olmasıdır. Eğer bu değeri 0 yapıp tekrar çalıştırırsak, bu takdirde kaç satır girersek girerlim tüm satırlar için geçerli olan insert komutları tek bir toplu-komut olarak işlenecek ve tek bir seferde çalıştırılacaktır. Örnek olarak, döngümüzün değerini 20 satır insert edilecek şekilde ayarladığımızı düşünürsek, UpdateBatchSize özelliğine 0 değerini vermek ile, 20 satır için parametre alacak tek bir stored procedure' ü çağırmış oluruz. Uygulamamızda bu kez tüm satırları update ettiğimizi düşünelim ve UpdateBatchSize özelliğine 0 değerini verelim.
for (int i = 0; i < dt.Rows.Count; i++)
{
    dr = dt.Rows[i];
    dr["AD"] ="_DEGISTI";
}

da.UpdateBatchSize = 0;
Şimdi Sql Profiler' da Trace' imizdeki işlemlere bakacak olursa, kaç satır güncellenmiş ise her bir satır için yapılan update işlemlerinin tek bir toplu-komut kümesinde gerçekleştirildiğini görürüz.
Şekil 2. UpdateBatchSize özelliğine 0 değeri verildiğinde.
Elbette daha önceden bahsettiğimiz gibi UpdateBatchSize özelliğine 0 ve 1 haricinde pozitif değerlerde verebiliriz. Bu durumda toplu-komut kümeleri belirtilen sayı kadar iç komut içerecektir. Örneğimizde, UpdateBatchSize değerini 7 yaparsak, her bir sp_executesql çağrısında, içsel olarak 7 satırlık işlem içeren toplu-komut kümeleri olduğunu görürüz.
da.UpdateBatchSize = 7;
Şekil 3. UpdateBatchSize değerini pozitif her hangibir sayı olarak belirlediğimizde.
Örneklerdende görüldüğü gibi, Ado.Net 2.0 toplu-komut güncelleme işlemlerine daha fazla fonkisyonellik katmak amacıyla kullanışlı bir özellik kazanmıştır. Bazı durumlarda, güncelleme işlemlerinin bağlantısız katmandan, veritabanına doğru olan hareketlerinde toplu olarak yapılması network trafiğini olumlu yönde etkileyecek bir gelişmedir. Çünkü, tüm güncelleme hareketleri için veritabanına doğru sadece tek bir tur atılacaktır. Elbetteki devasa boyutlara sahip olan veri kaynakları üzerinde yapılacak büyük çaplı güncelleme işlemlerinde, toplu-komut kümelerini belirli sayılarda komut içerecek şekilde ayarlamakta performans açısından olumlu bir etki yaratacaktır.
Bu makalemizde, kısaca toplu-güncelleştirme (Batch-Update) işlemlerine değinmeye çalıştık. İlerleyen makalelerimizde, Ado.Net 2.0' ın yeni özelliklerine bakmaya devam edeceğiz. Bir sonraki makalemizde görüşmek dileğiyle hepinize mutlu günler dilerim.
 

Yazilim Kitabi Copyright © 2012