C programında Array length

Bir çok programlama dilinde array’ın lengtini kolay bir yolla alabiliyoruz. Örneğin ActionScript’de alırken şu şekilde alabiliyoruz array.length; dediğimizde dizinin içerisinde kaç adet değer olduğunu belirtiyordu. aynı şekilde C#’da array.getLength(0); dediğinizde arrayın genişliğini alabiliyoruz. Fakat C programında biraz farklı yöntemle array’ın lengtini alabiliriz. Şöyle;

int sayilar[5] = {0,1,2,3,4};
int sayilar_genislik = sizeof(sayilar) / sizeof(int);
int i;

for(i=0; i<sayilar_genislik; i++)
{
printf("Sayilarimiz sirasiyla : %d\n", sayilar[i]);
}

şeklinde array’ın lengtini alabilirsiniz…

Advertisements

jQuery olmadan sayfaya Javascript ekleme

Bazı projelerde jquery’i kullanma ihtiyacı duymassınız. Örneğin pure-javascript ile yazma ihtiyacı da doğabilir. Örneğin bir kiosk için uygulama yapıyorsanız ya da Akıllı Televizyonlar için bir uygulama büyük ihtimalle jQuery kullanamayacaksınızdır. Aslında bu örnekler çok uçuk örnekler olduğunun farkındayım sadece konuyu iyi kavramak açısından örnek vermek istedim. Şimdi kısaca jquery kullanmak istediğimizde Initialize fonksiyonumuzu nasıl oluştururuz bunun 3 yolu var.

1. Yol (window onload)

window.onload = function(){}

2. Yol (Body onload’a fonksiyon atama)

bunu güvenlik dolayısıyla yazamıyorum. Fakat şu şekilde oluyor. body tagının sonuna onload="initialize()" yazarsak ve bunu javascript etiketlerinde belirtirsek kodumuz çalışır.

3. Yol (jQuery notation)

(function(){

alert("sss")

})(window);

C programlama fonksiyona string yollamak

Yazacağımız programlarda uygulamamızın içine değer yollamak isteyebiliriz. Bu gibi durumlarda C programında bazı kriterler mevcut. Normal programlamada fonksiyon_adi(“string değerimiz”) şeklinde gönderirken C programlamada bu durum biraz değişiyor. Şöyle;

/*Burası önemli karakterimizin boyutunu belirtmek zorundayız. Ben girilen karakterin toplamda 12 olmasını istiyorum.*/
char karakter_goster(char str[12]);

int main()
{
//Toplamda 12 karakter oldu.
karakter_goster("SerhatSezer.");
return 0;
}

//Burada da karakterimizin boyutunu belirtmek zorundayız.
char karakter_goster(char str[12])
{
printf("Girdiginiz karakter %s \n", str);
}

jQuery ile Tabs Yapısına Bakış

Jquery ile tab yapıları neredeyse bütün sitelerde kullanılıyor. Fakat benim yapmak istediğim başka bir şeyken tabs yapısına ulaştım 🙂 Benim yapmak istediğim şeyle birebir aynı olduğunu gördüm. Yapmak istediğim şey sidebar’da iki adet buton olsun ve herhangi bir butona tıkladığımda content’e benim dosyalarımı load etsin istedim fakat daha pratik bir yolunu buldum. Normalde jqueryinin .load metoduyla html dosyalarını load edebiliyorduk fakat bu biraz daha kısayolu diyebilirim.

Yapılacak uygulama

ilk olarak css kodlarımızı gösterelim…

<!-- header -->
.header { position: absolute; width: 800px; height: 600px; font: 14px Helvetica;}</code>

<!-- sidebar -->
.side-bar { width: 800px; height: 40px; float: left }
.side-bar ul { padding: 0; margin:0; }
.side-bar ul li { float: left; margin-right: 10px; }
.side-bar ul li a { width: 90px; height: 20px; color: #fff; display: inline-block; background-color: #333; padding: 10px; text-align: center; text-decoration:none;}

<!-- content -->
.overlay-content { width: 790px; float: left; padding: 10px; border: 2px solid #222; }
.one { background-color: #888; color: #fff; }
.two { background-color: #555; color: #fff;}

Şimdi Html kodlarımızı yazalım

Bu bölümde wordpressin kodlarıyla çakıştığı için yazamıyorum ama yukarıdaki mantıkdan yola çıkarak
ilk olarak header adında genel bir divimiz var butun divleri icine alan. side-bar adinda bir divimiz daha var bunun icinde de listelerimiz var -ul ve li- overlay-content one adında bir content divimiz ve overlay-content two adında ikinci bir divimizde var.

Daha sonra Javascript kodlarımızı dahil edelim.

var SS = {

init : function()
{
$('.overlay-content.one').show();
$('.overlay-content.two').hide();
$('.activities').click(function(){

event.preventDefault();
var selectedDiv = ".overlay-content." + $(this).attr('rel');
$('.overlay-content').hide();
$(selectedDiv).show();
console.log(selectedDiv);

});
}
}

$(function(){
SS.init();
});

 

Game Development : Swap MovieClip position

Genelde oyun geliştirme de kullanılan Swap Object dediğimiz olayı basit bir yapıya indirip kolayca projelerimizde kullanabiliriz. Bunun için sahnemizde iki adet movieclibimiz var bunların birinin rengi kırmızı ve diğerinin ki mavi olsun (değişiklileri daha iyi anlayabilmek için) daha sonra aşağıdaki örneği uygulayıp derledikten sonra, ilk olarak mavi movieclib’e tıklayıp ardıdan pozisyonunu değiştirmek istediğimiz kırmızı movieclib’e tıklayalım. Sonuç olarak objelerimiz yer değiştirmiş olacaktır.

Buradaki asıl matık ; iki objemize tıkladığımızda aynı fonksiyona(clickEventSwapMcs) yollayıp, ardıdan da tıklanan objenin x,y koordinantlarını hafızaya atıp, yeni objemize bunları uygulamamız. Her tıkladığımızda da objemizi hafızadan kaldırmamız gerekiyor.

import flash.events.MouseEvent;

var lastClickedSwapMC:*;

mc1.addEventListener(MouseEvent.CLICK, clickEventSwapMcs);
mc2.addEventListener(MouseEvent.CLICK, clickEventSwapMcs);

function clickEventSwapMcs(event : MouseEvent)
{
	trace("tepki " + lastClickedSwapMC);
	
	//bir mc'ye önceden tıklanıp tıklanmadığını kontrol ediyoruz.
	if (lastClickedSwapMC == null || lastClickedSwapMC == undefined)
	{
		// eğer tıklanmamışsa, bir kere tıklanmıştır. Böylece mc'mizin tıklandığını hafızaya kaydediyoruz.
		lastClickedSwapMC = event.currentTarget;
	}
	else
	{
		// Eğer tıklandıysa, biz sadece pozisyonlarını değiştiriyoruz. tıklayıp kaydettiğimiz mc'den referans alarak.
		var savedX:Number = event.currentTarget.x;
		var savedY:Number = event.currentTarget.y;
		event.currentTarget.x = lastClickedSwapMC.x;
		event.currentTarget.y = lastClickedSwapMC.y;
		lastClickedSwapMC.x = savedX;
		lastClickedSwapMC.y = savedY;
		// sonra koordinatını değiştirdiğimiz objeyi temizliyip hafızadan kaldırıp tekrar değişmesini sağlıyoruz.
		lastClickedSwapMC = null;
	}
}