Blog Home  Amacin know-how ve XP paylasimi ise mutlaka yollarimiz biryerlerde kesisecek.. ;) RSS 2.0 Atom 1.0 CDF  
..::EralpErat::..{Embedded Programming} - Monday, May 21, 2007
I like Coding..
 
 Monday, May 21, 2007
    Selamlar ;
       efendim şimdi hepiniz .NET'in Java'dan belirgin bir şekilde ayrılan kimilerine göre dezavantaj kimilerine göre avantaj olduğunu iddia ettikleri bir durum var.O da istediğin dille yaz tek platformda çalışsın (Java da ise bir kez yaz tek dille yaz her yerde çalissin.. ) olayıdır..Şimdi  bizde boş durmadık araştırdık :) kimler var diye.. Buyrun liste aşağıda ki gibidir :)
      



5/21/2007 4:07:18 AM (GTB Daylight Time, UTC+03:00)  #    Comments [2]   .Net Framework  |  Trackback
 Friday, May 11, 2007

Selamlar nette dolanırken http://www.flashcomguru.com/index.cfm/2006/11/7/wpfe link'ine rastladım ilginçtir ki enteresan maddeler var bunlara göz atmak gerekirse...

  • WPF/E is a subset of and for this reason does less than WPF
  • Microsoft will develop plugins for Windows and Mac and while they 'care about Linux' they're not going to supply a plugin but let 3rd parties take care of that (shows how much they really care)
    • Bu konuda yanıldığını söyleyebilirim.Mono ekibi Moonlight diye bir projenin duyurusunu yaptı.Silverlight 1.1 in yapısı göz önünde bulundurularak geliştirilecek bir plug'in for linux !
  • the target runtime size will be 2MB (similar to the Flash Player which is 1.1MB to 1.3MB)
    • Bu konuda haklı.Ama bandwith hızı sadece Avrupa içerisinde sadece Türkiye'de ciddi problem!! TT'ye duyrulur...
  • the programming experience is different to Flash (but not really different to Flex)
    • Bu da doğru.

Yahu MS kimseyi zorladı mı illa kullacaksın diye, hayır !! O zaman isteyen Adobe'u kullansın isteyen MS'i.Yok sen işime karışma dersen Microsoft'a bende google'ın web teknolojisinde ki pazar payı ve Microsoft'un desktop üstünde ki hakimiyetini kaybetmeme telaşından ötürü windows app'ları ve haliyle Vista'ya yansıyan WPF'i göz ardı edemeyeceğini hatırlatmak isterim!..Doğal olarak bu teknolojinin Web'de daha büyük pasta isteyen Microsoft ve dolayısıyle onun ürünlerine yansımasıda pek tabidir efem..

Asp.NET 'in bir yere gittiği yok.YA da şu an ki veri işleme modellerinin vs vs.

Hep sunu demişimdir At binenin kılıç kuşananın..

Microsoft iyidir, hoşdur biraz dikenlidir ama tadı iyidir , yemesini bilene... :)

Bilişimle kalın :)

Eralp

5/11/2007 7:15:17 AM (GTB Daylight Time, UTC+03:00)  #    Comments [2]   Silverlight  |  Trackback

Selamlar ;

Asteriks demeyi daha cok isterdim ama kod adı Astoria olan yeni bir proje ile Microsoft yine ve yeniden karşımızda.. :)

Efendim bu nemi yapıyor diyorsunuz ? Şöyle diyeyim silverlight ile geliştirdiğiniz web uygulamanızın precompiled bir uri uzerinden cesitli kriterler dahilinde data serve edilmesini saglayan bir mekanizma.Var olan veri erişim mekanizmalarında (AJAX ı düşünmeyiniz) sayfa ilgili veri kontrolüne data bağlamak için herseferinde server'a post oluyor buda bir dünya zaman ve band kaybı olduğu için sıkıntı oluşturuyordu.Bunu onlemek uzere MS'in ADO'sunun architecture'larının başında gelen Pablo Castro ve ekibi bu projeyi gelistirmisler.Aslında kendileri de mekanizma da Entity Data Model uzerine yapilandirilmis bir durumda ki saniyorum ADO.NET 3.0'in yani Orcas in final surumunde bizimle birlikte olacak.Şu anda CTP'si bulunmakta ve http://www.microsoft.com/downloads/details.aspx?FamilyId=1B6F85BC-8933-4D0E-A639-934EF85ADCE1&displaylang=en adresinden indirebilirsiniz.Kanımca final sürümüyle cok farkı olmayacaktır.Bunu neye dayanarak solediğimi dusunuyor olabilirsiniz cevap olarak istenen seyin cok bariz bir şekilde ifade edilmesi diyebiliriz bence.Amac data'ya ulaşmak..Hummm nasıl  pek tabi XML ile.E adres belli geriye sorgu kriterleri kalıyor.Sorgulara bir kaç ornek vermek gerekirse

