Hibernate Util ve XML

Hibernate 4 sonrasi icil Util class ornegi soyle yazilabilir..

 

Tabi bir de hibernate.cfg.xml lazim bize

Uzun suredir yazi yazmamam

Arkadaşlar merak etmeyin uzun süredir tek satır bile yazmış olmamamın sebebi siz değilsiniz benim yazacak vaktımın olmaması

Clojure Kitabı

Clojure Kitabı adında bir proje başlattım. Daha önceden yazdığım notları da derleyerek düzenli bir clojure kitabına ulaşmak istiyorum. Takip ederseniz zaman içerisinde dolduğunu görebilirsiniz.

X++ Excel Oku Ürün Maliyetini Bul

Şirkette sık sık sayım oluyor ve bu sayım sonuçlarını bir şekilde ax’a gfirmek gerekli..

Excelden verileri okuyan sonra en son ay kapama verileri kullanarak sayımları sisteme günlük olarak giren bir kod yazdım..

Journal yaratmayı da görebilirsiniz excelden satır okumayı da diolog objelerini kullanmayı da :)

X++ Forupdate

Sıkıldığım bir anda yazılmış x++ for update metodu

CLOJURE VE FONKSİYONLAR (20)

Daha önce de bahsettiğimiz gibi clojure fonksiyonel bir programlama dilidir. Clojure ile iki şekilde fonksiyon tanımlanabilir.

diğer tanımlama ise defn makrosu ile olur.

Fonksiyonlar defn ile tanımlanırken içerik açıklaması eklenebilir.

bu açıklama satırını okumak için doc metodunu kullanırız

dilersek yukarıdaki toplam fonksiyonunun parametrelerine de sınırlama getirebiliriz.

bu program (toplam 3 4) gibi bir çıktıya hata verir. kontrol yapısı bir map olmalıdır ve iki anahtar kelimesi vardır. :pre anahtar kelimesi girdileri :post anahtar kelimesi ise çıktıları kontrol eder.

Clojure ortamında bir fonksiyona birden çok parametre mimarisi verilerek fonksiyonlar aşırı yüklenebilir.

Clojure fonksiyonlarına birden çok oge alan parametreler geçilebilir.

Buradaki & işareti birden çok parametreyi ifade eder lines bu durumda bir vektör olur.

Clojure ortamında pek çok fonksiyon yapısı gereği özyinelemelidir.

fakat clojure yukarıdaki gibi bir özyinelemede stack kullanır. Stack kullanmadan tail recurisive yaratmak için recur yapısı kullanılmalıdır.

eğer birbirini sıra ile şağıran yinelemeler varsa

yapısı kullanılabilir. trampoline özyinelemelerin bellek çıkmazını çözer.

Clojure ortamında bir fonksiyon iki şekilde cağrılabilir. Bunlar

veya

şeklinde olur.

CLOJURE SEKANSLAR (19)

Pek çok lisp lehçesinde dilin yapısını listeler oluşturmaktadır. Clojure bu kavramı geliştirmiş listeler, hash tabloları, vektorler ve kümeler için sekans demiştir. Sekanslarda üç fonksiyon kullanılır.

ilk öge first ile alınır. Geri kalan ögeler rest ile çekilebilir.

iki seknas tek sekansa cons ile birleşir.

cons işlemini tersten conj ile de yapabiliriz.

LİSTELER

Listeler kısaca şöyle tanımlanır

Listelerin özel bir yeri vardır temel veri tipi listedir.

VEKTÖRLER

şeklinde veya

şeklinde tanımlanır. vektorden veri çekmek hayli kolaydır.

MAP

Hashmap vektörün gelişmişidir ikili veri tutar

map için diğer metot hash-map ile tanımlanabilir.

map’a öge eklemek istersek

öge çokartmak için

CLOJURE VERİ TİPLERİ (18)

Clojure dört grupta incelenebilecek şekilde veri yapıları ortaya koyar bu kısımda 3 çeşidini görecepiz.

Nil Null ve T

Clojure hava gibi true ve false terimlerini destekler fakat nil adında lispten gelen bir veri de vardır. Clojure ortamında nil boş sekans anlamına gelmez.

Clojure ortamında t true ifadesini karşılar. Boş sekanlar ise null olarak geçer.

Char String ve Number

Karakterler tek harf barındırır. \a bir karakterdir. Karakterler bir araya gelerek stringleri meydana getirir. “elma ye” bir stringtir.

Clojure ortamında string fonksiyonlara . ifadesi ile ulaşılabilinir.

Clojure ortamı diger lisplerde de olduğu gibi sayı türlerini tutabilir. 3/5 gibi kesirli 3,14 gibi kayar noktalı sayılar olabilir.

Sembol ve Keyword

Clojure ortamı da temel veri tip olarak sekanlarda semboleri kullanır A veya isim birer semboldür. Keywordler ise :isim şeklinde yazılır. Clojure ortamında bir keyword aynı zamanda özel bir get – set fonksiyonudur.

CLOJURE FOR (17)

For yapısı ilk sekanstaki her eleman ile ikinci sekanstaki her aleman arasında ilişki kurup bir fonksiyonu çalıstıran özel bir makrodur.

CLOJURE REDUCE (16)

CLOJURE REDUCE

Bir fonksiyonun sekansın tüm ögelerine uygulanması istendiğinde devreye reduce girer. şöyle kullanılabilir.