Osman KURT

Yazılım Uzmanı | MVC Eğitmeni

İlk Android Uygulamam Yayınlandı

Merhaba arkadaşlar,

1 ay kadar önce başlamış olduğum android serüvenimde bir aşamayı daha geride bıraktım. İlk uygulamam play store'daki yerini aldı. Bu uygulama www.tumislerburada.com projesinin mobil uygulamasıdır.

İlk deneyimlerimi aktarmak gerekirse android yazılması o kadar da zor olan birşey değil en azından benim için. Şansım ise çevremde android konusunda birtakım bilgi ve birikime sahip insanların olması. Başta android konusunda akıl danıştığım Ferid ve Ersin arkadaşlarıma teşekkür ederim.

www.tumislerburada.com uygulamasını indirmek için lütfen tıklayınız.

 

Osman KURT
Yazılım Uzmanı

JQuery Alert Örneği

Kullanımı çok basit ve güzel olan bir alert uygulaması. Bende projelerimde kullanıyorum ve gerçektende hoş bir görüntü sağlıyor. Ayrıca kullanmış olduğumuz diğer scriptlerle de alakalı herhangi bir çakışma problemi de yaratmıyor.

Bildiğiniz üzere arka planda yaptığımız bütün işlemler içi kullanıcıya bilgilendirm amaçlı mesaj döndermemiz gerekmekte. Bir arkadaşımın tavsiyesi üzerine kullandığım bu alert scripti emin ki inceleyince sizin de hoşunuza gidecek ve sizde projelerinide kullanacaksınız. Bu arada sadece link kısmıı payalaşacağım ama isterseniz .Net platformunda kullanacağım derseniz visual studio programından Package Manager Console alanında Install-Package toastr yazarak da otomatik ekleme yapabilirsiniz. Alt kısımda vereceğim linkte detaylı anlataımı bulabilirsiniz.

http://codeseven.github.io/toastr/demo.html

 

Görüşmek üzere,

Osman KURT
Yazılım Uzmanı

MVC Projelerde Login Kontrolü Yapma Authorize Kullanımı

Bir proje yaptık ve admin panelimiz var yada kullanıcı girişi olduğunu varsaydığımız herhangi bir yer. Bunu ya session yada cookie kullanarak sağlarız. İf koşulumuzu koyarız ve yolumuza devam ederiz. Şimdi şöyle bir durum var. MVC de sayfalar actionresult'lardan oluşmakta hepsi için tek tek if mi yazacağız tabiki hayır. Gerekli gördüğümüz yerde yazabiliriz tabiki ama bir admin paneli için bunu te tek yazmak yazılım hammallığından başka birşey değil tabiki.

Gelelim bu olayı tek bir kod bloğu ile nasıl yapacağımıza. MVC bize authorize diye bir nimet sunmuş ve bunu istediğimiz gibi editlememize olanak sağlamış.

İlk yapmamız gereken kendimize bir class tanımlamak ve bu classı MVC de AuthorizeAttribute sınıfından türetmek. olacak. Daha sonra bu classımızın içine bize bool değer döndüren bir overried bir method yazıyoruz ve if koşulumuzu burada sağlıyoruz. Duruma göre True yada False döndürerek işlemimizin gerçekleşmesini sağlayacağız ve controller'a kullanıcının erişim hakkının olup olmadığını sağlayacağız.

Kod bloğumuz alt kısımda ki gibi;

public class UserAuthorize : AuthorizeAttribute
    {
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            if (httpContext.Request.Cookies["osmankurtnet"] != null)
            {
                return true;
            }
            else
            {
                httpContext.Response.Redirect("/Yonetim/Login/Index");
                return false;
            }

        }
    }

Authorize kodumuzu tamamladığımıza göre sıra onu controller alanımızda kullamaya geldi. Onuda alt kısımda ki gibi kullanıyoruz.

[UserAuthorize]
public class AdminController : Controller
{
    public ActionResult Index()
    {
        return View();
    }
 }

Bu kodumuzu da bu şekilde kullanıyoruz ve istediğimiz şekilde sisteme giriş yetkisi verebiliyor yada engelleyebiliyoruz.

Görüşmek üzere

Osman KURT
Yazılım Uzmanı

MVC Projelerde Editör Kullanırken Alınan HTML Hatası

Mvc proje yazarken genellikle panellerimiz de editör kullanırız. Çünkü eklemek istediğimiz yazılarımıza istediğimiz html taglarını runtime da rahatlıkla vermemize olanak sağlarlar. Birçok örnek verebiliriz bu editörlere ben genellikle CKEditor kullanıyorum.

