Model | Engin Polat\'ın Windows 8 , Windows Phone 8 ve C# içerikli programcılık sitesi

Arşiv

Etiketlenen yazılar model

AçıkAkademi ASP.NET MVC ile ileri seviyede web programlama öğrenmek istiyorum Eğitimi 2016

27 August 2016 Yorum yapılmamış

AçıkAkademi üzerinde yayınlanan 15 video’luk IIS, Asp.Net Web Forms, Asp.Net MVC, WCF ile web uygulaması geliştirme eğitim seti yayına alındı.
Sevgili arkadaşım Bora Kaşmer ile hazırladığımız eğitim setini sizler de ASP.NET MVC ile ileri seviyede web programlama öğrenmek istiyorum başlıklı AçıkAkademi sayfasından izleyebilirsiniz. Eğitim konu listesi;

  • Neler anlatacağız
  • İnternet Nedir?
  • Sunucu, IIS, DNS Nedir?
  • Başlangıç
  • Web Forms Elemanları
  • Web Forms ile Javascript Arasındaki Fark
  • MVC Nedir-1
  • MVC Nedir-2
  • Viewbag
  • Model
  • Yeni Bir Kayıt Giriş
  • Veritabanı-1
  • Veritabanı-2
  • WCF Service Yazımı ve Kullanımı-1
  • WCF Service Yazımı ve Kullanımı-2

AçıkAkademi için bu eğitim setini çekmemizi sağlayan sevgili arkadaşım Ümit Batu‘ya da teşekkür ederim.

Unity3D ile oyun geliştirme ortamını tanımaya başlamak

23 January 2016 Yorum yapılmamış

Unity3D cross-platform bir oyun geliştirme aracıdır. Unity3D‘yi kullanarak geliştirdiğimiz oyunu çok basit bir şekilde Windows, Android, iOS, Linux, Xbox, Playstation, vs. ortamlarına yükleyebiliriz.

logo

Öncelikle http://unity3d.com/get-unity adresinden Unity3D kurulum dosyasını indiriyoruz ve bilgisayarımıza kurulumu gerçekleştiriyoruz.

İsmi Unity3D olmasına rağmen, 4.3 versiyondan itibaren 2D oyunlar da yapabilmemize olanak tanıyan yeni yapılar içeriyor. Böylece 2D oyunları da Unity3D‘yi kullanarak yapabiliyoruz.

Unity3D‘yi açıp, hemen yeni bir oyun projesi oluşturalım;

Pencerenin üstünde yeralan New butonuna tıklıyor, gelen ekrandaki alanları doldurarak oyun projemizi oluşturuyoruz.

00

Unity3D editörü karşımıza geliyor. Editör‘ün içinde yeralan panelleri istediğimiz gibi özelleştirebiliyoruz. Böylece oyun projesindeki dosyaları pencerenin altına değil soluna yerleştirmemiz veya oyun sahnesini küçültüp oyunun önizlemesini ekrana koymamız mümkün.

01

Unity3D Editörünün panellerine hızlıca bakalım;

  • Hierarchy: Oyun sahnesinde bulunan tüm nesnelerin listesinin gözüktüğü panel. Yeni bir oyun projesi oluşturduğunuzda bu panel’de Main Camera nesnesi gözükür. Eğer sahneye Cube, Sphere, Cylinder, Spotlight, vs gibi nesneler ekleyecek olursak, bu panel’de listelenecekler. Bu panel’de listelenen nesneleri sürükleyip diğer bir nesnenin içine bırakarak nesneleri birbirleri ile ilişkilendirebilir ve parent/child yapısı oluşturabiliriz.
  • Scene: Oyun alanını bu alanda görür, modeller, tasarlarız. Herhangi bir nesneyi sahnede bulmak için Hierarchy panelindeki ismine çift tıklamamız yeterli.
  • Project Assets: Oyun içerisinde kullanabileceğimiz herşey (Texture, 3D Model, Script, vs) bu panelde listelenir. Bu panelde yeralan dosyalar oyun projesinin diskteki dizini ile birebir aynıdır. Oyun projesinin dizininde yeni bir dizin veya dosya oluşturursak aynı anda Project Assets panelinde gözükmeye başlar.
  • Inspector: Hierarchy veya Scene panellerinden seçilen nesne veya nesnelerin özelliklerini görebildiğimiz ve değiştirebildiğimiz paneldir. Inspector paneli sayesinde bir nesnenin oyun sahnesindeki konum, boyut, renk, kaplama, vs gibi özelliklerini görebilir, değiştirebiliriz.

