Osman KURT

Yazılım Uzmanı | MVC Eğitmeni

Sql de While Döngüsünün Kullanımı

.Net programlamada kullandığımız gibi birçok olayı SQL üzerinde de gerçekleştirebiliriz. Bunlardan bir tanesi de while döngüsü. SQL üzerinde birçok yazılımcı arkadaşın eksik olduğu aşikar. Bu durumu bir nebze olsun aza indirgemek için SQL konusun da birkaç yazı paylaşmaya karar verdim.

Örneğimiz kısaca 1'den 100'e kadar olan rakamları sırayla ekrana basmak olacak. Basit bir örnek ama anlamak için birebir.


 
DECLARE @Number INT = 0;
WHILE 
@Number < 100 BEGIN PRINT @Number;
SET @Number += 1;
END;
GO

Görüldüğü üzere şartı sağlayana kadar bir döngümüz var ve her seferinde print ile ekrana basıyoruz. Şart sağlandığı anda da döngümüz sonlanıyor.

Görüşmek üzere,
Osman KURT

Yazılım Geliştirme Uzmanı

OsmanKurt.Net Açıklama

Merhaba,

Blog sayfamda yapmış olduğum altyapı değişikliğinden dolayı internet üzerinde indexlenmiş bazı linklere erişim sağlanamamaktadır. İçerik aynı şekilde korunmuştur isterseniz arama ekranından bütün bilgilere rahatlıkla ulaşabilirsiniz. Anlayışınız için teşekkür ederim.

Görüşmek üzere...

Osman KURT

Yazılım Uzmanı

30. Ulusal Bilişim Kurultayı

Merhabalar,

Ben ve 7 kişilik arkadaş gurubum meslektaşlarım bilişim kurultayı için Ankara yollarına düşüyoruz. Bu durumdan blog takipçileri mi de haberdar etmek istedim. Böyle seminerler yada kurultaylar bizler için faydalı olmakta. Anlatılan konulardan yada konuklardan geçtim bir araya gelebilme açısından gerçekten de ziyaret edilmesi yada ilgi duyulması gereken bir olay olarak düşünüyorum. Gerekli bütün bilgileri etkinliğin web sayfasından bulabilirsiniz.

 Alt kısımda yönetim kurulu mesajını paylaşıyorum;

Değerli Dostlar, 

Bilişim sektörünün ülke gelişimine sağlayacağı katma değeri ve gücü bilerek, buna inanarak tam 41 yıldır Türkiye Bilişim Derneği çatısı altında var gücümüzle uğraş veriyoruz. Bu çerçevede her yıl düzenlenen ve artık gelenekselleşen TBD etkinlikleri sizlerin de katkısıyla markalaşmış, sektörel bir sahiplikle sektör zirvesi ve şenliği haline gelmiştir. 

Ülkemizde, bilişim sektörü tarihinde birer kilometre taşı olan, sektöre büyük açılım ve vizyon sağlayan, Ulusal Bilişim Kurultayı'nın bu yıl 30.su düzenlenecektir. Bilişim 2013 etkinliğimiz “Sayısal Gündem 2020” ana teması ile 28-29 Kasım 2013 tarihleri arasında JW Marriott Ankara Hoteli'nde gerçekleştirilecektir.  

Bilgi ekonomisinin gelişmesiyle Türkiye'nin küresel rekabet gücünde ve toplumsal refah seviyesinde büyük atılımlar olacağına inanıyoruz. Bilişim 2013'te, sizlere Türkiye'nin stratejik rekabet avantajı elde edebilmesi için bilgi ekonomisinin önemini ve Türkiye'nin sektörde büyük ivmeler kazanmasına yardımcı olacak politikaların ele alınacağı üç günlük bir program hazırladık. 

Yurtiçi ve yurtdışından konusunda uzman konuşmacıların davet edildiği etkinliğimize, kamu ve özel sektörün yönetici ve çalışanları, sanayici ve iş adamları, akademisyenler, girişimciler, öğrenciler ve teknolojiyi yoğun kullananlar katkı sağlayacaklardır.  

Bilim ve teknolojiye hakim, değer üretebilen, küresel rekabette başarılı ve refah seviyesi yüksek bir Türkiye için bütün taraflara özelliklede Bilişimcilere önemli sorumluluklar düşmektedir. Sizleri bilişim sektörünün en önemli, sektörel katılımı en büyük etkinliği olan Bilişim 2013'te deneyimleriniz ve vizyonunuzla sinerji oluşturmaya davet ediyoruz. 

Türkiye Bilişim Derneği

Yönetim Kurulu

Web Sayfası: http://www.bilisim.org.tr/index.html

Osmankurt.NET Değişti!

Merhaba arkadaşlar, 

blog sayfamın yazılım sürümünü güncelledim ve emin olun hayatımın sınavını verdim diyebilirim. Bu kadar sıkıntılı olacağını hiç düşünmemiştim. Basit olarak söylemek gerekirse blogengine alt yapısı saçma sapan bir yapı. Aslında yapı güzel ama dil desteği rezalet Resource kullanılmış ama tagların yarısı yok sürekli bir ağrıza içinde. Anlam vermekte sıkıntı yaşıyorum. 

Eğer blogla alakalı herhangi bir sıkıntı yaşarsanız eski tasarıma ve yazılara ulaşmak için

http://arsiv.osmankurt.net/

adresini kullanabilirsiniz.

Görüşmek üzere...

Osman KURT

Yazılım Uzmanı

Fancybox Kullandınız mı?

