17 Şubat 2015 Salı

Biztalk ile Uygulama Geliştirme


Biztalk ile Dosya Dönüşümü 

Biztalk Server'ı, kurumsal şirketlerin teknik ekiplerinde çalışanlarımızın bir kısmının daha önceden duyduğunu düşünüyorum. Biztalk'ı genel olarak ifade etmek gerekirse bir firmada kullanılan yazılım sistemlerinin iletişimini sağlayan ve bu süreci otomatize etmeye yarayan bir Microsoft ürünüdür.
Bu yazımda, ürünü kullanmaya yeni başlayan meraklılar için ufak bir uygulama gerçekleştireceğiz. Uygulama genel anlamda bir sistem tarafından oluşturulduğunu düşündüğümüz xml formatındaki bir dosyayı bir folderdan otomatik olarak alıp,başka bir sistemin kullanacağı bir folder'a içeriği biraz manipule ederek txt formatında bırakacak. 

Visual Studio 2013 ile oluşturulan ilk Biztalk projesi ile,deployment için gerekli konfigurasyon ayarlarını yapıp, receive-send port nasıl oluşturulur ona bakacağız.
  • Lab örneğini gerçeklemek için öncelikle ekteki dökümanı indirip bulunması kolay bir foldera kopyalamanız gerekmektedir.(Siradan indirme seçip birkaç saniye bekleyip ekrandaki kodu girmeniz yeterli)
  • http://dfiles.eu/files/y9275ad78  
  • Bunun için labta kullanılacak dosyayı aşağıdaki foldera koydum.
  • C:\Users\Ozge\Desktop\Projelerim\BIZTALK\Biztalk_Eğitim\Hands-on-Labs\Lab 1\Start
1.Adım: Şema oluşturma
  •        Öncelikte BaşlatàTüm Programlar àVisual Studio 2013 açılır.
  •         File| New Project seçilerek yeni Biztalk projesinin adı ConsotoMessaging olarak  tanımlanır.
  •         CàUsersàPCAdiàVisual Studio2013 klasörünün içinde BiztalkProjects onun içinde de Lab1 isimli bir folder oluşturulur.
  •       Location bilgisi olarak bu dizin girilir.(C:\Users\PCAdi\Documents\Visual Studio 2013\Projects\BiztalkProjects\Lab 1 )İsim ve location tanımı bittikten sonra OK diyebiliriz.


  •       Projemizi oluşturduktan sonra Add|Existing Items diyerek ilk adımda indirdiğimiz C:\Users\Ozge\Documents\Visual Studio 2013\Projects\BiztalkProjects\Lab 1\Start\ContosoMessaging dizinindeki CustomerOrderFlatFile.xsd dosyasına çift tıklayarak xsd uzantılı hazır şema dosyasını projeye eklemiş oluruz.

  •     Solution explorrerda CustomerOrderFlatFile.xsd dosyasına çift tıkladığımızda yüklediğimiz şemanın içeriğini görüntüleyebiliriz ayrıca solda bulunan şema ağacına sağ klik Expand Schema Node diyerek şemayı oluşturan elemanları da görüntüleyebiliriz.



  •      Halihazırdaki şemayı ekledikten sonra bir de Add|New Item diyerek kendi boş şemamızı oluşturalım. Şemanın adı Order.xsd olsun.


  • Oluşturduğumuz şemanın içeriğinde herhangi bir eleman olmadığını görürüz.


  •  Root yazan alanı CustomerOrder şeklinde değiştirelim.
  • CustomerOrder’a sağ klik Insert Schema Node | Child Record  diyelim ve oluşturacağımız bu yeni kayda “CustomerInfo” adını verelim.
  • Oluşturduğumuz “Customer Info”ya sağ klik  Insert Schema Node | Child Field Element diyerek “First Name” adında yeni element ekleyelim. Aynı şekilde LastName,Phone elementlerinin de ekleyelim.
  • CustomerOrder’a sağ klik Insert Schema Node | Child Record  diyelim ve oluşturacağımız bu yeni düğüme “Order Details” adını verelim.
  •  Order.xsd’ye sağ klik yaparak Generate instance dersek oluşturduğumuz fieldları xml formatına getiririz.
  •   Output windowda çıkan linke Ctrl ile tıklarsak oluşan instance’ın xml formatındaki içeriğini görebiliriz.


2.Adım Map ve Pipeline oluşturma
  • Dışarıdan yüklediğimiz şema ile kendi oluşturduğumuz şemadaki alanları birbiriyle eşleştirme adımına artık geçebiliriz.
  •  Visual Studio Solution Explorer’dan ContosoMessaging projesine sağ tıklayıp Add | New Item diyelim.
  • Seçeneklerin içinden Map template’ini seçerek MapOrderToCustomer.btm ismini verelim.
  • Map açıldıktan sonra Open Source Schema linkine tıklayalım.
  • Açılan pencerede Schemas düğümünü genişletelim ve ContosoMessage.Order şemasını seçelim. Bizim oluşturduğumuz Order şemasını kaynak olarak tanımlamış oluruz.

  • Sonraki adımda da sağ tarafa tıklayarak Open Destination Schema diyip dışardan eklediğimiz ContosoMessaging.CustomerOrderFlatFile şemasını seçerek bu şemayı da hedef olarak tanımlamış oluruz.
  • Şemaları tanımladıktan sonra map işlemine geçebiliriz. Source(kaynak) şemanın CustomerInfo düğümü altındaki Phone elementine mause ile tıklayıp destination(hedef) şemanın ContactNo alanına çektikten sonra boşluğa tıklayarak bir bağlantı oluştururuz.


  •       Sonrasında Toolbox’ta String Functoid adımından String Concatenate’e tıklayıp map’e sürükleyelim. Şekildeki gibi First Name ve Last Name alanının herbirinden String Concatenate’e birer bağlantı çekelim. String Concatenate’den Fullname’e giden bir bağlantı daha çekelim, boşluğa tıklayalım.


  • String Concatenate’in üzerine tıklayalım açılan pencerede + butonuna tıklayalım. Burada First Name ve Last Name’i birleştirirken araya eklemek istemediğimiz bir karakterin ayarını yaparız. Boşluk karakteri olmasını istediğimizden sadece +’ya basıp Ok diyoruz.



