bildirgec.org

class hakkında tüm yazılar

XNA – Başlangıç

polatengin | 10 May 2011 09:34

XNA ile başlangıç yapmak için, Visual Studio’larımızı açıyoruz ve yeni bir Windows Game projesi oluşturuyoruz.

Solution Explorer’a baktığımızda, proje içindeki dosyaları görüyoruz.

http://www.enginpolat.com

XNA Oyununu çalıştırdığımızda, başlangıç noktası olarak Program.cs‘deki Program class’ının static void Main() methodu çalıştırılır.

Main() method’unun yaptığı iş basittir;

1
2
3
4
5
6
7
static void Main(string[] args)
{
using (GameLoop game = new GameLoop())
{
game.Run();
}
}

C# ile Class içerisinden Cookie Oluşturup Okuyup Silelim

admin | 02 November 2010 13:03

Website geliştiricilerinin genellikle kullanıcılarına bazı özellikler ve sitelerine tekrar girdikleri zaman görmelerini istedikleri verileri saklamak için kullandıkları en önemli araçlardan biri de Cookilerdir. Şimdi beraber class kullanarak sitemizde istediğimiz zaman her yerde kullanıp kod kalabalığı yaratmadan cookiler üzerinde işlemler gerçekleştirecez.

Visual Studio üzerinden açtığımız Web projemize claasımızı ekleyelim

classımızın ismini belirttikten sonra koddlammamıza başlayabiliriz

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Sf.CmsB2C.Utility.B2C
{
public static class CookieManager
{
//cookie oluşturmak ve veri eklemek için fonksiyonumuza başlayalım
public static void Write2Cookie(string cookieType, string cookieName, string cookieValue)
{
//cookie mizi oluşturduk
HttpCookie cookie;
int cookieCount = 0;// varsa cookimiz içerisindeki verimizi sayacak olan counter
if (System.Web.HttpContext.Current.Request.Cookies[cookieType] != null)
{
//cookie zaten var ise içinni okuyup count edilen değerden sonrasına
// verimi ekliyeceğim
cookieCount = System.Web.HttpContext.Current.Request.Cookies[cookieType].Values.Count;
cookie = System.Web.HttpContext.Current.Request.Cookies[cookieType];
cookie.Values[cookieName + cookieCount.ToString()] = cookieValue;
System.Web.HttpContext.Current.Response.Cookies.Add(cookie);
}
if (System.Web.HttpContext.Current.Request.Cookies[cookieType] == null)
{
//cookie boş değer döndüğü için yeni bir cookie oluşturup verilerimi atıyorum
cookie = new HttpCookie(cookieType);
cookie.Values[cookieName + cookieCount.ToString()] = cookieValue;
System.Web.HttpContext.Current.Response.Cookies.Add(cookie);
}
}
public static void DeleteCookie(string cookieType)
{
System.Web.HttpContext.Current.Request.Cookies.Remove(cookieType);
}
/// <summary>
/// cookie ismi string halinde yollanır return değeri string List türündendir
/// ve cookie deki son kayıt list in ilk kaydı olacak şekilde ters sıralama ile return yapar
/// </summary>
/// <param name="cookieType"></param>
/// <returns></returns>
public static List<string> ReadCookie(string cookieType)
{
List<string> readedCookie =new List<string>();
if (System.Web.HttpContext.Current.Request.Cookies[cookieType] != null)
{
int count = System.Web.HttpContext.Current.Request.Cookies[cookieType].Values.Count;
for (int i = count-1; i >=0 ; i--)
{
readedCookie.Add(System.Web.HttpContext.Current.Request.Cookies[cookieType].Values[i]);
}
}
return readedCookie;
}
public static List<string> ReadCookie(string cookieType , int numberOfCookie)
{
List<string> readedCookie = new List<string>();
int difference = 0;
if (System.Web.HttpContext.Current.Request.Cookies[cookieType] != null)
{
int count = System.Web.HttpContext.Current.Request.Cookies[cookieType].Values.Count;
if (numberOfCookie <= count)
{
difference = count - numberOfCookie;
}
for (int i = count - 1; i >= difference ; i--)
{
readedCookie.Add(System.Web.HttpContext.Current.Request.Cookies[cookieType].Values[i]);
}
}
return readedCookie;
}
}
}

C# .ASCX ve Class Kullanarak Basit Facebook Share Yapalım

admin | 01 November 2010 16:52

Birçok sitede karşımıza çıkan ve facebook twitter gibi sosyal ağlarda paylaşım yapmamızı sağlayan küçük butoncuklar görüyoruz. Aslında bu sistemi yapmak çok kolay, parayla dahi satılan bu özellikleri facebook ve twitter gibi sosyal ağlar kendi içlerinde geliştirdikleri classlarıyla sizen sadece belli bir adrese sayfa adresinizi göndermenizi istiyorlar gerisi onlara ait.

