Category Archives: Java

RSS’te yetkilendirme

RSS yayınlarını (besi de deniyor) ciddi bir yazılım çözümü içinde kullanmayı planlıyorsanız, bir yetkilendirme yöntemine ihtiyaç duyulur. Aşağıda bağlantısını vereceğim makaleye göre, RSS okuyucuların nadir bir kısmı HTTP üzerinden yetkilendirmeyi ve şifrelemeyi (SSL) destekliyor.

HTTP üzerinden yetkilendirme, şifreyi açık olarak gönderdiği için pek tercih edilmemesi gereken bir yöntem. Ancak HTTPS(SSL) üzerinden yayınlanırsa, güvenli oluyor.

Konu açılmışken, uzun süredir firefox-thunderbird ikilisinin rss okuma yetenekleriyle yetiniyordum. Bir yandan da google reader kullanıyorum. Ama artık, daha iddialı bir rss okuyucu edinmenin zamanı geldi sanırım 🙂

http://labs.silverorange.com/archives/2003/july/privaterss

Reklamlar

Servis odaklı mimari

Yazılımı bir servis olarak geliştirmek, iki bilgisayarın ağ üzerinden ilk konuştukları günden bu yana -muhtemelen yüzbinlerce kez- yapılmış birşey. Daha gerisini bilmiyorum; ama web servislerinin bu kadar popüler olmasından önce de aynı amaçla kullanılabilen bir çok altyapı teknolojisi mevcuttu. CORBA, DCOM ve REST, bunlardan yalnızca bazıları. (bkz. RPC)

XML-RPC ya da SOAP, sadece XML’in popüleritesinden ve web uygulamaları üzerine oluşan deneyimden nasiplerini alanlar. Fena mı oldu, tabii ki hayır. Ama “servis odaklı mimarîye, sadece web servisleri gözüyle bakmak”: işte fenâ olan budur.

Yazılımın üst düzey tasarımı tartışılırken konuşulan şey “web servisleri” ise, bence yol yanlıştır. Tartışılması gereken şey, “servis odaklı mimarî”dir. Web servisleri, yalnızca bunu nasıl yapacağınıza karar verdiğimizde değerlendirmemiz gereken bir alternatif.

Bu yolla, “servis odaklı mimarî”nin tasarımınıza olan etkilerini açıkça değerlendirebilirsiniz. “Loose coupling” denen nâneye yeni bir gözle bakmak, yenilik budur. Servis odaklı mimâri, nesne yönelimli tasarımın semirmiş halidir. Bugün böyle popüler olmasının sebebi de, nesne yönelimli programlamayı sindirmemizin tamamlanmış olmasıdır. Dediğim gibi, bir servis yazmak için onyıllardır teknoloji mevcuttu.

Özet: Gün bugündür! 🙂

Javascript debug

Javascript kodu yazarken, hata bulmak için kullanılan yöntem genelde alert(değişken) gibisinden olur. PHP kullanıcılarının çoğu da, benzer yöntemler (vardump, print_r,…) kullanır. Ben de bir süre öncesine kadar öyle yapardım, ve nasıl sancılı bir süreç olduğunu bilirim.

Javascript debugging ile söyleyeceğim birçak söz var. Öncelikle, kodun içinde bir satıra sadece “debugger” yazarak, kodun içine “breakpoint” koyabiliyor, o satır çalıştığında sistemde kayıtlı debug tool’ların tetiklenmesini sağlayabiliyorsunuz. Bu aşamadan sonra zaten ekranda debugger’ların listesi geliyor. Bu konuda Visual Studio 2005 gayet iyi.

Diğer yandan, Firebug isimli bir js, html, css debugger var ki incelerken ofiste bizi “oha, oha, oha” diye inletti. Sizi bu haz gösterisine davet ediyorum:

Firebug – Web Development Evolved (adını hakediyor)

Powered by ScribeFire.

‘özlü’ sözler

“I have not failed. I’ve just found 10,000 ways that won’t work.”
/ Thomas Edison

If a software project becomes too large, it will collapse into a black hole. Time and money are absorbed but nothing ever comes out.”
/ Brian Russell’s Laws of Software Relativity

“The energy required to release a software project is inversely proportional to the time before a scheduled release.”
/ Brian Russell’s Laws of Software Relativity

“As a software project approaches release, its mass increases.”
/ Brian Russell’s Laws of Software Relativity

“Documentation is like sex; when it’s good, it’s very, very good, and when it’s bad, it’s better than nothing.”
/ Dick Brandon

“Saying that Java is nice because it works on all OS’s is like saying that anal sex is nice because it works on all genders.”
/ Anonim

biraz php, biraz java, biraz .net

Finaller, Netsis’te staj, teyzemin kaybolan anahtarları derken; çeşitli cephelerden çeşitli gelişmeler yüzüme tokat gibi şapladı. Öncelikle, php’ci çılgın bir abinin (adam dunkels) php ürününden bahsedeceğim.

php-code.jpgDunkels, php ile basit bir “web server” yazmış. Bu da yetmemiş, web sunucusunda kullanmak için bir “tcp/ip stack” de yazmış. Ayrıntılı bilgiye ve kaynak kodlara http://www.sics.se/~adam/phpstack/ adresinden ulaşabilirsiniz.

Birileri de .Net Framework üzerinde çalışan JVM yazıyorlarmış (IKVM). Böylece derlenmiş java byte-code, Mono veya .Net Framework üzerinde çalışabiliyor. Mono, ayrıca PHP, Javascript, Object Pascal gibi daha bir çok dili de derleyebiliyormuş.

 

IKVM sayfası:

http://www.ikvm.net/

 

 

Mono’nun desteklediği diğer diller için:

http://www.mono-project.com/Languages

 

Bir yandan da, birileri biz bunun tersini yaparız demişler. .Net bytecode’u (intermediate language) java bytecode’a çevirerek, java destekleyen tüm platformlarda(solaris, linux, diğer xler…) çalışır hale getiriyorlarmış.

Mainsoft:

http://www.mainsoft.com/products/index.aspx

vmwj2ee_howitworks.jpg

Şu java ve .net arasındaki “side-by-side” uyumluluk daha başımıza çok işler açacak…