Archive of ‘Genel’ category

SVN(Subversion) Teknolojisi ve Kurulumu

SVN bir yazılım konfigurasyonu arayüzüdür.Proje dosyalarındaki değişiklikleri takip etmek ve bu değiştirilmiş dosyalar üzerinden işlem yapılmasını sağlar.Aynı dosyalar üzerinde eş zamanlı bir biçimde çalışılabilmesini sağlar.SVN sayesinde tüm çalışma dosyaları bir serverda ya da server amaçlı kullanılan bir bilgisayarda depolanır.Bu şekilde dosyaları kullanacak yazılım geliştiriciler ya da projeyle ilgili olan diğer kişilerde kullanıcı isimleri ve passwordler ile herhangi bir yerden dosyalara erişebilir.

Bir program yazılımı modül halinde bir araya gelen kodlardır.Developerlar özellikle büyük projelerde projeyi modüllere bölerek daha kısa sürede yaparlar(divide-conquer algoritması).Ancak yazılan modullerin istenildiği takdirde bir ortamda kaydedilmesi çalışmanın hızlılığı açısından son derece önemlidir.SVN bir server şeklinde çalışarak   kullanıcılarına bu hizmeti sunmaktadır.

Eğer SVN gibi bir teknoloji kullanılmamış olsa developerlar kodları birbirinden bağımsız şekilde kodlayacağı için daha sonra bunların biraraya getirilip düzenlenmesinde de büyük sorunlar yaşanabilirdi.Ancak SVN ile birçok developer,designer … tek proje üzerinde eş zamanlı olarak çalışabiliyor.

SVN’in işleyişi : svn update ->edit files -> Test ->svn commit -> svn update şeklinde bir döngüyle gerçekleşir.İlk başta update edilen dosyalar test edildikten sonra commit edilir.Commit düzenlemenin son aşamasıdır.Aynı zamanda birden fazla kullanıcı commit etmeye çalıştığında error olacak ve kullanıcıların edit yaptığı kısımlar kullanıcılara gösterilerek kullanıcının hangisinin doğru olduğuna karar vermesine yardımcı olur.

SVN’e dosyalarınızı yüklemek için  işletim sisteminiz windows ise TortoiseSVN programını indirebilirsiniz.Yüklemeyi yaptıktan sonra bilgisayarınızdaki dosyalara sağ tıkladığınızda SVN Checkout şeklinde bir secenek çıkacaktır.Burayı tıklayarak username ve password ile giriş yaptıktan sonra servera dosyalarınızı aktarabilirsiniz.

Kısaca temel SVN işlemlerinden bahsetmek gerekirse;

import: Dosyalarımızı SVN deki projeye eklemek için gerçekleştirilen işlemdir.

Checkout: Svn’de yer alan bir projenin local ortamda çalıştırabilmemizi sağlar.

Commit: Local ortamda gerçekleştirdiğiniz değişikleri test ettikten sonra son halin servera iletilmesidir.

Export: Svn’de yer alan bir projeyi almadan ilgili projeyi local diskinize kopyalamayı gerçekleştiren komuttur.

Update: Serverdaki çalışma ortamındaki yapılan değişiklikler ile sizin çalışma ortamınızdaki projenin senkronize edilmesi için kullanılan bir işlevdir.Senkronize işleminin sık sık yapılmasında da fayda vardır.

SVN’in kurulumundan bahsedecek olursak (eclipse-juno için kurulumu)  Subversive i bu linkten bilgisayarınıza indirebilirsiniz.Sonrasında eclipse -help – install new software i tıkladıktan sonra çıkan install ekranında local seçeneği tıklayıp indirdiğiniz subversive zipini buraya import ediyoruz.Next dedikten sonra eclipse işlemleri gerçekleştirdikten sonra eclipse i restart etmenizi isteyecektir.Restart ettikten sonra uygun olan SVN Kit’i seçmeniz gerekmektedir.Bunu da yaptıktan sonra SVN kurulumu bitmiş olacaktır.SVN in eclipse arayüzünde görmek istersek Window ->Show view ->SVN REposity browser ı seçerek sol tarafa ekleyebiliriz.

Css-text özelliği

Css’te text özelliği ile sayfalarımızda görüntülecek yazıları düzenleyebiliriz.text özelliğine geçmeden önce text özelliği ile font özelliği arasındaki  farktan bahsetmek istiyorum.text özelliği sayfadaki metinlerin düzenlenmesini sağlar,yazı metninin bir bütün halinde nasıl düzenleneceğini belirtmemizi sağlar.Font özelliği ise sayfadaki metni oluşturan karakterlerin nasıl görüneceği ile ilgilidir.Text özelliği ile yazılar arasındaki boşluğu ayarlayabilir,yazıların rengini değiştirebiliriz.

Genel olarak text özelliği text-color,text-align,text-decoration,text-indent,text transformation olmak 5 şekilde tanımlanabilir.

text-color:Metnin sayfada hangi renkte gözükeceğini belirler.Default olarak  sayfadaki yazılar siyah renkte gözükür.Farklı bir renkte yazılar oluşturmak istediğimizde bi önceki yazıda ayrıntılı olarak değinildiği gibi rengin  hexadecimal değeri,rgb değeri veya renk ismini yazarak  metin rengi belirlenebilir.

