Çarşamba, Şubat 22, 2017

Yazılım Öğrenmelisin! Peki Nasıl?




Merhabalar,

Yeni şeyler öğrenmek ilk zamanlar heyecanlı olsa da sonraya doğru biraz sıkıcı olabiliyor. Bu öğreneceğiniz şeye göre değişebilir belki, bence çoğunlukla böyle oluyor. Tabi burada devreye bireysel olarak kararlılığınız giriyor. Kararlı bir kişiliğe sahipseniz çalışmalarınızı adım adım yürütürsünüz, vazgeçmezsiniz. Kimi zamanlar ara vermek zorunda kalabilirsiniz ancak irtibatı asla koparmazsınız.

Hayatımızda her ne yapacaksak bunu planlı bir stratejiye dayalı olarak yaparız. Bazen yazılı ve belli bir ajandası olabilir çoğu zaman ise zihnimizdedir. Ancak insanız unutkan olduğumuz için bir ajanda ve çalışma takvimi belirlememiz öğrenmemizi ve öğrenme şevkimizi arttıracaktır. Ayrıca kendinizi ölçümleme imkanı da bulacaksınız.

Bir yazılım dili öğrenmeye başlıyoruz!

Öğrenmek istediğiniz yazılım dili, platformu yada kendinizi hangi alanda geliştirmek istiyorsanız öncelikle o alanın gerekliliklerini genel manasıyla bir öğrenmenizi tavsiye ederim. Örneğin; Web yazılım uzmanı olmak istiyorsunuz. Web tarafında hangi diller kullanılıyor. Popüler olanlar hangileri, Piyasa da tercih edilen hangisi ya da sizin için önemli olan metrik ne ise onu iyice araştırmanızı öneririm. Nerede araştıralım diye sormayın. Bu yazıyı nereden bulup okuduysanız orada derim.

Öğrenmek istediğiniz platform belirlendi, bunun için öğrenmeniz gereken diller kütüphaneler vesaire netleşti ve olay öğrenmeye geldi. Asla ertelemeyin. Sonra başlarım, yarın başlarım gibi cümleler ile kendinizi kandırmayın. Başlayın... Öğrenme işi yürümek gibidir. Yürürsünüz ve varmak istediğiniz yere evet yorularak varırsınız. Ancak hedefe varmışsınızdır. Çalışmanızı mutlaka zaman planlaması yaparak gerçekleştirin. Çalıştığınız halde bir şey anlamıyorum hissine kapılırsanız, pes etmeyin çünkü aslında o anda siz fark etmeseniz de zihninizde öğrendikleriniz depolanıyor. Gerekirse çalışmayı 1 tur tamamlayın tekrar baştan alın. Yada 1 turdan sonra proje ile öğrendiklerinizi pekiştirme yolunu da seçebilirsiniz.

Yeni bir bilgi öğrenme işini yazılım özelinde düşündüğümüzde isterseniz ilk olarak kaynak olarak neler kullanılabilir bunları inceleyelim.

Bu süreçte kaynak olarak eğitim videoları ki youtube.com sizin için bir derya, diğer eğitim platformları, konu ile ilgili bloglar, kitaplar ve sosyal medya aracılığı ile tanışacağınız bu alandaki kişiler ile öğrenme işleminizi sürdürebilirsiniz.

Başarılı olmanız dileklerimle...




Asp.NET MVC Makale Ekleme Resim Yükleme Boyutlandırma İşlemleri

Merhabalar,

Bir çok projede işimize yarayacak olan resim yükleme ve boyutlandırma işlemlerini incelediğimiz videomuzu sizlerle paylaşıyorum.

Ayrıca bu videonun da içinde bulunduğu oynatma listesinden blog sitesi yapımını örnek aldığımız eğitim setimize ulaşabilirsiniz. Asp.NET MVC ile sıfırdan başlayarak herkesin anlayabileceği bir dil ile giriş ve orta seviye olarak görebileceğimiz bir video serisi oldu. Bu video serisi hakkında gerek mail gerekse video yorumları olarak çok geri dönüş aldım. Bazı noktalarda yine yorumlar ve mail aracılığı ile benimde atladığım noktaları arkadaşlardan öğrendim. Bu sayede iletişim kurarak beraber bilgi alışverişinde bulunduk.

Tabi video serisine başlamadan önce sizlere ufak tavsiyelerde bulunmam gerekirse bunları şu şekilde sıralayabiliriz.

  • Öncelikle c# bilginiz temel manada varsayarak önerilerimi sıralıyorum
  • Asp.NET Webform ile uğraştınız ise geçiş yapmanız daha kolay olacaktır. Birazcık ASp.NET MVC nedir diye araştırıp teorik manada bilgi toplayın.
  • Bu teorik bilgi toplama işleminiz Asp.NET MVC yapısı yani Model View Controller nedir gibi ifadeler ile karşınıza çıkacak kaynakları inceleyebilirsiniz.
  • Bu aşamadan sonra karşınıza veritabanı ve bizimde projede kullandığımız ORM (Object Relational Mapping) olan yani işlerimizikolaylaştıracak olan Entity Framework'ü araştırıp teorik bilgiyi öğrenebilirsiniz.
  • Bu aşamaları da geçtikten sonra artık bu video serisiyle ilk projenizi yapmaya başlaybilirsiniz.
