• Home

Posts in category Teknoloji

Nerede Kalmistik ?

Sep25
2011
Leave a Comment Written by kerem

Uzun zamandir bloga vakit ayiramadim. Sebebi birkac aydir yogun bir sekilde iPhone Uygulama pazarina shiftmobi catisi altinda hizli bir giris yapmam oldu.

Bugun yapilan uygulamalarin raporlarini inceledim. 18 gunde toplam 5 bin’e yakin indirilme sayisina ulasmisiz. Bu yogun mesainin karsiligi alinmis gibi gozukuyor. Entertainment kategorisinde birincilige, Top Paid’de altinciliga ulasti uygulamalarimiz.

Yakin zamanda yeni baslayanlar icin iphone application yapmak isteyenlere izlemeleri gereken adimlari anlatiyor olacagim.  Bu adimlar teknik (xcode/objective c vs..) degil, tamamen Apple’in developerlara izlettigi yol ile ilgili. Zira ilk uygulamanizda final compile yaptiginiz an rahat bir nefes alip “oh be” diyorsunuz ama aslinda uygulamayi Apple Store’a koymak tahmin ettiginiz kadar basit degil. Android’de bu islemler daha kisa suruyor bildigim kadariyla.

Bu kadar uzun bir ara vermemek dilegiyle..

Paylaş
Posted in Genel

JSF 2.0: Başlangıç Noktası

Apr04
2011
Leave a Comment Written by kerem

JSF 1.2 den sonra karşımıza çıkan JSF 2.0′ye kısa bir göz atalım.

Neden JSF kullanmalıyım ?
Java coderlar genellikle JSP sayfaları içinde Java kodu yazarlar veya yazmak zorunda kalırlar. Bir proje sürecinde Front-End Developer ve Back-End Developer’ın yaptığı işleri entegre aşamasında bu önemli bir sorun oluşturur. Front-End Developer anlamadığı bir sürü kod parçasını sayfa içine gömmekle uğraşır veya Java coder kendini bir anda CSS yazarken bulur.
JSF öncelikle bu iki iş kolunun yaptığı işleri birbirine entegre aşamasında büyük kolaylık sağlıyor. Java kodu yerine xml taglarıyla hem daha temiz ve anlaşılır bir içerik oluşuyor hem de her iki taraf da o sayfayı kolayca düzenleyebiliyor.
Validator, Convertor, Localization gibi faydalı bir çok özelliğinin yanı sıra kendinize özel taglar da yazabiliyorsunuz(Custom Tags).

JSF 1.2′de page navigation rule’ları ve Java Bean leri faces-context.xml içinde tanımlamanız zorunluydu ama 2.0 ile beraber bunların hepsini son 3-4 yılın popüler uygulama yönetimi olan “Annotations” ile yapabiliyoruz. Dolayısıyla faces-config.xml önemini 2.0 ile beraber yitiriyor.

JSF 2.0 ile örnek bir proje oluşturulması

Malzemeler :
1-jsf-api.jar
2-jsf-impl.jar

Bu iki jarı kütüphaneye ekledikten sonra sıra web.xml i güncellemede:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  version="2.5">

<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
 </servlet-mapping>
 <context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
...
</web-app>

Burada .jsf uzantılı sayfaları FacesServlet’e yönlendiriyoruz. javax.faces.PROJECT_STAGE paramatresini Development olarak seçmek detaylı hata mesajları almak için önemli.

Örnek bir Java Bean:


package somePackage;
import javax.faces.bean.*;
@ManagedBean
public class SomeBean {
private String someProperty;
private String val = "";

 public String getVal() {
    return val;
 }
 public void setVal(String val) {
    this.val = val;
 }
 public String getSomeProperty() {
    return(someProperty);
 }
 public void setSomeProperty(String someProperty) {
this.someProperty = someProperty;
 }
public String someActionControllerMethod() {
    return("c?faces-redirect=true");
 }
}

Görüldüğü gibi  @ManagedBean ile bean’i tanımlıyoruz. Bean’e jsf sayfası içinden ulaşmak için beanName naming convention’ı kullanılıyor. Dilerseniz (name=”customname”) ile istediğiniz bir adı kullanabilirsiniz.

Sayfa Yönlendirme