Unity3D‘de bir oyun sahnesi oyuncuya kamera’nın bakış açısından gösterilir. Böylece ekrandan daha büyük alanlarda hareket etmek için aslında kamera’yı hareket ettiririz. Unity3D bir oyun projesi oluşturduğumuzda bizim için sahneye bir tane kamera (Main Camera) ekler. İstersek biz de sahneye ikinci veya üçüncü kameralar ekleyebiliriz.

02

3D oyunlarda kamera’nın Projection özelliği (kamera seçili iken Inspector panelinde görüntülenir) Perspective seçili iken, 2D oyunlarda kamera’nın Projection özelliği Ortographic seçili olmalıdır.

03

Eğer istersek Hierarchy panelinde görüntülenen nesnelerin isimlerini değiştirebiliriz, bunun için ilgili nesnenin üzerine sağ tuşla tıklayıp Rename menüsünü seçmemiz yeterli. Böylece Directional Light nesnesinin ismini Güneş olarak veya Cube nesnesinin ismini Sandık olarak değiştirebiliriz.

04

Unity3D‘de sahnede olan bir nesneye kendi özelliklerinin dışında yeni özellikler eklemek istiyorsak Inspector panelinde bulunan Add Component butonuna tıklamalı ve gelen listeden eklemek istediğimiz özelliğe göre bir öğeyi seçmeliyiz. Örneğin; Cube nesnemizin yerçekimi kanunlarına uymasını istiyorsak nesneye Rigidbody component’ını eklemeliyiz.

05

Eğer sahneye yeni nesneler eklemek istiyorsak basitçe Hierarchy panelinde boş bir yere sağ tuşla tıklayıp 3D Object menüsü altından Cube, Sphere, Cylinder, vs seçerek sahneye ekleyebiliriz.

06

Hierarchy panelinde sahneye eklediğimiz birden fazla nesneyi başka bir nesnenin içerisine sürükleyip bırakarak bir bütün olarak ele alınmalarını sağlayabiliriz. Böylece birlikte hareket ettirilip, birlikte döndürülebilir veya boyutlandırılabilirler.

07

Project Assets paneli içerisinde boş bir alana sağ tuşla tıklayıp oyun projesine yeni dizin, yeni script dosyası, yeni materyal, vs eklemek mümkün.

08

Genelde Project Assets panelinde ismi Scenes olan bir dizin oluşturulur ve oyun’daki sahneler bu dizine kaydedilir.

09

Eğer aktif sahneyi oynamak istiyorsak Unity3D editörü ekranının üstünde yeralan başlat (oynat) butonuna tıklanır ve oyun kamera’nın bakış açısından oynanmaya başlanır.

10

Oyuna eklemek istediğimiz çeşitli nesneler veya özellikler ile ilgili daha önce oluşturulmuş paketleri oyuna Assets menüsü altında bulunan Add Packages alt menüsü içerisinden ekleyebiliriz. Böylece oyuna hızlı bir şekilde ağaçlar, deniz, çeşitli arabalar, efektler veya duman / alev / havai fişek gösterisi, vs ekleyebilmemiz mümkün.

11

ASP.NET MVC Nedir, Ne İşe Yarar?

17 September 2013 Yorum yapılmamış

ASP.NET MVC, MVC pattern‘ini ASP.NET‘e eklemek için Microsoft‘un geliştirdiği framework’tür. ASP.NET MVC‘nin ne olduğunu anlamak için öncelikle MVC‘nin ne olduğunu incelemekte fayda var.

