Creational Design Patterns > ProtoType Design Pattern Hap bilgidir. İşletmeler’den çıkan ürün/ hizmet sonrasında kesilen faturalar gibi düşünebilirsiniz. Faturalarda tarih, satıcı, alıcı, ürün, KDV, toplam, fatura seri no bilgileri yer alır. Faturayı hazırlayan kişi de bir yaprak koparıp şablondaki boşlukları doldurur. “ProtoType Design Pattern” böyle çalışıyor. Örnekte inceleyelim. Teorik bilgi: Hangi durumlarda kullanılır: Bir şablon […]
Singleton Design Pattern
Creational Design Patterns > Singleton Design Pattern Bu içeriğin artık modasının geçtiğini yani artık kullanılmadığının altını çizeyim. (Microsoft öyle söylüyor) Sıklıkla kullandığınız sabit içerikli methodlarımızı tekrar tekrar yazarak RAM işgal edecek şekilde çalıştırmak yerine tek seferde yazarak ve tek seferde çalıştırarak hem RAM den hem de zamandan tasarruf etmemizi sağlıyor. Singleton nesneler ilk çağırıldıklarında bir […]
Polymorphism
Visual Studio içinde de sıklıkla kullandığımız bir özellik olan “Polymorphism” ‘i tanıtayım. Türkçe anlamı olarak “Çok Biçimlilik” diyebiliriz. Visual Stüdüo içinde hazır bir methodu yazarken otomatik tamamlamada birden fazla giriş alternatifi olduğunu görürüz. Örneği Random üzerinden vereyim. Rasgele bir sayı oluşturacağım, Random rnd = new Random(); tanımlamamı yaptım ve sayı oluşturma kısmına geçtim. Kodu yazarken […]
Session (Login & Logout)
Kullanıcı girişi, buna bağlı olarak kullanıcı giriş formunu kapatarak “kullanıcı sepeti” gibi özellikleri açan özellik “Session” sayesinde olur. Türkçe karşılığı “oturum” ‘dur. Sunucu tarafında saklanır. “Controller” tarafında işlenir. Kullanıcı giriş yapmadan sayfayı çalıştırdığında oturum kodu verilir ve tarayıcı kapanana kadar ya da belirlenen süre sonunda (varsayılan 20 dk.) otomatik olarak geçerliliğini yitirir. yukarıdaki kod satırlarından […]
Örnek Proje (Başlangıç seviyesi): Personel yönetim sistemi
Dosya ve bağlantılarGitHub: https://github.com/buyukculhaci/GoldenPersonelYonetimi-basic-1 Template: https://www.creative-tim.com/product/material-dashboard c# ‘ta işletmeler için personel yönetim sistemi hazırlayacağım. Basit işlevleriyle veritabanından, sorgulanan personelin hangi birimede çalıştığı, maaşı, yaşı gibi bilgilerini çekeceğim. Öncelikle kağıt üstünde hangi personel bilgilerinin dahil olacağını çıkarıyorum. Bunlar;İsim, soyisim, doğum tarihi, başlangıç maaşı, cinsiyet, evlilik durumu gibi genel bilgiler. Ardından bu bilgileri tutacak bir veritabanı hazırlıyorum. […]
Stored Procedures
Sunucuda derlenmiş olarak saklanan SQL scriptlerine “Stored Procedure” ismi verilir. SP ‘ler sunucu içerisinde derlenmiş olarak saklanırlar. SQL üzerindeki yazılmış programlar da burada çalıştırılır. Programlama hayatımızda çok kullanacağımız kısım “User Defined Stored Procedure“, başlığa gitmek için tıklayın. 4 çeşit SP vardır. Bunlar; 1 – System Defined Stored Procedure 2 – Extended Procedure 3 – User […]
“controller” ‘dan “view” ‘e çoklu veri göndermek
Tekli veri göndermedeki yöntemden biraz farklı olarak burada; “controller” kısmındaki verimizi View() içinde doğrudan gönderiyorum, Models/users.cs HomeController.cs gönderdiğim veriyi view kısmında kullanmak için ise; @model (buradaki küçük harfle başlar) ile başlayarak “controller” ‘dan gönderdiğim verinin hangi tiple geldiğini göstererek, 16. ve 17. satırda @Model.### (buradaki büyük harfle başlar) ile değişkenimi kullanıyorum. ### kısmında “class” içinde […]
“controller” ‘dan “view” ‘e tekli veri göndermek
Bir sınıf tanımlayıp gönderme veritabanından gelen veriyi “partialView” ile iletmeyi biliyoruz.Tek veri göndereceğimiz zaman (örneğin veritabanından 20 yaş üstü olan kişileri saydırarak bir adet sayı döndürerek “view” ‘e göndereceğiz.) Controller kısmı (HomeController): “controller” ‘da “ViewData[“vieweGonderilenVeri”] = id;” olarak “view” ‘e gönderdiğimiz veriyi, View kısmı (Veri.cshtml):“view” ‘de “@ViewData[“vieweGonderilenVeri”]” ile yakalayıp yazdırıyoruz. https://localhost:44330/Home/Veri/16 bağlantımız localhost üzerinde HomeController […]
RouteConfig Ayarları
Ayarlanacak 2. kısım. Temiz gelen (yukarıdaki gibi) RouteConfig için, “route” ‘ları tek tek buradan yönlendirmek yerine routes.MapMvcAttributeRoutes(); ile “controller” ‘ımız içinde yazacağımız “attribute” ‘a dönüştürerek burada daha sonra meydana gelecek olan karmaşıklığı önlemiş oluruz. kullanacağımız “controller” içinde yönleneceğimiz “ActionResult” ‘a “attribute” olarak ekleriz. Temiz kod.
Link kısaltıcı yapmak
Uzun ve yazması zor olan linkleri kısaltmak için web sitelerine mutlaka denk gelmişsinizdir. Bunlardan en bilineni 63 m$ yatırım alan “bit.ly”. Bu miktar, bir fikir ve birkaç satır kodun değerini çok iyi gösteriyor. Bu sistemin basit bir örneğini hazırladım. adım Python ile yazılmış kodumuz. Aşağıdaki scriptte arasından seçim yapmak üzere bir karakter listesi hazırladım (charlist). […]