26 Haziran 2012 Salı

Veriden Geleceğe 2012 (İş Zekası ve Veri Ambarı Eğitimi)


Sektörün önde gelen isimlerinin eğitmen olarak katıldığı program eğitmenlerin düzenlediği oturumlar ile gerçekleştirlecek.
Katılımcı profilinin bilişim sektörü ile ilgili olan üniversite 3. veya 4 sınıf öğrencileri ile yeni mezun olmuş öğrencilerden oluştuğu eğitim 2 hafta sonu boyunca sabah 09:00 – 12:00 ve 13:00- 16:00 aralarında 3 er saatlik seanslar ile gerçekleştirilecek.
 
 
 
Başvuru formunu doldurup info@datawarehouse.gen.tr adresine gönderen katılımcılar arasından ön değerlendirme sonrası kesin kayıt yaptırmaları gerekmektedir. Kesin kayıt yaptırmayan katılımcıların başvuruları iptal edilecek ve yerine yedek listedeki katılımcılar davet edilecektir. 
 
Eğitim sonrası Katılım belgesi verilecek katılımcılar aynı zamanda iş zekası sektöründe çalışan şirketlere tavsiye edileceklerdir.
 
Eğitim Üsküdar Gençlik Merkezinin ev sahipliğinde gerçekleştirilecektir.
 
Eğitim ana sponsorumuz Philogica ‘ya sonsuz teşekkürlerimizi sunuyoruz.
 
BAŞVURU FORMU : Veriden Geleceğe 2012 Başvuru Formu  –  info@datawarehouse.gen.tr
 
Ayrıntılı bilgi için : www.datawarehouse.gen.tr iletişim maili info@datawarehouse.gen.tr ye mail gönderiniz.
 
Etkinliğin Facebook Grubu :  DatawarehouseTurkiyeBilisimKurslari

Çok güzel bi etkinlik olacağı kesin. İnş. bende katılma şansı bulurum...

8 Haziran 2012 Cuma

Veritabanı Bağlantısında Store Procedure kullanımı


Merhaba arkadaşlar.Programlamanın en gözde konularından birisi  "veritabanı bağlantısını" nın ufak bi örneğini göstereceğim sizlere.Command nesnesinde çoğumuz şimdiye kadar sql cümleciği görmüşüzdür "select *from uyeler" v.b şeklinde.Tabi bu başlangıç sürecinde kullanılan bi yöntem ancak zamanla uzmanlaştıkça store procedure kullanıldığını farketceksiniz ve sizde programlarınızda store procedurlere yer vereceksiniz.Sizlere Store procedure kullanmanın faydasını iki cümle iki izah etmek istiyorum. Store procedurler Sql serverımızda  yazdığımız sql fonksiyonları diyebiliriz. Store procedurların en önemli özelliği yazıldıktan sonra bir kez derlenip sonra istediğimiz zaman çağırabiliyo olmamızdır.Zaten asıl önemi de derlenmiş olmasından geliyo.Çünkü programlarımıza hız kazandırıyo. e zaten hız bizim için en önemli kıstaslardan biri değil miydi? O zaman şimdi kodu inceleyelim ve sağındaki açıklamalarını dikkatlice okuyalım.



using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;

namespace deneme
{
    public partial class insrt : System.Web.UI.Page
    {
        SqlConnection cnn = new SqlConnection("server=localhost; Database=abc; uid=sa; pwd=1"); // DB ile bağlantı kurduk ve gerekli parametreleri girdik
                                                                                               

        protected void Page_Load(object sender, EventArgs e)
        {
        }
            protected void btnekle_Click(object sender, EventArgs e)
        {
            try
            {
                cnn.Open(); // Öncelikle veriyle işlem yapmak için bağlantımızı açıyoruz.
                              //cmd nesnesi oluşturmadan bi sonraki basamaktada açabilirdik. sırası çok mühim değil

                SqlCommand cmd = new SqlCommand("ekle", cnn); // command nesnesini oluşturduk ve ve ekle isimli store procedure müzü sql cümleciğini yazdığımız yere yazdık.
                                                               

                cmd.CommandType = CommandType.StoredProcedure;  // command tipimizi storeprocedure olarak belirttik

             
                cmd.ExecuteNonQuery();   //Sorgumuz geriye sonuç döndürmeyeceğinden cmd nesnemizi executenonquery()  ile çalıştırıyoruz

            }

            catch
            {
                lbluyari.Text = "bağlantıda sorunvar";  // try bloğu çalışmazsa catch bloğu devreye girecek.

      profesyonel programlama hataları gözardı etme ve bunun için gerekli kodlamayı yapar
            }

            finally
            {
                cnn.Close();  // son olarak  bağlantımızı kapatıyoruz. Kesinlikle açık bırakmayalım.
            }
        }
    }
}