text-align:Metnin ne şekilde konumlandırılıacağını belirtir.center,right,left,justify ve inherit özellikleriyle metin ortaya,sağa,sola,iki yana ve bi önceki durumdan inherit bir şekilde konumlandırılmasını sağlar. 

text-decoration: Metnin belirli yerlerinde özel işaretler kullanmamızı sağlar.Metnin altına,üstüne ve ortasına çizgi çekmemize yarar.none,underline,overline,line-through,blink,inherit olmak üzere 5 farklı değer alabilir.Burada bilinmedik olabilecek değer blink değeridir.Bu değer metnin yanıp sönmesini sağlar.

text-indent: İlk cümlelerin soldan içeriye kaydırılması için kullanılan bir özelliktir.Paragraf başı da denilen bu boşluk kitap,dergi ve gazetelerde sıklıkla yapılır.

text-transformation:Harflerin büyüklüğünü belirler.none,capitalize,lowercase,uppercase,inherit olmak üzere 5 farklı değer alabilir.

Bunların dışında bir kaç tane daha çok kullanılmasa da gerekebilecek özellik vardır.Bunlar : word-spacing:Kelimeler arasındaki boşluk değerini belirler.line-height:Satırlar arasındaki yüksekliği belirler.letter-spacing:Harfler arasındaki boşluk değerini belirler.

[php]
body{text-color:rgb(255,0,13);}
body{text-indent:40px;}
body{text-decoration:overline}
body{text-transform:uppercase;}
body{text-align:center;}
body{line-height:5px;}
body{letter-spacing:10px;}
body{word-spacing:1px;}
[/php]

Css Özellikler -1 Background özelliği

Bir önceki yazıda Css’in neden kullanıldığı ve nasıl kullanıldığı ile ilgili bir giriş yapılmıştı.Css kodlarının html sayfasına nasıl import edileceğinden bir önceki yazıda bahsetmiştik.Bu yazıda Css’in syntax’ı ve özelliklere giriş yapacağız.Css’te syntax genel hatlarıyla

selector{declaration} denilen bir yapıdadır.Selector denilen seçici kısım tag,class ismi veya id olabilir.Declaration denilen bildirim kısmında ise özellik ve alacağı değer tanımlanır.Örneklendirecek olursak;

[php] body{background-color:red;}   /* Bu satırda body ile belirtilen seçici kısmının arkaplan rengi kırmızı değerini alacaktır.  */[/php]

Seçici tanımlaması 3 şekilde yapılabilir.İlk olarak eğer html tagleri ile seçilen bir kısmın stil çalışması yapılacaksa sadece başlangıçta tag ismini yazmamız yeterli olacaktır.

[php] body{background-color:white;font-size:15px;} Bu şekildeki bir tanımlama body kısmındaki arka plan rengini beyaz yapıp  body kısmında yazı boyutunu php olarak ayarlayacaktır.  [/php]

2. olarak yazdığımız html kısmı üzerinde daha kolay işlemler yapabilmek  için kodu kod parçacıklarına ayırıp bu parçalara id veya class ismi vererek tanımlayabiliriz.Bu tanımlamalara bağlı olarak css syntaxı küçük bi değişiklik gösterecektir.Eğer kod parçacığımız id ile tanımlanmışsa css kısmında

#hakkimizda{font-family:Calibri;font-size:small;} bir tanımlama  yaparız.Burada hakkımızda html kısmındaki id dir.

Eğer kod parçacığı class ismi olarak tanımlanmışsa css kısmında

.linkhover {background:url(“../images/link.gif”) no-repeat center;} şeklinde bir tanımlama yapılır.

Ayrıca genelde pek kullanılmasa da bir html tagının belli bir özelliği üzerinde değişiklik yapılması istenirse

p.center{text-align:center;}  şeklinde tanımlama yapılabilir.Bu şekilde p taglerinin center sınıflarında yazı sayfada ortalanır.

Özelliklere geçecek olursak ilk olarak azimuth özelliğiyle başlayacak olursak azimuth özelliği sayfada kullanıcak seslerin nereden geleceğini belirlememezi sağlar.Özellikle görme engelliler için sesin nereden geldiği önemli olan bir özelliktir.Aldığı değerler:behind,center,center-left;center-right,far-left,far-right,left,left-side,leftwards,right,right-side;rightwards,inherit olarak tanımlanmıştır.Bunlar yön belirten ifadeler olduğu için anlatma gereği duymadım.

2.özellik olarak background ile ilgili değişiklik yapabileceğimiz  background özelliklerine bakacağız.Bu özellikler background,background-color,background-image;background-image,background-repeat,background-attachment ve background-position özellikleridir.

background:… özelliği arkaplanın renginden arkaplanın transpanslığına,buttonların nasıl gözükeceğinden buton yazılarına kadar arkaplan ile ilgili genel değişiklikler  yapma fırsatı sunar.