·       Map ayarlarını tamamladıktan sonra send pipeline oluşturacağız.Solution Explorerdan ContosoMessaging projesine sağ tıklayıp  Add | New Item diyelim.
·       Send Pipeline template’ini seçip adını FlatFileSendPipeline.btp verelim.
·       Toolboxtan Flat file assembler  seçip pipeline designer sayfasındaki Assemble alanının altına sürükleyelim.Böylece send pipeline’a gidecek olan mesaj formatının Flat File (text) olacağını söylemiş oluruz.



3.Adım: Orchestration Oluşturma
  Map işleminde doyaların içindeki dataların ilişkilendirmesini tamamladık, Pipeline ile dosyalara format tanımladık şimdi sırada Orchestration ile dosyaları birer mesaj gibi tanımlayıp onlara input output özellikleri vereceğiz.
  •       ContosoMessaging  projesine sağ klik Add | New Item diyelim.
  •       BizTalk Orchestration ‘ı  seçip adına OrderProcessing.odx diyelim.
  •        Orchestration designer sayfası açıldıktan sonra  Orchestration View penceresinin açıldığından emin olalım. (Açık değilse View menüsündeki Other Windows’tan açalım)
  •        Orchestration View penceresinde Messages alanına sağ klik Properties window’u da açalım.
  •      Messages alanına yeniden sağ klik New Message diyelim.
  •           Message_1’e tıklayıp properties penceresindeki Identifier alanına “OrderMessage” yazalım.
  •      Message Type alanını da Schemas’dan ConsotoMessagging.Order olan bizim hazırladığımız şemayı seçelim. Böylece alınacak input dosyayı mesaj olarak tanımlayıp kendi hazırladığımız Order.xsd şeması ile ilişkilendirmiş olduk.


·       Aynı şekilde tekrardan Messages alanına yeniden sağ klik New Message diyelim. Message_1’e tıklayıp properties penceresindeki Identifier alanına “CustomerMessage” yazalım.
·         Message Type alanını da Schemas’dan ContosoMessaging.CustomerOrderFlatFile olan dışardan eklediğimiz şemayı seçelim. Böylece çıkacak output dosyayı mesaj olarak tanımlayıp dışardan eklediğimiz  CustomerOrderFlatFile.xsd şeması ile ilişkilendirmiş olduk.
·       Design alanına toolboxtan şekildeki gibi bir adet Receive shape,Transform shape,Send shape sürüklüyoruz.


·       Receive_1 shape’ini seçip activation propertisini True yapalım.
·       Message properties’ini OrderMessage (bizim tanımladığımız dosyanın referansını tutan mesaj) yapalım. (Böylece Biztalk’a bizim tanımladığımız order mesajını beklemesini ve mesaj geldiğinde yeni bir orchestiration instance’ı aktive etmesi yada başlatması gerektiğini söylemiş oluruz.)
·       Send_1 shape’in Message  properties’ini de  CustomerMessage yapalım.
·       Transform_1’i seçelim Map Name properties’ine tıklayalım.
·       Açılan Transform Configuration penceresinde Existing Map radio buttonuna tıklayalım.
·       Daha önce veri dönüşümlerini tanımlamak için oluşturduğumuz ContosoMessaging.MapOrderToCustomer mapini dropdowndan seçelim.
·       Source’a tıklayalım Variable Name kolonundan OrderMessage’yi seçelim.
·       Destination’a tıklayalım Variable Name kolonundan CustomerName’i seçelim.
·       OK diyelim ve transform configuration penceresini kapayalım.
·       Orchestiraction adımında şuana kadar gelen giden mesajları oluşturup onları şemalarla ilişkilendirdik ve bir map haritası üzerinden hangi mesajının receive hangisinin send edileceğinin tanımını gerçekleştirdik.
·       Şimdi sıra bu mesajları send ve receive edecek logical port tanımlarını orchestiration üzerinde tanımlamaya geldi.
·       Toolboxtan bir port alıp map ekranının solundaki Port Surface alanına sürükleyip bırakalım.
·       İlk açılan Port Configuration Wizard penceresine next diyelim.
·       Port adına OrderPort diyerek,next diyelim.
·       Sonraki adımda Port Type Name’e OrderPortType ismini verelim.Diğer tüm ayarları default değerlerinde bırakıp sonraki adıma geçelim.

·       Port Binding sayfasında OrderPort’u receive port olacağı için ayarları olduğu gibi bırakıp next diyoruz. Finish diyerek wizard’ı kapıyoruz.
  • Aynı ayarları aşağıdaki değerler için send portu için de yapıyoruz. Orchestration ekranının sağına toolboxtan port sürükleyip aşağıdaki ayarları gerçekleştiriyoruz
  • Wizard Page
    Property
    Value
    Port Properties
    Name
    CustomerPort
    Select a port type
    Port Type Name
    CustomerPortType
    Port binding
    Port direction of communication
    I’ll always be sending message on this port.
       



  • Tüm bu ayarlar bittikten sonra solution’u build ediyoruz.