MVC, uygulama geliştirmede (özellikle web uygulaması geliştirmede) önemli yere sahip mimari desenlerden biridir. Günümüzde MVC denince akla Microsoft‘un geliştirdiği ASP.NET MVC Framework gelmektedir, oysa 1979 yılından beri (Microsoft 1975 yılında kurulmuştur) yazılım dünyasında yer almaktadır.

MVC, Model, View, Controller kelimelerinin baş harflerinden oluşur ve her kelime MVC‘nin farklı bir katmanını ifade eder.

Model
MVC dünyasında model uygulama verisinin veya durumunun saklandığı yerdir, genellikle veritabanı veya xml/json dosyası formatındadır.

Model, veri katmanını (database, xml, json dosyası, vb.) uygulamadan izole eder, böylece diğer katmanlarda veri katmanının neresi olduğunun bilinmesine gerek kalmaz.

Model katmanı sıklıkla Entity Framework, Nhibernate, LLBLGen, vb. gibi araçlar kullanılarak oluşturulur.

View
View, istemcinin gördüğü arayüzü içeren katmandır, genellikle Model katmanındaki verinin kullanılması ile oluşturulur. View katmanının Model ve Controller katmanlarından ayrılması ile arayüz değişikliklerinin uygulamanın diğer katmanlarını değiştirmeye gerek kalmadan yapılabilmesi sağlanmıştır.

View katmanında HTML5 ve CSS3 gibi son versiyon teknolojiler kullanmak mümkündür. HTML5 ve CSS3 ile masaüstü ve mobil tarayıcılarda çalışabilen uygulamalar geliştirmek çok kolaylaşmıştır.

Controller
Controller, istemciden gelen isteği işlemek, Model ve View katmanları arasında köprü olmak gibi görevleri yerine getirir. Controller içerisinde bir veya daha fazla Action olabilir, genellikle her Action bir web sayfası üretmek için kullanılır.

MVC’nin diğer bir önemli yapıtaşı Routing mekanizmasıdır.

Routing
Routing, istemci’nin uygulamaya yaptığı isteği uygun Controller ve Action‘a yönlendiren yapıdır. İstemci, isteği uygulamanın belli bir adresine gönderir, routing mekanizması sayesinde ilgili adres için en uygun Controller ve içerisindeki Action tespit edilir ve çalıştırılır.

Neden ASP.NET MVC tercih etmeliyim?
MVC ile istemci’nin isteğine karşılık üretilen çıktı üzerinde çok büyük kontrol imkanı vardır. Bu sayede her alanına müdahele edebildiğimiz ve isteğe en uygun çıktının üretilebilmesi sağlanmıştır.

MVC ile tekrar kullanılabilir (reusable) kod üretmek mümkündür. MVC’nin katmanları birbirinden ayrıldığı için her bir katmanın başka projelerde kullanılabilmesi sağlanmıştır.

MVC ile istemci’nin istek göndereceği adresler üzerinde çok büyük kontrol imkanı vardır. Bu sayede adres’in içerik ile tam bir ilişki içerisinde olması sağlanmıştır. Arama motorları için adres-içerik ilişkisi önemli olduğu için uygulamanın bulunabilirliğine katkısı yüksektir.

MVC ile test edilebilir uygulamalar geliştirme çok kolaylaşmıştır. Katmanların birbirinden ayrı olması ve Test Driven Development yapmayı kolaylaştırıcı mimarisi sayesinde test edilebilir uygulama geliştirilebilmesi sağlanmıştır.

Sonuç
MVC uzun yıllardır bir çok framework’te ve programlama dilinde kullanılmış (Java, PHP, vb.) ve olgunlaşmış bir desendir. ASP.NET MVC sayesinde .Net framework dilleri ile MVC pattern kullanılarak hızlı çalışan, test edilebilir, tekrar kullanılabilir parçaları olabilen web uygulamaları geliştirilebilmesi sağlanmıştır.