<h:form>
<h:commandButton value="Go to Page" ajax="false"
action="#{someBean.someActionControllerMethod}"/>
</h:form>

Action’a verilen değer direk bir sayfa adı da olabilirdi, ama burada bean içindeki fonksiyon kullanıldı, bu sayede Java Class’ı içinde istenilen lojiğe göre gerekli yönlendirme yapılabilir.

Eclipse’te bir web projesi yaratırken Configuration kısmında JSF 2.0 seçerek hızlı bir giriş yapabilirsiniz.

JSF gelişmeye devam edecek/etmesi gereken  bir framework, hatta bu frameworkun tamamiyle .NET’in web developmentta getirdiği “kolay kodlama” hamlesine karşı geliştirilmiş bir framework olduğunu düşünüyorum. Dolayısıyla Java’nın geleceği bulanık olan frameworklerinden biri değil (bkz: Java FX).

İnternette JSF ile ilgili çok çeşitli kaynak var, beğendiğim iki tanesini aşağıda veriyorum.
JSF MojarraProject Geliştiricileri : http://javaserverfaces.java.net/
http://www.oracle.com/technetwork/java/javaee/documentation/index-137726.html
http://www.mkyong.com/jsf2/implicit-navigation-in-jsf-2-0/
http://www.jsftutorials.net/

Paylaş
Tagged JAVA, JSF

Oracle 11gR2 Express Edition

Apr03
2011
Leave a Comment Written by kerem

Sonunda 11g’nin Express Edition’ı beta olarak yayınladı. Download linkini aşağıda bulabilirsiniz.
Apex default olarak geliyor, maksimum 11g disk alanı kullanımı, 1 GB memory kullanımı gibi lisans kısıtlamaları var.

Bu adresten indirebilirsiniz.

Konsol görüntüsü :

 

Paylaş
Tagged 11g, 11gR2 XE, download, oracle

Oracle’ın Recover Mekanizması

Mar19
2011
Leave a Comment Written by kerem

Önce çok derine inmeden Oracle’ın recovery tiplerine ve bunlara hangi durumlarda gerek duyulduğundan bahsedelim.

İki tip recovery var:

  • Instance Recovery
  • Media Recovery.

Instance Recovery: Database’e bağlı iken “shutdown abort” ile database’in kapatılması, database’in bulunduğu serverda güç kesintisi yaşanması veya Oracle background process lerinden birinin hata vermesi gibi durumlarda database yeniden başladığında bu recovery tipini uygular.
Instance recovery için gereken tüm işlemleri Oracle kendi uygular, DBA’in yapması gereken tek şey “startup” yazıp recoverynin tamamlanmasını beklemek.

Media Recovery: Datafile, redo log veya control filelardan birinin silinmesi veya dosyanın bozulması gibi durumlarda media recovery uygulanması gerekir. (init dosyasının (pfile veya spfile farketmez) kaybolması veya bozulması media recovery gerektiren bir durum olarak kabul edilmez.)
Media recovery’nin uygulanması için nasıl bir yol izlenmesi gerektiği veritabanının ARCHIVELOG modunda çalışıp çalışmadığına göre değişir. Media Recovery nin nasıl uygulandığı başka bir yazı konusu olacak ama buna kısaca değinmek istyorum.

Bir datafile’ın silinmesi/bozulması örneğinden gidelim.

  1. Eger database ARCHIVELOG modda çalışmıyorsa herhangi bir datafile’ın bozulması/silinmesi (system datafile’ı olup olmadığı farketmez)  durumunda son alınan backup dosyasına geri dönüş gerekir.
  2. Eğer database ARCHIVELOG modda çalışıyorsa bu sefer sorunlu datafile’ın system datafile’ı olup olmadığı önem taşıyor:
  • Eğer system datafile’ı ise database mount modda açılıp Enterprise Manager üzerinden gerekli adımlar takip edilerek RMAN sayesinde datafile eski haline getirilir.
  • Eğer system datafile değil ise database open modda iken yine Enterprise Manager’dan gerekli adımlar takip edilir ve recovery tamamlanır.

Görüldüğü gibi aradaki tek fark eğer non-system datafile’dan bahsediyorsak database open modda iken de recovery uygulanabiliyor.