Şimdi projemize geçelim; Sitenizin her yerinde kullanabilmenizi sağlamak amacıyla class ve user control denilen asp.net in bize sunduğu “.ascx” file’ını kullanacağız.

Öncelikle Class’ımızı oluşturalım

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Sf.CmsB2C.Bal.B2C
{
public static class FaceTwitSharer
{
public static void Sharer (int faceOrTwitOrFeed)
{
string sharedPageUrl = System.Web.HttpContext.Current.Request.Url.ToString();
string[] webSite = new string[3];
//facebook paylaşım adresimiz
webSite[0] = "http://www.facebook.com/sharer.php?u=";
// twitter paylaşım adresimiz
webSite[1] = "http://twitthis.com/twit?url=";
// ve son olarak Friendfeed ulaşım adresimiz
webSite[2] = "http://www.friendfeed.com/share?link=";
//adressleri gördüğünüz gibi bir string array a aktardım ve butanumdan
// gelecek olandeğeri konrol edip gerekli adresi çağırıyorum
if (faceOrTwitOrFeed == 0)
{
//response redirect işlemine class içinde ulaşmak için tüm yolu yazmamız
// gerekiyor
System.Web.HttpContext.Current.Response.Redirect(webSite[0]+sharedPageUrl);
}
if (faceOrTwitOrFeed == 1)
{
System.Web.HttpContext.Current.Response.Redirect(webSite[1] + sharedPageUrl);
}
if (faceOrTwitOrFeed == 2)
{
System.Web.HttpContext.Current.Response.Redirect(webSite[2] + sharedPageUrl);
}
}
}
}

Mükemmel HTML nasıl görünür?

admin | 17 November 2009 15:08

Çoğu zaman kendimi tutamıyor ve güzel görünen her sitenin kaynak kodlarını görüntüleyip inceliyorum. Tıpkı sokakta gördüğünüz her insanın temel kemik yapısını ve iç çamaşırlarını gösteren X-Ray gözlükler gibi doğrusu. Nasıl kendinize karşı koyup kodlara bakmazsınız ki?

Güzel bir sitenin güzel kodlarla yaratılışını görmek oldukça etkileyici doğrusu. Bazen de güzellik sadece dış görünüşte kalıyor. SEO’ya dikkat etmeyen arkadaşlarımız yüzünden olsa gerek. Ancak güzel kod nasıl olur? Şunun şurasında “Code is Poetry” (“Kod şiirdir”) diyen wordpress’i hepimiz bir şekilde kullanmışızdır. Sadece HTML’den ne olabilir ki? Topu topu sabit bir dil işte sadece ve dinamik özellikleri de hiç yok. Ancak gene de kodu yaratanın temel özelliklerini gösterir.

Bu konu da beni düşüncelere itiyor. Bir kodu ne güzel yapar? Konu HTML olunca, ustalığa bakar! Hadi güzel bir iskeletin, yazılması gerektiği şekilde yazıldığında nasıl göründüğüne bir bakalım.

Mükemmel HTML nasıl görünür?
Mükemmel HTML nasıl görünür?

Resim, isterseniz bir kağıda çıktısını alıp, duvarınıza asabileceğiniz kadar büyük.

  • HTML5 – HTML5 hem yeni, hem de html’yi şu ana kadarki en güzel haline getirdi.
  • DOCTYPE – HTML5 ile beraber, doctype da inanılmaz sade ve güzel bir hale geldi.
  • Sekmeler – Kodlar, ana/çocuk ilişkisini açıkça gösterecek şekilde ayrılmalı ve sekmelenmeli.

C# ve VB.Net sınıflarını aynı uygulamada kullanmak

romanistabukowski | 03 October 2009 12:17

Önce yapmamız gereken şey Visual Studio’da yukarıdaki gibi bir App_Code klasörü oluşturmak. Sonra bu klasörün içinde Class1.vb ve Class2.cs adlı 2 class oluşturmak.

Class1.cs’ye şunları yazalım öylesine:

1
2
3
4
5
6
7
public class Class1
{
public static string Selam()
{
return "Bu, selamın C# halidir";
}
}

dbClass ile PHP-MYSQL işlemleri kolaylaştı…

admin | 07 September 2009 10:43

Merhaba,
Az önce tamamlamış olduğum veritabanı sınıfı karşınızda “dbClass”… Bu sınıf size veritabanı üzerinde yaptığınız SELECT, INSERT, UPDATE, DELETE sorgularında SQL cümlelerindeki rutinlerden kurtulma fırsatı veriyor. Eğer kompleks SQL cümlecikleri yazmıyor sadece basit manada SQL’i kullanıyorsanız bu sınıf tam size göre.

Tam olarak yaptığı iş:
“SELECT alan FROM tablo WHERE sart=”1″” gibi bir sorgudaki sürekli yazılan alanları yazmak yerine,