Gerekli script dosayalarımızı projemize eklediğimizi varsayıyorum ve sayfamızda editörümüzü gördük ve kaydet butonumuza bastık. Karşımıza bir hata çıktı hata içeriğinde html taglarının tehlikesinden bahsediyor. ASP.Net yazarken .aspx sayfalarımıza validatrequest=false diye kullandığımız kodumuz aklımıza geliyor ve bunu mvc deki karşılığını arıyoruz. Bu sefer bu kodumuzu yeni tabirle view sayfamıza değilde controller kısmında controller name alanımızın en başına yazıyoruz.

Kod bloğu alt kısımda mevcut;

    [ValidateInput(false)]
    public class AdminController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }
     }

Kodumuz bu kadar artık istediğimiz gibi editörümüze hükmedebiliriz.

Osman KURT
Yazılım Uzmanı

American Hustle (Düzenbaz) Nasıl Bir Film?

Başrollerini Christian BALE, Bradley COOPER, Amy ADAMS gibi usta oyuncuların oynadığı American Hustle filmi ben ve arkadaşlarım için beklentilerin çok altında kaldı desek abartmış olmayız. Bir perşembe akşamı bütün gün kod yazdıktan sonra akşamı bu filmle değerlendirmek istemek hataydı kabul ediyorum.

Sinemanın bir büyüsü vardırya film aslında istediğiniz gibi başlamaz ama bir noktadan sonra sizin beklentilerini karşılayan bir havaya bürünür bu filmde onu yaşayamadık. Aslında konu alışık olduğumuz FBI ve suç onu farklı kılansa hiç birşey :) Bradley COOPER ve Amy ADAMS'ın bazı sahneleri beni etkilemedi desem yalan olur ama onlarda aynı film gibi bir noktada kestiler devam ettirmediler :):) ama samimi olarak şunu söylemek gerekirse Amy ADAMS bu filmde gerçekten giyinmesini biliyor.

Sonuç olarak eğer sinemaya gitme durumunuz varsa ve bu film ile alakalı öneri istiyorsanız gitmeyin derim. Onun yerine başka alternatifleri değerlendirebilirsiniz.

 

Osman KURT

İlk Android Uygulamamı Geliştirirken

Geçen yazımda android uygulama geliştirmeye başladığımı belirtmiştim. Herşey çok güzel gidiyor. Var olan bir API'den json verileri alarak android platformunda şekillendirebiliyor ve istediğim şekilde ekrana basbiliyorum. İlk defa ecilipse ekranını gören biri olarak iyi bir aşamaya geldiğimi söylebilirim. En azından çevremden öyle duyuyorum. Yakın zaman da markete eklerim diye tahmine diyorum ama performans testleri tabi ki bu işin olmazsa olmazı. İlk olarak öğrendiğim şeylerden biri android platformunda uygulama yazarken sürüme dikkat etmeniz gerekiyor. Şuan kullanılan maksimum SDK 19 diye biliyorum minumum ise Türkiye standartlarını ele almak gerekirse 8, bu da tam olarak android 2.2 versiyonuna denk geliyor minumum seviyede.

Eğer yeni tür tasarımlar kullanmak istiyorsanız alt seviye telefonlar ve ekranlar biraz işinizi bozabiliyor tabi ki ama sabırlı olmakta fayda var.

Alt kısımda size versiyonları paylaşıyorum uygulama açacağınız zaman hangi versiyona hitap edeceğinize karar vermeniz açısından yardımcı olacaktır.

 

Sonuç olarak belirtmek gerekirse pahalı IOS yerine android bir tercih olabilir. Haklı bir tercih. Eğer ki bu işten para yemek istiyorsanız daha fazla geç kalmayın derim.

 

Görüşmek üzere,

Osman KURT
.Net MVC & Android Yazılım Uzmanı

 

www.kickstarter.com Nedir?

Kicksatarter her zamanki gibi Amerika'da kurulmuş kar amacı gütmeyen bir bağış sitesidir. Kişiler buraya projelerini ekleiyor ve kullanıcılardan projelerine bağış yapmalarını istiyor.

Genellikle bağımsız yapımcıların kullandığı bu hizmetten çizgi roman, dans, tasarım, moda, film & video, yemek, oyunlar, müzik, fotoğrafçılık, yayıncılık, teknoloji ve tiyatro olmak üzere toplamda 13 farklı dalda proje sahipleri yararlanmaktadır.

Eğer sizinde güvendiğiniz bir projeniz varsa bunun için imkan arıyorsanız ve bizim meşhur melek yatırımcılardan umudunuz kestiyseniz iyi bir araç olabilir bu site. Eğer incelerseniz gerçekten de ne kadar büyük bağışlar yapıldığının farkına varacaksınız.

Umarım sizinde projenizi en kısa sürede buralarda görebiliriz.

Site Adresi: https://www.kickstarter.com/