Ve unutmayınız ki öğrenme süreklilik isteyen bir iştir. Bunun için devamlılık esastır. Bu devamlılığı da kendinizi geliştirmek istediğiniz alana göre belirleyerek şekillerndirebilirsiniz.

Son olarak Makale Ekleme Resim Yükleme ve Boyutlandırma videosu ile veda ediyorum. Görüşmek üzere..


Pazartesi, Şubat 20, 2017

Entity Framework - Codefirst From Database Yaklaşımı

Merhabalar,

Önceki yazımda Entity Framework Database First yaklaşımını incelemiş ve var olan veritabanımızdan nasıl model oluşturabileceğimizi incelemiştik. Bu yazımızda ise bir diğer yaklaşım olan Code First From Database yaklaşımını irdeleyeceğiz.

Öncelikle oluşturmuş olduğumuz projede Models klasörüne sağ tıklayıp Add New ile yeni öğe ekleyeceğimiz şablonlarımızı açıyoruz. Buradan Data sekmesi altında Entity Data Model seçip uygun isimlendirmeyi yapıyoruz. Ben Northwind veritabanı ile çalışacağım için NorthwindDB olarak isimlendiriyorum. Bu isimlendirme şunun için önemli; codefirst yapısında oluşturulan classları veritabanına yansıttığımız context classımızın adını belirlediği için önemlidir.


Bu işlemden sonra inceleyeceğimiz olan Codefirst From Database seçeneğimizi seçerek ileri diyoruz.


Sonrasında henüz bir veritabanı bağlantısı yapmadığımız için bize bir veritabanına bağlanmamız gereken penceremiz gelir.


Bu menümüzde New Connection butonu yardımı ile veritabanı bağlantısı oluşturacağımız penceremizi açarız. 

Server Name bilgimizi girerek oluşturmuş olduğumuz veritabanını seçeriz. Ben örnek olması açısından Microsoft tarafından dağıtılan Northwind veritabanını kullanacağım. Gerekli işlemi yapıp OK diyerek bağlantımı oluşturuyorum.


 Bağlantımızı oluşturduktan sonra bağlantı cümlemizi ve bunu Web.Config dosyasına kaydedeceğini belirterek İleri diyoruz.

Burada ekstra bir durumu belirtmek istiyorum. Örneğin veritabanı ile çalışırken veritabanında değişiklik yaptınız. Bu durumda ne yapmanız gerekecek?

Öncelikle veritabanına yeni tablo veya tablolara yeni alanlar eklediniz. Bunu codefirst olarak oluşan classlarınıza da yansıtmak için öncelikle classlarımızı tamamen siliyoruz. Sonrasında tekrar yeni model ekle diyerek Codefirts From Database seçeneği ile claslarımızı yeniden oluşturuyoruz.

Bir diğer dikkat etmemiz gereken konu NorthwindDB adındaki bağlantı cümlemizi Web.Config dosyamıza tekrar kaydetmemize gerek yok. Dolayısıyla o seçeneğimizi kaldırıyoruz. Ve bu şekilde değişikliklerimizi uyguluyoruz.


Bu bilgilendirme aşamasından sonra biz işlemimize ilk defa yapıyormuş gibi devam ediyorum. İleri dedikten sonra bize veritabanımızdaki tablolarımızı ve viewlarımızı seçebileceğimiz pencere geliyor. Tamamını seçip finish dediğimizde Codefirst mimarisine uygun olarak veritabanımızı classlara çevirmiş oluyoruz.



Son olarak baktığımızda Models klasörü altında classlarımız oluştuğunu görüyoruz. Ve bize NorthwindDB adında data context class ımızı ve oluşturulan classların veritabanına set edilfiğini bazı metodların yazıldığını görüyoruz.

Burada Codefirst mimarisini anlamak ve üzerine çalışmalar yapmak için başlangıç yapabilmek için bu oluşan classlar incelenebilir.


Bu şekilde Entity Framework Code First From Database yapısı ile proje geliştirmeye devam edebiliriz.

Faydalı olması dileklerimle..

Pazar, Şubat 19, 2017

Entity Framework - Database First Yaklaşımı



Merhaba,

Asp.NET Webform yada Asp.NET MVC projelerimizi geliştirirken Framework olarak Entity Framework kullanımını tercih ettiğimizde karşımıza bazı seçenekler çıkıyor. Bu seçeneklere Entity Framework Veritabanı yaklaşımları-yöntemleri diyebiliriz.

Kısaca Entity Framework Nedir?