Son yazımda sizlere twitter bootstrap css ve jquery dünyası yazımla seslenmiş tasarımın yeni yüzünü anlatmıştım. Bugün de fancybox dediğimiz lightbox'ın yeni yüzünü anlatacağım. Daha doğrusu tavsiye edeceğim. Web Tasarımı ve yazılımı yapan arkadaşlar müşterilerimiz artık akıllandı :D gerçekten de mantıklı ve göze güzel gelen şeyler istiyorlar.(İstisnalar hariç) Artık biz de normal web sayfalarını bırakmalıyız bence. Sönük butonlar açılan sayfalar vs vs. 

Artık son zamanlar da kullanma alışkanlığı kazandığımız lightbox olayı var ki fancybox ile bu durum uçtu, tasarımı çok farklı yerlere götürdü. Donanımların arttığı yazılım tekniklerinin geliştiği performansın doruk noktalara ulaştığı günümüz de ve unutmadan değerlenen zamanı da eklemek lazım, internet dünyasınında ki yeniliklerini meslek icabı takip etmeniz gerek ki ekmeğini yiyesiniz.

Neyse bugünlük bu kadar alt kısımda linki veriyorum indirin entegre edin kullanımı document kısmın da mevcut istedğiniz gibi kullanın araştırın öğrenin.

Buradan İndirebilirsiniz...

Editörün notu: zaman telafisi en zor şey kıymetini bil ona göre kullan, akbil değil ki bu bitince para ver dolsun...

Görüşmek üzere,

Osman KURT
Yazılım Uzmanı

ASP.Net'de Kaliteli Resim Küçültme ve Boyutlandırma, Ölçeklendirme

İnternet dünyasının hızlı şekilde büyümesi ve günlük hayatımızın vazgeçilmez öğesi olması ile birlikte hayatımızın bütün media datalarını internet ağı üzerinde bulundurur olduk. Firmalar da kendi sayfalarında yada ürünlerini pazarladıkları e-ticaret sayfalarında oldukça sık şekilde media dosyaları paylaşmakta. Doğru olanı da budur zaten ama doğruyu biz yazılımcıların yapması gerekmekte. Mesela 100 ürün resminin olduğu bir sayfayı düşünelim tanesi 1 MB olan 100 adet resim dosyası ve orjinal boyutlarda koyulmuş düşünsenize sadece ürün listelemek için 100 MB :D kotamızın 4 GB olduğunu düşünürsen 40 kere aynı siteye girmek yeter :D Şimdi yazılımcı olarak alacağımız önlemlerin başında resim ölçeklendirme gelir. Nasıl mı? İşte alt kısımda ki kodla yapıyoruz. Önce class dosyamız var onu bir oluşturalım isterseniz.

public class fotograf
{
    public static void yukle(FileUpload fu, int Ksize)
    {
        System.Drawing.Image orjinalFoto = null;
        HttpPostedFile jpeg_image_upload = fu.PostedFile;
        orjinalFoto = System.Drawing.Image.FromStream(jpeg_image_upload.InputStream);
        KucukBoyut(orjinalFoto, Ksize, fu.FileName);       
    }
    protected static void KucukBoyut(System.Drawing.Image orjinalFoto, int boyut, string dosyaAdi)
    {
        System.Drawing.Bitmap islenmisFotograf = null;
        System.Drawing.Graphics grafik = null;

        int hedefGenislik = boyut;
        int hedefYukseklik = boyut;
        int new_width, new_height;

        new_height = (int)Math.Round(((float)orjinalFoto.Height * (float)boyut) / (float)orjinalFoto.Width);
        new_width = hedefGenislik;
        hedefYukseklik = new_height;
        new_width = new_width > hedefGenislik ? hedefGenislik : new_width;
        new_height = new_height > hedefYukseklik ? hedefYukseklik : new_height;

        islenmisFotograf = new System.Drawing.Bitmap(hedefGenislik, hedefYukseklik);
        grafik = System.Drawing.Graphics.FromImage(islenmisFotograf);
        grafik.FillRectangle(new System.Drawing.SolidBrush(System.Drawing.Color.White), new System.Drawing.Rectangle(0, 0, hedefGenislik, hedefYukseklik));
        int paste_x = (hedefGenislik - new_width) / 2;
        int paste_y = (hedefYukseklik - new_height) / 2;

        grafik.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
        grafik.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
        grafik.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.Default;

        System.Drawing.Imaging.ImageCodecInfo codec = System.Drawing.Imaging.ImageCodecInfo.GetImageEncoders()[1];
        System.Drawing.Imaging.EncoderParameters eParams = new System.Drawing.Imaging.EncoderParameters(1);
        eParams.Param[0] = new System.Drawing.Imaging.EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 95L);

        grafik.DrawImage(orjinalFoto, paste_x, paste_y, new_width, new_height);
        islenmisFotograf.Save(HttpContext.Current.Server.MapPath("/klasor/" + dosyaAdi), codec, eParams);
    }
}

Şimdi ise Default.aspx sayfamıza 1 adet fileupload ve 1 adet buton koyalım daha sonra da butonumuza çift tıklayalım. Gelen click event'mize alt kısımda ki kodumuzu yazalım ve işlemimizi tamamlayalım.

protected void Button1_Click(object sender, EventArgs e)
    {
            fotograf.yukle(FileUpload1, 150);
     }

 İşlemimiz bu kadar arkadaşlar. Artık kaliteli bir şekilde resimlerimizi boyutlandırabiliriz.

Görüşmek üzere,

Osman KURT

Yazılım Uzmanı