4.Adım Solution’u deploy etme
·       Solution Explorer ContosoMessagging projesine sağ klik ile Properties açılır.Signing tabı açılır.
·       Sign the assembly  kutusuna tıklanır. Beliren dropdowndan new seçilerek yeni bir güçlü anahtar oluşturulur. Böylece oluşturulan projenin assembly’si GAC(Global Assembly Cache)’e kaydolur.

·       Key oluşturmadan sonra Application adı alında Lab1 yazalım.
·       Bu arada Server alanına “.” yazarsak, proje dosyasını herhangi bir development serverda ya da lokal serverımızda çalışması için taşınabilir hale getirmiş oluruz.
·       ContosoMessage projesine sağ klik diyerek Deploy Solution diyebiliriz.
·       Output penceresini izleyip developmentın başarılı olduğundan emin olmalıyız. Ekranın altında Deploy Succeeded yazısı belirir.
·       

5.Adım: Mesaj portlarını konfigüre etme
Visual Studio tarafında Orchestration adımında logical portları tanımlamıştık. Bu portları fiziksel portlarla Biztalk Server’ın admin konsolunda ilişkilendireceğiz.
·       Admin konsolunu StartàAll ProgramsàBiztalk Server Administrator’dan açalım.
·       Application düğümüne tıklayayıp Lab1’i açalım.
·       Lab1’in içindeki componentlerden Receive Ports’a sağ klik ile New | One-way receive port seçelim.
·       Açılan pencerede receive portun adını OrderReceivePort  verelim.
(Receive port,bir ya da daha fazla receive locationun bulunduğu bir logical giriş noktasıdır.Bu logical giriş noktası birkaç farklı fiziksel giriş noktasına izin verir)

·       ReceivePort’un üzerine tıklayıp açılan sayfada OrderReceivePort’a sağ klik ile New | Receive Location diyerek fiziksel giriş noktası ayarını yapalım.
·       İsim alanına CustomerOrder_FILE adını verelim.
·       Type FILE seçelim.
·       Receive pipeline XML receive seçelim.(yalnızca xml formatındaki dosyaları kabul et diyoruz)
·       Fiziksel Receive locationu belirlemek için Configure butonuna tıklayalım ve browse’dan lokasyonu seçelim. (Bunun için C:\BiztalkFolders\Labs\Lab1\Messaging\Receive şeklinde C’nin altında içiçe boş folderlar oluşturdum. Siz de herhangi bir yerde Receive adında boş bir folder oluşturup bunu dosya yolu olarak verebilirsiniz.)
·       Ok deyip send location’ı tamamladıktan sonra,busefer aynı administor consolunda Lab1’in altındaki componentlerden SendPort’a sağ tıklayarak ,send portun fiziksel dosya yolunun ayarlarını yapıyoruz.
·       İsim alanına CustomerSendPort yazıyoruz.
·       Type FILE seçiyoruz.
·       Send Pipeline FlatFileSendPipeline seçiyoruz.(Böylece çıkan dosya formatı text olsun demiş oluyoruz)

·       Configure butonuna tıkladıktan sonra browse’dan Send pipeline folderını belirliyoruz.
·       Ben  C:\BiztalkFolders\Labs\Lab1\Messaging\Send  şeklinde içiçe boş folderlar oluşturup belirledim.
·       Filename alanındaki %MessageID%.xml’i   txt’ye çevirelim. Çünkü ilk sayfada send folderına atılacak dosya tipinin flatfile olduğunu söylemiştik.

·       OK diyip administrator consola geri dönüyoruz.
·       Bu adımda şimdi tanımlamış olduğumuz fiziksel receive,send folderlarını Biztalk applicationun Orchestration aşamasında tanımladığımız logical receive,send portlarla ilişkilendireceğiz.
·       Bunun için Lab1’e yine sağ tıklayıp Configure diyoruz.
·       Configure ekranınının solunda logical port isimlerine karşılık gelen,fiziksel portları aynı şekildeki gibi seçiyoruz.Apply diyoruz. Port konfigurasyonu da bitti artık Biztalk uygulaması tarafında yaptığımız veri işlemlerinin folderlarda otomatik gerçekleşecek şekilde ayarını yapmış olduk.


  •  Şimdi sıra uygulamayı start etmeye geldi.Admin console’dan Lab1’e sağ klik diyip Start diyelim.Hazırladığımız Biztalk uygulaması şuan çalışır durumdadır.

·       Artık oluşturduğumuz receive folderına xml formatıyla dosya bırakıp,send folderından aynı dosyanın text formatında oluşup oluşmayacağını test edeceğiz.
·       Örnek folder oluşturmak için biztalk projedeki Order.xsd’ye sağ klik create instance dersek altta çıkan linke ctrl-clik ile tıklayıp receive edilecek dosyanın örnek bir xml içeriğini oluştururuz.Bu xml içeriği kopyalayıp masaüstüne xml formatında,yeni text dokumanı oluşturup test.xml adı vererek kaydedelim.


  • Test.xml in içeriği 

 

  • Daha sonra bu text.xml’i   C:\BiztalkFolders\Labs\Lab1\Messaging\Receive  adresindeki foldera atalım.
·       Birkaç saniye içerisinde dosyanın yok olduğunu göreceksiniz çünkü admin consoleda start ettiğimiz application onu receive porttan alarak visual studio’da oluşturduğumuz ConsotoMessagging’i çalıştırıp dosyanın içindeki datalarda birtakım düzenlemeler yaparak Send folderına txt formatında bırakır.
·       Oluşan txt dosya aşağıdaki gibidir.

  

