Yıl: 2 • Sayı: 12 • Mart 2010 • Ücretsiz
Editörler / Editors Abdullah Tekin, Siraceddin El Kapak Görseli / Cover Visual Coşkun Pınarbaşı Tasarım / Design Siraceddin El Yazarlar / Authors Abdullah Tekin, Arda Kazancı, Beyhan Bayhan, H. Sezer Uludağ, İlknur Akpınar, Kemal S. Yıldırım, Mehmet Akça, Oğuzhan Abalı, Okan Cerit, Siraceddin El, Şahap Kurtaran, Tunç Y. Olcay, Uğur Yapal, Ürfet Demirtaş Çalışmalar / Works Abdullah Tekin, Ahmet Apaydın, Bahadır Sungur, Beyhan Bayhan, Ersan Tekin, Gözde Çep, Harun Özdemir, Jon Stigner, Necati Tekin, Orçun Şanlı, Turhan Algan, Vejdi Subari Sponsorlar / Sponsors Hosting: Garanti Server Online Dergi: Diji Mecmua Sanalkurs Dergisi, Sanalkurs.net sitesinin yayın organıdır. Hiçbir yazı ve çalışma Sanalkurs.net ve ilgili yazarından izin alınmaksızın kullanılamaz. Yazılar yazarlarına aittir ve içeriklerinden yazarları sorumludur.
editörden... editörden... Merhabalar, Her geçen gün daha fazla kişiye ulaşma gayretiyle son sürat çalışmalarını sürdüren Sanalkurs.net, üyelerinin karşısına ilerleyen dönemlerde farklı sürprizlerle çıkmayı planlıyor. Sizlerin de katkılarıyla ders sayısı her geçen gün sürekli artan ve gerek video derslerle, gerek yazılı derslerle her gün binlerce kişiye ulaşan Sanalkurs, başarılarını daha da yükseklere taşımak için seferber olmuş durumda. Üyelerinin kendi not defterleri gibi öğrendikleri her yeni bilgiyi diğer insanlarla paylaştıkları benzersiz bir ortam olan Sanalkurs.net’e sizleri de bekliyoruz.
BU SAYIDA... 6 Teknoloji: Son gelişme ve yenilikler 10 Bizden Haberler: Sanalkurs’tan haberler 14 Photoshop: Sivilce Temizleme 18 Photoshop: Rengarenk Bir Yazı 22 Photoshop: HD Görünümlü Yazı 32 Illustrator: 3 Boyutlu Bir Oda Yapımı 40 Flash: AS 3.0’te Tam Ekran Modu 44 Röportaj: Bir Fotoğraf Sanatçısı: Coşkun Pınarbaşı
62 3Ds Max: V-Ray ile Buzlu Cam Yapımı 66 Programlama: C++ Diline Giriş (2. Bölüm) 72 ASP.net: C# İle Matematiksel İşlemler 78 ASP.net: Bir Web Sitesi Yapımı 86 VB.net: Matematiksel Fonksiyonlar 94 Microsoft Word: Dokümanlara İçindekiler Tablosu Eklemek 100 İnternet: Gelecekte Bizi Nasıl Bir İnternet Bekliyor? 108 Mobil Programlama: Windows Mobile 6.5 SDK 112 Wordpress: Bazı Güzel Eklentiler
4
5
6
teknoloji
Internet Explorer 6 ve 7 kullananlar dikkat!
Microsoft, bilişim korsanlarının, web tarayıcısı Internet Explorer’ın eski sürümlerinde yeni ortaya çıkan bir açıktan yararlanarak saldırılar düzenlediklerini bildirdi. Açıklamada, Internet Explorer’ın IE6 ve IE7 sürümlerinde yeni belirlenen bu açığın bilgisayar korsanlarının saldırılar düzenlemesine olanak sağladığı belirtilerek, “Bu açığı kullanarak siber saldırılar düzenlediği yolunda bilgiler aldık. Bu tehdidi izlemeyi sürdürüyoruz ve durumda değişiklik olursa yeni bir açıklama yapacağız” denildi. Microsoft, yeni sürüm IE8’in bu sorundan etkilenmediğini belirtti. Şirket, iki ay önce de IE6’da ortaya çıkan ve korsanların özellikle Google’a yönelik siber saldırılarda bulundukları bir açık nedeniyle uyarı yayınlamak zorunda kalmıştı. (İnternet Haber)
Google Wikipedia’ya Özeniyor
Google’ın harita yazılımı Google Earth, bünyesinde barındırdığı Street View özelliğinde herkesin değişiklik yapabilmesine imkan sağlayacak. Dünyaca ünlü yazılım firması Google, harita yazılımı Google Earth’te Wikipedia modelini hayata geçirdi. Bundan böyle Google Earth’ün, Dünya’yı sokak sokak gezmemize olanak sağlayan servisi Street View’de tıpkı Wikipedia’da olduğu gibi herkes değişiklik yapabilecek. Edit Marker ismiyle eklenen bir buton, kullanıcının o anki fotoğrafta herhangi bir dükkanı ya da bir mekanı işaretleyebilmesini sağlayacak ve bu işaretli yer, tüm Google Earth kullanıcıları tarafından görülebilecek. Google Earth Blog’unda bu özellik için yetkililer, “Bazen haritada bir yer gösteriliyor olur, fakat o yerin aslında tam da orada olmadığını görürsünüz. İşte bu yeni özellik sayesinde bunun
7
önüne geçeceğiz zira kullanıcı, aradığı mekan gerçekten de orada mı diye kontrol edebilecek” diyor. (Milliyet)
Street Fighter’da Bir Türk
Firefox uçuşa geçiyor!
Firefox’un geliştiricisi Mozilla, bu tarayıcının en önemli özelliği olan güçlü eklenti desteğine ağırlık verdi. Jetpack isimli proje, Firefox için çok daha kolay bir şekilde, çok daha gelişmiş uygulamaların eklenti olarak geliştirilmesine imkan tanıyor. Daha önce 0.8 sürümü kullanılan Jetpack’in SDK yani Software Development Kit’i de sonunda ortaya çıktı. Mozilla bu konuda biraz temkinli, kullanıcılara basit eklentiler geliştirmek için bir önceki sürümü kullanmaya devam etmelerini tavsiye ediyor. Yani Jetpack’in biraz daha pişmesi gerekiyor. Bunun temel sebebi ise zengin ve yetenekli eklentiler geliştirmeye imkan tanıyan API’lerin bu sürümde yer almaması. Yine de bu sürüm yeniden başlatma olmadan, güncelleme gerekmeden üst seviye kodlar ile eklenti geliştirebilecek. Firefox Jetpack SDK’nın daha üst bir sürümünün önümüzdeki 3 ay içerisinde çıkacağı Mozilla tarafından resmen duyuruldu. (Milliyet)
Bilgisayar dünyasının en popüler dövüş oyunlarından Super Street Fighter, Nisan ayında çıkaracağı yeni versiyonunda, bir Türk karaktere de yer verdi. ‘Hakan’ adında yeni dövüşçü karakterini oyunseverlere sunan Street Fighter IV’de Darun Mister adlı Hintli karakter de Türk güreşçi Koca Yusuf’tan esinlenerek yaratılmış. Super Street Fighter 4 oyun programındaki dövüş karakterleri arasında en büyük cüsseye sahip olan Hakan karakteri, Türk bir pehlivandan esinlenerek yaratıldı. Rengi turuncu olan Hakan’ın burma bıyıkları mavi olan saçları ile birleşiyor. Oldukça cüsseli yapıya sahip olan Hakan, pehlivan olmasından ötürü, oldukça ‘kaygan’ bir dövüş tarzı geliştirmiş. Dövüş sırasında vücudunu sık sık yağlayan Hakan, yer yer çayır güreşi hareketleri de kullanarak rakipleriyle dövüşüyor. Ağır olmasına karşın yağlı ve kaygan vücudu sayesinde gayet mobil ve çevik olabilen Hakan karakteri, göbeğinin üstünde kayarak düşmana girişiyor, ani dönüşler yapabiliyor, ayakları üzerinde kayabiliyor, rakibini yağlı kolları arasında sıkıp yukarı fırlatıyor, yağlı bedeni etrafında çok hızlı bir şekilde çevirerek, etkisiz hale getiriyor.
8
9
ORÇUN ŞANLI
10
biz’den haberler
Sanalkurs.net, sizlerin de desteği ile gittikçe büyüyor, gittikçe
Türkiye’nin en iyi içeriğe sahip eğitim siteleri arasında hızla zirveye yükseliyor. Yakında yeni sürprizlerle karşınızda olacağımızı şimdiden belirtmek isteriz. Sanalkurs’ta son zamanlarda olup bitenleri burada dile getirmemek olmaz. Bakalım arka planlarda neler oluyor, hep birlikte göz atalım.
İzleyerek İnternetten Öğrenin!
Mart ayının ilk haftasında Sanalkurs’un Adobe Expert sertifikalı uzmanları Hakan Çamoğlu ve Erhan Meydan, yine alanında uzman bir eğitmen olan Halid Özgür ile birlikte Online Video Eğitim web sitesini oluşturdular. Hepimizin başarılı video an-
latımları ile yakından tanıdığı üç isim, bu web sitesi ile programları öncelikli olarak seviye seviye derecelendirmişler ve konuları sınıflandırmışlar. Böylece başlangıç düzeyindeki birinin izleyip uygulayarak uzmanlık seviyesine kadar ulaşabileceği son derece kaliteli bir hizmet ortaya çıkmış. Aynı zamanda Türkiye’de bir ilk olma niteliği taşıyan proje, son derece sade bir arayüze sahip olması, hızlılığı, kullanışlılığı ve her gün güncellenen içeriğiyle de çok ses getirecek gibi görünüyor. Her ge-
11
çen gün yeni programlar ve içeriklerle sürekli zenginleşeceğini vaad eden web sitesi, normalde bir program için en az 3000 TL ödenerek alınabilecek bir eğitimi bedava denilebilecek bir ücret mukabili evinizde alma imkanını sunuyor. Tanıtım amacıyla ilk zamanlarda çok düşük bir bedel karşılığı hizmet veren OnlineVideoEgitim.com’un indirimli kampanyasını da kaçırmamakta fayda var. www.OnlineVideoEgitim.com
Sanalkurs Yeni Tasarım Sanalkurs.net olarak, yeni tasarım ve sistem üzerinde çalışmalarımız hala sürüyor. Zaman zaman yapıp tekrar baştan ele aldığımız oluyor. Çok titiz çalışıyoruz. Herkesin ciddi bir şekilde faydalandığı bu sistemi, daha da kullanışlı hale getirmek ve özel olmasını sağlamak en büyük hedefimiz. Bu nedenle Mart ayının ilk haftasında yöneticimiz Siraceddin EL ile Sanalkurs’un uzman yazarları Hakan Çamoğlu ve Erhan Meydan, Adobe Türkiye temsilcisi Medyasoft’un Mecidiyeköy’deki binasında bir araya gelerek yeni tasarım üzerinde bir toplantı gerçekleştirdiler. Son derece neşeli ve eğlenceli geçen toplantıda oluşturulan arayüz hakkında görüş-
ler dile getirildi. Erhan Meydan, yeni tasarımda soldaki ders menülerinin korunması gerektiğini dile getirirken, Hakan Çamoğlu da renk konusunda canlılığı kaybetmeden sadelik konusuna odaklanılması gerektiğini belirtti. Yeni tasarımda bilgisayar eğitim ürünleri satışı, portfolio, özel röportajlar gibi yeni bölümlerin olacağı müjdesini veren Siraceddin El, sistemin programlamasını yapacak olan kişinin Türkiye’nin önde gelen programcılarından Abdullah Tekin olmasının da ayrıca bir avantaj olduğunu vurguladı. Yeni sistem ne zaman hazır olur bilinmez, ama ses getirecek özellikleriyle gündem oluşturacağa benziyor.
Kısa Kısa... - Uğur Yapal, bir yönetici olarak aramıza katıldıktan sonra hızlı bir yükseliş gösterdi. Forumda iyileştirmeler yaptı ve yapmayı sürdürüyor. - Günlük 10 bin civarında tekil ziyaretçi alan Sanalkurs.net’in üye sayısı Mart ayında 212.300’ü aştı. - En çok mesaj yazan 5 üye şu şekildeydi: Endless (2491 mesaj), Siracel (2429), Murat Korkmaz (2130), İllegal (1903), Dr.Weaver (1695). - Sanalkurs.net’e özel olarak üyelerimiz tarafından tasarlanan wallpaper çalışmaları Programlar bölümüne eklendi.
12
13
AHMET APAYDIN
14
UĞUR YAPAL
PHOTOSHOP
Sivilce Temizleme
Photoshop kullanarak bir fotoğraftaki sivilce, ben, akne gibi lekeleri nasıl temizleyeceğimizi öğrenelim.
P
hotoshop’u açıp File > Open komutunu verip üzerinde çalışacağımız resmi açıyoruz. Ben bu dersimizde yüzünde beni ile tanıdığımız meşhur bir simayı seçtim. Basit bir iki müdahale ile benini temizleyelim. Resmi açtıktan sonra araç paletinden Patch Tool’u seçiyoruz. Bu aracı seçtiğimizde en üstteki özellikler kısmında bu araca ait seçenekler görünecektir. Bu kısımda “Source” seçeneğinin işaretli olmasına dikka ediyor ve “Transparent” kutucuğunun ise işaretli olmadığından emin oluyoruz.
15
Şimdi durumu biraz daha zorlaştıralım ve yüzü sivilcelerle dolu bir resmi nasıl temizleyeceğimizi görelim. Kısaca resmimize basit bir kaç hareketle rötuş yapalım. O zaman rötuş yapmak istediğimiz resmi yine Photoshop’ta açıyoruz. Sonrasında Patch Tool ile ben bulunan kısmı daire içine alıyoruz.
Delete tuşuna basarak o kısmı siliyoruz. Bu işlem sonrası resimdeki ben çevresine zarar vermeden silinecektir.
Öncelikle genel bir renk düzenlemesi iyi olur. Bu ayarlamaları sırasıyla “Image” menüsünden (eski sürümlerde Adjustments menüsü içinde yer alıyor olabilir) “Auto Level”, “Auto Color” veya “Auto Contrast” seçeneklerinden biri ile yapabiliriz. Renklerin daha gerçekci olduğunu göreceksiniz. Eğer renklerin hala kötü olduğunu düşünüyorsanız manuel olarak da, Adjustments menüsünden Brightness/Contrast, Levels, Color Balance gibi ayarları kullanabilirsiniz. Örneğin resmin içinde normalden fazla kırmızı varsa “Color Balance” ayarından kırmızı rengi uygun şekilde kısabilirsiniz.
16
Renkleri ayarladıktan sonra resim üzerinde çalışmalara başlayabiliriz. İlk önce yüzdeki sivilce veya ufak lekeleri yok etmeye çalışacağız. Kullanacağımız araç bu kez “Healing Brush Tool”. Fırça boyutunu ayarladıktan sonra resimdeki temiz bir yerden (daha doğrusu cildin temiz olduğu yerden) örnek alıyoruz. Bu işlemi klavyeden “Alt” tuşuna basılı tutarken mouse ile temiz bölgeye tıklıyoruz. Böylece temiz olan bu bölgeyi sivilceli kısmın üzerine uygulamak üzere hafızaya kaydetmiş olduk. Sonra ciltteki lekeyi yok etmek için lekenin üzerine tıklıyoruz.
gibi ayarları yapabilirsiniz. Fırça boyutunu fazla büyütmeyin, aksi halde etkilerin gerçekçi görünmesini engelleyebilirsiniz. Resmimizdeki lekeleri bir güzel temizledik ama daha bitmedi. Bazı renk birleşimlerinin olduğu yerlerde “Healing Brush” yetersiz kalabiliyor ve renkler birbirine karışabiliyor. Bu durumda yapmamız gereken “Stamp Tool”u seçerek devam etmek. “Stamp Tool”un çalışma prensibi “Healing Brush Tool” ile benzerlik gösteriyor. Yine “Alt” tuşuna basılı tutarken temiz ve aynı renkte olan bir kısmı hafızaya alıyoruz. Bu arada fırçanın “Opacity” ayarını, yani saydamlık etkisini %25 veya %30 yapabilirsiniz. Daha sonra lekeli kısma yavaş yavaş uyguluyoruz. Böylece “Healing Brush Tool” ile iyileştiremediğiniz kısımları kabaca “Stamp Tool” yardımı ile halletmiş oldunuz. Hepinize kolay gelsin. Sonuç:
Lekelerin üzerine tıkladıkça yavaş yavaş ortadan kaybolduğunu göreceksiniz. Yapılan işlem biraz önce kopyalanan kısmı etrafına bulanıklık vererek buraya uygulamak. Dilerseniz resim üzerinde mouse’a sağ tıkladığınızda gelen iletişim penceresinden fırça boyutu ve sertlik, yumuşaklık
17
HARUN ÖZDEMİR
18
PHOTOSHOP
Rengarenk Bir Yazı Bu dersimizde rengarenk özel stilli bir yazı işlemini ele alacağım. Umarım işinize yarar. ARDA KAZANCI
İ
lk olarak Photoshop programında File > New yolunu izleyerek 500px genişlik ve 300 px yükseklik olacak şekilde bir çalışma sayfası açalım. Çalışma sayfamızı açtıktan sonra arka planını siyah yapacağız. Bunun için Paint Bucket Tool’u seçiyoruz. Renk olarak siyahı seçin ve arkaplana bu rengi uygulayın. Bu ayarlamaları yaptıktan sonra bir filtre uygulayacağız.
Önce arkaplan yaptığımız layer’a sağ tıklıyoruz ve Duplicate Layer deyip kopyasını oluşturuyoruz. Filtre işlemi için Filter menüsü > Render listesi > Fibers seçeneğini seçiyoruz. Gelen pencerede seçilecek ayarlar : Variance: 36.0 Strenght: 1.0
19
Gradient: Bu kısımda zaten mevcut bulunan Kırmızı – Pembe – Mavi – Mavi – Yeşil – Sarı – Kırmızı rengini seçin. (Mevcut değilse doku alma yöntemi ile kendiniz oluşturun.) Angle: 0 Scale: 108
Bu ayarlamayı yaptıktan sonra ikinci filtreyi uygulamaya başlıyoruz. Yine Filter menüsü > Blur > Motion Blur ‘ u seçiyoruz ve şu ayarlara dikkat ediyoruz: Angle: 90 Distance: 214 Şimdi efekti uygulayacağım yazıyı yazabilirim. Ben “Sanalkurs” yazıyorum. Sonra Layer panelinden bu Sanalkurs layer’ını göz simgesine tıklayarak gizliyorum.
Geriye kalan işlemleri yapmaya devam ediyoruz. İlk filtre uyguladığımız layer‘ı seçiyoruz ve sağ tıklayıp Blending Options > Gradient Overlay‘ı seçiyoruz ve resimdeki ayarları yapıyoruz. Blend Mode: Overlay
Sonra CTRL tuşuna basılı tutarak yazı layer’ına tıklayın. Bu işlem Sanalkurs yazısının etrafının sahnede seçili hale gelmesini sağlayacaktır.
20
Daha sonra bu seçimi bozmadan az önce efektler uyguladığımız layer’i ve yazı layerini seçili hale getiriyoruz. Bunu klavyeden CTRL tuşuna basılı tutarken her iki layer’a ayrı ayrı tıklayarak gerçekleştirebiliriz. İki layer da seçili iken Losso tool aracını seçiyoruz ve Feather değerini 30 px vererek metin üzerinde SHIFT tuşuna basarak çizikler atıyoruz.
Çizik atılmış hali bu. Kısaca yapmanız gereken fare ile Shift tuşuna basarak seçili halde bulunan text üzerinde çizikler atmak – zig zag yapmak. Son olarak sadece efektler uyguladığımız layer seçili iken, Layer menüsünden > Layer Mask seçeneğini, ordan Reveal Selection seçeneğini seçiyoruz. Yapacaklarımız bu kadar. Sonuç en aşağıda gördüğünüz gibi oldu.
21
BAHADIR SUNGUR
22
TUNÇ Y. OLCAY
PHOTOSHOP
HD Görünümlü Logo Photoshop ile hayata geçirebileceğimiz bu tür logo / tema görünüm zenginleştirmelerini; çeşitli oyun editlemelerinde, web tasarımlarınızda ya da yapacağınız grafik çalışmalarında kullanıp görselliğe önemli katkılarda bulunabilirsiniz. Merhaballar Sanalkurs okuyucuları, Bugünkü dersimizde Photoshop programı ile herhangi bir logoyu nasıl HD görünümüne büründüreceğimizi öğreneceğiz. Bu derste .Eps formatını açarken yapabileceğimiz ayarlar, Load/Save Selection komutları gibi teknik konulara da özellikle değinilecektir. Derse pratik başlamak adına kullanabileceğiniz .eps formatlı bir logoşu adresten temin edebilirsiniz: www.sanalkurs.net/zip/bursa.eps
Bu dosyayı indirdikten sonra Photoshop’ta “Open” komutunu verip,
23
.EPS uzantılı bu indirdiğiniz dosyayı seçelim (Bursaspor logosu kullanacağım) .EPS formatını açmak için seçtiğimizde böyle bir diyalog kutusu belirecek, aşağıdaki ayarları yapalım. Resolution 300 dpi olsun (İşaret-1) ve Mode “RGB” olsun. Bu tür .Eps uzantılı dosyalar genelde CMYK olarak karşımıza gelir ama biz effectleri verebilmek için bunları baştan RGB formatına çevirmeliyiz. (İşaret-2)
sürümüdür. (Image menüsü altında “Image Size” dan ayarları yapabilirsiniz.)
Magic Wand ile tıklayıp işaret alanı oluşturduktan sonra sırasıyla; Selection Menüsü, Modify ve Feather komutunu verelim, değer olarak 1 girsek yeterli. (bir önceki dersimde [dalgalanan bayrak etkisi] Feather’dan bahsetmiştim.)
Logomuz verdiğimiz değerlere göre açıldı. Hemen Magic Wand aracını seçelim (İşaret-1) ve logo dışındaki beyaz bir alana tek tıklayıp tüm beyaz alanın seçili hale gelmesini sağlayalım. (İşaret-2) .EPS formatlı dosyalar genelde beyaz bir zeminle gelir. Buradaki amacımız bu arkaplandaki beyaz zeminden kurtulmak. Not: Image boyutumuz bu ders için 800 x 800 pixel olmalıdır. Derste kullanılan program Photoshop CS4
Edit menüsü altından “Clear” komutunu verip beyaz alanları temizleyelim.
24
aracını seçip (İşaret-1), çalışma alanımızın yaklaşık yarısına kadar bir kare işareti oluşturalım, (İşaret-2), Select Menüsü’nden (İşaret-3) “Transform Selection” komutu verelim. (İşaret-4) Transform Selection modunda iken sağ üstte “Warp Mode” düğmesine basıp (İşaret-1) aktif hale getirelim.
Select menüsü altından “Deselect” komutunu verelim,
Aşağıdaki resimdeki gibi araç kutusundan “Rectangular Marquee” kare
İşaret-2’de göreceğiniz üzere ızgara şeklinde bir görünüm ortaya çıktı. Şimdi İşaret-3’teki küçük kulakçıklardan tutup aşağı doğru çekerek Selection alanımıza küçük deformasyonlar uyguluyoruz.
25
Her iki kulakçıktan tutup düz olarak orta ızgara hizasına kadar çekiyoruz. (İşaret-1) Sağ üstteki “Check” ikonlu butona basıp (İşaret-2) transformumuzu onaylıyoruz.
üstteki “Source” bölümü altındaki “Channel”in “Layer 1 Transparency” de olduğundan emin olup, (İşaret-1) “Operation” bölümünden “Intersect with Selection” kutucuğunu işaretliyoruz. (İşaret-2)
Select Menüsü’nden “Load Selection” komutunu verip, gelen “Load Selection” diyalog kutucuğunda önce
Oluşan işaret alanımızı kaydedersek daha iyi olur ve de profesyonelce çalışmanın ilk kurallarını benimsemiş oluruz. Bunun için yine Select Menüsü altından “Save Selection” komutunu veriyoruz.
Açılan diyalog kutusundaki “Name” bölümüne kafanıza göre bir ad verin. Ben “ALT” adını verdim. (Kaydettiğimiz selectionları geri çağırırken kolayca bulabileceğimiz mantıklı adlar ver-
26
mek yerinde olur.)
Şimdi bu ortaya çıkan alanı siyah renk ile dolduracağız. Ama öncelikle Layer penceresinden yeni bir layer yaratalım. Adı Layer 2 olacak.
ret-2) ve işaret alanı içine tek tıklayalım. (İşaret-3)
Diğer işaret alanını oluşturmak için sırasıyla; Select Menüsü altından Inverse komutunu verelim,
Ardından yine aynı menü altında “Load Selection” komutunu vereceğiz.
Üst rengi siyah yapalım, (İşaret-1), Paint Bucket aracını aktif edelim (İşa-
27
Bu komutu vermeden önce Layer Penceresi’nde Layer 1’in aktif olduğundan emin olunuz, Transparency alanını kullanacağımız Layer, Layer 1 olacak. Yoksa Channel bölümünde Layer 1’i göremezsiniz. Aşağıdaki fotoğrafı dikkatlice incelemenizi öneririm. İşaret-3’de Layer Penceresi’nde Layer 1 aktif görünüyor, Load Selection diyalog kutusunda Channel alanına bakarsanız orada otomatikman Layer 1 Transparency’nin seçilmiş olduğunu göreceksiniz. (İşaret-1) Vereceğimiz son komut ise yine “Intersect with Selection” (İşaret-2)
Araç kutusundan yine “Paint Bucket” aracını seçelim, Layer Penceresi’nde Layer 3’ü yaratıp, en üste taşıyalım (İşaret-1) ve seçim alanını yine siyah renge boyayalım. (İşaret-2)
Bu seçim alanını da Save Selection komutu ile kaydedelim.
Ben “UST” adını uygun görüp öyle kaydettim.
Evet, Layer 3 aktif iken Layer Penceresi altındaki Layer Effects ikonuna tıklayalım, orada “Gradient Overlay...”i işaretleyelim.
28
İşaret-1,2,3 ve 4’ün değerlerini dikkatlice inceleyip bu şekilde bir Effect uygulayın.
Layer Penceresi’nden “Opacity” ayarını %40’a çekin ve enter tuşuna basın.
Select menüsünden > Deselect komutunu verin, Şimdi Layer 2’yi aktif hale getirip onun “Opacity” ayarını da %20’ye çekin.
Layer Penceresi’nde Layer 1’i aktif edelim,
Image menüsü altında sırasıyla; Adjustment, Brightness Contrast komutunu verelim. (Bunu yapmamızdaki amaç Layer 1’e effect uyguladıktan sonra oluşabilecek bazı koyu bölgelerdeki koyuluğu az da olsa altere edebilmek.)
Yaklaşık olarak şu değerleri verebilirsiniz,
Şimdi Layer 1’e sırasıyla şu Layer Effectlerini uygulayın, (Layer Effect ile ilgili sorun yaşıyorsanız bir önceki ders-
29
teki Layer Effect bölümlerini dikkatlice inceleyebilirsiniz.) Bevel&Emboss altında “Inner Bevel”;
Shift tuşuna basılı tutup Layer 3 üzerine bir kez tıklıyoruz. Şimdi tüm katmanlar seçili duruma geldi.
Drop Shadow;
Outer Glow; Edit Menüsü altındaki “Free Transform” komutunu verelim (Kısayol Ctrl+T)
Tüm bu effectleri uyguladıktan sonra gölgelerin dışarı taşıp kesik görüntü yaratmasını önlemek için tüm Layerları seçili hale getirip bir küçültme transformu uygulayacağız. Bunun için öncelikle bu 3 katmanımızın (Layer) seçili hale gelmesi gerek. Önceki dersi hatırlıyoruz değil mi? Yine de hatırlatmış olayım. Layer 1 seçili iken
30
Köşelerden tutup bastırırken Alt ve Shift tuşlarını basılı tutuyoruz, neden? Çünkü bu tuşlar basılı haldeyken transform yaparsak her yönden eşit transforma sokmuş oluruz. Evet, gölgelerin tüm Canvas alanına sığmış yani taşmamış olduğuna emin olana kadar transformu sürdürün. Şu an Sanalkurs.net’te yer alan, Fireworks başlığı altına yazdığım “Png-8 Alpha Channel” konulu dersi dilerseniz okuyup, bu yaptığınız çalışmaları web ve oyun editleme ortamlarına kalite kaybı olmadan nasıl aktarabileceğinizi öğrenebilirsiniz.
nizde 349 mb yer kaplayacaktır!)
İndirme Linki: http://cid-86558470b26c911b. skydrive.live.com/browse.aspx/ DERSLER/KARIYER (En alttan dördüncü, “HOW to CREATE HD LOGO for PES or FIFA.rar” adlı dosya)
Online Olarak da İzleyin:
Yine bu dersi bilgisayarınıza indirmeden online olarak izlkemeniz mümkün. Youtube [HD]:
http://www.youtube.com/ watch?v=0H33yctWNqE Kaynak Dosyalar:
Bu çalışmanın kaynak dosyalarını ise yine şu adresten temin edebilirsiniz:
http://cid-86558470b26c911b. skydrive.live.com/self.aspx/ALLLOGO-ARCHIVE/00-KARISIK/ FUTBOL%5E_TAKIM/TEAM%5E_ LOGO%5E_psd.rar
Bir sonraki derste görüşmek üzere. Tüm okurlara sevgiler ve saygılar...
Notlar:
Bu dersi video olarak da indirip görüntülü olarak izleyebilir ve tatbik edebilirsiniz. Video= 4.02 MB sıkıştırılmış avi dosyası. (Dikkat! Açıldıktan sonra PC’
Bu derste yer alan görüntüler net olarak görünmemiş olabilir. Özellikle rakamsal ayarlarda daha büyük görüntüde incelemek isteyebilirsiniz. Bunun için bu dersi Sanalkurs. net üzerinde de aşağıdaki linkten de Photoshop kısmında bulabilirsiniz:
http://www.sanalkurs.net/hdtakim-logosu-yapmak-3994.html
31
JON STIGNER
32
ILLUSTRATOR
3 Boyutlu Bir Oda Yapalım Oyunlarda 3 boyutlu görünen sahneler yer alır. Bu sahneler kişinin görünümü gerçekmiş gibi algılamasını sağlar. Peki bu sahneleri kolaylıkla Illustrator’de en hızlı şekilde nasıl yapabiliriz, birlikte ona bakalım.
33
SİRACEDDİN EL
B
u sahneleri oluşturmak için Illustrator’un Extrude ve Bevel isimli 3 boyutlu efektlerini kullanacağız. Artık sizler de birkaç basit adım ve tıklama ile kolay bir şekilde 3 boyutlu bir sahne oluşturabileceksiniz. Hemen başlayalım. Yeni bir RGB sayfa açalım. Layer bölümündeki layer’ı “Zemin” olarak isimlendirin. Arkasından Araç kutusundan Rectangle aracını seçip sahnenin herhangi bir yerine tıklayın. Gelen iletişim penceresindeki width değerine 350, height değerine ise 600 girin. OK deyin ve renk olarak R: 255, G: 250, B: 182 yapın. Stroke (kenar çizgisi) vermeyin.
Bu dikdörtgeni seçin ve üst menüden Effect > 3D > Extrude & Bevel kısmına gidin. Bu kısımda iki değişiklik yapacaksınız: Biri Position kısmından Isometric Top seçecek ve Exrude Deep kısmını ise 25 yapacaksınız. Şimdi de yeni bir layer daha oluşturun, “Sağ Duvar” olarak isim verin. Tekrar Rectangular aracını seçin ve sahneye tıklayın. Değer olarak weight ve height değerlerini 300 girin. OK tıklayın. Bu şekil için renk ayarını ise, R: 0, G: 164, B: 255 yapın. Yine stroke (kenar çizgisi) vermeyin.
Bu dikdörtgeni seçin ve üst menüden yine Effect > 3D > Extrude & Bevel tıklayın. Üst kısımdan bu kez
34
Isometric Left’i, Extrude Depth ayarını ise 25 yapın. OK tıklayın.
Şimdi oluşan bu şekli üste doğru sürükleyip sağ duvar olarak yerleştirin.
Şimdi yeni bir layer oluşturun ve ismini “Sol Duvar” yapın. Tekrar Rectangle aracını seçin ve sahneye tıklayın. Width için 575, height için de 300 değerini girin. Renk ayarını, R: 0, G: 164, B: 255 yapın. Yine kenar çizgisi vermeyin.
Bu kez efekt vermeden önce bu şeklin üzerine pencereler yapacağız. Dört tane küçük dikdörtgen çizin ve aşağıdaki gibi yerleştirin. Dilerseniz bir tane oluşturup ALT tuşuna basıp çekerek de yapabilirsiniz.
Şimdi bu pencere şekillerini ve en son çizdiğimiz “Sol Duvar” isimli şekli seçin. Window > Pathfinder menüsünü tıklayarak Pathfinder panelini açın. Şekiller seçili iken Pathfinder panelinden üst sıradaki soldan ikinci butona tıklayın. Bu işlem pencere şekillerini alttaki şekilden kesecektir.
35
Böylece şeklimiz pencereleriyle beraber tek bir şekil haline dönüşmüş oldu. Şimdi artık efekt verebiliriz. Üst menüden Effect > 3D > Extrude & Bevel kısmını tıklayın. Bu kez Isometric Right seçiyor ve Extrude Depth değerini de yine 25 yapıyorsunuz.
Şimdi bu şekli tutup aşağıdaki gibi zemine duvar olacak şekilde hizalayın.
Şimdi de bu duvarın önüne koymak üzere bir kitap rafı yapmaya ne dersiniz? İlk önce yeni bir layer açıp dikdörtgen bir şekil oluşturun. Bu raf olacak. Dolgu rengi olarak şu şekilde kullanabilirsiniz: R: 239, G: 219, 34. Sonra bu dikdörtgen şeklin içine altı adet küçük şekiller çizin. Bu şekiller rafın gözleri olacak. Bu şekilleri aşağıdaki gibi düzenleyin.
Şimdi bu rafları az önce pencerede uyguladığımız usuldeki gibi Pathfinder paletini kullanarak alttaki şekilden keselim. Sonra şimdi de çekmece ekleyelim bu kitap rafına. Üç tane daha dik-
36
dörtgen çizin veya kopyalayarak alta çekin. Dolgu rengi olarak, R: 191, G: 172, B: 38 olarak belirleyin. Bunlara tutacak yapmak için Rounded Rectangle aracını kullanın.
Şimdi bu raf ile ilgili yaptığımız şekilleri seçin ve guruplandırın. Kısaca Ctrl+G tuşunu kullanabilirsiniz. Bu gurup seçili iken Effect > Bevel & Emboss menüsünü tıklayın, üstten Isometric Right seçin, Extrude Depth değerini de 50 olarak girin. Sonra OK deyin.
Şimdi bu odaya bir iki insan figürü ekleyelim. Bunun için Windows > Symbol Libraries > Logo Elements tıklayın. Açılan pencereden bir insan figürü alarak odaya uygun şekilde yerleştirin. Sonra yine Effect > Bevel & Emboss
menüsünü tıklayın, üstten Isometric Right seçin, Extrude Depth değerini de 10 olarak girin. Sonra OK deyin.
Sonra bu rafı sahneye yerleştirelim uygun şekilde. Eğer gerekiyorsa büyütüp küçültebilirsiniz.
37
Dilerseniz kütüphaneden başka şekiller de ekleyebilirsiniz. Duruma göre isometric ayarını left, right, top gibi ayarlamanız mümkün. Mesela, ben sahneye bir şekil daha ekledim ve buna Isometric Left ayarı uyguladım.
Bu sadece size fikir vermek içindi. Bunlar Illustrator içindeki hoş ve kolay kullanımı olan özellikler. Bunları kullanarak çok daha farklı çalışmalar ortaya çıkarmanız mümkün. Kolay gelsin.
38
39
NECATİ TEKİN
40
FLASH ACTIONSCRIPT 3.0
Flash’ta AS 3.0 ile Tam Ekran Modu
Bu dersimizde Actionscript 3.0 ile FullScreen Mode nasıl yapılır, bunu öğreneceğiz.
ŞAHAP KURTARAN
B
u dersimizde Actionscript 3.0 ile FullScreen Mode nasıl yapılır, bunu öğreneceğiz. Öncelikle Flash programını açıp yeni bir sayfa açtıktan sonra kaydediyoruz. Daha sonra bir MovieClip oluşturuyoruz ve üzerine FullScreen yazısı ekliyoruz.
Oluşturduğumuz movie clip’e Properties panelinden İnstance name olarak bir isim veriyoruz; ben “dortgen” ismini yazıyorum. Siz de istediğiniz bir isim verebilirsiniz.
Daha sonra Timeline’da ilk kare seçili iken F9 tuşu ile Action panelini açıp kodları yazmaya başlıyoruz...
41
function Klick(evt:MouseEvent):void { stage. displayState=StageDisplayState. FULL_SCREEN; } dortgen. addEventListener(MouseEvent.CLICK , Klick); function fulscreen(evt:FullScreen Event):void { } stage.addEventListener(FullScree nEvent.FULL_SCREEN , fulscreen); Bu durumda amacımız FullScreen kısmına tıklandığında tarayıcıda tam ekran olmasını sağlamak. Bunun için bir ayar daha var. Üst menüden File > Publish Settings kısmını tıklayın. Gelen iletişim penceresinde HTML sekmesine geçin ve Template kısmındaki açılır menüden Flash Only - Allow Full Screen’i
seçin. Sonra o pencereyi kapatmadan Publish dediğiniz anda Flash, dosyanızı kaydettiğiniz klasörde aynı isimde bir HTML sayfası oluşturacaktır. HTML dosyanızı açın ve sonucu görmek için FullScreen yazısına tıklayın, tarayıcınız tam ekran olacaktır.
Sayfanıza Flash Dosyasını Sonradan Eklerseniz... Publish Settings’teki bu küçük ayarın yanısıra aynı işlemi, sayfanıza direkt eklediğiniz SWF dosyası için de yapabilirsiniz. Bunu yapmak için HTML dosyasında SWF dosyasının eklendiği satırları bulun. allowFullScreen ibaresinin geçtiği tüm kısımlarda hemen önünde bulunan “false” kelimesinin yerine “true” yazmanız yeterlidir. Bu çalışmada tıklandığı zaman flash tam ekran olacaktır, tekrar normal görünüme geçmek için ESC tuşuna basmak yeterlidir. Başka bir derste tekrar görüşmek üzere... Kolay gelsin.
42
43
44
Bu ay söyleşi sayfamızda bir fotoğraf sanatçımızı ağırlıyoruz. Özellikle moda ağırlıklı çekimleri ile öne çıkan Coşkun Pınarbaşı ile samimi bir sohbet gerçekleştirdik.
Röportaj: Siraceddin El
45
46
Sizi tanıyalım önce. Her bir bireyinin 10 parmağında 1o marifet olan bir evin, en küçüğü, 1983 yazında Ankara’da dünyaya gelmiş bir sarışın. Tabii ki şimdi kumrallaştık ama… :)
Neden fotoğraf peki? Fotoğraf tutkusu nasıl başladı? İlk önce bundan başlayalım. O kadar çok şey söyleyebilirim ki bu konuda saatler sürer sanırım. Kısa bir özet geçmek gerekiyorsa, her biyografimde bahsederim; ilk hocam babamdır. Dünyaya gözlerimi açtığım an itibari ile hep bir kamera ve fotoğraf makinesi var idi karşımda.
Asla hakkını yiyemem sevgili babamın, modelliğini yapmışımdır sık sık ve makinelerini çok kurcalamaktan bozmuşumdur.. Ardından 2004 yılında, hiç unutmam, bir gün telefonum çaldı. Ben de tabi o sırada (bugün de olduğu gibi) kurgu yönetmenliği yapıyorum. “Görüşmek isterim sizinle” dedi karşıdaki ses, “bir belgeselimiz var, bu işin kurgusunu sizinle yapmak isteriz.” Gittim görüştüm. İş bir fotoğraf belgeseli işi idi. Her bölümde farklı hocaların var olduğu bir belgesel, sadece kurguda değil tabiî ki. Kimi bölümlerinde görüntü yönetmenliğini de yaptım bu belgeselin. Her bö-
47
lümünde farklı bir usta (Ara GÜLER, Coşkun ARAL, Gültekin ÇİZGEN vb.) ile yapılan sohbetler beni iyice fotoğrafçılığa yönlendirdi ve her usta bana yeni bir şeyler öğretti. Bu arada bana telefon açan o kişi çok kıymetli hocam Halil DİŞLİ’dir. Bugün halen yıllar geçmiş olmasına rağmen o belgeseli yapmakta ve yayınlamaktayız.
Fotoğraf çalışmaları nasıl başladı ve bu çalışmalar sırasında ne tür sorunlarla karşılaştınız? Askere gittiğim dönemde, usta birliğimde (İstanbul) foto-film kısmında göreve başladım. Sanırım ilk defa fotoğrafla bu denli baş başa
kalabilmiştim. Üstelik tek olarak. Sık sık deneme çekimleri yapmalarım, makinelerin özelliklerini karıştırmalarım ve bir şeyleri fark edişlerim beni iyice ilerletti bu konuda. Ayrıca belgeseldeki hocalarımın anlatımları, öğrettikleri kulağımda idi. Hoş bir şans oldu bu fotoğraf makineleri içerisinde sık kalışım. İlk ciddi, kurgusal çalışmalarıma askerde başladım. Ardından Ankara’ya dönmem ile anında ilk dijital, profesyonel fotoğraf makinemi aldım ve içimdeki o fotoğraf çekme hevesimi sürdürmeye devam ettim. Derken işler ilerledi ve çok ciddi belgesel fotoğrafçılığına dönüşmeye başladı… Unutmadan
48
49
fotoğrafla ilgilenen dostlarıma, arkadaşlarıma hep şunu yapmalarını tavsiye ederim. Çektiğiniz fotoğraf sıradan bir fotoğraf karesi veya çekilen kim olursa olsun bu fotoğraflar ileride yayınlanacak ise portfoliolarında, kesinlikle ve kesinlikle karşılıklı bir protokol imzalamalarını üstüne basa basa öneririm. Hayat bu, ne göstereceği belli olmaz.
Peki, hep fotoğraf diyoruz ama, fotoğraf sizin için ne tür bir anlam ifade ediyor? Bu konuyla ilgili özel bir gösterimiz var. Sevgili Halil hocamın yönetmenliğinde gerçekleşen bu yeni yapmış olduğumuz belgesel gösterimizde yirmiye yakın fotoğraf sanatçısı ustamıza Halil bey bu soruyu soruyor. Bu yirmi konuğa sorduğumuz sorular teker teker cevaplanıyor sanki şuan karşımda. Bu konuda çok heyecanlıyım, daha çok yoldan geçmem gerekiyor, belki birçok şeyi yaratıyorumdur ya da belki de bana öyle geliyor ama eğer ben fotoğrafa bir anlam verecek olursam şöyle derim: Fotoğraf, aslında hayatımızda var olan, ama biraz da hayal gücümüzün bir ürünü. Çünkü ben; hayal ettikle-
rimi dondurmaktayım. Hayal ettiğim kadını, hayal ettiğim mekanı, hayal ettiğim ışığı ve hayatın içerisindeki var oluşları ya da neden var olamayacaklarını fotoğraf ile aktarmaktayım.
Daha çok fashion olarak bilinen, moda tarzı çalışmalarınızla dikkat çekiyorsunuz. Ticari amaçlı çalışmalar olduğu için mi bu tarza yoğunlaştınız, yoksa başka konseptte çekimler de gerçekleştiriyor musunuz? Modayı seviyorum. Modada öyle ayrıntılar var ki. İnsanın isteyip de gü-
50
51
nümüz şartlarında giyip-takıp dışarı çıkamayacağı, tüm gözlerin ve belki de kötü bakışların onda olacağı bir yaratım gibi geliyor. Modadaki renkler, ışık, komposizyonlar vb. birçok yaratımı seviyorum. Aslında çok fazla moda değil belki de çekimlerim. Ne bileyim, kurgusal çalışmaları biraz belgesel çalışmalara dönüştürmüş olabilirim. Bu arada kesinlikle bilmenizi isterim ki fotoğraf benim için bir tutku, bunu çok ama çok az zamanlarda ticarete döktüm. Şu aralar sadece arşivleme ve portfolio çalışmalarındayım. Türkiye’de eskidenmiş o aman aman fotoğrafın ticaretliği. Ben daha ilerde bir sergi
ya da bir kitap vb. yerlerde paylaşmayı daha çok isterim çalışmalarımı. Unutmadan geçmeyeyim, öyle bir fotoğraf birikimim var ki arşivlerimde, bunun içinde doğa da, mekan da, konser de, ürün çekimlerim de mevcut. Fotoğraf da elbet bir tarz. Bir çalışma alanınız vardır ama fotoğrafı hayatınıza aldığınız her an bir de bakmışsınız ki “Ben ne çekiyorum?” diyebileceğiniz yerler de olabilir. Diyeceğim o ki; kimse kendini sadece tek bir alanda kısıtlamamalı.
Yaptığınız iş gördüğümüz kadarıyla ciddi bir ekip işi. Bir ekibiniz var mı? Varsa kaç kişilik bir ekiple çalışıyorsunuz?
52
Hocalarım bu yazıyı okuduklarında yahu dünkü Coşkun ne olmuş diyip gülecekler kesinlikle. Nasıl sorular bunlar? Ben hiç hazırlanmadan üstelik?…”gülüşmeler.” Efendim, ilk başlarda yalnız idim. Zamanla bu işin aslında (belgesel fotoğrafçılığının ya da sizin tanımınız ile moda fotoğrafçılığının) bir ekip işi olduğunu fark ettim. O anda, çok sevgili biricik asistanım ki her zaman ekibin demir başıdır kendisi, Tufan’ı yanıma aldım. Makyajcı dedik, makyöz arkadaşlar edindik. Bu defa ulaşım sıkıntı oldu ve ulaşım için de birilerini bulduk. Derken modele asistan
olacak başka bir arkadaşımız... Belki inanmazsınız, ama bu sayı her geçen gün iyice artmakta. Bugün dönüp baktığımda ardımda güzel bir ekip var ve hepsi güzel dostlar, arkadaşlar. Herkese buradan bir kez daha teşekkürlerimi sunarım.
Çekimlerinizde farklı kompozisyonlar kullanıyorsunuz. Bu kompozisyonları belirleme aşaması nasıl gerçekleşiyor? Örneğin, karlı bir havada yapacağınız bir çekim için, onun karlı havada olması noktasını nasıl belirliyorsunuz? Hayal ettiklerimi aktarıyorum de-
53
miştim ya az önce, işte buradan yola çıkıyorum. Her an, her dakika, aklıma yeni bir fikir, yeni bir oluşum geliyor ve bu düşüncelerimi çevremde bana modellik yapabileceğine inandığım kişiler ile paylaşıyorum. Modelin nasıl duracağına, nasıl bir çalışma seyrimiz olacağına, model ile yüz yüze karar vererek çekimleri planlıyor, günleri konuşuyor ve ekip arkadaşlarımın da uygun zamanlarında çekimleri gerçekleştiriyoruz.
Kendinizi diğer meslektaşlarınızdan farklı kıldığını düşündüğünüz bir özelliğiniz var mı? Kesinlikle var. Beni tanıyanlar bilirler esas işimin aslında görüntü ve kurgu yönetmenliği olduğunu. 1999’dan bu yana bir çok belgesel, klip ve reklam filminde kendi alanımda imzalarımı koydum ortaya. Bu sebepten dolayı fotoğraf çekimlerim esnasında her zaman yanımızda bir de kamera oluyor. Ben fotoğraf çekimlerini yaparken kamera bizleri, ekibimizi “backstage” kayıtlar ile takip ediyor ve bu çekilen görüntüleri bilgisayar ortamına aktardıktan sonra bu defa da İstanbul’dan ekibimizin en ufak kişisi sevgili Esra devreye giriyor. Bu gö-
rüntüleri şu şekilde kurgulayacağım, bana bu türde bir müzik hazırla ve gönder diyorum. Onun güzel parçaları eşliğinde fotoğraf çekimlerimizin her birine bir de film katıyoruz. Bugün “Bir Fotoğraf Hikayesi” adını verdiğim bu seri halindeki filmlerimin sekizincisini yakında yayına vereceğim. Bu çalışmalarımı merak eden arkadaşlar, facebook üzerinden ya da www.coskunpinarbasi.com web sitesinden izleyebilirler tüm seriyi. Ben de kendimi meslektaşlarımdan
54
bu seri çekimler ile ayrı tutmaktayım.
İşinizi yaparken en çok önem verdiğiniz şey… Ciddi bir ekip ruhu, modelin çok iyi motivasyonu ve ekip uyuşması. Aksi takdirde güzel bir iş çıkması zor olur sanırım. Bugüne kadar bu türde bir olumsuzluk yaşanmadı ve umarım yaşanmaz da.
Fotoğraf çekmeyi en çok arzu ettiğiniz konu, şehir, kişi? Konu değil de konular diyeyim. Aslında kafamda o kadar çok konu var ki. Ya zaman uymuyor, ya da imkanlar; ama en büyük problem herkes bir disko topunun üzerinde oturarak, yanında durarak ya da elinde tutarak fotoğraflar çektiriyor. Ben bir
ilk olacağını düşündüğüm, biraz da manipülasyon destekli bir planımı aktarayım sizlere. Genelde anlatmam ama. Bir çifti sanki bu disko topunun içinde çekmeyi planlıyorum, bu disko topu da şehrin merkezinden geçiyor, araçları eziyor, binaları yıkıyormuş gibi olacak. Zor ve itinalı, aylar sürecek bir çalışma bu sanırım. Çok da terbiyesizce. Diğer sorunuza geçeyim, şehirlerden ziyade bir kaç ülke var şu anda kafamda. Bakalım, kısmet ise tabi. Bunlar da Venedik, Japonya, Hindistan. Seviyorum bu ülkeleri, çok renkli geliyor bana. Kişilerde ise en fazla takıntılı olduğum kişi Yasemin MORİ. Çok sempatik geliyor bana..
55
Türkiye’de bir fotoğrafçının başarılı ve bir anlamda meşhur olabilmesi için hangi faktörler önemlidir: Göz, kadraj, ışık bilgisi, teknik, Photoshop, dijital maharetler... Nedir?
kısa sürelidir bu meşhurluk derim ve sadece iyi işler yapmak yetmeli bence. Yıllar sonra aynı kareye bakıldığında bile bu fotoğraf çok başarılı dedirtebilmeli.
Her şeyden önce kadrajı ve ışık kullanımını bilmeli sanırım. Halil hocam ilk zamanlarımda kafama hep fotoğrafta altı noktanın çok önemli olduğunu ve bu noktalar üzerinde öncelikle çalışılması gerektiğini soktu. Derken bu defa da ışıklarıma takıldı ve sayesinde bugün biraz daha gözüne girebildim sanırım. Arkadaşlar bu dediklerimi dikkate alsınlar bence. Meşhur olabilmek konusunda ise;
Kaliteli bir fotoğraf sanatçısı olmak eğitimle mi mümkün olur, yoksa temelden gelen bir yeteneği ilerilere taşıyarak mı? Yani hiç bilmeyen biri sadece eğitimini almış olsa, sizce başarılı olabilir mi? Fotoğrafta illa ki öncelikle temel eğitim ve bol bol geliştirme olmalı. Ben biraz şanslıyım sanırım bu konuda. Hem kamera kullanımından dolayı, hem babadan gelmiş olması, hem de en önemli özellik sanırım yukarıda bahsettiğim fotoğraf belgeseli.
56
57
Yeni başlayan bir fotoğraf sanatçısını ele alırsak, nelere dikkat etmeli ilk olarak? Yukarıda bahsetmiştim. Kadraj, ışık ve esas fotoğrafa bakıldığında görülebilecek ilk anın ne olacağına, ne anlatmak istediğine dikkat etmeli. Bir konu olmalı. Konusuz olmamalı.
Fotoğraf ile sanatı hangi durumlarda bağdaştırabiliriz sizce? Yani fotoğraf sanatçılığı ne zaman ve hangi durumlarda ortaya çıkar? Anlamlı her fotoğraf bir sanattır bence.
Türkiye`nin fotoğraf sanatına yaklaşamını bir fotoğrafçı olarak nasıl bulunuyorsunuz? Güzel işler ve güzel paylaşımlar var. Her gün daha da iyiye gidiyoruz. Kişiler fotoğrafı biraz ticaretten
koparmalı. Yeni arkadaşlar, özellikle parasal kısmı ile değil de anlamlı işler yaratma peşinde olmalılar.
Ülkemizdeki fotoğraf sanatçılığında çok sık yoğunlaşılan bazı kareler var: Börtü böcek, çiçek, güneşin doğuşu / batışı, deniz, tarihi figürler… Sürekli bu kareleri yakalayanları nasıl değerlendirmek lazım? Ustalarımın bir çoğu, benim zor bir iş yaptığımı ve bu işimi beğendiklerini söylerler. Çünkü bir modelle çalışmak inanılmaz zor ve kaprisli bir alan. Ben sanırım zor şeyleri seviyorum ve bu yüzden bu dalı tercih ettim. Diğer alanlarda ise çok fazla ustam var kitaplar yazan, dergilerde sık sık takip ettiklerim vb. Çok imreniyorum. Hatta bazen kıskandığım bile oluyor ama fotoğrafın her dalı keyfli bir paylaşım. Bu şekilde bakılmalı.
58
59
Günümüz teknolojilerini kullanarak fotoğrafa inanılmaz boyutlarda müdahale edilebildiği bir gerçek. Sanatçılar bu müdahalelerle gençleşiyor, güzelleşiyor, koyu bir manzara basit Photoshop müdahalesi ile daha cazip bir görünüme ulaşıyor. Bu durumu nasıl değerlendiriyorsunuz? Dediğiniz gibi “günümüz teknolojileri”. Bunu takip etmemiz gerekiyor. Her gün yeni bir makine, yeni bir kolaylık çıkıyor. Sadece çok iyi değerlendirmeyi bilmek ve takip etmek gerekiyor. Ben elimden geldiğince bu durumu takip edenlerdenim.
Üzerinde çalıştığınız projeleriniz veya ilerideki hedefleriniz neler şu anda? Hedef kitlemizin modacıların, tasarımcıların, saç uzmanlarının ve
makyajcıların çoğunlukta olacağı bir projem var. Detayları ilerleyen zamanlarda duyurmak isterim. Keyifli bir iş olacak ama yine zor olanlardan tabiî ki.
Sanalkurs.net’in fotoğraf tutkunlarına söylemek istedikleriniz... Artık klasikleşen bir lafımdır ama her zaman söylemekten de ayrı bir keyif almışımdır: Eğer ilerlemekten haz duyuyorsanız unutmayın kimse sizi bu yoldan alı koyamaz.
Bu güzel söyleşi için teşekkürler... Ben teşekkür ederim...
60
61
AHMET APAYDIN
62
MEHMET AKÇA
3D STUDIO MAX
V-Ray ile Buzlu Cam Yapmak
Bu dersimizde V-Ray programında buzlu cam nasıl oluşturuluyor, hep birlikte öğreneceğiz. Bu makalenin ardından, çok basit olduğunu görmüş olacaksınız.
B
aşlangıç olarak boş sahne açıyoruz. Ardından yanda görüldüğü gibi kare şeklinde basit bir cisim oluşturuyoruz. Daha sonra material editörümüzü açıyoruz, buradan “diffuse” bölümünü siyah yapın, ardından “reflect “ kısmını da beyaz yapın. Buradan “fresnel reflections” kısmını aktif etmeniz gerekiyor. Ardından aşağıda bulunan options bölümünde “reflect back on side” komutunu aktif ediyoruz.
63
Yukarıdaki şekilde görülen “refraction” kısmında bulunan “refract” kısmını beyaz yaparak hemen altında bulunan “glossiness” değerini ise 0.75 giriyoruz. Bu işlemin hemen ardından buzlu camımızı oluşturmuş oluyoruz. Render alarak çalışmayı görebiliriz. Burada bir şey belirtmek istiyorum eğer “glossiness” değerini düşürürseniz buzlanma çoğalır, tam tersi bir işlem yaptığınız taktirde buzlanma azalır. Kolay gelsin.
64
65
TURHAN ALGAN
66
İLKNUR AKPINAR
PROGRAMLAMA
C++ DİLİNE GİRİŞ (2) Bu yazımızda yine C++ dili için temel teşkil eden bazı başlıklara değinecek, bu programlama dilinde ilerlemek için bilinmesi mutlaka gerekli bazı bilgilere yer vermeyi sürdürüyoruz. Tam Sayı Tipleri
C
++ üç değişik tam sayı tipine sahiptir: short, int ve long. Her tam sayı tipinin (önceden belli olan) boyutu, ikilik düzende belli bir basamak sayısı sınırı oluşturur. Tam sayı tiplerinin bu üst ve alt sınırları, kullandığımız bilgisayarın işlemcisi, işletim sistemi, derleyici gibi birçok kritere bağlıdır.
Shrt_max 32767 Shrt_min -32768
Ushrt_max 655535 İnt_ max 32767 İnt _min -32768 Uint_max 65535 LONG_MAX 2147483647 LONG_MİN -2147483648 ULONG_MAX 4294967295 Bu değerler her tip için en büyük ve en küçük değerleri göstermektedir. Bir tam sayının başına UNSİGNED(işaretsiz) sözcüğünü koyarak kullanarak olursak, negatif de-
67
ğerler almayacağınız belirtmiş olduğumuz yeni bir tip elde etmiş oluruz. Eğer tamsayıların ikilik düzendeki tutuluşlarına doğrudan erişmek ve bunu kendiniz yorumlamak zorunda kalırsanız, derleyicinizin el kitaplarına bakmanız önerilir. Görüldüğü gibi tamsayı tiplerinin uzunlukları, yani basamak sayıları, sınırlaı ile ilgili önemli bir bilgi vermektedir. Bu boyutları sizeof sizeof tıpkı + - gibi bir işlemi simgelemektedir ve Sizeof (<vei tipi>) biçiminde kullanılmaktadır.
Karakter Tipleri C++ ekrana ya da bir kaynağa yazı yazarken kullanabileceğimiz üç çeşit karakter tipi sunmaktadır: schar, char ve wchar. Bu tiplerin unsigned olanları da vardır. Ancak genel amaçlı olarak sadece char tipini kullanıyoruz. Ascıı tablosundaki 255 karakter dışındaki karakterleri (örneğin Japonca karakterler) kullanmak için ise wchar kullanılır.
Gerçek Sayı Tipleri Gerçek sayı tipleri float double, long double’dır. Standart gerçek sayı tipi olarak double kulla-
nılır. Bu tip genellikle ıeee64 bit standardına uygun olarak düzenlenir. Yani 64 basamakta saklanır. Long double tipi sadece yüksek kesinlik isteyen bilimsel ve mühendislik uygulamalarında kullanılır. Bu tiplerin boyutlarını öğrenmek için de sizeof işlemini kullanabilirsiniz. Belli bir tipten bir değişken, beklenen bir yerde tip bilgisi olmayan bir sabit olduğu zaman, bu sabit o tipte yorumlanmaya çalışılır buna kendiliğinden tip dönüşümü adı verilir. Bir veri kaybı söz konusu olabilir.Ancak programcı bu dönüşümü açıkça belirtecek olursa,yani belirtilmiş tip dönüşümü yaparsa;
İnt i =(int ) d; Bu, satır artık sadece bir uyarı verecektir, belirtilmiş tip dönüşümleri dikkatli yapılması gereken şeylerdir.
İşaretçi Tipleri İşaretçiler,özellikle C’nin en önemli ve aynı zamanda en kolay hata yapılabilen kısmıdır. C++ ile birlikte, işaretçilere alternatif yollar da eklenmiştir. Bu işaretçi aşağıdaki gibi tanımlanır;
<Veri tipi * <işaretçi adı>;
68
Tamsayı i = 3; gibi ifadeler kullanılabilecek-
Referans Tipleri C++ işaretçileri alternatif olarak getirdiği diğer yol referans tipleridir.Tanım aşağıdaki gibidir:
<Tip Adı> & < Referans Adı> = < Değişken Adı>; Sözcükleri Tarif Et C ve C++’da birçok dilde olan sözcük (string) tipi doğrudan sağlanmamıştır. “Merhaba” bir sözcük sabiti olarak karşımıza çıkmaktadır. Bunu çeşitli biçimlerde kullanabiliriz;
Char *p=”merhaba”; Cout <<*p; Satırlarının çıktısı; Merhaba’dır. Bir sözcüğe karakter işaretçisi ile erişebilmekteyiz. Ancak C ve C++’ın ayrım gösterdiği bir nokta bulunmaktadır. C’de yukarıdaki tanıma göre p işaretçisini kullanarak sözcüğü değiştirebilmekteyiz. C++’da ise bu bir sabit olarak karşımıza çıkmaktadır.
Typedef Typdef int tamsayı; Satırdan sonra
tir. Typedef sözcüğünü içeren satır int ile aynı özelliklere sahip tamsayı adında yeni bir tipin oluşturulduğunu belirtmektedir. Yazım biçimi typedef < tip ya
da yapı tanımı> < yeni tip adı>; olarak belirtilmektedir. Çoklukla karakterler 1 byte yer kaplarlar. O halde; typedef, unsigned, char, byte; satırı ile byte tipine sahip olmuş olduk. Ancak bunu yeni bir tip olmadığını, üzerindeki bütün işlemlerin unsigned char ile olduğunu belirtmek gerekir.
Sıralama Tipleri Birçok uygulamada da belli bir sistemin durumu önceden belirlenmiş sınırlı sayıda değerden biri olmak zorunda olabilir.Böyle bir sistemin rahat anlaşılması ve kolaylıkla genişletilebilmesi için,sistem durum değişkeninin sadece önceden belirlenmiş değerlerden birisi olmasının garantiye alınması gerekir. C ve C++’da bunu sağlamak için sıralama tipleri tanımlıyoruz.Bu sıralama tipleri;
69
Enum<tip başlığı> {sabit listesi} <değişken listesi> biçiminde tanımlanır. Örneğin;
Enum Gunler [Pazartesi, Salı, Çarşamba, Perşembe, Cuma, Cumartesi, Pazar] bugün; Burada günler sıralama tipinden herhangi bir değişken tanımladığımız zaman bu değişkenin değeri Pazartesi - Pazar aralığında olacaktır.Tanım içinde bugün adında bir değişken tanımladık bile. Ancak derleyici aslında tanımlanmış olan bu sabitlere birer tam sayı da değeri vererek, sıralama tipinden değişkenleri birer int olarak yorumlayacaktır. Örneğin;
Enum Gunler [Pazartesi=1, Sali, Carsamba, Persembe, Cuma, Cumartesi, Pazar= cumartesi] bugün; Burada pazartesi 1, Salı 2 şeklinde giderken, Cumartesi ve Pazar 6 değerine sahip olacaktır. Yani Cumartesi ve Pazar tatil günleri anımsanmayacaktır. Eğer biz değer vermezsek sabitlerin tamsayı karşılıkları 0’dan başlar ve soldan sağa 1’er artar. Bu sistem C ve C++ arasında bir ayrımı da beraberinde getirir.
C’de sıralama tipi değişkenleri herhangi bir tamsayıya eşitlenebilir. Örneğin;
Bugun=8; Bu örnek C’de geçeli olacaktır ancak C++’da bu satır hatalı olarak yorumlanacaktır. C++ sıralama tipi değişkenlerin ancak tip tanımında belirtilen sabitlere eşitlenmesine izin vermektedir.
Bugun = Pazartesi; gibi. Bu değişiklik sıralama tiplerinde en çok karşılaşılan bir hatanın kesinlikle saptanabilmesine olanak sağlar.
Yapılar C’de temel veri tiplerinden birkaç değişken içeren bileşke yapılar oluşturmak mümkündür. C++ bunu birkaç ufak kural değişikliği ile desteklemek ile birlikte aynı amaç için nesne tabanlı paradigma çerçevesinde çok daha gelişkin araçlar sunmaktadır.
Struct{ İnt yas; Char * isim; }bora; Bora.yas=21; Bora.isim=”bora” Bunlar ile bora adında bir yapı (struct) değişkeni oluşturduk. Bu
70
değişkenin yaş ve isim adında iki verisi var ve bu veriler birbirinden bağımsız biçimde değiştirilebiliyor. C++’da ise yapılar birer sınıf (class) olarak varsayılır ve değişkenler dışarıdan erişime açık olmaz (veri saklama)
Bora.yas=99; //artık bir hata Bunu engellemenin bir yolu C++ derleyicisine yapılan C’de olduğu gibi yorumlamasını gerektiğini belirtmektedir.
Extern “C” { Struct Ogrenci{ İnt yas; Char * isim; }; } Ogrenci bora; // C++’da struct sözcüğüne gerek yok. Bora.yas=21; Bora.isim=”Bora”; Burada Extern sözcüğü ile derleyici dışındaki bir kaynağın kullanılacağı ya da standart kuralların geçerli olmayacağı bir derleme gerektiği anlatılmaktadır. “C parametresi ise sadece takip eden ifadesini ya da küme parantezi ile belirlenmiş bloğun C kodu ile anlaşılması gerektiğini açıklamaktadır. Bir diğer yaklaşım ise kodun C++ derleyici tarafından derlenip derlenmediğini sınayıp ona
göre davranmaktadır.
Struct ogrenci { #ifdef_cplusplus Public: #endif İnt yas; Char * isim; }; Burada _cplusplus derleyicinin C++ derleyici gibi çalışıp çalışmadığını belirleyen özel bir sabittir. Eğer C derleyici olara çalışmakta ise bu sabit tanımlanmamış olacaktır. Bu tür sabitlere belirleyici sabit adı verilir. Derleyicinin derleme anındaki ayarlarına göre değişik kodlar derleme olanağı sağlar. Her derleyicide önceden tanımlanmış bu tür sabit ve makro bulunmaktadır.
Bileşkeler Bileşkeler yapılar ile oldukça yakın ilişkili olan konulardır. Bir bileşke temel olarak bir yapıdır,ancak yapıya ait verilerden aynı anda sadece birini kullanabiliriz. Nesne tabanlı bir kod yazan bir C++ programcısının C yapıları ve bileşkeleri kullanmasına gerek yoktur. Tüm arkadaşlara başarılar diliyorum. Bir sonraki yazı serisinde buluşmak ümidiyle…
71
BEYHAN BAYHAN
72
ÜRFET DEMİRTAŞ
C# ile Matematiksel İşlemler Bu dersimizde Asp.net’te önemli bir konuyu ele alalım ve C# ile matematiksel işlemleri görelim.
N
edir bu matematiksel işlemler diyecek olursak: Küsüratlı sayıları kısaltmak yada çoğalmak için kullanırız. Örneğin: 1,5889 sayısını 1,5889 değil de, 1,58 şeklinde göstermek istediğimizde Ya da, 45,8 sayısını = 46 şeklinde (sayıyı büyülterek yuvarlama işlemi) 45,8 sayısını = 45 şeklinde ( sayıyı
azaltarak yuvarlama işlemi ) göstermek istedimizde, matematiksel işlemler yapacağız. Şimdi dilerseniz bu verdiğim örnekleri koda dökelim. Çalışmamıza başlamak için yeni bir web projesi açalım. Projemizi Oluşturduktan sonra
73
Proje alanımıza bir tane Textbox bir tane Button ve bir tane de Label atalım.
“Tamam“ butonumuza çift tıklayarak kod tarafına geçelim.
Textbox’ımıza girdiğimiz değeri Label’de göstereceğiz.
Button1 Click’imizin içine gerekli kodları yazalım.
74
Ve örnek uygulamamızı çalıştırıp (F5 tuşu ile) sonucu görelim. Ben bu projemde sadece 1. örneği kullandım, sizler istediğiniz örneği deneyebilirsiniz… Yararlı olması dileği ile…
75
KAYNAK KODLAR 1. Örnek double s1 = Convert. ToDouble(TextBox1.Text); // Texbox’ımızdan girilen değeri al. s1 değişkenine ata dedik. double sy = Math.Floor(s1); //Math.Floor s1 değişkenindeki veriyi azaltarak en yakın değere yuvarlar. LblSonuc.Text = sy.ToString(); // ve sonucu Label göster dedik.
2. Örnek double s1 = Convert. ToDouble(TextBox1.Text); // Texbox’ımızdan girilen değeri al. s1 değişkenine ata dedik. double sy = Math. Ceiling(s1); //Math.Ceiling s1 değişkenindeki değeri, büyülterek yuvarlar. LblSonuc.Text = sy.ToString();
3. Örnek double s1 = Convert. ToDouble(TextBox1.Text); // Texbox’ımızdan girilen değeri al. s1 değişkenine ata dedik. double sy = Math. Round(s1); //Math.Round s1 değişkenimiz deki sayıyı, büyültür küçülktür 5,2 = 5 & 5,6 = 6 gibi. LblSonuc.Text = sy.ToString();
4. Örnek double s1 = Convert. ToDouble(TextBox1.Text); // Texbox’ımızdan girilen değeri al. s1 değişkenine ata dedik. double sy = Math.Round(s1, 2 ); // sayıyı virgülden sonra iki basamak yuvarla, örnk= 5,5485= 5,55 gibi... LblSonuc.Text = sy.ToString();
76
77
ERSEN TEKÄ°N
78
OĞUZHAN ABALI
PROGRAMLAMA
ASP.net ile Web Sitesi Yapalım Bu makalemde Asp.Net ile bir web sitesi tasarlayacağız.
M
erhaba arkadaşlar ; Bir web sitesini yapmaya başlarken bildiğiniz gibi kodlama kısmından önce tasarım kısmı (grafik) gelir. Her ne kadar bir web programcısı için bu zor ve sıkıcı gelse de biz yavaştan yavaştan başlayalım :) (Elimiz mahkum...) Dediğimiz gibi öncelikle grafik tasarımımızı yapacağız.
Herkes grafik tasarımı için farklı bir editör kullanabilir: Kimi Fireworks, kimi Photoshop, bazı psikopatlar da Paint gibi çeşitli editörlerle grafik tasarımı kısmını halledebilir. Ben Photoshop’la basit bir web sitesi şablonu oluşturacağım. Evet, Photoshop’u açıyorum ve 800x600 boyutlarında bir sayfa oluşturuyorum.
79
Arka plan rengini beyaz olarak bırakıyorum. Kırmızı tonlarında bir tasarım olsun. Kırmızı beyazlı tonlarda bir şablon oluşturacağıma karar vererek ana iskelet kısımları (banner, içerik kısmı, footer kısmı) oluşturuyorum. Orta kısmı boş bırakacağım. Menüleri vb. gibi bölümleri daha sonra kod kısmından halledeceğiz.
Her ne kadar basit bir tasarım olsa da, gördüğünüz üzere banner kısmını ve footer (alt kısım) kısmını yaptık. Ortadaki beyaz bölüm ise bizim içerik kısmımız olacak. Resmimizi keser-
ken o bölümü ona göre keseceğiz ve HTML sayfamız Photoshop tarafından oluşturulduktan sonra o resmi silerek oraya içerik kısmımızı döşeyeceğiz. Şimdi oluşturduğumuz bu tasarımı parçalara bölerek Photoshop’un güzel bir özelliği ile web sayfasına dönüştürelim.
Az önce hazırladığımız çalışmayı Slice Tool ile parçalara böldükten sonra File menüsünden Save for Web & Devices seçeneğine tıklayarak oluşturduğumuz bu tasarımı HTML’e döküyoruz. Şimdi de oluşturulmuş HTML dosyamızın kodlarına bakalım.
80
Oluşturulmuş kodumuz yukarıdaki gibi arkadaşlar. Şimdi <center> tagıyla sayfamızı ortalayalım ve özlemle beklediğimiz Visual Studio ortamına geçerek bu tasarımımızı Master Page’e giydirelim. Bunu yapmadan önce, “Master Page de nedir?” diyenleriniz olabilir. Visual studionun getirdiği bize büyük kolaylık sağlayan bir nesnemiz MasterPage. Master Page sayesinde tasarımımızı bir kere masterpage dosyamızda göstererek sayfamızın tüm içeriklerinde kullanabiliyoruz. Düşünsenize, çok kompleks bir site yapıyorsunuz. 40 veya başka bir uzunlukta sayfa olacak. Her sayfa için aynı kodları kopyalayıp yapıştı-
racak mısınız? Veya hepsi ayrı ayrı mı olacak? Tuhaf olmaz mı? İşte Master Page tam burada devreye giriyor. Master Page sayesinde bir tasarım oluşturacağız. Ve içeriğimizin geleceği yere ContentPlaceHolder kodunu yapıştırarak tüm içeriklerimizi bir yerde döndürebileceğiz. Peki “ContentPlaceHolder nedir, ne diyor bu adam?” diyorsanız, birazdan bahsedeceğim, sabırlı olun. :) Şimdi arkadaşlar dananın kuyruğunun koptuğu ana geldik. Visual Studio’muzu açtık. Ve File menüsünde New => Project ‘e tıklayarak bir web application açacacağız. Büyük olasılıkla bu makaleyi okuyan arkadaşlarımızın çoğunun Asp.
81
net ile ilk kez bir tasarım yapacak olan arkadaşlar olacağını göz önüne alarak “Web Site”ye değil. Project’e tıkladım. Çok fazla detaya inmiyorum. Yoksa bu makale bitmez :) Takip ederseniz arasındaki farkları gelecek makalemde bulabilirsiniz.
Evet arkadaşlarım, şimdi yan tarafta bulunan Web sekmesine tıklayarak karşımıza gelen butonlardan ilki olan Asp.Net Web Application seçeneğine tıklıyoruz. Ve altta çıkan kısımlarda gerekli yerleri doldurarak Ok diyoruz (O kısımların açıklamasını resimde gösterdim).
Master Page’ e tıkladık ve ismini verdikten sonra (Ben AnaSablon. master vereceğim) Add diyerek Master Page’imizi projemize ekliyoruz.
Ekledik ve dosyamızın Source (kod) kısmına geldik. Şimdi yukarıda bahsettiğim ContentPlaceHolder’i kod kısmına baktığınızda gördünüz mü, bir bakın bakalım :)
<asp:ContentPlaceHolder ID=”ContentPlaceHolder1” runat=”server”> </asp:ContentPlaceHolder>
82
Bu kodumuzu yaptığımız tasarımın orta kısmına (içerik nerede dönecekse) koyacağız. İçeriğimizi bu iki satır kodun arasına yazacağız. Şimdi hani Photoshop’un oluşturduğu bir html dosyası vardı ya, o dosyayı not defteriyle açıp içerisindeki kodlara bakalım. Photoshop’la oluşturduğumuz sitemizin kodlarını kopyalayıp Visual Studio’daki AnaSablon.master dosyamızın içine kopyalayacağız. Sayfamızı kopyalarken <table> dan başlayıp </table> table tag’ının bitişine kadar seçip kopyalıyoruz ve anasablon.master dosyamıza yapıştırıken de <div> </div> arasına yapıştırıyoruz. ContentPlaceHolder diye bir kod var, onların arasında! O kodu kesin, birazdan yapıştıracagız onu bir yere :) Photoshop’la oluşturduğumuz tasarımdan sadece o divlerin arasındaki <table> başlayan kodu alıp kopyaladım. Çünkü Masterpage sayfamda <body> vb taglarım var. Bir de <center> taglarımızı alabiliriz veya elimizle yazabiliriz. <body> lerin üzerine.
Sayfamızı ortalayacaktık ya hani. Şimdi Photoshop’un oluşturduğu images klasörünü sürükleyip Visual Studio’da projemizin üzerine bırakıyoruz. (üstteki resim) Şimdi Solition Explorer bölümünde bulunan Default.aspx sayfamızı siliyoruz ve Master Page eklerken ki yaptığımız işlemi yaparak; Master Page’e giydirilmiş yeni bir Default. aspx dosyası oluşturuyoruz.
Master Page’i eklerken yaptığımız işlemi yaptık: Yani Proje’ye sağ tıkladık Add => New Item) Ve karşımıza gelen sayfada Web Content’e tıklayarak Add dedik. Add dedikten sonra karşımıza aşağıdaki gibi bir sayfa geldi. Bizim eklediğimiz Master Page sayfamızı gördü. Ona tıklayarak OK
83
diyoruz ve Default.aspx sayfamızı Master Page’e giydiriyoruz. Ve sayfamızı test etmek için F5 yaparak projemizi açıyoruz.
Gördüğünüz gibi ana hatlarıyla sayfamız karşımıza geldi. Şimdi arkadaşlarım, hani içerik için belirlediğimiz Photoshop’ta kestiğimiz ortadaki beyaz resim var ya, onu silip onun yerine kodumuzu yapıştırıyoruz. İçeriğimiz bu iki satır kod arasında dönecek arkadaşlar. Daha sonrasında ekleyeceğimiz tüm sayfaları (Örneğin, Hakkimda. aspx ) Master Page’e giydirip içeriğimizi bu iki satır kodumuzun arasına yazacağız. Olayımız bundan ibaret. Daha sonrasında tablolar oluşturup
menülerimizi yapacağız, CSS ayarlamalarını yapacağız ve süsleyeceğiz. Siz de takdir edersiniz orası benim alanım değil. CSS ile ben giydirip biraz şekil vererek tablo oluşturup menüleri ekleyerek sitenin son halini dosyalarıyla birlikte bloğumda paylaşacağım. Oradan indirip inceleyebilirsiniz. Sitemizin son görünümü:
En ufak ayrıntıyı dahi geçmeyerek anlatmaya çalıştım. Umarım birilerinin işine yarar. Hepinize iyi çalışmalar diliyorum.. Kaynak Dosyalar: http://www.sanalkurs.net/zip/aspnetilksite.rar E-Mail: oguzhanabali09@gmail.com Blog: www.oguzhanabali.com.tr
84
85
86
H. SEZER ULUDAĞ
PROGRAMLAMA
VB.net ile
Matematiksel Fonksiyonlar Bu derste Visual Basic.net’te önemli bir yer tutan ve bir çok projede sizlere çok faydalı olabilecek bir konuyu ele alalım.
Ö
ncelikle fonksiyondan bahsetmek istiyorum. Her hangi bir işlemde size yardımcı olmak amaçlı .Net platformunun içerisinde bulunan hazır fonksiyonlar vardır. Bunlar gerek matematiksel, gerekse metin veya tarih olsun, çok büyük kolaylıklar sağlar. Örneğin bugünün tarihi almak istiyorsanız, bunun için
çeşitli kodlar yazarsınız; bu kod fazlalıkları olmasın diye. .Net’te bunu sağlayacak tek kod parçacığı bulunmakta. Gelelim şimdi matematiksel fonksiyonlara. .Net uygulamalarında matematik fonksiyonlar “Math” sınıfı olarak tanımlanmıştır. Bu sınıfı kullanarak istediğiniz matematiksel fonksiyonu
87
çalıştırabilirsiniz. Anlatacaklarım en çok kullanılan fonksiyonlardır. Şimdi o fonksiyonları tanıyalım.
Abs : Bu fonksiyon sayesinde istediğiniz bir sayının pozitif değerini döndürebilirsiniz. Fonksiyonda dikkat edilecek olan husus pozitif sayılar için aynı değeri, negatif sayılar içinse sayıyı pozitife çevirerek döndürmesidir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, Abs As Integer Sayi = TextBox1.Text Abs = Math.Abs(Sayi) ‘Pozitif Değerini buldu. MessageBox.Show(Abs) End Sub Ceiling: Girilen değerin büyüğüne yuvarlatılarak geriye döndürmesini sağlar. Örneğin: “5.3” veya “5.9” olması önemli değildir, ikisini de “6” olarak yuvarlar.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, Ceiling As Double Sayi = TextBox1.Text
Ceiling = Math.Ceiling(Sayi) ‘Büyüğe yuvarlar. MessageBox.Show(Ceiling) End Sub Floor: “Ceiling” fonksiyonun tersi olarak da düşünülebilir. ”Floor” fonksiyonu da küçük tam sayıya yuvarlar. Örneğin, girilen değer “5.1” veya “5.8” olması önemli değil, geriye döndürülen değer “5” olacaktır. Negatif sayılarda da durum aynıdır. ”-5.1” yuvarlandığında “6” olacaktır.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, Floor As Double Sayi = TextBox1.Text Floor = Math.Floor(Sayi) ‘Küçüğe yuvarlar. MessageBox.Show(Floor) End Sub IEEERemainder: Parametre olarak girilen reel sayının ondalıklı kısmını veya tam sayı olabilmesi için gerekli olan ondalıklı sayıyı döndürür. Hangisini döndüreceği İkinci olarak belirtilen sayı ile belirlenir. Örneğin, ”3,22345” sayısının tam sayı olabilmesi için gerekli sayıyı bulur. Bu da “-0,77655” topla-
88
yınca “4” olacaktır.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, IEEERemainder As Double Sayi = TextBox1.Text IEEERemainder = Math. IEEERemainder(Sayi, 2) MessageBox. Show(IEEERemainder) End Sub Log: Girilen double türündeki değerin ikinci olarak verilen tabana göre logaritmasını alır.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, Log As Double Sayi = TextBox1.Text Log = Math.Log(Sayi, 10) MessageBox.Show(Log) End Sub Log10: Girilen değerin 10 tabanına göre logaritmasını alır. Bu fonksiyonda 10 tabanının dışında başka tabanlar kullanılamaz. Öyle durumlarda Log fonksiyonunu kullanmak gerekir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, Log10 As Double Sayi = TextBox1.Text Log10 = Math.Log10(Sayi) MessageBox.Show(Log10) End Sub Max: Girilen değerlerin büyük olanını verir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi1, Sayi2, Sonuc As Double Sayi1 = TextBox1.Text Sayi2 = textbox2.text Sonuc = Math.Max(Sayi1, Sayi2) MessageBox.Show(Sonuc) End Sub Min: Max fonksiyonunun tersidir; küçük olan sayıyı verir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi1, Sayi2, Sonuc As
89
Double Sayi1 = TextBox1.Text Sayi2 = textbox2.text Sonuc = Math.Min(Sayi1, Sayi2) MessageBox.Show(Sonuc) End Sub Pi: Matematikte kullandığımız pi sayısıdır. Bu diğer fonksiyonlardan değildir, parametresi yoktur. Değeri “3,14159265358979” yaklaşık olarak “22 / 7”dir. Aşağıdaki örnekte dairenin alanını hesapladım; istenirse pi sayısı tek başına da kullanılabilir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim DA, YarıC As Double YarıC = TextBox2.Text DA = Math.PI * YarıC * YarıC MessageBox.Show(DA) End Sub E: Matematikteki e sayısını ifade eder.Pi sayısı gibi parametresi yoktur değeri”2,711828182845905”dir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
90
System.EventArgs) Handles Button1. Click Dim Sonuc As Double Sonuc = 10 * Math.E MessageBox.Show(Sonuc) End Sub Pow: Üslü sayılar için kullanılan fonksiyondur. İki parametresi vardır: Birinci parametresi üssü alınacak sayı, ikinci parametresi ise kuvvetidir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim DA, YarıC As Double YarıC = TextBox2.Text DA = Math.PI * Math.
Pow(YarıC, 2) MessageBox.Show(DA) End Sub Round: Ondalık sayıların hassasiyetini ayarlayabileceğiniz bir fonkiyondur. ilk parametresi tam sayı kısmı ikinci parametresi ise ondalıklı kısmından gösterilecek rakam sayısıdır.ondalık kısmından kalan kısım yuvarlatılır.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, Sonuc As Double Sayi = TextBox1.Text ‘Ondalıklı sayı (3.4578) Sonuc = Math.Round(Sayi, 2) MessageBox.Show(Sonuc) ‘Görünecek sayı (3.46) End Sub Sing: Girilen sayının pozitif,negatif ve sıfır olup olmadığını belirleyen fonsiyondur. Pozitif ise (“1”), Negatif ise (“-1”) ve Sıfır ise (“0”) değerini verir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim Sayi, Sing As Double Sayi = TextBox1.Text ‘-6 ola-
91
rak girilirse Sing = Math.Sign(Sayi) MessageBox.Show(Sing) ‘-1 değerini verir End Sub Sqrt: Bu fonksiyon girilen sayının karekökünü döndürür.Girilen sayının reel veya tam sayı olması önemli değil.Bu fonksiyonu anlamanız için dik üçgenin hipotenüsünü bulalım.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1. Click Dim DK, H, Hipotenus As
Double DK = TextBox1.Text ‘Dik Kenar H = TextBox2.Text ‘Yükseklik Hipotenus = Math.Sqrt(Math. Pow(DK, 2) + Math.Pow(H, 2)) MessageBox.Show(Hipotenus) End Sub En çok kullanılan fonksiyonları sizlere yazmaya çalıştım. Okuduğunuzda “Bu fonksiyonlar işime yaramaz” diye düşünebilirsiniz ama profesyonel bir proje yaptığınızda çok lazım olacaktır. Bir başka derste görüşmek üzere... Umarım yararlı olmuştur.
92
93
GÖZDE ÇEP
94
BEYHAN BAYHAN
MICROSOFT WORD
Dokümanlarınıza “İçindekiler” Tablosu Uzun bir metin yazdıktan sonra ona içindekiler tablosu oluşturmaya çalışmışsınızdır; başlık + noktalar + sayfa numarası. Ancak her defasında sayfa numarası değiştirmek ya da her stil tanımlamasında noktaların şeklinin değiştiğini görüp tekrar yatayda ve dikeyde eşitlemeye uğraşmak zorunda kalmışsınızdır. Word programında otomatik içindekiler tablosu ekleyerek bu sorunları ortadan kaldırmaya ne dersiniz?
95
Ö
ncelikle bitmiş ya da bitmeye yakın bir çalışmamızı açıyoruz. Burada öncelikli olan İçindekiler tablosunu oluşturmak için stil tanımlamalarının olması lazım. Olması da yetmiyor, metin içeriğinin bu stil tablosundan seçilen stillere göre biçimlendirilmiş olması gerekiyor.
Stil tanımlamalarını mevcut stil tanımlamalarından kullanabileceğiniz gibi kendinizde yeni bir tanımlama yaparak kendinize ait stiller oluşturabilirsiniz; Başlıklar, Komutlar, Komut alt seçenekleri, Altseç2, Normal…. Bu stilleri oluşturduktan sonra metnimizi bu sitilleri uygulayarak yazalım. Ben daha rahat kontrol sağlamak adına İlk sayfayı boşalttım. Stillerim metinlerime uygulanmış durumda olduğunu unutmayalım.
Şimdi başvurular menüsüne tıklıyorum ve oradan içindekiler seçeneğine geliyorum. İmlecin boş sayfada olduğunu unutmayalım.
İçindekiler tablosunu ekle seçeneğini seçiyoruz.
96
değerlerini ekliyorum. Normal adlı stile herhangi bir rakam vermiyorum. Onu da numaralandırırsam normal stil ile yazdığım metinlerde tablonun içine yerleşecektir. Bu da zaten oluşturduğum dokümanın aynısı demektir. Tamam butonuyla işimi sonuçlandırıyorum.
Öncelikle yaptığımız stillerin kullanılmasını sağlamamız gerekiyor. Seçenekler butonun tıklıyorum. Standart olarak ayarlanmış olan rakamları siliyorum. Onun yerine kendi oluşturduğum stillere rakam
Tekrar İçindekiler Tablosu pencereme geri dönüyorum. Aşağıdaki resimde karşıma çıkan ayarlamaları gerçekleştiriyorum. Baskı önizleme: İçindekiler tab-
97
lomuzun görüntüsü Web önizleme: Yapılan işlem bilgisayarda kullanılacaksa bağlantı linkini gösteren önizleme.
Sayfa numaraları yerine köprüler kullan: Bu seçenek kaldırılırsa bağlantı iptal edilmiş olur. Sekme Öncüsü: Başlıklar ile Sayfa numarası arasına gelecek olan simgedir. Biçimler: İçindekiler tablosu için oluşturulmuş biçimler görülmektedir. Buradan seçim yapıp baskı önizlemeden takip edebilirsiniz. Tamam butonuna bastığınızda tablonuz oluşturulmuş olacaktır.
Sayfalarda değişiklik yapıldığında; yazmaya devam ediyor olabilirsiniz sayfaların yeri değişmiş olabilir. Bu gibi durumlarda yeniden tablo oluşturmak yerine Tabloyu güncelle butonuna tıklanır ve uygun seçenek işaretlenerek güncelleştirme yapılır.
Artık İçindekiler tablonuz hazır. Kolay gelsin.
98
99
ORÇUN ŞANLI
100
101
Gelecekte Bizi Nasıl Bir İnternet Bekliyor? G
ünümüzde İnternet’in henüz olgunlaşma dönemini yaşıyoruz. Geleceğinden bahsetmek için ise biraz geçmişini irdelemek gerekir. Bilindiği gibi internetin altyapısı Network’ tür. Küçük ev ve işyeri ağları nasıl ise internet de dünya için aynıdır diyebiliriz. Türkçe anlam itibarıyla “Uluslararası Ağ” olarak tanımlamak mümkündür. 1999 yılının sonlarına doğru tanıştığım İnternet o sıralar yararlı yönde kulllanılmaktan ve araştırmacılıktan çok, sohbet amaçlı kullanılan, meşhur IRC #zurna odasında sabahlayan, adeta “Sabahçı Kahveleri”nin sanal versiyonu olmuştu. İnsanlar gerçek hayat
ABDULLAH TEKİN
dışındaki bu sahte ortamda farklı kişilikler olmayı sevmişlerdi. Tabiri caizse tam anlamıyla bir bilgi çöplüğü ile karşı karşıyaydık. GOOGLE arama motoru 1998’ de kurulmuştu, ama yeteri kadar tanınmıyor olması bilinçli kullanıcılar için büyük bir kayıptı. Nihayetinde 2001-2002 yılından sonra GOOGLE bir devrim yaparak İnternet’ te arama motorları bazında tekel olmaya başladı. Bu bilgi çöplüğünde aradığımızı en hızlı şekilde bulabilmemiz için işe koyulmuşlar ve başarıya ulaşmışlardı. GOOGLE’ın bu atağından sonra daha kaliteli internet devri başladı. Örneğin web tasarım yapmak için gerekli kaynak siteleri bula-
102
bilmek oldukça kolay olmuştu. Artık İnternet, sohbet gibi lüzumsuz işlerden ziyade iyi yönde de kullanılmaya başlanmış, WEB başlı başına bir sektör olmuş, bu işin uzmanları para kazanır hale gelmişlerdi. WEB’te sadece site sahipleri ziyaretçilere içeriği sunabiliyorken yine sektörde ses getirecek olan WEB 2.0 tarzındaki siteler boy göstermeye başladı. Bu sayede artık siteye, site sahiplerinden çok ziyaretçiler hükmediyorlardı. WEB 2.0 sürecinde görselliğe de önem verildi. Enteresan web şablonları, ikonlar, clipartlar ve hatta profesyonel fotoğraf çekimleri online olarak satışa sunularak sanal mağa-
zalar oluşturuldu. Bütün bunların sonucunda Web Programlama, Web Tasarım ve günümüzde sadece CSS ile dahi uğraşan meslek dalları ortaya çıktı. Bu mesleklerden başka çok ilginç olan bir meslek dalı ortaya çıkmaya başlıyordu ki bunun adı da: “Postçuluk”tu. Evet, evet, yanlış duymadınız. Genelde öğrenci kesimi içine alan bu meslek ya da meslek olmaya yüz tutmuş meslekçik, web sitelerini özgün verilerle doldurmak isteyen kişi gruplarından oluşmaktaydı. PHP’ de “$_POST” şeklinde sürekli uğraştığım form değişkenlerinin farklı manada bir meslek olacağı aklımın ucundan değil, hücresinden bile geçmemişti doğrusu. Üzerinde çalışılsa çok iyi de espri malzemesi olabilecek bir daldı. İnternetin bu süreç zarfında gelişmesini tetikleyen bir faktör ise ADSL idi desek herhalde yanılmış olmayız. 2003 yılından sonra ismini çok sık duymaya başladığımız ADSL ile artık yüklü telefon faturalarından kurtuluyor ve aynı zamanda sınırsız internet keyfini yaşıyorduk. 56K ile kıyasladığımızda bizim için gerçekten de “JET
103
Hızında İnternet” idi. Hızlı internet dönemi başlayınca medya (ses, video) eğlence içerikli web siteler doğal olarak arttı. Burada ilk akla gelen Youtube’ u zikretmeden geçmek olmaz. İnsanlar artık evlerinde çektikleri ya da çok ilginç buldukları videoları internet ortamına yüklüyor, başkalarının izlemesini sağlayarak kendilerini farklı bir şekilde ifade edebiliyorlardı. Hatta bu şekilde kendini gösterip “En fazla ben tıklandım” deyip ünlü olanlara hepimiz şahit oluyorduk. Bunun yanı sıra bu tarz siteler sayesinde artık kaçır-
mış olduğumuz televizyon programlarını ya da dizilerini anında izleme fırsatını buluyorduk. Tabii yakında televizyon kanallarının eylem yapıp: “Reklamsız internetten izlemeye hayır!” demedikleri sürece… Günümüzde bunlara yeni bir çok unsurlar katılarak ilerlenirken cep telefonları, 3G gibi faktörler de internetin kullanım alanını bir hayli genişletmişti. Ancak sadece internet değil söz konusu olan, çünkü ona paralel olarak gelişen muazzam bir teknolojinin bizi beklediğinden eminim.
104
Gelecek de bir gün gelecek... Geleceğin internetinde en önemli gelişmenin cep telefonlarında olacağını tahmin ediyorum. Dikkat etmiş iseniz “Cep Bankacılığı”, “Cepten MSN” gibi tabirlere artık alıştık. Cep telefonunun tercih edilme sebeplerinden biri de sanırım bilgisayardan daha ucuz olması olacak. 2009 yılı sonundaki 3G gelişmesi cep telefonuna verilecek desteğin altyapısını oluşturmakta. Gelecekte örneğin bir dişçiye gidecek isek randevumuzu cep telefonundaki yazılım sayesinde alıp hem mobil teknolojinin keyfini sürüp hem de bir çok kolaylıktan faydalanacağız. Biraz daha ileri gidecek olursak; geleceğin evlerini akıllı evler oluşturacak. Bunlar günümüzde de
mevcut, ancak ölçüsü milyon dolarlar ile maalesef. Örneğin böyle bir sistemde işten eve gelmeden önce laptop’ımızdan internet aracılığıyla evimize bağlanıp, hangi odanın kaç derece sıcaklığı olmasını istediğimizi, hangi odanın ışığının açık olmaması gerektiği gibi şeyleri tek tıklama ile ayarlayabileceğiz. Sabah işe giderken (özellikle bayanlar) ayna karşısına geçip “Ne giysem acaba?” derdi son bulacak. Belki de boy aynanız size çeşitli modellemeler yaparak seçim yapmanıza yardımcı olacak. Berber ya da kuaförlerde “Nasıl bir model istersiniz efendim, şuradaki panele bakarak tercih edebilirsiniz?” sorusu sorulacak ve siz de muhtemelen kendinizin 3D modellemesini birebir ekranda görerek saç stillerine bakacaksınız ve sonuç olarak size hangisi yakışıyor ise onu seçip kendinizi kuaförünüzün maharetli ellerine bırakacaksınız. Va z g e ç e m e d i ğ i m i z futbol maçlarını belki telefonumuzdan, belki kol saatimizden, belki de gözlüğümüzden izleyebileceğiz. Garson yemek menüsünü getirdiğinde dokunmatik ekranda menüler
105
arası geçiş yapabilecek, istediğimiz yemeği tıklayıp sipariş verebileceğiz. Kimbilir, sesleri nasıl hoparlörden dinliyorsak, kokuyu da aktaran bir teknoloji ile bir yemek sitesinden lahmacunun kokusunu hissedebilecek, sepete atıp ödemesini yaparak en yakın lokantadan yemeğimizin gelmesini bekleyebileceğiz. İnternet ya da bluetooth yardımı ile arabamızı çağırabileceğiz, gidip benzinini almasını isteyeceğiz, sese duyarlı yapısı ile çalınması gibi olaylar da belki sona erecek. Hatta Matrix ve ardından Avatar gibi dev bütçeli filmlerde ele alınan başka dünyaya geçiş kavramları
mümkün olabilir. Belki insanlar Bruce Willis’in Suretler filmindeki gibi istediği sureti taşıyan bedeni yönetebilecektir. Şimdilik hayal gibi görünüyor, ancak günümüzdeki teknoloji de bizler için bir zaman hayaldi. Commodore 64 döneminden şu ana kadar baktığımda bu hayaller bize sadece 10-20 yıl kadar uzakta. Sonuç olarak teknoloji ve internet sektörü geliştikçe yeni mesleklerin ortaya çıkması kaçınılmaz. Hayatımız gittikçe kolaylaşacak, istediklerimizi daha hızlı ve kolay elde edebileceğiz, ancak bütün bunların da bir bedeli olacak mı, orası meçhul.
106
107
TURHAN ALGAN
108
KEMAL S. YILDIRIM
MOBİL PROGRAMLAMA
Windows Mobile 6.5 SDK Windows Mobil denildiğinde insanların aklına cep bilgisayarları geliyordur. Bu yazıda sizlere Windows Mobil 6.5 SDK ile ilgili bilgiler vermeye çalışacağım.
Y
eni yayımlanan Windows Mobile 6.5 SDK’da ilk dikkatimi çeken şey iki parça halinde olmasıydı. Geliştirmek istediğiniz programın kullanılacağı platforma (alete) göre ister Professional (örneğin dokunmatik ekran aletler için) isterseniz de Standart (örneğin dokunmatik ekran olmayan aletler için) SDK’yi indirip
kurabilirsiniz. Bu SDK’nın yayınlanmasıyla Visual Studio 2010’dan istenen Mobile desteği beklentileri suya düşürmüş gibi gözüküyor şimdilik. Visual Studio 2008 ile Mobile yazılım geliştirmeye devam… SDK’ları indirdikten sonra Professional versiyonun kurulumunu gerçekleştirdim. SDK’larla gelen herhangi
109
bir değişiklik olup olmadığını görmek için hemen Visual Studio 2008’i açtım. File>New Project seçtikten sonra karşıma gelen ilk ekranda değişiklikleri fark etmeye başladım ki, bu da New Project penceresinde bulunan “Widget for Windows Mobile” seçeneğiydi. Bu seçeneği gördükten sonra yazmayı düşündüğüm “Windows Mobile 6.5 ile Widget Geliştirmek” yazısı için oldukca heyecanlanmaya başladım diyebilirim.
Simple Widget seçeneğini seçtikten sonra aşağıdaki ekran görüntüsünde de gördünüz üzere, Css ve Script dosyalarını içeren alt klasörleriyle temel bir web sitesi düzeniyle karşılaştım. Resimler içinde ayrı bir atl klasör görmekte isterdim açıkcası. Güzel bir başlangıç yaptığımı düşünerek, oluşturduğum projeyi debug etmeye çalıştım. Projemiz Windows Mobile 6.5’de çalıştırılacağı için
Windows Mobile 6.5’e ait bir emülatör açmak üzere Tools>Device Emulator Manager’ı açtım fakat herhangi bir Windows Mobile 6.5 Professionalimajına rastlamadım ki, geçtiğimiz sene Windows Mobile 6.5 imajlarını yayımlandığında hepsini bilgisayarıma kurmuştum. Acaba bazı şeyleri yanlış mı yapıyorum demeye başladım ya da yanlış giden bir şey mi vardı? Bundan dolayı Windıws Mobile 6.5 Standart versiyonunu da kurdum. Bu olayları sanırım biraz daha
110
karıştırdı, çünkü artık ne Windows Mobile 6 ne de Windows Mobile 6.5 imajlarına sahiptim. Yanlış bir şey yaptığımı düşünürken, Windows Mobile 6.5’in her iki versiyonunuda kaldırarak bilgisayarımı yeniden başlattım. Windows Mobile 6.5 Professional SDK kurulumundan sonra Professional emülatör imajı tekrar gözüktü ve Simple Widget projeme geri döndüm. Birde şunun farkına vardım ki, Device Toolbar etkin değildi. Bu nedenle acaba Widget projesi emülatörden anlamıyor mu ya da acaba herşey bittikten sonra –debug dan sonra - mı bir cihaz veya emülatör mü isteyecekti ? Farklı bir debug deneyimi mi yaşıyacağım acaba diye düşünmeye başladım. F5’e basarak debug işlemini başlattım ve ne göreyim aşağıdaki görüntü gibi bir debug deneyimi yaşadım. ActiveX denetimini aktif ettikten sonra aşağıdaki görüntüyü elde ettim. Bir cihazdan ne bekliyorsam onu bana gibi verecek duruyordu. Maa-
lesef ki her seferinde ActiveX denetimini aktif etmek zorunda kalıyorsunuz. Emülatör üzerinde işlemlerinizi, değişikliklerinizi yaparken debug işleminizi durdurmanız gerekmiyor. Çünkü etkileşimli bir web tarayıcısı üzerinde çalışıldığı için, değişiklikleri uygulamak için tarayıcıyı refresh etmek yeterli oluyor.
111
VEJDİ SUBARİ
112
OKAN CERİT
WORDPRESS
Bazı Güzel Eklentiler Wordpress blog kullananlar için sitelerimize ayrı bir güzellik katan bir çok eklenti var. Gelin bu yazıda, sizler için seçtiğim bazı eklentilere birlikte göz atalım.
H
er ne kadar önemi kişilere göre farklılık gösterse de, yararlı olan ve çok kullanılan güzel eklentiler var. Bunların kimi sitenize eklediğiniz yazıların paylaşımını artırıken, kimi de arama motorlarıyla dost bir siteniz olmasına katkı sağlıyor. Bu eklentiler nelermiş, inceleyelim.
All in SEO Pack (SEO Paketi) SEO, “Search engine optimization” Türkçe anlamıyla da, “Arama motoru optimizasyonu” demektir. Bu eklenti web sitemizin başlığı, açıklaması ve anahtan kelimelerini girmemize yarayan kullanışlı ve çok tercih edilen bir eklentidir. Bu sayede siteniz daha hızlı indekslenir.
113
Google Sitemap XML Bu eklenti Google, Ask ve MSN’e sitemiz hakkında eklediğimiz konuları bildiren bir eklenti olup ve Sitemap. xml oluşturmaya yaramaktadır.
Sociable Eklentisi Bu eklenti diğer dizin siteleriyle (Twitter, Facebook, Google, Digg, FriendFeed vs.) yazdığınız konuyu paylaşmanızı sağlar.
Twitterbot Seo Otomatik Links Eklentisi Eklediğimiz konularda konu içerisinde otomatik olarak Tag linkleri oluşturan bir eklentidir. Yani belli başlı kelimelere link ekleyerek o linke tıklandığında sitede onunla alakalı yazıları ve başlıkları bulmanızı sağlar.
Aktif bir şekilde Twitter kullanıyorsanız bu eklenti tam size göre. Twitter’da girdiğiniz twit’leri sitenizde de bu eklenti yardımı ile yayınlayabilirsiniz. Girdiğiniz veriler, anında sitenizde de görünür. Daha birçok eklenti var. Ama ilk etapta bunları paylaşmak istedim.
114
115
ORÇUN ŞANLI