Kodumuzda kullandığımız ekle store proceduru :

create procedure ekle
{
@yazaradi nvarchar(50),
@kitapadi nvarchar(50)

}
as
 insert into yazarlar(yazaradi,kitapadi) values(@yazaradi, @kitapadi)

şeklinde olacaktır arkadaşlar. Bir sonraki blogda görüşmek dileğiyle hoşçakalın....

Javascriptle validation örneği

Merhaba arkadaşlar. Uzun bir aradan sonra, yaklaşık 10 gündür bloga yazamadım. İçimde yine yazma hissi oluştu ve buraya kadar geldim... Bu seferki blogumuzda kısa kısa javascript kodlarıyla kullanıcının inputları boş bırakmasını önleyeceğiz. Hani form doldururken 'lütfen * lı alanları boş bırakmayınız'  uyarısını alırız, bizde ona benzer bi uygulama yapıcaz. Şimdi kodumuzu yazalım

<head>
<script language="Javascript">
function kontrolet(alan)
{
  if(alan.value.length<1)  //elementimizin value propertysinin uzunluğuna bakıyoruz. Boş ise
{
alert("Alanı boş bırakma");   // alert metotu ile uyarı penceresi oluşturuyoruz
                                          // ve False değerini döndürüyoruz.
return false;

}

else
{
   return true;
}

}

</script>
</head>  
  Kullanacağımız fonksiyonu head başlık kısmına yazdık.Şimdi body kısmında nasıl kullanacağımızı görelim

<body>
<form action="" method="post" name="formum" >
<input type="text" name="isim" value="" onBlur="kontrolet(this)"> // elementin onBlur propertsinde                    
                                                                                           // fonksiyonu çağırdık  ve this  anahtar kelimesi
                                                               // ile bulunduğumuz elementi gösterdik. Bu element için this=isim dir.

<input type="text" name="soyisim" value="" onBlur="kontrolet(this)"> //elbette this yerine soyisim de      
                                                                                                           //yazabiliriz.
</form>
</body>

onBlur ==>Nesneden ayrılma durumunu izah eder. Mesela kullanıcı adını tıkladıktan sonra boş bırakıp fareyi başka yere götürdüğünüzde  fonksiyon devreye girer.

Kodumuz bundan ibaret arkadaşlar. Son derece kolay ve kullanışlı. Yakında Jquery uygulamaları gelecek. Bi sonraki blogda görüşmek dileğiyle hoşçakalın...

29 Mayıs 2012 Salı

Javascript'le tarih yazdırma

Merhaba arkadaşlar.1-2 gündür bloga bakmıyodum ara sıra aklıma gelse de sonra bişiler eklerim diyerek geçiştirdim.Ama bu blog bana bi sorumluluk gibi geliyor artık.İnsanın elinde olmadan bişiler ekleme gerekliliğini kendisinde hissediyor. Bu akşam Javascript çalışırken babamın "sende bişiler üret artık" ikazının ardından(fırça yedim aslında)  baktığım ve "aa ne güzelmiş kısa ve kolay bi kod " dediğim kod parçasını sizlere açıklayarak anlatacağım. Kod web sayfamızda o an bulunduğumuz ayın gününü(0-30), haftanın gününü 0-6 ve pazar, p.tesi şeklinde ve de saati dk yı saniyeyi yazdıracak. Tabi bunları daha da artırabiliriz.Neyse uzatmadan kodu paylaşmak istiyorum

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>takvim</title>

<script language="javascript">

gunler=new Array("Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi")

