Posts in "Genel Bilgiler"

PushCrew ile sitenize Chrome push notifications ekleyin

Chrome push notifications henüz yeni yeni kullanılmaya başlanmış bir özellik. Fakat hemen servis haline gelmiş. https://pushcrew.com/ adlı girişim, bu özelliği size servis olarak veriyor ve 1 dakikayı aşmayan bir sürede, sitenize entegre edebiliyorsunuz. Bu iş nasıl oluyor ??? diyenler https://apidemo.pushcrew.com/ adresine girin, tarayıcınız tam ekran modunda olmasın ! Trigger Opt-in butonuna basın ve sizden istenen izinlerin hepsini ÇEKİNMEDEN ! onaylayın. Ardından en alttaki mesaj kutusundaki title ve mesaj değerlerini istediğiniz gibi değiştirip Send Notification butona basın ve izleyin. Ekranın sağ üst köşesinde, aşağıdaki gibi bir notification belirecek. Continue reading

MVC Nedir ? En basit açıklaması ile

MVC Nasıl Çalışır ?

mvc

  • Browser’ dan WebServer’ a istek gider.
  • İsteğin route’ u çözülüp, istek controller a sevk edilir.
  • Controller’ da istek anlaşılır, yapılması gereken işlem Model’ e paslanır.
  • Model de Business Logic işlem görür. Model’ de sadece Database işlemleri YAPILMAZ. Bu yanılgıdan kurtulalım. Model ve model den sonraki katmanlar ile database, webservice vb. işlemlerin tümü yapılır.
  • Model’ den controller’ a data döner. Bu data her tipte olabilir. Binlerce satırdan oluşan database kaydıda olabilir, model de yapılan bir işlemin sonucunda durumu bildiren boolean true false ta olabilir.
  • Controller Model’ den datayı aldıktan sonra işlemin tüm controllerını tekrar kendisi üstlenir ve karar verip, view(HTML Template)’ ı una göre şekillendirir. View’ ı şekillendirmek, database ten gelen kayıtları listelemek te olabilir, Model’ de yapılan işlemin sonucuna göre kullanıcıya gösterilecek mesajı seçmekte olabilir.
  • Controller view’ ı şekillendirdikten sonra browser’a cevabını döner ve Uygulamanın Frontend’ indeki kurguya göre bu cevap kullanıcıya gösterilir.

Dikkat Edilmesi Gereken Nokta:
Gördüğünüz üzere herşeyin odak noktasında Controller var. Model katmanında yapılan işlemler teknik olarak Controller katmanında da yapılabilir (Çok ekstrem örnekler dışında). Ama ASLA böyle bir şey yapmayın ! Çünkü bu “Separation of concerns” tasarım prensibine uymamaktadır. Seperation of concerns nedir diye soruyorsanız, http://angulartr.com/separation-of-concerns-nedir/ adresindeki yazımı inceleyebilirsiniz.

SSH Key Yaratma

SSH Key, serverlara bağlanırken, klasik şifre ile giriş ten daha güvenli bir yol sunar. Şifreler brute force attack ile kırılabilirken, ssh keylerin bu yöntem ile kırılması neredeyse imkansıza yakındır. SSH Key oluşturduğunuzda 2 adet key yaratılır. public ve private olan bu keylerden, public olanını bağlanmak istediğiniz serverlara koyarsınız. Server’ a bağlanmak istediğinizde ikisinin eşleşmesi gerekir. Eşleşme işlemi başarı ile sonuçlandığında artık sisteme giriş izniniz verilmiş olur.

Continue reading

AngularJS ile Uygulama Geliştirirken Uyulması Gereken Prensipler

AngularJS ile uygulama geliştirirken, uygulamanız büyümeye başladıkça, yönetmesi de zorlaşmaya başlayacaktır. Tıkandığınız yerlerde, kendiniz 10 larca makaleyi karıştırırken, stackoverflow’ da sabahlarken bulabilirsiniz. Uygulamanız aslında şuan çalıştığından daha performanslı çalışabilir, yönetimi çok çok daha basit olabilir ve hatta yeni modüller eklenmesi sandığınızdan çok daha kolay ve sağlıklı olabilir. İşte herkesin başına gelen sorunları daha en başında çözmek amacıyla, AngularJS geliştiricileri tarafından ortak kabul edilen prensipleri, sizlerle paylaşmaya çalışacağım. Aşağıdaki liste sürekli güncellemektedir ve kurallara uyduğunuz taktirde, geliştirmeleriniz tereyağından kıl çeker gibi kolay olacaktır. Çünkü piyasadaki ortak kurallara göre kod yazmanız, sizin gibi kurallara uyan diğer geliştiricilerin AngularJS için yazdığı ve open source olarak yayınladığı modülleri de kolayca uygulamanıza entegre etmenize olanak sağlayacaktır.

ÖNEMLİ NOT: Aşağıdaki listeki pratikler aslında 2‘ ye ayrılıyor. Teknik olarak yapmak zorunda olduklarınız ve Düzen, prensip, kolay yönetebilme açısından size sunulan çözümler olarak. Bu yüzden incelerken şöyle diyebilirsiniz: “ben bunu böyle yapmasamda çalışır bu”, “bilmemnebilmemne.com’ da böyle anlatmıyor, bu kadar uzatmıyor” vb. şekilde düşünebilirsiniz. Unutmayınki oralarda verilen örnekler, sadece örnek verilen kısmı anlatmak için kolay yoldan yapılmış olabilir, AMMA sizin projeniz büyüyecek ve artık düzensiz çalışamayacaksınız.
Continue reading

AngularJS Nedir?

AngularJS yada şu sıralar 2.versiyonu geliştirilmekte olup adı kısalarak sadece Angular olacak, javascript ile yazılmış, SPA(Single Page Application) geliştirmemize yarayan bir framework’ tür DEDİĞİMİZ ANDA belki de bu yazıyı okuyan kişilerin %99.9′ nun hiç işine yaramayacağı kadar sığ bir açıklama yapmış olacağım. Çünkü Framework dediğimiz zaman, backend’ te kod yazan geliştiriciler için büyük anlamlar ifade ediyor LAKİN Frontend dünyası yakın zamana kadar Jquery KÜTÜPHANESİ ve eklentileri ağırlıklı olmak üzere çeşitli ek kütüphanelerle işlemlerini yürütüyordu. Tamam şimdi itiraz edip, EmberJS kullanılıyordu, BackboneJS vardı diyecekler olabilir ama şahsi fikrim hiçbiri AngularJS kadar gerçek bir framework olmamıştır. Bunu söylerken sadece teknik yeterlilikleri gözönüne almıyorum, örneğin route yada data-bind yapısı yada sizin için framework dediğimiz şey her ne ifade ediyorsa. Benim için önemli olan framework’ ün piyasadaki duruşudur, varlığıdır. Angular‘ ın resmi geliştiricisi Google şirketi, bu bile bize çok şey anlatmakta ki yazının devamında bu konuyu derinlemesine irdeleyeceğim.
Continue reading