http://myserver/data.svc/Customers       Customers tablosunda ki tüm verileri getirecek.

http://myserver/data.svc/Customers[ALFKI basit bir where cümlesi .

http://myserver/data.svc/Customers[ALFKI]/Orders Orders tablosu ile ilişki kurduk :) İçinizden o... dediğinizi duyar gibiyim ama öle.

ve asıl enteresan olanı http://myserver/data.svc/Customers?$skip=30&$take=10 ile de paging yapabiliyor olmanız.inanilmaz değil mi ?

Sonuç ise bildiğiniz XML ;

DataService xml:base="http://myserver/data.svc">

 <Customers>

  <Customer uri="Customers[ALFKI]">

   <CustomerID>ALFKI</CustomerID>

   <CompanyName>Alfreds Futterkiste</CompanyName>

   <ContactName>Maria Anders</ContactName>

   <ContactTitle>Sales Representative</ContactTitle>

   <Address>Obere Str. 57</Address>

   <City>Berlin</City>

   <Region />

   <PostalCode>12209</PostalCode>

   <Country>Germany</Country>

   <Phone>030-0074321</Phone>

   <Fax>030-0076545</Fax>

   <Orders href="Customers[ALFKI]/Orders" />

  </Customer>

 </Customers>
</DataService>

Daha önceden flash'cı bir arkadaşım flash içinden IIS üzerinde ki bir XML Web Servisine ulaşmak istiyordu bunun için Flourine (http://fluorine.thesilentgroup.com/) kullanmıştım.Ama baya bi meşakkatli olmusdu.Astoria'nin vadettiklerine bakacak olursak oldukca basit hos bir mekanizma bizi bekliyor olacak..Dusunun sadece veri..

http://astoria.mslivelabs.com/gettingStarted.aspx linkinde get Started var.Burayı incelemenizi öneriyorum.

İyi çalışmalar.

5/11/2007 6:52:24 AM (GTB Daylight Time, UTC+03:00)  #    Comments [0]   Silverlight  |  Trackback

Selamlar ;

   Gecenin bu vakti nerden aklına geldi demeyin.Lazım olacaktı biraz araştırma ile 2 farklı çözümle birden karşılaştım.Biliyorsunuz ki JavaScript multithread bir yapıya sahip değil.Bu nedenle thread managementi yok.Ola ki ekranı 5 saniye kilitlemek istediniz.Bunu yapacak direkt bir komutta yok.Hummm içinizden birileri setTimeout('xyz()',5000); function xyz() {....} dediğini duyar gibiyim.Yalnız burdan dikkat edilmesi gereken bir husus var ki o da setTimeout un okunmasından sonra ilgili komut veya fonksiyon direkt olarak çağrılmıyor sadece kaç saniye sonra fire edilecekse o bilgi alınıp diğer satırdan itibaren yorumlama işlemi devam ediyor.Yöntemlerden ilki bir page vasıtasıyla thread'in yapmak.(asp.net de Thread.Sleep(5000); gibi..)Yani web sunucusunun bulunduğu makinede calisan thread'i manage etmek..Benim pek tavsiye etmediğim bir yontem ama calisir.

   Hummm ben bunu neden  mi kullanırım , dusunun ki Ajax kullanarak geliştirdiğiniz bir projede sunucu sonucları hemen size gonderiyor olsun ama sizde kullanıcıya işleminiz yapılıyor gibi bir bilgi vermek istediğiniz de bu durumda sunucunun nimetlerinden faydalanıp ilgili thread i bekletebiliriz.. :)

 

<script>
function IsIE(){
    var browser = navigator.appName;
    return browser == "Microsoft Internet Explorer";
}

function CreateRequestObject(){
    var obj;
    if(sahiIsIE()){
        obj = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        obj = new XMLHttpRequest();
    }
    return obj;
}