aylar=new Array("Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık")

simdi=new Date

</script>
</head>

<body>

<script language="javascript">

document.write("<h2> bugun gunlerden   :  " +gunler[simdi.getDay()] + "  ,  " +simdi.getDate() + "   "+aylar[simdi.getMonth()]+ "  saat  " +simdi.getHours()+"."+simdi.getMinutes()+"."+simdi.getSeconds()+".</h2>");

</script>
</body>
</html>

Şimdi yavaş yavaş kodumuzu açıklayalım. öncelikle head tagları arasındaki scriptimizde günler ve aylar isimli dizilerimizi oluşturuyoruz. Diğer programlama dillerinde olduğu gibi, tek farkı önünde veri tipi yok.dizilerimizi oluşturduktan sonra body tagları arasındaki scriptimize geliyoruz. Öncelikle document.write() metodu ile sayfaya içerik yazıyoruz.Bunu bilmeliyiz. Bu kodda biliyorum ki en çok merak ettiğiniz getDay(), getMonth(), getDate, metotları ne işe yarıyo. Hemen söylüyorum.

getDay() ==> Haftanın gününü(Pazar=0, Ptesi=1 şeklinde).Yani bize tamsayı değer döndürür.
getDate()==> Ayın içinde bulunduğumuz günü(0-30 arası)
getMonth()=>>İçinde bulunduğumuz ayın index no sunu verir.(Mayıs için 4 mesela)
getHours()==>İçinde bulunulan saat(0-23 arası)
 getMinutes()==>İçinde bulunulan dakika(0-59 arası)
getSeconds()==>İçinde bulunulan saniye.

Evet arkadaşlar yukarıda gösterdiğim metotların döndürdüğü değerler dizi değişkenine atanarak dizinin o indekse karşılık gelen değerini yazdırıyoruz.Olay kısaca bundan ibaret.Çok ilginiz çekmeyebilir ama paylaşmadan geçemedim. Başka paylaşımlarla buluşmak dileğiyle. Sağlıcakla kalın...

26 Mayıs 2012 Cumartesi

Php Dizi Değişkenleri

Programcılıkta sıkça karşılaştığımız argümanlardan biridir dizi değişkenleri.Birçok işlemi diziler sayesinde kolaylıkla yaparız.Bu makalemde ise php de dizi değişkenler nasıl oluşturulur, nasıl değer eklenir onu göstericem.

<?php
$dizi=array();
$dizi[]="ocak";
$dizi[]="Subat";
$dizi[]="Mart";

echo $dizi;
?>

Bu kod parçasında önce dizi değişkeni oluşturuyoruz ve bu değişkeni array komutu ile dizi değişkeni haline getiriyoruz.Örneği çalıştırdığımızda ekrana 'array' yazısı çıkacaktır. Ancak dizideki değerleri ekrana yazdırmak istiyorsak index belirterek yazdırmalıyız.

echo $dizi[0];
 echo $dizi[1];

sırayla ekrana ocak ve şubat yazdırdık.

Diğer kullanım şekillerine gelecek olursak,
<?php
$dizi=array();
$dizi[5]="İsmail";
$dizi[a]="Ankara";
?>
Bu kullanım şeklinde istediğimiz index değerlerini verebiliyoruz.
Bir diğer kullanım şekli:
<?php
$dizi=array(
1=>"İstanbul",
2=>"Ankara",
3=>"Bursa",
4=>"İzmir"
);
?>
Şeklinde kullanılır.Girilen son kayıttan sonra virgül olmadığına dikkat edelim lütfen.

Bir sonraki makale de görüşmek dileğiyle.Sağlıcakla kalın...

25 Mayıs 2012 Cuma

Visual Studio 2010 u zevklerinize göre değiştirin