Tüm bu yaptıklarımızla xml formatındaki dosyayı bir folderdan otomatik alıp txt formatına çevirip başka foldera otomotik atılmasını sağlamış olduk. Bu işlem için bukadar orchestration ayarına,konfigürasyon tanımına ne gerek vardı ben yazacağım iki satır kodla xml'den txtye çevirirdim otomatize etmek için de servis yazardım diyebilirsiniz. Ancak büyük çaplı uygulamalarda birden fazla receive locationdan birden fazla sistemler dinlenip veri alınıp onları birleştirmek gerekebilir ve bu sistemlerin herbirinin değişikliğinde sizin kendi yazdığınız uygulamayı tekrar tekrar düzenlemeniz gerekecektir ama Biztalk'ın şu konfigurasyon ayarlarına iyi alışırsanız sistem değişikliklerinde entegrasyonlar daha hızlı çözümlenir.Ayrıca Biztalk servisin diğer önemli özelliği aktarılacak dosyaları queue'da tutarak veri kaybını önlemesidir.

14 Kasım 2014 Cuma

YILDIZLARARASI

1.Interstellar (YıldızlarArası)
       Batman Darknight ve Inception'ın yönetmeni Christopher Nolan'ın yönettiği bu filmde aslında
çok sıradan insanlığı kurtarma konusu farklı  bir bakış açısıyla işlenmiştir. Filmin senaryosunda ünlü fizikçi Kip Thorne'ye danışılmıştır.Filmin genel olarak konusu şöyledir;Dünya üzerindeki toprak gittikçe verimsizleşir, küf oranı artar ve üzerinde sadece mısır ekilebilmektedir. Böylece açlık ve kuraklık baş gösterir, dünyada sürekli kum fırtınaları olur. Bu yüzden NASA (herzamanki gibi) gizli bir çalışmayla yeni yaşanabilir alanlar keşfetmeye çalışır. Dünyada bu felaketler olurken o sırada evrende bir solucan deliği açılır ve NASA bu delik aracılığı ile deliğin ardındaki her bir gezegene astronot gönderir. Ancak gelen datalar hiç açıcı değildir. Son umut olarak bizim aile babası Cooper'ı 3 astronot ile uzaya yollarlar. (Bu arada solucan delikleri evrendeki bükülme sonucu oluşan ve en uzak noktalara çabuk varılabileceğini açıklayan bir kuramdır.Filmde astronotlar yoldayken bir profesör kağıdı ikiye katlayıp ucunu delerek, kağıdın 2 uç noktasına açtığı delik aracılığıyla evrenin en uzak noktalarına çabucak geçileceğini gösterip, olayı güzel simüle etmiştir) Sonra bunlar yolculuk boyunca adeta minibüsle gidermiş gibi önce Mars'a (6ayda) sonra Jüpiter'e(2yılda) uğrayıp oradan Solucan deliğine girerler. Filmde solucan deliği küresel bir yapı olarak gösterilerek, bükülmüş uzay çok farklı bir görsellikle aktarılmıştır. Astronotlar delikten geçtikten sonra yaşamsal dataları almak için ilk olarak Miller gezegenine uğrar (Miller oraya inen astronotun ismi). Bu gezegenin yüzeyi tamamen sudan ibarettir. Bu arada atronotların geçtiği yeni sistemde bir de karadelik bulunmaktadır. Karadeliğin çekim gücünden dolayı Miller gezegeni şiddetli gel-git lere maruz kaldığından yüzeydeki sular Derin Darbe filminden daha dev dalgalar oluşturur ve burada astronotlardan birini yavaş koşmasından dolayı kaybederiz. Ayrıca yine aynı çekim kuvveti yüzünden Miller gezeninde zaman çok yavaş akmaktadır(Genel görelilik kuramı).Astronotlarımızın 1sn'si bile çok değerlidir çünkü bu gezegende 1 saat geçtiğinde dünyada 7 sene geçmektedir. (izafiyet teorisi)
     Millerda umduğunu bulamayan atronotlar, bu sefer Mann Gezegeni'ne gelirler (Buraya da keşif için astronot Mann iniş yapmış). Bu gezegen çok soğuk ve buzdan ibarettir hatta bulutlar bile buzdandır. (Bazı eleştirmenler yerçekiminin olduğu bir gezegende nasıl havada buz bulutu olur demiş ama asılsız bir eleştiri olmuş sanki daha önce başka bir gezegen görmüş de konuşuyor işte. "Ne malum belki oradaki bir gaz çeşidi bunu sağlayacak!!!" diyerek insanların yaratıcılığını savunmadan geçemeyeceğim.) Astronotlar gezegene inip oradaki astronot Mann'i bulur. (Mann dedikleri adamı Matt Damon oynuyor). İniş esnasında orada bizlere bir Amerikan bayrağı göstermeyi ihmal etmezler sonuçta insanlığı kurtarmaya giderken başka bir galakside ülkeyi temsil etmek çok önemlidir. Sonra enteresan saçma bir şekilde Mann ve bizim Cooper kavga etmeye başlar.(Mann'in dataları sahte çıkar,başarısız duruma düşmemek istediğinden böyle bir yalan söyler) Yani resmen insanoğlu yeni koloni kursa egolarını da yanında getirmeyi ihmal etmeyecek demek istemişler. Yaşanan kavga sırasında astronotlardan birini daha kaybediyoruz. Çok az yakıtı kalan astronotların son ümidi 3. gezegen oluyor ancak ona da gidiş var dönüş yok.
      Dönüş yolunda Cooper Mann'i takip eder. Mann hızlı davranır fakat uzay aracına nedense bağlanamaz. Mann de orada hırslarıyla birlikte ölür. Araca bağlanmayı Cooper zor da olsa başarır ve o sırada bulundukları sistemin içindeki karadeliğin (Gargantua) olay ufkuna sürüklenmeye başlarlar. Yakıt yetersizliğinden dolayı Cooper, kızı 3.gezegene yollayıp ben karadeliğe gireceğim der. İşte filmin en iyi yeri bence burasıydı.Karadelik normalde teoride de görünmez,ancak etrafındaki cisimlerin hareketi ve ışık bükülmelerinden orada oldukları varsayılır. Böyle bir durumda karadeliğin görselliğini yanındaki yıldızdan besleyerek yapmaları çok güzel olmuş.

         Yine eleştirmenler karadeliğe girilse tek parça çıkılmaz ışığı bile büken bir çekim var diyor ama olsun filmin karadeliğe giriş sonrası yaşattıkları çok güzeldi.Sonuçta film bize eğer sağ salim girilebilseydi neler olabileceğinin bir ihtimalini gösterdi. Karadeliğin bir ucu Cooper'ın zeki kızı Murphy'in odasına açılıyor. Ancak karadeliğin içinde çekim çok yoğun olduğundan ve yüksek çekimde zaman yavaşladığından burada Cooper için zaman tamamen durur ve 5.boyuta geçtiğinden dünyanın geçmişe ait her saniyesini izleyebilmektedir.("onlar" diye tabir edilen üst seviye uygarlık Cooper'ın algısına uygun hale getirebilmek için "Zaman" boyutunu 3 boyutlu bir forma getirip geçmişi gözler önüne serer). Cooper bu sayede dolaylı yoldan da olsa Mors alfabesiyle geçmişe müdahale etmeye çalışır. Başta gitmemesi için kızını etkilemek ister ve ona "STAY" mesajı yollar ancak daha sonra kızının dataları alıp dünyayı değiştirebilceğini düşünüp, kızını dolaptaki hayaletin kendisi olduğuna bir şekilde inandırır. Murph'ün mesajları gönderenin babası olduğunu nasıl anladığı ise seyirciye bırakılır. Murph mors alfabesiyle dataları aldıktan sonra karadelik gelecekteki "onlar" yani insanlığın gelecekteki en üst formu tarafından kapatılır.

  


Tüm bu olaylardan sonra bir sabah Cooper yüzüğü volkana atıp görevini tamamlamış Frodo gibi uyanarak kendini hastane yatağında bulur. Oraya nasıl getirildiğini ise seni boşlukta bulduk şeklinde cevaplarlar. Uyanır uyanmaz camdan bakan Cooper silindir şeklinde farklı boyutlu bir ortamda beyzbol oynayan çocukları izler.Burada  Murph'ün dünyayı kurtarışı planında "EVRAKA" diye ne için bağırdığını görmüş oluruz. Bu arada doktorlar Cooper'a yaşının 120 olduğunu söyler ve artık oğlu çoktan ölmüş, kızı da Benjamin Button gibi babasından yaşlıdır ve hasta yatağında babasını bekler. Cooper yaşlı kızının odasına gider ,etrafında Murph'nin torunları ve çocukları vardır. Hiçbiri de demez ki "Ananne bu amca kimm?" öyle boş boş yatağın etrafında duruverirler,o sırada adam da kızıyla duygusal bir konuşma yapar.

Murph: Nobody believed me, but I knew you'd come back.
Cooper: How?
Murph: Because my dad promised me.

Ne sözmüş arkadaş.Neyse bu konuşmadan sonra Murph babasına Brand'ın 3.dünyada uygun ortam bulduğunu ve onu bulup getirmesini söyler. Cooper da bunu duyar duymaz yeni bir uzay aracını aşırarak tekrardan yola çıkar. Astronotların yıllarca kullanmak için eğitim aldıkları aracı öyle 2snde kaldırma yeteneğinin olması gözleri yaşartır. Filmin sonunda da Brand'in bulduğu 3.gezegenin aynı dünya gibi atmosferli olduğu gösterilir. Brand Cooper'ı beklerken, dünyadan aldığı çeşitli sperm örnekleriyle her an kendini taşıyıcı anne yapıp koloniyi çoğaltmayı düşünüyormuş gibi bir bakış atar ve film biter.

IMDB:9.0       Sinemalar.com:8.8

Filmde bazı göze çarpanlar:
-Ünlü fizikçi Kip Thorne tarafından danışmanlık desteği alan filmdeki robotlardan birinin adının KIPP olduğu anlaşılmıştır.
-Dünyadaki birçok insan çeşidinin sperm yumurta örneği alınırken neden hayvanların alınmadığı onlarsız bir hayat olamayacağı düşünülmemiştir.
-İnsanlara başka dünyada yaşanabileceği bilincinin aşılanması yersizdir. İnsan türünün Dünya gezegeninden daha aciz ve tükenmesi olası bir varlık olduğu gerçeği unutulmamalıdır.
-Cinlere perilere ve din felsefesine farklı bir bakış açısı getirilmiştir..
-Filmin ikinci kez kendini izletme isteği uyandırmasından Christopher Nolan'a ait olduğu apaçık ortadadır.
-Filmde Dünyanın nasıl bir tehlikeyle karşı karşıya olduğu sadece belli bir köy ve tarla ile sınırlandırılmıştır. Halbuki birkaç ana haberde başka ülkelerin durumunu da biraz gösterseler daha global bir hava yaratılabilirdi.
-İzleyicilerin bir kısmı Inception gibi, filmi anlayamadıkları anlaşılmasın diye "vay be ne filmdi" demek için sırf IMDB'de 10 verecekleri şimdiden kesinleşmiştir.
- Karadeliğin içinde Cooper'ın sadece Murph'in odasını görmesi olayı biraz kişiselleştirmiştir. Onun yerine Cooper tüm dünyanın geçmişini izleyip arasından Murph'ün olaylarını seçseydi (malum ona göre zaman durmuştu aslında bunun için sonsuz vakti vardı) daha kapsamlı bir algı oluşurdu.
(Eskiden duyduğum bir hikaye geldi aklıma bu konu ile alakalı ;Miraç gecesi peygamberimiz göğe yükseldiğinde dünyanın tüm gelmiş ve geçmişi ona izletilmiş belki bu mantıkta birşey yapılabilirdi neyse)
-Filmin sonunda "Onlar" tarafından karadelik ve solucan deliği kapatıldığı halde Cooper'ın kızı bulmak için çıktığı yolda artık bir delik yoksa okadar mesafeyi nasıl katedeceği de kafalarda soru işareti olarak kalır.
-Her ne olursa olsun bana bunları düşündürtüp felsefe yaptırtan bu filme şapka çıkarmak gerekir.

Bugün bayağı yazdım,içim dolmuş resmen.

Neyse, bir sonraki yazımda dünyanın aslında bir canlı olabileceği üzerinde birşeyler yazarım heralde.
Bu filmle ilgili başka manyak şeyler okumak isterseniz. (Kosmos'un yazarı Carl Sagan vs)
Aşağıdaki linktedir.





VİZYONDAKİ EN İYİ FİLMLER

   Havaların soğumasıyla birlikte deniz,kum,güneş,börtü böceklere elveda diyip AVM'lere kapandığımız şu aylar tam da vizyona güzel filmler girmişken gitmek lazım. Malum güzel filmler hep kış dönemini bekler,kapalı mekanlarda daha çok vakit geçirdiğimiz zamanları kollarlar hep çıkmak için.Bende izlediğim filmlerde kafama takılanları yada çok beğendiğim yerleri paylaşayım dedim. Neyse şimdiden lafı uzatmadan bakalım Top 5'te neler varmış.Bir de baştan söyleyeyim yüksek dozda spoiler içerir. İzlemediğiniz filmi okumamanızı tavsiye ederim.

5.The Maze Runner    (Labirent Ölümcül Kaçış)
    Fantastik Bilim kurgu türündeki bu film Açlık Oyunları'na çok benziyor. Filmde sarp kayalıklar
kadar yüksek duvarlardan(aynı winterfelldeki gibi kocaman) oluşan bir labirent var, içinde ufak bir köy var ve bu köyde sadece erkekler yaşıyor. Her ay sonu yeraltından buraya kafesin içinde yiyeceklerle birlikte bir kişi gönderiliyor. Gelen herkesin hafızası silinmiş ve neden buraya geldikleri konusunda kimsenin en ufak bir fikri yok. Tek bildikleri labirentin kapılarının gündüz açılıp,gece  kapandığında içerde kalanın birdaha sağ çıkamadığı. Filmin başında gruba katılan esas oğlan bu olayı çözmeye çalışır ama herşeyin sebebinin kendisi olduğunu, herşeyin bir deney olduğunu anlar.Ama nasıl bir deney? Esas çocuk bir gece labirente girmek zorunda kalır,dev bir örümcekle mücadele eder. O geceden sonra artık herkeste daha çok merak uyanır ve bir kısmı labirente girmek ister diğer taraf  istemez. Örgütlenmeler sonunda labirente giren grup,maceralardan sonra kendilerini hafızalarını kaybettikleri odada bulur. Labirent deneyinden başarılı geçenlere bir video izletilir.Videoda dünyaya yayılan bir virüsün herkesi yok ettiği, sadece bu labirentte kalanların virüse bağışıklığı olduğu ve virüse karşı direnç oluşturmak için kullanıldıkları,yaşlı sevimsiz bir bayan prof tarafından anlatılır(101 dalmaçyalıdaki saçı beşiktaşlı kötü teyze).
İzletilen videonun sonunda yaşlı profesörün kendi kafasına kurşun sıkması ve sonrasında ekranın karıncalanması filmin en komik sahnesiydi bence. Zaten direk orda videonun da düzme olduğunu anlar insan.Filmin sonunda gençleri bir grup asker korumaya alır, yok olmaya yaklaşmış dünyada başka bir harabe şehre götürür. Aslında bu da tamamen psikolojik bir deneyin devamıdır. Bir deney için bukadar maliyetli işlere neden girdikleri ise tamamen bir muammadır. Hadi hayırlısı inşş.. Devam filmi gelsin öğreniriz belki.

IMDB:7.3       Sinemalar.com:8.5

4.The Judge  (Yargıç)
   Bu filmde Ironman Robert Dorney ciddi, üçkağıtçı,başarılı ve zenginden yana bir avukat rolünde.
Birgün annesinin ölümü üzerine çocukluğunun geçtiği ama oralı olmaktan utandığı kasabayı ziyaret etmek zorunda kalır. Geldiğinde babasının ondan daha çok utandığını ve soğuk davrandığını farkedersiniz. Baba evlat arasındaki bu soğukluğun sebebi aynı Kuzey-Güney dizisi gibi bir araba kazasıdır. Meğersem avukatımız küçükken abisiyle arabada giderken sorumsuzca bir kaza yapmış ve abisinin elinin sakatlanmasına sebebiyet vermiş (abisi aşırı yetenekli beyzbolcuymuş). Neyse sonra tüm kasabanın tanıdığı ve saygı duyduğu yargıç babası bir cinayetten tutuklanır ve oğlu bunun avukatlığını yapmak zorunda kalır. Filmde en vurucu sahne duruşma sahnesidir. Çünkü baba suçlu olduğunu ve adamı kasten öldürdüğünü düşünür(tam hatırlamıyor kanser olduğundan dolayı kullandığı kemateropi ilaçları unutkanlık yapıyor) ve aşırı dürüst olduğu için yalan söylemek istemez, oğlu da böyle bir durumda babasını savunmakta çok zorlanır ki bu dava hayatının ilk başarısızlığı oluverir. Babası tutuklanırken gözleri dolar, o sırada hırsından mı yoksa babasına üzüldüğünden mi ağlar bu sorunun cevabı da filmin son sahnesindedir.
 Benim için de en önemli sahnelerden biri baba ve oğulun evdeki tartışmasıydı. Çünkü orada babanın yıllardır oğlunu yaptığı kaza yüzünden kabullenmediğini,sürekli yatılı okullara yolladığını, oğlunun hiçbir başarısını umursamadığını öğrenirsiniz. Avukatın neden böyle hırslı kendini ispatlama derdinde olduğunun sebebini anlarsınız.

IMDB:7.6  Sinemalar.com:8.0

3.Unutursam Fısılda
 Türk aile yapısının "elalem ne der?" mantığını eleştiren Çağan Irmak filmlerinden biri daha.. Sanırım
zamanında bu adam "ben yönetmen olacağım baba!" diyerek evden kaçmış.Bu seferki filmde şarkıcı olmak isteyen bir genç kız var ve aşık olduğu gencin hayalleri de aynı. Başta kız çocuğa aşık mı? diye pek emin olamıyorsunuz.Sanki hayallerine daha çok aşıkmış gibi geliyor ama sonrasında esas oğlan ölünce ona duyduğu sadakati gördüğünüzde kıza saygı duyuyorsunuz. Bir de ablasının defterini çalmasını da başta yargılıyor insan ama kızımız sonra bunu da telafi ediyor.Babam ve oğlum tadındaki filmde yine Çağan Irmağın bir film için neden bukadar beklediğini diyaloglara bakınca görüyorsunuz. Özellikle iki yaşlı kardeş arasındaki tartışmada yaşanan dialoglar çok çarpıcıydı. Deli dolu ailesini hiçe sayarak hayallerinin peşinde koşmuş ve bunun bedelini ağır ödemiş bir küçük kızkardeşle; oturaklı,donuk, tüm ailesinin yükünü üzerinde taşımayı tercih etmiş ve sonrasında yine büyüklüğünü göstermiş bir ablanın hikayesi bu aslında.
 Bir de Farah Zeynep çok içten bir oyuncu,adeta pozitif bir enerji veriyor umarım son zamanda Türk sinemasında onu sürekli görmemiz bir Özgü Namal dönemi gibi sadece bir dönemden ibaret olmaz.

IMDB:7.6     Sinemalar.com:6.3

2.Gone Girl (Kayıp Kız)
     Son dönem izlediğim fimler içinde gördüğüm en harika kurgu bu filme aitti. Filmde bir kadının
tehlikelisinin erkeğin tehlikelisinden daha tehlikeli olduğu kanaatine varıyorsunuz. Filmin başrollerini Ben Affleck ve Rosamund Pike paylaşıyor tabi bir dee How I Met Your Mother'ın Barney Stinson'ı var.
     Rosamund çok başarılı ve zengin bir bayan Ben'le birbirlerine aşık olup evleniyorlar. Kadın sonra birden bire ortalıktan kayboluyor. Bizim Ben gene karısı mı kaybolmuş yoksa kurşun kalemimi belli değil. Polislere gayet telaşsız,sakin cevaplar veriyor. Başta sırf buyüzden Ben nekadar saçma bir oyuncu insan karısı ölse öylemi oynar diyorsunuz ancak daha sonra Ben'in bir sevgilisi çıkıyor ortaya ozaman tamam anlaşıldı karısına neden üzülmediği diyorsunuz. Sonra bir bakıyorsunuz meğersem bu kaybolma olayı çatlak,piskopat karısının kurmacasıymış.Sonra diyorsunuz adam bu deli kadını aldatmakta haklı zaten az bile yapmış. Yani kısacası film, insanı önce ters köşe sonra düz köşe yaparak bir ters bir düz gidiyor. Başta kadın size harika güzel mükemmel bi insan gibi geliyor sonra bu kadının aslında mükemmel bir çatlak olduğunu görüyorsunuz. Öyleki kadın kaçmadan önce, kocası tarafından öldürülmüş gibi göstermek için litrelerce kanını mutfak parkesine döküp temizlemekten kaçınmamış, adamı cinayetten zanlı duruma düşürecek şekilde alakasız olayları aylarca yazdığı bir günlük tutmuş, hamile komşusunun idrar örneğini alıp acısınlar diye kendisini hamile gösterecek deliller bırakmayı bile ihmal etmemiş.
   Tabi herşey kadının planladığı gibi gitmiyor. Saklandığı yerde parasını çalıyorlar (o an bi gereksiz acıdım). Sonra Barney'i arayıp yardım istiyor. Bizim Barney de bu kadına küçüklükten beri aşıkmış hemen koşa koşa yanına geliyor. Ona bir ev ayarlıyor . Eve de ev demeye bin şahit lazım. Köşk mü desem yalımı desem. İç dizaynı da aynı How i Met dizisindeki gibi çok teknolojik. Bir an dev ekran tvsini açıp bu  kızı da etkilemek isteyecek sandım. Neyse bizim deli kadın tvde kocasının "gel seni özledim" çağrısını duyunca aşkı ağır basıyor. (Halbuki adam halka kötü görünmemek için gel demişti). Sonunda bizim deli Barney'i öldürüp kocasına geri dönüyor ve herkesi (kocası dışında) öldürdüğü adamın onu kaçırdığına ve kendini nefsi müdafa ettiğine inandırıyor.
   Adamcağız başta halka kötü görünmemek için bundan ayrılamaz, kadınla ayrı odalarda kapısını kitler uyur WC ye bile kadın birşey yapacak korkusuyla küçük çocuk gibi koşa koşa gider. İlerleyen zamanlarda tam kadından ayrılmak isterken, kadın suni yolla ondan hamile olduğunu söyler adam artık hiç ayrılamaz ve sonsuza kadar mutsuz leş bir hayatları olur.

IMDB:8.5       Sinemalar.com:8.7


1 numaralı filmi bir sonraki sayfada yayınlayacağım aazzsoonra!!!!





7 Mart 2014 Cuma

8 Mart Dünya İnsanoğlu Utanç Günü


“8 Mart 1857 'de ABD'nin New York kentinde 40.000 dokuma işçisi daha iyi çalışma koşulları istemiyle bir tekstil fabrikasında greve başladı. Ancak polisin işçilere saldırması ve işçilerin fabrikaya kilitlenmesi, arkasından da çıkan yangında işçilerin fabrika önünde kurulan barikatlardan kaçamaması sonucunda 129 kadın işçi can verdi. İşçilerin cenaze törenine 10.000'i aşkın kişi katıldı. Bu olaydan sonra Dünya Kadınlar Günü her yıl 8 Mart'ta kutlanan ve Birleşmiş Milletler tarafından tanımlanmış uluslararası bir gündür.”
         Evet başlık biraz iddialı gibi duruyor farkındayım. Peki sizce bir ırkın erkeğinin tarih boyunca
sahip olduğu fiziksel güçten ötürü ezdiği dişisine yıllar sonra hürmet duyarak özür babında bir gün hediye edip doğurganlığını, emekçiliğini takdir etme ihtiyacı duyması oldukça trajikomik değil midir? Bence gayet trajikomiktir, hatta ben bir uzaylı olsaydım ve 8 Mart'ta dünyayı ziyarete gelseydim insanoğlunun geldiği seviye için önce onu alkışlardım (çünkü malum karşı cinslerden biri diğerinin değerini geç de olsa anlayabilmiş) sonra da takdir edersiniz ki acırdım.
    Aslında burada olay dişi ya da erkek üstünlüğünden ziyade bir ırkın yaptığı cinsiyet ayrımcılığını bariz bir şekilde açığa vurmasıdır. Tarih boyunca her ırkta ve her canlı türünde güçlünün güçsüzü ezdiği su götürmez bir gerçektir tabii buradaki güç kavramı aslında sadece biyolojiktir, fizikseldir ve gelişmemiş ırkların cinsiyet ayrımı gözetmeden birbirlerine üstünlük sağladığı yegane kozudur. Cinsiyet ayrımı gözetmeksizin dedim çünkü karadul örümceğini bilirsiniz dişisi çiftleşmeden sonra erkeğini yediği için karaduldur. Karadul erkeğini acımadan yer çünkü çiftleşme sonrası zevkten dört köşe olmuşluk onda acil protein ihtiyacı doğurur ve protein ihtiyacını kendisinden 20 kat küçük hemen yakınındaki erkeğini yiyerek karşılar.
       Uzun lafın kısası ilkel ırklar içinde fiziksel gücü olan cins daima diğerini ezer ve yaşamını sürdürmeye çalışır. Bu Darwin'in Türlerin Kökeni' nde yayımladığı doğal seçilimi de destekler niteliktedir. Her ne kadar doğal seçilim teorisi türler arası gücü ele alsa da tür içindeki cinsiyetler arasında da sosyal statü açısından bir doğal seçilim olduğu apaçık ortadadır.
      Şuan etrafımızda gördüğümüz en gelişmiş ırk her ne kadar insan olsa da ve insanoğlu doğadaki tüm canlıların içinde kadınının değerini anlayacak seviyede kendini geliştirmiş olsa da evrenin herhangi bir noktasında bulunan herhangi galaksisinde daha ileri seviyedeki başka bir ırkın bu aşamaları çoktan geçtiğini düşünüyor ve Dünya'da da yaklaşık 2bin yıl sonra kadının geçmişte yaşadığı ezilmişliğinin bir sembolü ve özrü olan "Dünya Kadınlar Günü"'ün unutulacağına inanıyorum. Hatta 2 bin  yıl sonraki Dünyada bir bayana " ya sizin gününüz varmış biliyormuydun?", "eskiden insanlar Dünya Kadınlar Günü mü kutluyormuş anne?" tarzı sorular soracaklarını da hissedebiliyorum. Belki böyle Türkçe sormayacaklar "zzztt bzzt" şeklinde yeni bir robot diliyle sorarlar ama olsun sonuçta soracaklar.
    Ya da tüm dünyayı şuanda bir ülkeyi yöneten aşağıdaki zihniyet yönetirse bu soruların hiç biri sorulamayacak o da ayrı tabi..

"Bir tane 'kız' mıdır,'kadın' mıdır bilmem"
                             Bir ülkenin başbakanı (bir bayana ithafen)
"Kadınlar iş aradığı için işsizlik yüksek"
                            Bir ülkenin maliye bakanı
"Kızlar okuyunca erkekler evlenecek kız bulamıyor"
                            Bir ülkenin bir partisinin genel meclis üyesi
"Evdeki işler yetmiyor mu?"
                            Bir ülkenin orman ve su işleri bakanı kendisinden iş isteyen kadına espirik yapmış
"Anası tecavüze uğruyorsa neden çocuk ölsün.Anası ölsün"
                            Keşke bunu bir başkan demeyeymiş iyimiş o ülkede bunu seçenlere acıdım