Görüşmek üzere,

Osman KURT

.Net ve Android Yazılım Uzmanı

ASP.Net MVC Entity Framework Select, Insert, Update ve Delete işlemi

Microsoftbazı projeleine yıllar boyu destek verirken bazı projelerinide elinin tersi ile itiyor ve kısa sürede öldürebiliyor. Bunlara örnek vermek gerekirse XP :)

XP uzun yıllar hayatımızda olan bir işletim sistemi. Belki de belli bir zamana kadar microsoft'un bizlere kazandırdığı en değerli ürünüydü ama herşey gibi onunda sonu geldi tabi. Diğer türlü öldürdüğü yazılımlarına teknolojilerine gelirsek mesleğimle ilgili olan linq teknolojisi. Zamanın öğreneilmesi gereken bir teknolojiydi ama microsoft ani bir kararla artık bu teknolojiyi update etmeyeceğini ve yoluna entity framework ile devam edeceğini açıkladı.

Benimde gerçekten kullanmaktan zevk aldığım bir teknoloji her ne kadar arka kısımda bazı "?" işaretleri olsada kullanmakatan zevk alıyorum diyebilirim.

Bu yazımda size kısaca insert, update ve delete işlemlerinden bahsedeceğim. İlk olarak insert işleminden başlayalım isterseniz.

Firmalar adında bir tablomuz olsun ve bu tablomuzun FirmaAdi alanına 1 adet kayıt eklemek isteyelim.

Firmalar FrAdd = new Firmalar();
FrAdd.FirmaAdi = fir.FirmaAdi;
entity.Firmalar.Add(FrAdd);
entity.SaveChanges();

İşte bu kadar basit. Tablomuzu türetiyoruz verimizi eşitliyoruz hangi tablomuza kayıt atacağımızı belirledikten sonra Entity SaveChanges diyerek kayıt işlemimizi tamamlıyoruz. Unutmamamız gereken nokta her işlemden sonra Entity.SaveChanges(); mutlak suretle yazmamaız aksi takdirde yapılan işlem gerçekleşmeyecek.

Peki update kodumuz nasıl olacak.

Firmalar FirmaDetay = (from a in entity.Firmalar where a.FirmaID == id select a).FirstOrDefault();
FirmaDetay.FirmaAdi = fir.FirmaAdi;
entity.SaveChanges();

Bu işlemimiz de bu kadar. İlk yapılan update yapılacak verimizi select yapmak istediğimiz alandaki değişiklikleri eşitledikten sonra Entity.SaveChanges(); diyerek yapılan işlemi DB ye Execute etmek.

Kısaca silme kodumuz ise aynı şekilde select işlemi yapıldıktan sonra,

var FirmaDetay= (from a in entity.Firmalar where a.FirmaID== id select a).FirstOrDefault();
entity.Firmalar.Remove(FirmaDetay);
entity.SaveChanges();


Bu işlemimiz de son bulduğuna göre artık yazımızı sonlandırmanın zamanı geldi select işlemi hem Update hemde Delete kod bloglarında olduğu için yeniden yazma gereği duymadım. O kısımdan bakabilirsiniz.

Tekrar görüşmek üzere,

Osman KURT
Yazılım Uzmanı

Tüm İşler Burada

Kendi mesleğimden olsun yada olmasın işsizlik yada kendimize göre iş bulamamak gerçekten insanı çok zor durumlarda bırakan bir olay. Yıllarca okulunu okuduğunuz bir mesleğin peşinden koşmak hepimizin tek gayesi ama şartlar bazen istediğimiz gibi gelişmiyor.

Okulu okudunuz mezun oldunuz peki şimdi ne olacak, yapmanız gereken şu www.kariyer.net adresine girerek kendinize uygun olduğunuzu düşündüğünüz işi bulmak. Ama o kadar kolay değil. Çünkü sizin gibi çok birey var hayallerinin işini arayan.

Neyse sorunumuz şuan da o değil ilk adım www.kariyer.net'e girmek. Karşımıza ilanlar çıkınca ve bu kadar eleman arayan olunca bir nebze insan umutlanıyor demek ki durum o kadarda ümitsiz değil. Durmayın hemen başvurun. Tabi cv'nizi güzel bir şekilde hazırladıktan sonra.

Gelelim yazımızın asıl kısmına kariyer.net ve diğer web sayfaları bu işler için gerçekten güzel ama internet üzeride ki bütün iş ilanlarınızı tek bir platform üzerinde düşünseniz nasıl olurdu. Bence gayet güzel olurdu. İşte bu problem artık çözüldü çünkü tek platform da bütün ilanlar toplandı.

Site adresi;

www.tumislerburada.com

Osman KURT
Yazılım Uzmanı