Peki Oracle hangi recovery tipini uygulaması gerektiğine nasıl karar veriyor ?

Not: Bu sorunun cevabından önce SCN, Checkpoint kavramlarına hakim olmak gerekli. Bunları en iyi Oracle Concept Guide‘ı okuyarak anlayabilirsiniz.
Control file’da her datafile için iki SCN tutulur. Bunlar genellikle  Datafile Checkpoint SCN ve Stop SCN olarak adlandırılır.
Open moddaki database de bu değerlere bir bakalım:

Görüldüğü gibi database open modda iken Stop SCN değerleri null.

Her datafile’ın headerında da SCN tutulur, bu da Start SCN olarak adlandırılır. Bu değerlere bakalım:

Bunlar da contfol file daki SCN değerleriyle aynı.

Database’i  ”shutdown”  komutu ile kapatalım ve controlfiledaki stop SCN değerlerini bir daha kontrol edelim.

Görüldüğü gibi database shutdown edilirken Oracle processi stop SCN i güncelliyor.

Şimdi database’i “shutdown abort” ile kapatalım ve bu durumda Stop SCN alanını bir daha kontrol edelim :

Bu sefer Stop SCN güncellenmedi.

Oracle start edilirken önce Start SCN ile Datafile Checkpoint SCN’i karşılaştırır, eğer bunlar eşit ise bu sefer Start SCN ile Stop SCN’i karşılaştırır.
İkinci karşılaştırmanın sonucuna göre instance recovery gerekli mi değil mi karar verilir. Eğer bu iki değer eşit değilse Instance Recovery başlar. Yukarıda da görüldüğü gibi abort ile kapatılan database de Stop SCN güncellenmiyor ve Start SCN ile Stop SCN değeri açılış sırasında karşılaştırıldıklarında instance recovery ye ihtiyaç duyuluyor.

Bu örnekte Start SCN ile Datafile Checkpoint SCN hep aynıydı dolayısıyla ilk kontrol başarılı olduğu  için ikinci kontrole geçilip onun sonucundan bahsettik. Peki ilk kontrol hangi durumda başarısız olur ? Tabiki diğer recovery tipine ihtiyaç duyulduğu an: Media Recovery.

Checkpoint eventi Start SCN ve Datafile Checkpoint SCN’i, aynı anda günceller, dolayısıyla  dosyalarda fiziksel bir sorun olmadığı müddetçe bu iki değer sürekli aynı olur.
Eğer datafile lardan biri bozulduysa veya silindiyse onun headerındaki SCN değeri (Start SCN)  zaten okunamayacağı için ilk adımdaki kontrol sonucu olumsuz olacak. Böylece Oracle Media Recovery’ye ihtiyaç olduğunu anlayacak.

Recovery konusu bir çok farklı noktadan incelenebilecek geniş kapsamlı bir konu, ben kısaca Oracle’ın karar mekanizmasından ve Recovery tiplerine değindim.

 

Kaynaklar:
Book : OCA: Oracle 10g Administration I Study Guide
Chip DawesBob BrylaJoseph C. JohnsonMatthew Weishan
Oracle 10g Concept Guide
Understanding the SCN - dbapool.com

 

Paylaş
Tagged instance recovery, media recovery, oracle, recover

Stay Connected: Oracle İş Uygulamaları Günü

Mar14
2011
Leave a Comment Written by kerem

 

Oracle Day’ dan sonra yeni bir Oracle Event’i bizleri bekliyor.

  • Tarih: 16 Mart Çarşamba
  • Yer:  Swiss Otel

Henüz kaydınızı yaptırmadıysanız hala zamanınız var :

Kayıt Linki

Eventte yer alacak başlıca firmalar :

Ericsson

Türk Telekom

Turkcell

Avea

Bank Asya

Eti

İş uygulamaları alanında dünyanın lideri konumunda olan  SAP’den almaya hak kazandığı 1.3 milyar $ lık tazminat Oracle executiveleri için o gün mutlu olmaya yetecektir.

Event sonrası detayları, sunumları burada konuşuyor oluruz.

Paylaş
Posted in Etkinlik, Genel

Oracle Salesforce.com’u satın mı alıyor ?