Üniversiteye başladığımda tanıştım visual studio ile ilk olarak. Tabi o zamanki sürüm visual studio 2008 di.Daha sonra 2010 sürümü çıktı.Şahsen bende ikisi de mevcut nedense. 2010  versiyonunda benim gözüme ilk çarpan mavi renkli temasıydı.2008 e göre daha çekici. Hadi gel bende yazılım geliştir der gibi adeta.Ama ben bu temadanda sıkıldım diyorsanız buyrun bu bağlantı sizin için yeterli olacak
http://visualstudiogallery.msdn.microsoft.com/20cd93a2-c435-4d00-a797-499f16402378 . 
Bağlantıya tıklayın ve ilgili eklentiyi indirin. Kurulumu yaptıktan sonra Visual studio yu açın theme sekmesinden istediğiniz temayı seçin.Ben bunları da beğenmedim diyorsanız merak etmeyin sizi unutmamışlar, customize colors seçeneğini tıklayarak kendi renklerinizi kendiniz belirleyebilirsiniz.


Umarım farklılık isteyen ve konsantrasyon açısından kendinisi daha iyi hissetmek isteyen arkadaşlar için iyi bir çözüm olduğunu düşünüyorum.
Bir sonraki yazıda görüşmek üzere...

30 Nisan 2012 Pazartesi

Nedir bu Asp.net