function SendToServer(url){
try{
  var http = CreateRequestObject();
  var url = url;
  http.open("GET", url, false);
  http.send(null);
  return http.responseText;
    }catch(ex)
{throw ex;}
}

function sleep(ms){
   SendToServer("http://localhost:9999/dyn/sleep?ms="+ms);
}

var start = new Date();
sleep(1000);
alert((new Date()) - start);

</script>

---

Bir diğer yontemde ki benim tavsiye ettiğim :)

this.Sleep = function uyku(sure){

      sure = sure * 1000;

      var sleeping = true;

      var now = new Date();

      var alarm;

      var startingMSeconds = now.getTime();

      alert("başlama zamanı : " + startingMSeconds + "\Uyuyacak olduğu süre : " + sure + " ms");

      while(sleeping){

         alarm = new Date();

         alarmMSeconds = alarm.getTime();

         if(alarmMSeconds - startingMSeconds > sure){ sleeping = false; }

      }      

      alert('uyannnn :)');

   }

 

iyi çalışmalar.

Eralp

5/11/2007 5:16:29 AM (GTB Daylight Time, UTC+03:00)  #    Comments [0]   Java Script  |  Trackback
 Tuesday, May 01, 2007

 

Merhabalar ;

 

Nedir bu silverlight diyorsunuz değil mi ?

Bence alttaki bu resmi iyice bir inceleyin cok  orda cevabı bulacaksınız..

 

Ek olarak bu zaten beklenen bir gelisme idi ki bence geç bile kalındı.Java benzer bir yapiyi yillar oncesinden gordu(Tek olması değil tek sebep bence internetin ve kaliteli proje adamı calistirmanın onemini cok onceden anlamıs bir firma olması vs vs..).En nihayetinde MS in de yaptığı bir nevi stratejik  ve zorunlu bir hamleydi.Linux ustunden de istenilen aspx sayfasının sorunsuz goruntulenebilmesi için ya kullanılan browser in JVM gibi bir yapiyi (MS in vendor ettiği )makineye kurması gerekecekti ya da ie for linux olup mozillayi,konqueror,safari ,opera vs. gibi diğer çift kale maç yapan browser ler gibi ie for linux i hemde forvet de oynatacak kadar iddiali hazirlamasi ya da su an ki haliyle client’a sadece html ve script gondererek (Bu Jscript’in gelisimini olumsuz yonde etkileyecekti.Yani ie’nin sadece Jscript e has bir dunya ek fonksiyonu var.Bunu da sisteme gomulu olan libler sayesinde hallediyor.Bu yeni gelismeler DLR ustunde Jscript’e prestij verecek)..Windows ustunde bile ie doğru durust calismiyor kaldi ki hiç bilmediği bir platform’a urun gelistirmek MS acisindan ölüm olsa gerek :) Gel gelelim ortaya cikan bu durumdan artik bir kacis olmadıgını pek ala anlamış durumda MS.MS in bırakın farklı platform lar için plug in geliştirmesini kendi  ekibinin yazılarında bile bir tek UNIX in adam yerine konduğunu ve linux dan diğer işletim sistemi adı altında bahsedildiği gün gibi bilinen bir gerçektir.

 

 

 

Su anda bir devrim olmaktadır.DLR’in onemi gun geçtikce artacak artik MS linux ustunde kosan diğer browser larada destek vererek OS (+ non MS) OS’ler ustunde kosamayan biz programcilara ( oley J ) guc katacaktir.

 

Ha sonuc olarak bence bunların cogu Vista (XAML in yapisi gereği..Aslında herbir element i derlenmiş bir .NET FW 3.0 class’in dan ibaret..)ve Expression a dayanıyor biraz.Microsoft Adobe’u ortadan kaldıramaz belki ama ozellikle developer cephesinde ciddi anlamda sallayacak gorunuyor ..

 

Merak ettiğim konulardan biride IronPython experimental idi yanlış hatırlamıyorsam.Su an ki LINQ ( Language INtegrated Query)’in atasi olan C OMEGA da oleydi ama ad degistirerek yasama dondu(C# 3.0).

 

Su an itibariyle ogrenmiş olduğum bir diğer olayda VBX, IronPython ve IronRuby  nin de arenada yer alacağı... VbX sanırım VBScript in yeni hali .. :) (EDIT : değilmiş :) VB extensions demekmiş ki bu extension'lar da C++'la geliştirilen birçok ekstra özelliği içeriyormuş.)

 

Dinamik dillere akın başlayacak..