Mar09
2011
Leave a Comment Written by kerem

Son günlerde sıkça bahsedilen bir konu bu, Oracle’ın Salesforce.com’u almayı düşündüğü kulaktan kulağa söyleniyor.

Salesforce,  firmalara gayet esnek ve customizable bir online CRM uygulaması sunuyor, Google ile beraber cloud computingi kullanan en büyük firmalardan birisi. Salesforce ‘dan hizmet alan firmalar kullanıcı başına lisans parası ödüyorlar.

Tek başına bu söylenti bile cloud computingin geleceğinin parlaklığı hakkında fikir verebilir.

Bu muhtemel satın alma girişimine Oracle tarafından bakınca gayet mantıklı bir girişim izlenimi veriyor. Detaya girmeden Oracle kullanan orta ölçekli firmaların (ileri de buna büyük ölçekleri de ekleyeceğiz bence ) IT altyapısı için gider kalemlerini hesap edelim :

  • bakım
  • IT elemanı ihtiyacı
  • lisans ücreti
  • şirket içi destek

Tüm bu giderlerin karşısında salesforce’un sunduğu temiz,hızlı ve daha az masraflı bir teklif firmaların kafasını rahatça çelebilir – ki bu gayet anlaşılabilir.  Oracle’ın orta ve uzun vadede sadece Salesforce’a değil, cloud computing firmalarına müşteri kaptırma olasılığı oldukça yüksek. Şüphesiz Salesforce şu an için bu olasılığı gerçekleştirebilecek büyük firma.

2011 yılında Salesforce’un kullanıcı başına aldığı lisans ücretini  biraz daha aşağı çekeceği tahmin ediliyor; 2010′da da 2009′a göre bir düşüş vardı, gidişat bu sektörün giderek daha cazip hale geleceğini gösteriyor.

Şimdi biraz sayılar konuşsun :

165 milyar $ – Şu anki market değeri – Oracle

19 milyar $ – Şu anki market değeri – Salesforce

26 milyar $ - 2010 geliri -Oracle

17 milyar $ – Toplam borç – Oracle

70 milyar $ - Charles Phillips’in açıkladığı (Oracle co-president), önümüzdeki beş yıl için Oracle’ın sadece satın almalara ayırdığı para.

8 – Oracle üst düzey yöneticilerinin 2008′deki bir konferansta salesforce.com’dan kaç defa bahsettiği.

 

Salesforce’un yükselişi somut bir şekilde şurdan görülebilir.

Şimdilik sadece güçlü bir dedikodu olan bu olayın gerçekleşip gerçekleşmeyeceğini merakla bekliyorum..

Kaynaklar:

http://awads.net/wp/2011/02/24/salesforce-com-the-next-oracle-acquisition-target/

http://advice.cio.com/thomas_wailgum/oracles_ellison_takes_shots_at_salesforce_com_competitive_vitriol_or_acquisition_foreplay

http://tech.fortune.cnn.com/2010/09/03/what-will-oracle-buy-next/

Paylaş
Tagged cloud computing, oracle, salesforce.com

Temas

  • Eddie Awad's Blog
  • H.Tonguç Yılmaz – Oracle Blog
  • Turkish Oracle User Group

Etiketler

11g 11gR2 XE ACFS ASM bilginç it cloud computing download düşünce walsch düşünce event grid instance recovery JAVA JSF media recovery oracle recover salesforce.com seminer

Tweets

kerem1905
  • Kerem Herkesin bir popisi vardır. Senin popin kaç? http://t.co/fPQggcd0 - posted on 18/02/2012 16:39:42
  • Kerem 80lerden kalma degisiklik tabelasi.. - posted on 11/12/2011 11:41:58
  • Kerem Kuddusi anani sikeyim senin. - posted on 11/12/2011 10:36:50
  • Kerem madrid te yilmaz vural sesleri... #hahamadrid - posted on 11/12/2011 09:35:20
  • Kerem Ulan su eboue be super adam dedim herif seke seke yurumeye basladi.. Ulan su senih gibisi yok derken arkadaslar susturdu saolsun. - posted on 07/12/2011 15:56:07
My Twitter, by Xhanch

EvoLve theme by Blogatize  •  Powered by WordPress Kerem Gündüz