1
$Result = $dbClass->GetAField ( "alan", "tablo", "sart = '1'" );

Jquery, Tutmayın Beni! Slideshow’a Kadar Yolun Var…

admin | 23 July 2009 10:13

Herkese tekrardan merhabalar, keyifleriniz yerindedir umarım. Keyifler yerindeyse bugün biraz daha bilgimizi genişleterek keyiflenme zamanımız geldi demektir 🙂

Burada yazdığım ilk Jquery dökümanı bu olacak. İlk başta Jquery’nin ne şekillerde kullanıldığını yazacağım. Daha sonra Jquery ile birkaç tane örnek uygulama yapacağım. Bu dökümanı daha net anlayabilmek için html ve css bilginizin de olması gerekiyor.

Elimizde bulunması gereken Jquery dosyasını Jquery Resmi Sitesi‘nden temin edebilirsiniz. Her şey hazırsa başlıyoruz…

PHP Class Yapısı

admin | 11 July 2009 11:55

Kodaman’daki 2. yazıma hoşgeldiniz. Bu yazımda sizlere PHP class yapılarını açıklamaya çalışacağım.

Başlamadan önce size Object Oriented için düşündüklerimi açıklamak istiyorum :
Object Oriented dillerin en önemli özelliği class yapılarını esnek kullandırtmalarıdır. Object Oriented dillerde her şey “ojbect” nesnesinden türemedir. Bu object nesneside aslında bir classtır. Yani Object Oriented = Class yapılarını kullanmaktır.

Not : Object Oriented’ın içerisine asla derinleme dalmadım. Fakat yüzeysel olarak bu şekilde biliyorum. Yanlış biliyorsam lütfen fazla üzerime gelmeden yorumunuzu ekleyiniz.

Şimdi gelelim bunu neden anlattığıma. OOP( Object Oriented Programming ) dediğimiz olay bizim yapacağımız işle birebir bağlıdır. Bunun için class yapılarını öğrendiğinizde aslında OOP’yede giriş yapmış olacaksınız.

c# resim format çevirici jpeg, gif, png, bitmap, tiff

skid | 17 April 2009 11:02

Zamanında bir arkadaşım için yazdığım resim çevirme nesnesi. Resmin formatını çevirmekle kalmayıp kalitesini de değiştirebilirsiniz.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
public class Converter
{
public enum enumImageTypes
{
Bitmap,
Jpeg,
Gif,
Tiff,
Png
}
public string ImagePath;
public enumImageTypes ImageType;
public int Quality;
public Converter()
{
this.Quality = 100;
}
public Converter(string inImagePath, enumImageTypes inImageType) : this(inImagePath, inImageType, 100)
{
}
public Converter(string inImagePath, enumImageTypes inImageType, int inQuality)
{
this.ImagePath = inImagePath;
this.ImageType = inImageType;
this.Quality = inQuality;
}
public void Convert()
{
Bitmap bitmap = new Bitmap(ImagePath);
ImageCodecInfo[] imgCodecs = ImageCodecInfo.GetImageEncoders();
EncoderParameters imgParams = new EncoderParameters(1);
EncoderParameter imgQuality = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, Quality);
string imgExt;
imgParams.Param[0] = imgQuality;
imgExt = imgCodecs[(int)ImageType].FilenameExtension;
imgExt = imgExt.Substring(1, imgExt.Length - 1);
string fullpath = ImagePath.Substring(0, ImagePath.Length - 4) + imgExt.Split(';')[0].ToLower().Replace('ı', 'i');
bitmap.Save(fullpath, imgCodecs[(int)ImageType], imgParams);
bitmap.Dispose();
}
public string imagePath
{
get { return this.ImagePath; }
set { this.ImagePath = value; }
}
public enumImageTypes imageType
{
get { return this.ImageType; }
set { this.ImageType = value; }
}
public int quality
{
get { return this.Quality; }
set { this.Quality = value; }
}
}

Php’de extend ile sınıf yazmak daha kolay

admin | 12 March 2009 10:22

Extends kelimesi adından da anlaşılacağı üzere büyümek ve genişlemek anlamına gelmektedir ve extend işlemi php’yi nesne tabanlı kullanan programcılar için güzel bir nimettir. Ben aşağıdaki örnekleri verirken PHP 4’ü baz alacağım. Sizler dilerseniz PHP 5 içinde manuel den faydalanabilirsiniz.

Düşününki elinizde iki tane sınıfınız var ve bu sınıflardan bir tanesi tarih işlemlerini yapıyor.

1
2
3
4
5
6
7
8
9
class Tarih
{
var $zaman; // time() karşılığı gelen değer
function Tarih_Yaz()
{
$tarih=date("Y-m-d H:i:s",$this->zaman);
echo("$tarih");
}
}