.Net platformunda ORM (Object Relational Mapping) araçlarından biridir. ORM (Object Relational Mapping) ise veritabanı ile nesneye yönelik programlama (OOP) arasındaki ilişkiyi kuran teknolojidir. Yani Entity Framework, nesne tabanlı programlamada veritabanındaki tablolara uygun nesneler oluşturma tekniğidir.

Bu makalemizde bu yaklaşımlardan ilki olan Database First Yaklaşımına değineceğim.


Kısaca bu yaklaşımlara değinecek olursak;
  1. EF Designer From Database : Oluşturmuş olduğumuz veritabanından bize bir model oluşturmamıza olanak sağlayan bu makalede inceleyeceğimiz Database First yaklaşımıdır.
  2. EmtyEF Designer Model : Model First yaklaşımı olarak adlandırabiliriz. Burada bize boş bir model oluşturulur ve biz Entityleri manuel olarak oluşturup veritabanı tarafına yansıtırız.
  3. Emty Code First Model : Bu seçenek de Code Firts yaklaşımına uygun bir şekilde model oluşturmamızı sağlar
  4. Code First From Database : Bu seçeneğimiz ise daha önce çeşitli araçlar yardımıyla çözdüğümüz veritabanından codefirst yapısına çevirme işlemini artık Entity Framework içerisinden yapmamıza olanak sağlayan seçeneğimizdir. Kısaca şöyle diyebiliriz; var olan veritabanımızdan bize codefirst yapısına uygun şekilde class'ları otomatik oluşturan yapımızdır. 


EF Designer From Database yani Database First yapımızı inceleyecek olursak;

Projemiz üzerine yada modelimizi oluşturacağımız klasörümüz üzerine sağ tıklayarak Add New seçeneği Entity Data Model sihirbazına ulaşabiliriz.


Burada Data sekmesi altından Ado.NET Entity Data Model'i seçip isim vererek Add butonuna tıklayarak Modelimizi oluşturmaya başlıyoruz.


Entity Data Model Sihirbazından ilk seçeneğimiz olan EF Designer From Database yani Database First seçiyoruz.


Bu aşamada veritabanı bağlantımızı New Connection butonu yardımıyla yapıyoruz. Connection String kısmında bağlantı cümlemizi incelyebiliriz. Ayrıca Save connection string in Web.Config işaretleyerek belirttiğimiz isim ile Web.Config dosyamıza bağlantı cümlemizi ekliyoruz.


Bu aşamada ise bize veritabanımızdaki tablolarımızı var ise viewlarımızı seçerek modelimizin oluşması için Finish butonuna tıklıyoruz.

Bu işlem sonrasında modelimiz veritabanında oluşturduğumuz özellikler ve ilişkiler dahilinde oluşmuş oluyor. Modelimizin son görüntüsü de aşağıdaki gibidir.





Bu makalede Entity Framework Veritabanı Yaklaşımlarına giriş yaparak Database First Yaklaşımını inceledik. Faydalı olması dileklerimle...







Cuma, Şubat 17, 2017

Asp.NET MVC Eğitimi (Örnek Proje )


Merhaba,

Youtube kanalımda yayınlamış olduğum Asp.NET MVC ile Blog Sitesi Yapımı Eğitim Videolarını sizlerle paylaşacağım.

Videolar temel ve orta düzeyde olup kolay ve sade bir dille anlatmaya gayret ettim. Proje olarak Blog projesini baz alarak Asp.NET MVC ile nasıl proje geliştirebiliriz ve bu geliştirme esnasında bize yardımcı olacak kütüphaneleri ve diğer bileşenleri inceledik.

Projemizde MSSQL veritabanı ile blog veritabanımızı oluşturduk. Tablolar arasındaki ilişkileri Database Diagram yardımı ile oluşturarak altyapıyı hazırladık.

Sonrasında startbootstrap..com temin ettiğimiz Blog templates ve SB Admin templates ile bloğumuzun ön yüz ve admin paneli için tasarımlarını mvc mantığı içerisinde Layout sayfalarımızı hazırlayarak tamamladık.

Projemizde Entity Framework ORM ve Linq kullanarak veritabanı işlemlerimizi gerçekleştirdik.

Üye girişi yetkiye göre Admin Pabeline erişim, makalelere yorum yapma, makale yazma, kullanıcı profilleri, makale arama, resim yükleme, etiket ekleme, makale silme, kullanıcı yönetimleri ve rol yönetimler ve daha bir çok özelliği işlediğimiz eğitim videolarımızda sizler için iyi bir başlangıç olacağına inanıyorum.

İnternette bir çok eğitim videosu mevcut ancak ben bu tür videolar hazırlarken bir proje üzerinde baştan sona tam manasıyla tamamlayarak kesinti olmadan tamamlamaya dikkat ediyorum. Çünkü yarım kaldığında kişi öğrenimi orada bırakıp bir süre sonra öğrendiklerini unutabiliyor.

Umarım sizler için faydalı olur. Oynatma listesi linki ;

https://www.youtube.com/watch?v=YKEqtwUC3YE&list=PLtiQOnu1I5QwT5nsrxUNO2gSfk60fynla