Bu ülkede meslek liseleri üzerinden “programcı” yada buna benzer sıfatlarla eğitim gören bir çok insana,hatta bir çok değil de nerdeyse tamamına önce olayın temel mantığının anlaşılması açısından kağıt üzerinde bir programın nasıl başlayıp nasıl bitmesi gerektiği kavratılmaya çalışılır.Daha sonra ise şanslı olanlarımız (yani bu şanslıdan kastım okulunda uygulama çalıştırıp oluşturabilecek donanıma sahip olanlarımız),Pascal üzerinden pratik yapmaya başlar.Burada geliştirilen uygulamalar nesnel olmadığından pek tabii de çeşitli matematiksel hesaplamalar yapmaya çalışan küçük uygulamalar yaptığınızdan zaten bilgisayarı olmayan bir çok öğrenci olaydan tamamen kendini dışlar ve soğur.Bunlar gereksizdir demiyorum ama biraz teşvik ve heyecan katamıyordu eğitim görevlileri işin içine.Herhangi bir şey sorduğunuzda sanki çok zor bir teoremi bilginiz olmadan inceliyormuşçasına size daha bir şey bilmeden uçmamanız ve hayal kurmamanız gerektiği üzerine telkinlerde bulunur.Tabi saçma sapan bir çok konuda kaybedilen vakitlerde cabası.Ama bir şeyi de inkar edemeyeceğim.Oda Pascal da program yazarken çalıştığını gördüğümde aldığım zevki hiçbir RAD tabanlı dille geliştirdiğimde almadığımdır?.
Daha sonraki senelerde ise artık Visual Studio 6.0 ile nesnel programlama olayına giriş yaparsınız. Eğer bu işi seviyor ve zevk alıyorsanız birden tüm formları kendinizin tasarlayıp düzenleyebileceğiniz ve bunların Windows üstünde daha az sorunla çalıştırabileceğiniz fikri sizde büyük heyecan uyandırabilir.
Şimdi ki konumuz Windows üzerinde uygulama geliştirmekten çok,bu Visual Studio denen meretin sağladığı kolaylık ve güzelliklerden faydalanarak nasıl dinamik web uygulamaları geliştirebileceğimiz.
Nedir Asp.net ?ASP’yi bu işle alakalı biraz bilgisi olan herkes bilir.İşin .net boyutu ise deyim yerindeyse Microsoft ‘un Java ile baş edememesine müteakiben çıkarttığı,zaten var olan Studio platformunu biraz daha genişleterek herhangibir uygulama geliştirmek istediğinizde uygulamayı hangi dilde geliştirmek istediğinizi bile kendinizin seçmesine olanak sağlaması.Zaten bu seçim ekranını aşağıda göstereceğim.
Nerden istersiniz?MS Visual Studio’yu ilk açtığınızda karşınıza resimdeki gibi bir karşılama ekranı gelir.Ben Visual Studio 2005 sürümünü kullanıyorum.Burada kocaman buton veya resimlerle göremeyebilirsiniz ihtiyacınız olanları.Sol bloktaki en üstteki kutucuktan yapacağız seçimlerimizi.
Resimde de gördüğünüz gibi “Open” ve “Create” başlıkları altında 2 farklı iş yapma seçeneğimiz var.Open da varolan bir projemizin proje dosyasıyla tekrar tüm dosya yollarıyla birlikte açılmasını sağlıyoruz.Create’te ise yeni bir projeye başlangıç yapıyoruz.”Project…” seçeneğini seçerseniz Windows için bir uygulama geliştirmeniz için gerekli olanlar açılır.Bizim şimdilik onunla işimiz yok.Yapmak istediğimiz Asp.net altında bir uygulamaya başlamak.Onun için Web Site… diyoruz.
Create Web Site dedikten sonra karşınıza şöyle bir ekran geliyor :
Resimden de anlıyacağınız üzere Language sekmesinden web sitenizi oluştururken hangi dili kullanmak isterseniz onla çalışmalarınıza başlayabiliyorsunuz.Location kısmından ise File System diyerek, isterseniz kendi belirlediğiniz klasör altında tüm dosyaları toplayarak çalışabiliyorsunuz.Dilerseniz, diğer seçenekler olan http veya ftp seçeneklerinden birini seçip direk sunucu üzerinden de çalışabilirsiniz.Hemen belirtmek isterim:ASP.NET ile uğraşırken yaptığınız web sitelerinde önizleme almak istediğinizde herhangi bir sanal sunucunun uygulama geliştirilen PC’de kurulu olması gerekmiyor(Visual Studio,SQL Server’e varana dek tüm gereksinimleri otomatik kurmakta).Direk sayfanın üzerine sağ tıklayıp,”preview page” diyerek önizleme yapabiliyorsunuz browserdan.
Gerekli şeyleri seçip OK dedikten sonra karşınıza aşağıda ki gibi bir görüntü çıkıyor.Burada sol tarafta bir toolbox var.Sayfanızı “Design” görünümünde tasarlarken kullanmak istediğiniz objeleri barındırıyor.Ki bu objeler bile Dreamweaver da neden ASP ile ilgili bir sayfa yapmamanız gerektiğini size söylüyor ?.
Sayfanızın altında “Design” ve “Source” şeklinde iki sekmeniz olacak.”Design” kısmında ToolBox’tan sürükleyip bırakarak nesneleri çalışmanıza ekleyebilirsiniz, Source kısmında ise ASP ve HTML kodlarını görebiliyorsunuz.
Data Controlİçinizde Visual Basic ile ilgili veya herhangi bir MS platformuyla ilişiği olanlar kendi çaplarında veritabanıyla ilgili bir uygulama geliştirmeye kalktıklarında Database konusunda başvurdukları tek yer Ms Access veritabanı yönetim aracıdır.
Toolbox’ın içerisinde ki objeler çeşitli gruplara ayrılıyor.Standart sekmesi altındakiler “radio buton,textbox,buton” gibi bilindik sıradan nesneler.Onun altında “Data,Validation,Navigation,Login,WebParts,Html, Crystal Reports” sekmeleri bulunuyor.Benim anlatmak istediğim ve şu anlık bizi ilgilendiren data kontrollerimizi kolaylaştıran Data ve Login sekmeleri altında ki nesneler.
Resimden de göreceğiniz üzere Data sekmesi altından Datalist nesnesini kullanıyorum.Bunu formun üzerine sürükleyip bıraktığımda DataList Tasks adı altında hangi database i kullanmak istediğimi soruyor.Choose data source dediğinizde karşınıza bir wizard çıkıyor.Burdan size izin verdiği yolları gösteriyor.Bizim kullanacağımız olan Access database’i seçip ok dediğinizde yazının başında da proje açtığımız kısımda ki klasörümüzün içinde ki yola direk browse ediyor.Buradan da bizim bu klasöre oluşturduğumuz database i göstererek database in içerisinde ki verileri direk olarak formumuzdaki nesneye aktarabiliyoruz.Artık Visual Studio’nun bu toolbox’ında ne kadar bu tarz nesne varsa hiçbir komut yazmandan (OleDb komutları gibi…) verileri formumuzda görüntüleyebiliyoruz.Tabii ki biz bunları yaparken sayfanın arka planında Visual Studio bu kodları otomatik olarak aktarıp görmemize olanak sağlıyor.