background-color:Bu özellik ile arkaplan rengini düzenleriz.renk tanımlaması 3 şekilde yapılabilir.Birincisi her bir rengin hex değeri vardır.İkinci tanımlama şekli:RGB değerinin girilmesidir.3.tanımlama şekli ise renk isminin yazılmasıdır.Hepsini bir örnekte gösterecek olursak;

[php] body{background-color:#FF0000}

body{background-color:rgb(255,255,0)}

body{background-color:red}

[/php]

background-image:Arkaplana bir resim yüklememize izin verir.Resmin url yolunu göstermemiz gerekiyor.

[php] body{background-image:url(‘../images/scroll-left.gif’)} [/php]

background-repeat:Arkaplan resminin yatayda ve dikeyde tekrarlanıp tekrarlanmaması seçeneklerini düzenler.

[php] body{background-repeat:repeat-x;} yatayda tekrarlar. no-repeat denildiğinde  background tekrarlanmaz.[/php]

background-position: Arkaplanın sayfadaki konumlandırılmasını sağlar.

[php] body{background-position:left;} left,right,inherit hazır seçeneklerinin yanında pixel olarak değer verip sayfanın konumunu ayarlayabiliriz. [/php]

8 Mart

Yazının başlangıcında şunu belirtmek isterim ki anneler,babalar veya farklı konularda belirlenmiş özel günlere pek anlam vermeyen birisi olarak Dünya Kadınlar Gününü biraz da olsa anlamlı buluyorum.Çünkü gerek bu günün dünya kadınlar günü olma hikayesi gerekse de (senede bi gün bile olsa) kadınlara yapılan hakszılıklara karşı dürüstçe ya da “gösterişle” olsa da herkesin düşünmesidir.Ancak büyük çoğunluğun diğer özel günlerde olduğu gibi bugünde konuya özel ilgi ve alakada bulunup,yarın hiçbirşey olmamış gibi davranacak olması da konunun üzücü bir tarafı.

8 Mart’ın Dünya Kadınlar günü olma sebebine gelecek olursam olay ABD’nin New York şehrindeki bir tekstil fabrikasında gerçekleşiyor.Çalışma şartlarından şikayetçi olan 40 000 i aşkın işçi çalışma şartlarının iyileştirilmesi için greve başlamışlar.Polisin grevi bitirmek için işçilere saldırması ve onları fabrikaya kiltlemesi sonrasında fabrikada yangın çıktı.Yangından kaçmak için dışarıya koşan işçiler polis bariyerlerini aşamadıkları için aralarında çoğu kadın 129 kişi hayatını kaybetmiştir.Daha sonra ilk olarak 1910’da Danimarka’daki bir toplantıda 8 Mart’ın Dünya Kadınlar Günü olarak kutlanmasına karar veriliyor.Ancak 8 Mart’ın tüm dünyada Dünya Kadınlar Günü olarak ilan edilmesi 16 Aralık 1977 yılındaki Birleşmiş Milletler Genel kurulunda kabul edilmiştir.

Türkiye’de 1975 yılından itibaren 8 mart’ta düzenlenen etkinler 1980 sonrası 4 yıllık bi kesintiden sonra düzenli olarak “kutlanmaktadır”.Peki ülkemizde Kadınlar gününü kutlayacak kadar başarılı mıyız ? Yapılan araştırmalar tam aksine oldukça kötü bir durumda olduğumuzu gösteriyor.Türkiye,kadin-erkek esitliginde 135 ülke arasinda 124. siradadir.2005-2011 Yılları arasında toplam 4 bin 90 kadın erkekler tarafından öldürülmüştür.Ayrıca Türkiye’de hâlâ her gün 5 kadın öldürülmektedir.Ve tahmin edersiniz ki bu öldürmelerin çoğu da eğitimsizliğin verdiği özgüvenle cahilce kadınlara şiddet eksenli cinayetlerdir.
Birleşmiş Milletlerin yaptığı bir çalışmada kadının topluma katılım endeksinde Türkiye’nin 70 ülke arasında 66 olduğu sonucu çıkmıştır.Her ne kadar son yıllarda yapılan Haydi Kızlar Okula benzeri sosyal teşviklerle kızların eğitime katılması desteklense de kadınların eğitim oranı maalesef oldukça düşük.Bunun sonucunda da kadınların işgücüne katılım oranı yüzde 27’lerde bulunuyor.Erkeklerin hemen hemen yüzde % 70’i çalışırken, kadınlarda bu oran sadece %25 lerde kalıyor.

Bu konu üzerine çokça konuşulup tartışılacak bir konu şüphesiz.Problemlerin sebebinin ne olduğu konusunda bir çok cevap veriliyor olsa da karşılıklı saygının olmamasından veya başka sebeplerden ötürü de problemler ortaya çıkmaktadır.Bence bu konuda “Cennet annelerin ayağı altındadır.” hadisi şerifi yeterince idrak edilebilirse problemlerin çok daha kolay çözülebileceği fikrindeyim.
Dünya Kadınlar Günü Kutlu olsun !

CSS (Cascading Style Sheets)

HTML bize web sayfamızda metin biçimlendirme alanında temel biçimlendirme yöntemidir.Bi sayfanın kemik yapısı diyebileceğimizi esas kısmını html ile kolay bir şekilde yapabiliriz.Ancak bu çoğu zaman yeterli olmaz.Hele ki günümüz teknolojisi için ilkel denilebilecek bi yapıdır.Tam bu noktada CSS yardimimiza kosuyor.Css web sayfalarinin görünümünü degistirmemizi saglayan stil dosyasidir.Web sayfasını bir bütün şeklinde veya tag dediğimiz yapılarla belirtilen belli ögeleri arkaplan resmi,arkaplan rengi,sayfadaki konumu,sağ ve solundan ne kadar boşluk olacağı öğenin genişlik ve yüksekliği ve çok daha fazla özellik ile sayfada harikalar yaratabilirsiniz.

HTML’i vücutta iskelet sistemine benzetecek olursak CSS içinde o sistemi birarada tutan,deri gibi hepsini tek bi şekilde birleştiren yapı diyebiliriz.

CSS ögrenmek için gereken en önemli bilgi Temel HTML bilgisine sahip olmamızdır. HTML bilmeden CSS kodlarini kullanmaniz çok zor olacaktir.Çünkü ikisi içiçe geçmiştir.
Tek bir CSS dosyasiyla bütün sayfalarinizin stilini olusturabilecegimiz için bu sayfalarimizin boyutu küçülür ve sayfaların boyutu düşeceğinden yüklenmesi daha kolay olacaktır.CSS te HTML gibi öğrenmesi dillere göre öğrenmesi kolay ama fazlasıyla özelliği olan bir yapıdır.

CSS konusunda Internet Explorer, Mozilla Firefox, Google Chrome, Opera, vb browserlar css dosyanızı farkli yorumlayabilir.Boyle bir durumda Chromeda harika görünen bir sayfa farklı bir browserda içiçe geçmiş bir halde karşınıza çıkabilir.Hazırlıklı olun 🙂 Tabi bunun da çözümleri var.
Bir CSS dosyası oluşturmak için özel bir platforma ihtiyaç yoktur.Bir notepad sayfasına stil tanımlamalarımızı yapıp .css uzantılı olarak kaydettiğimizde bu dosyayı sayfamızda kullanabiliriz.Ancak daha özel ortamlarda var ve bunlardan b iri Microsoftun ürünü olan Expression Webtir ki dizayn konusunda da faydalı bir platformdur.Oluşturduğumuz CSS dosyalarını sayfalarımızda 3 farklı şekilde kullanabiliriz. Bunlar Yerel CSS, Genel CSS ve Harici CSS’dir.
Yerel CSS, sadece sayfa içerisinde tanimlandigi tagde geçerlidir.Sadece o tagin düzenlenmesini sağlar.
Buna karsilik genel stil sablonu ise tüm sayfayi kapsar.Bu stil şablonu da sayfanın içerisinde yazılır.Ancak global bi biçimde tüm sayfada geçerlidir. Harici stil sablonu ise ‘.css’ uzantili bir dosya olarak kaydedilir, kullanilacagi sayfalarda çagirilmak suretiyle tüm web sitesini kapsayabilir.CSS dosyasını head tagleri arasında

[php]<link href="style.css" rel="stylesheet" type="text/css" media="screen" /> [/php]

şeklinde yazılabilir.
Bunları kısaca örneklendirecek olursak;yerel css’te

[php]<a href="<a href="http://seydialkan.com/">www.seydialkan.com</a>&quot; style="color:blue; background:green; font:13pt Arial;">Seydi Alkan Kişisel Web Sayfası</a> [/php]

şeklinde html tagleri arasında style özelliği ile istediğimiz değişiklikleri buraya yazabiliyoruz.

Genel Css te ise head tagleri arasına yazdığımız style tagı ile stil şablonlarını yazıyoruz.

[php]

<head>
<style>
a{color:red;font:18pt Arial;}
p{width:50px; height:5px; background-color:blue;}
</style>
</head>

[/php]

Harici CSS te ise sayfanın yazıldığı kısımdan bağımsız ayrı bir dosyada stil şablonlarını yazarız.Daha sonra bunu yukarıdaki gibi sayfamıza ekleriz.
a{font-color: blue; margin: 5px;}
p{font:12px;}
div{width:100px; height;100%;}
kodudur. Kodu kendinize göre düzenleyip HTML sayfaniza eklediginizde CSS dosyanizdaki kurallar sayfaniza etki etmeye baslayacak

Özelliklere giriş yapacak olursam yazı fazlasıyla uzayacak o yuzden başka bir yazıda devam etmeyi düşünüyorum.

Şiir Kokulu Film – Kelebeğin Rüyası

“Bir ermiş bir gün rüyasında bir kelebek olduğunu görmüş… O kadar etkilenmiş ki, uyanınca kafası karışmış ve sorgulamış; ‘Rüyasında kelebek olduğunu gören ben miyim yoksa kelebek mi rüyasında ben olduğunu görüyor’ şeklinde güzel bi hikayeden bahsediyor film ve sonunda
“Belki bir kelebek o kadar memnun ki rüyasından
Uyanmak istemiyor uykusundan…” şeklinde harika bir cümleyle bir günlük ömrü olan kelebeğin rüyayı yaşama tercihinden bahsediyor.
Filmin hikayesinden önce ismi de yeterince dikkat çekici.Bir günlük yaşamı için kozalaktan çıkma mücadelesi veren kelebeğin rüyası ne kadar güzel olur kim bilir ..
Öncelikle ne oyuncuların oyunculuklarını yorumlayacak kadar oyunculuk bilgim ne de film hakkında fikir beyan edecek kadar sinema bilgim var.Ancak filmin çok hoşuma gidişi ve karakterlerin insanı hikayenin içine alan samimi oyunculukları sebebiyle film yüzünden bi yazı yazmak istedim.Oyunculuk demişken Mert Fırat harika bir oyunculuk çıkarmış.Ayrıca filmin hikayesi müthiş.Bir hikayenin şiir kaynaklı olupta güzel olmaması düşünülemezdi zati.
Verem olan iki şairin hikayesi bu film.Konu şair olunca oyuncu sözleri de şiirsel cümlelerle dolu oluyor.Senaryosunun elime geçmesini çok isterim doğrusu.Yoksa tek tek replikleri yazıcam.Aynı zamanda çok iyi arkadaşta olan bu şairler Zikri Bey’in kızı Suzan’ın Zonguldak’a gelmesiyle şiirsel bir iddiaya giriyorlar.İki şairin bu kızla tanışmak için yaratıcı bir fikri olur bunu söylemek isterdim ama olurda filme gidecek olan varsa orda görsün de hoşuna gitsin diye anlatmıyorum. Daha sonra arkadaş olan bu 3 arkadaş çok güzel vakti geçirmeye başlarlar.(Burada dikkatimi çeken bir şey arkadaşlıklarının çok samimice ve doğal olmasıydı.) Nerden anladın dersen gülüşlerinden.Çünkü gülmek çok şey anlatır.Daha sonra bu güzel arkadaşlıkları bir yandan verem hastalığı yüzünden bir tarafta da kızın babasının engellemeleri yüzünden bir kopuş yaşar ve hikaye devam eder.
Daha fazlasını daha gitmeyenler olabilir diye yazmak istemiyorum.

Gidilesi izlenilesi güzel bir film ..
Türkiye’deki şiir edebiyatına katkısı olacağı da şühesiz.
Teşekkürler Yılmaz ERDOĞAN

C#’ta Video Oynatma

C# kayıtlı bir videoyu oynatma ya da ıp’li bir kameranın görüntüsünü kaydetme gibi video yönetme componentlerine sahiptir.Video oynatmak için windows media player componenti C sharpın hazır componentleri arasında mevcuttur.Ancak özellik güvenlik kameralarında kullanılan görüntüyü anında alıp görüntü üzerinde gerekli kayıt işlemlerini yapmak istediğimizde bu kameraların  apilerini kullanmamız gerekiyor.IP numarları ile kameralara bağlanmak muhtemel ancak kameraların api’lerini kullanmak çok daha kolay ve verimli olacaktır.

Asıl konumuz olan  Windows media player componentini nasıl kullanıcağımıza dönmek istiyorum.Visual Studioyu kurduktan sonra sık kullanılan componentler  toolbaxta sıralı halde bulunmaktadır.Ancak çoğunluğu burada bulunmayan diğer toolboxları ekleyebiliyoruz.

Toolbox bolümünde  fareye sağ tıklayıp choose ıtems’a tıkladığımızda componnetleri bir arada bulacağımız bir çıkacaktır.Burada componentler Silverlight Components,Com Components,.NET Frameworks Components … şeklinde gruplandırılmışlardır. Bizim ihtiyacımız olan component Windows Media Playerdı bu component Com components grubunun altındadır.Buradan componenti seçerek hem kullanabiliriz hem de toolboxa ekleyebiliriz.Bu component media player componenti olduğu için pause,play gibi fonksiyonlarla videolarımızı yönetebiliriz.Yaptığım çalışmada form yüklenmeye başladığında videolarımında otomatik olarak başlanması istenmişti.O yuzden formun load fonksiyonuna

[php]
private void Form1_Load(object sender, EventArgs e)
{

axWindowsMediaPlayer1.URL = @"D:songvideo1.mp4";
axWindowsMediaPlayer1.Ctlcontrols.play();
}
[/php]

Componenti ekledikten sonra tek yapmamız gereken bu şekilde bir kod parçası yazmak.Media player’ın oynatacağı videonun urlsini yazıyoruz.play metodu ile seçilen videonun çalınması sağlanmış oluyor.Burada videonun url’sini kod kısmında yazmak yerine çok daha bir kolay var.O da openFileDialog denilen bir component bilgisayarımızdaki dosyalardan istediğimiz dosyayı seçmemizi sağlar.Onu daha sonra ayrıntılı yazmayı düşünüyorum.

JFrame Componentleri

Bu yazıda bir Java ile bir frame’de nasıl buton ve combobox oluşturacağımıza işleyeceğim.Buton oluşturmaya geçmeden önce JFrame sınıfından biraz bahsetmek istiyorum.JFrame javax.swing  paketinde bulunur.Frame programımızda kullanacağımız buton,combobox gibi componentlerin birarada gösterileceği penceredir.

JFrame ile yapılan işlemler GUI(Graphical User Interface) işlemleridir.GUI işlemleri ayrıca JApplet ile de yapılabilir.Temelde aynı işlevleri gerçekleştirebilen bu iki class arasında önemli fark uygulamalarda farklılık göstermesidir.JFrame desktop uygulamaları için tercih edilirken;JApplet browserda çalışacak uygulamalarda kullanılır.Buton,label,combobox,checkbox gibi componentleri kullanabilmek için oluşturacağımız java sınıfını bu iki sınıftan birinden extend etmemiz gerekiyor.

Bu yazıda penceremize label,buton nasıl ekleyebileceğimizi kodlayacağım.

Öncelikle import etmemiz gereken kütüphaneler

[php]

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

[/php]

Burada java.awt.* paketini componentleri kullanabilmek için import ettik.Bu şekilde paketi import ettikten sonra ayrıca 2.satırdaki event classını belirtmemize gerek yok.Benim özellikle kullanmamdaki amacım event sınıfından bahsetmek.event sınıfı componentlerde yapılan değişikliklere göre işlem yapılmasını sağlayan sınıftır.Örneğin butona tıkladığında ne yapılacağı yada checkboxa tıklandığında hangi işlemlerin gerçekleştirileceğini bu sınıf sayesinde gösterebiliriz.

[php]

class awtexamples extends JFrame{
private JLabel lbl;
private JButton btn;

public awtexamples(){
super("CheckBox");
setLayout(new FlowLayout());
lbl=new JLabel("Renk");
lbl.setBackground(Color.red);
add(lbl);
btn=new JButton("Click me!");
btn.setSize(50,50);
add(btn);

buttonHandler bh=new buttonHandler();
btn.addActionListener(bh);

}

[/php]

Burada Jframe sınıfını extend edip birer tane label ve buton oluşturduk.Sonrasında sınıfımızın constructorını oluşturup super sınıfıyla penceremizin ismini yazdırıyoruz.add(lbl) ile labeli Frame’e eklemiş oluyoruz.Butona tıklandığında yapılacak işlemleri buttonHandler sınıfı ile belirleyeceğiz.buttonHandler sınıfı aşağıdaki gibi olacaktır.

[php]

private class buttonHandler implements ActionListener{
public void actionPerformed(ActionEvent event){
btn.setBackground(Color.red);
lbl.setText("clicked button");
}
}

[/php]

Yukarıda da görüldüğü gibi buttonHandler classımıza ActionListener sınıfını implements ediyoruz.Bunun sebebi sonraki satırda actionPerformed metodunu kullanmamız gerektiğidir. actionPerformed metodu butona tıklandığında neler yapılacağını gösteren metodtur.

Nazan Bekiroğlu ~ Yusuf ile Züleyha

Bir kuyu’nun derinliklerinden Mısır’ın hükümdarlığına uzanan Yusuf’un hikayesi bu ..
Mısır’ın en güzel kızıyken sevgisinin sarhoşluğundan sevdiğinin zindana atılmasına sebep olan Züleyha’nın
hikayesi bu kitap ..
Yusuf’unun kanlı gömleğiyle gözlerine perde inen Yakub peygamberin yıllar sonra yine oğlunun gömleğiyle
gözlerine inen perdenin kalktığının anlatıldığı bir hikaye bu ..
Böyle güzel bir hikaye Nazan Bekiroğlu’nun betimlemelerle dolu güzel uslubuyla anlatılmış bu
kitapta.Kardeşleri tarafından kuyuya atılan Yusuf’un günler sonra bir kervan tarafından bulunmasıyla başlıyor
kitap.Köle pazarında güzelliğiyle rağbet gören Küçük Yusuf,Mısır valisi Potifar tarafından yeni evlendiği eşi
Züleyha’ya hediye olarak alır.Züleyha Yusuf’a çok iyi bakar ve onu büyütür.Sonrasında çok önceleri rüyasında
gördüğü karşısına çıkacak o güzel insanın Yusuf olduğunu düşünür ve ona aşık olur.Züleyha’nın aşkı Mısırlı
kadınların diline düşer.Züleyha kendisini ayıplayan Mısırlı kadınlara Yusuf’un güzelliğini göstermek için bir
yemek düzenleyip bu kadınları misafir eder.Yemekten sonra meyvelerin yenilmeye başladığı sırada Züleyha
Yusuf’un içeriye girmesini ister.Yusuf’un güzelliğin gören kadınlar o esnada farkına varmadan ellerini
keserler.O zaman Züleyha’ya hak verirler.
Züleyha bir gün yusuf’u odasına çağırıp “Gelsene” diyerek yanına oturmasını ister.Ancak yusuf bunu
istemez.Bir yandan da sahibesi kapıları kapatıp Yusufu sıkıştırmaktadır.Yusuf o esnada şu güzel duada
bulunur.”Rabbim bana istememeyi isteyebilmeyi nasib et.” Yusuf odadan çıkmaya çalıştığı esnada Potifar
kapıyı açar ve olanları görünce Yusuf’a zindana atar.Sonrasında 7 sene zindanda yatan Yusuf rüya
yorumcularının yorumlayamadığı Firavun’un rüyasını yorumlayınca Firavun’un Yusuf’u görmek ister.Firavun
Züleyha’yı dinledikten sonra Yusuf’un suçsuz olduğunu anlar.Firavun Yusuf’a Mısıra vali yapıp Züleyha ile
evlendirir.

Nazan Bekiroğlunun kitapları güzel betimlemelerle dolu oluyor.Bu kitapta da çok güzel bölümler var.İşte bunlardan bazıları ;

”Sevginin yanılgısı yok. Yanlış olan neyi sevdiğini bilmemek ve yolu yanlış çizmek. Hangi kaynaktan geldiğini suyun, hangi dağın üstünden döküldüğünü aydınlığın, bilmemek. Bilmemek yanlış kılar sevgiyi.”

”Sevginin yanılgısı yok. Yanlış olan neyi sevdiğini bilmemek ve yolu yanlış çizmek. Hangi kaynaktan geldiğini suyun, hangi dağın üstünden döküldüğünü aydınlığın, bilmemek. Bilmemek yanlış kılar sevgiyi.”

”Ben bana yeterim senin yetmediğin yerde, onarırım kendi ellerimle kalbimi, kendi ellerimle severim kendi yüreğimi.”

”… aşk zorlu bir sınav, ben bu sınavı en baştan ve gönüllü mü kaybettim? Hayır işte! Yitirmiş görünsem de kazancımsın sen benim. Ve şer gibi görünsem de göreceksin, yitirdiğin ne varsa benim sana açtığım kuyuda, hayrın olacağını sonunda.”

”Rabbim sen en iyisini bilirsin. Sen en iyisini bilirsin ve böyle olduysa, böyle olması gerekiyor demektir.”

”Hayat çok şey öğretiyordu ama bir hayli kabadayıydı.”

YusufileZuleyha“Yûsuf’un rüyası: Gerçekleşen bir rüya. Bir peygamber rüyası.
Züleyha’nın rüyası: Yanıltıcı bir rüya? İlk bakışta? Sonunda o da gerçekleşen bir rüya.
Firavn’ın rüyası: Bir hükümdar rüyası.
Görülmeyen bir rüya: Nil nehrinin rüyası.
Rüyaların rüyası: Yazıcının yazılmayan rüyası.
Kim kaderin Züleyha’yı köle etmek için önce Yusuf’u pazarlara düşürdüğünü tahmin edebilirdi ki ?”

“Bundan böyle sözcük dağarcığım Yusufun dilinden dökülen kadardır…Sadece sözcükler değil,hayat sözcükler kadarsa varlığımda Yusuf kadardır… ”

“Sende bileyim, sende bilineyim. ”

“Bu kadar ısrarla çağırmadı kimse kimseyi, tamamla bu fethi, sun bana zaferini. Yusuf kuyuda da mutluydu,Züleyha’nın yanında da..Şimdilerde ne Züleyhalar yetiyor Aşka,ne de kuyudakilerin yüreği sabra.. “

“Yusuf en çok,Züleyha onun gözbebeklerine mühürlüyken güzeldi… “

“Her zaman olupda şimdi olmayan bir şey, her zaman galip de şimdi gelmeyen şey.”

“Yusuf anladı ki yitirmek gibi bulmanın da zamanı vardır.Ve zaman yakındır.”

“Bundan böyle sözcük dağarcığım Yusuf’un dilinden dökülen sözcükler kadardır.”

“Görmekten sonra görülmek aşkın ikinci kademesiydi.”

“Herhalde zamanı vardı Aşkın bir adı da sabırdı.”

“O sana bakmıyorsa sen onun baktığı yerde olursun.O gelmiyorsa sana,sen onun gittiği yerde durursun.”

““Senin kaderin benim tecellim”,kaderimde zindan varsa,Yusufluğun su götürmez benim”

” aşk benim hakkım,

aşkın hakkımız olmayanı istemek anlamına geldiğini bildiğimden bu hak ediş,

çünkü bu aşk benim yazgım,

çünkü kutsal kitaplarda zikredilecek benim adım.

Yükselmek için düşmek,arınmak için kirlenmek,çıkmak için batmak lazım.

yeniden doğmak için ölmeli insan bir kere,

ruh olmak için teni yakmalı kadın

ve suyun serinliğini bilmek için ateşe düşmeli kadın.

Vurucu,kavrayıcı ve kuşatan ,durmayan,koşan,

böyle yazılmış benim yazgım,kutsal kitaplarda böyle geçecek adım,

yazgıma nasıl baş kaldırırım

Okunası güzel bir kitap 😀

Dostoyevski – Yeraltından Notlar

Öncelikle şunu belirtmem gerekiyor ki bu kitaptan önce okuduğum kitaplarda benzer temalar işlenmiş olmasından dolayı yer altından notlar kitabının farklılığı,kitaplara olan algımın eksik olduğunu farketmemi sağladı.Bu kitapta çoğu kitapta olduğu gibi olaylar üzerinden insanı anlatmak yerine;okuyucuya bir insan üzerinden olayları anlatarak insanı (kendisini) romanın konusu haline getirmiştir.

Kitabın isminin neden yeraltından notlar olduğu sorusuna Dostoyevski romanında “Vardığım sonuca göre, en iyisi hiçbir şey yapmamak! Her şeyden iyisi, bir köşeye çekilip seyirci kalmak. Onun için yaşasın yer altı!” cümleleriyle cevap veriyor.Her ne kadar romanın Dostoyevski’nin otobiyografisi olduğunu söyleyemesekte roman kahramanının,yazarın yaşıtı olması ve hayat hikayesinin benzerliği romanın,Dostoyevski’nin kendisine olan özelelştirisi olduğunu düşündürtüyor.
Kitabın başkahramanı kendisinin çevresinden daha zeki ve iyi birisi olduğunu düşünmektedir.Ancak geçim sıkıntıları ve yaşadığı hayat itibariyle istediği hayatı yaşamamaktadır.Kendisini üstün gören başkahraman bu hayatıyla başedememenin acısını çekmektedir.Beraber büyüdükleri çocukluk arkadaşları iş güç sahibi olurken kendisi hiçbirşeyi başaramamıştır.(Bu deyim böyle değildi ama :)) Bu arkadaşlarından üstün olduğunu düşündüğü için arkadaşlarıyla buluşacağı bir veda partisinde onlardan zeki olduğunu göstermeye çalışır ancak bunu beceremez.Düşündüklerini yapamamanın verdiği acıyla aynı gece tanıştığı Lisaya tüm gecenin acısını çıkarırcasına sert bi dille nasihatler eder.(Kitabın bu bölümü adeta kitap içinde kitap olup harika yazılmıştır.)Bu arada Lisa’dan hoşlanmaya başladığını farkeder. …
Kitabın hoşuma giden altı çizilesi satırlarına gecmeden önce özgür düşünceyi güzel anlattığını düşündüğüm bir kısmı paylaşmak istiyorum.””Sözün gelişi, sana maymundan geldiğimizi kanıtlamışlarsa, bu gerçeği yüzünü buruşturmadan kabul edeceksin. Gövdendeki tek bir yağ damlasının senin için yüz binlerce hemcinsininkinden değerli olması gerektiği; erdem, sorumluluk, safsata, boş inanç denen şeylerin hep bu sonuca göre çözümlendiği kanıtlanırsa yine olduğu gibi kabul edeceksin, çünkü matematiğin ‘iki kere iki dört eder’ kesin sonucu vardır bunlarda. Hele bir karşı durmaya kalkın; ‘Aman efendim, nasıl karşı çıkarsınız? Bu, iki kere ikinin dört etmesi kadar açıktır! Doğa size danışmaz, onun sizin isteklerinizle, yasalarının hoşunuza gidip gitmediğiyle işi yoktur. Doğayı olduğu gibi, bütün sonuçlarıyla kabul etmek zorundasınız. Duvar duvardır vb. vb.’ diye bağırırlar. Aman tanrım, herhangi bir sebepten ötürü doğa yasaları ile iki kere ikinin dört ettiği hoşuma gitmiyorsa, bana ne bu yasalardan, bana ne aritmetikten? Duvarı delmeye gücüm yetmiyorsa, ‘ille deleceğim’ diye yırtınmam elbette; ama önümde yıkmaya gücümün yetmediği bir taş duvar bulunmasına da razı olamam.
“… insanlar,yeri gelince bir öküz gibi böğürerek boğazlarını yırtarlar;gerçi bu durum,onları insanlar içinde yükseltebilir ama küçük bir zorlukla karşılaştıklarında ise hemen bir köşeye siniverirler.”
Bir defacık da aklını bir köşeye bırakarak,ilk ve asıl nedenleri aramadan,derinlemesine düşünmeden,sadece bir şeyler yapmak için sev ya da nefret et.Sonuçta koca bir sabun köpüğü ve her zamanki tembelliğin çıkacaktır karşına.
” İnsan,bazen kendisi için iyi olanı değil de kötü olanı isteyebiliyor,hatta yapmak zorunda bile kalabiliyor;ya buna ne demeli? ”
Mantığın ne kadar önemli bir özellik olduğunu biliyorum,ama insanın düşünme ihtiyacını gidermekten başka işe yaramaz;fakat istek,hayatın tüm anlamıdır.üstelik en küçük bir hareketten yüce mantığa kadar.
” …Saçma,aptalca olan istek,bazen dünyadaki bütün nimetlerden değerli olabilir bizim için.”
” Kitaplarımızı elimizden alsalar,öylece ortada kalakalacağız.”

Ayrıca Zeki demirkubuz bu kitaptan uyarlama Yeraltı filmini çekmiştir.

1 2 3 4 5 6