Mobil Uygulama Geliştirme (Native & Hybrid )

Merhaba,

Mobil uygulama geliştirmek için uygulayabileceğiniz farklı methodlar var. Uygulamanın ihtiyacına göre bu tercihi yapabilirsiniz. Native ve Hybrid uygulamalar.

Kısaca bu terimleri açıklamak istiyorum;

Native Uygulama dediğimiz de klasik android ve ios ve diğer platformlar için ayrı ayrı native dillerde ( java, swift ) gibi geliştirmekten bahsediyorum.

Her bir platforma geliştirme yapmak için ayrı ayrı zaman ve maaliyet olarak geliştirilen klasik modele native uygulama geliştirme diyoruz.

Peki nedir bu hybrid uygulamalar. Hybrid uygulamada tek kod çok platform mantığı var.

Burada dediğim gibi ihtiyaca göre tamamen kararı vermek size ait. Eğer çok kapsamlı grafikler ve telefon gücüne ihtiyacınız olacaksa native yazmanızda fayda var.

Şuan ki geldiğimiz teknolojik imkanlar ile birlikte hybrid uygulamalar farklı bir boyut kazanmış durumda. Sorun şu ki çoğu kişi webview uygulama ile hybrid uygulamaları birbiri ile çok karıştırıyor.

Webview içinde uygulamayı açmak ve çalıştırmak klasik mobil uyumlu bir responsive tasarımı çalıştırmak demektir. Fakat bizim istediğimiz ve ihtiyaçlarımızı karşılayacak olan çözüm bu değil, en azından hybrid uygulama geliştirirken beklentiler farklı yönde.

Siz bir uygulama geliştiriyorsanız, yeri geldiğinde o kullanıcıya bildirim gönderebilmeli. SMS kutusuna, rehberine veya location bilgilerini almaya ihtiyaç duyabilirsiniz. İşte ayrım tam olarak burada başlıyor.

Hybrid uygulamaların mantığında da webview çalışıyor fakat native özelliklere erişmemize de olanak sağlanıyor.

Hybrid uygulama geliştireceklere en büyük tavsiyem IONIC olacaktır. Ionic 1, ionic 3 ve son çıkan ionic 4 ile birlikte geliştirme ortamları farklılaşmış durumda. Eskiden sadece angular js ile geliştirme yapabiliyorken şuan artık vue js mobil uygulama geliştirme, react mobil uygulama geliştirme gibi bir çok dilde destek geldi.

Ionic ile birlikte kullanıcıların telefonun native özelliklerini de kullanmasını sağlayabiliyorsunuz. Mantığında HTML ve CSS çalıştırdığı için web ortamından fazla uzaklaşmıyorsunuz ama mobil uygulama geliştirmiş oluyorsunuz 🙂

Blog sitemde Ionic, Angular JS ile alakalı derslere de yer vermeyi düşünüyorum.

Özet olarak, hybrid uygulamalar şuan günümüzde bir çok ihtiyaca yanıt verir durumda ve bunları oldukça hızlı geliştiriyor. Az maliyete, tek geliştirme ile mükemmel hız kazandırıyor. Teknoloji ile uyum içinde ilerlemek yeniliklere açık olmak size avantaj olarak dönüyor.

PHP Hata Yakalama ( Try – Catch Kullanımı )

Php ile Hata yakalamayı projelerimizde bir çok farklı amaç için kullanabiliriz. Örneğin yakaladığımız hataları bir mail adresine veya telefona gönderebiliriz.

Bundan daha önemlisi, yaptığınız uygulamanın FATAL ERROR vermemesi bizler için önemli. Bir hata olsa dahi yazdığımız kodların çalışmasını isteriz.

Bunun için PHP’de try catch methodunu kullanarak, sayfada ki hataları yakalayıp kontrol altına alabiliriz.

 

https://youtu.be/HH5Xr7dmCqs

class customError extends Exception{
function myErrorFunction(){
echo $this->getMessage();
}
}

function controlAge( $age ){
if( $age < 18 ){ //throw new Exception("Malesef, 18 yaşından küçüksün.".PHP_EOL); throw new customError(" Sen daha çok küçüksün yavrucum". PHP_EOL); } } try{ controlAge( 17 ); }catch( customError $e ){ $e->myErrorFunction();
}finally{
echo "finish ".PHP_EOL;
}

 

Substr PHP Fonksiyonunda Karakter Sorunu

Php ile string işlemlerinde substr fonksiyonuna ihtiyaç duyduğumuz zamanlar oluyor. Geçen bir proje de çalışırken karakter sorunu ile karşı karşıya kaldım. Aynı sorunu yaşayanlar var ise çözümü paylaşayım belki bir faydası olur 🙂

substr fonksiyonu yerine mb_substr fonksiyonunu kullanacağız.

 

mb_substr fonksiyonunun kullanımı;

mb_substr($string, 0, 5, “utf-8”);

 

Bir başka yazıda görüşmek üzere…

Üyelerin Sitede Kalma Süresini Hesaplama

Kullanıcı girişi yapan üyelerin site içerisinde ne kadar kaldığını hesaplayabilmek için bir kaç farklı method var;

  • CronJob ile sunucu da düzenli bir talimat vererek kontrol yapma.
  • Session değerleri ile yapılabilecek kontroller.
  • İki periyot arasında ki zamanı ölçüp buna göre çıktı vermek.

Belki farklı yöntemler ile de üyelerin sitede geçirdikleri vakiti ölçebilirsiniz. Anlatacaklarımdan farklı bir method ile çözüm bulabildiyseniz yorum alanında söyleyebilirsiniz 🙂

Kullanıcılar için sitede geçirdikleri vakiti hesaplarken baş etmemiz gereken en büyük sorunlardan biri, kullanıcıların çıkış yapmadan tarayıcı kapatıp gitmesidir. Dolalısıyla herhangi bir action olmayınca çıkış zamanını kestiremiyorsunuz.

Bu soruna çözüm bulabilmek için;

  • Kullanıcının son girişlerini tutabileceğiniz bir yer ayarlayın veritabanı içerisinde.
  • Herhangi bir sayfada aktif olduğu süre ile son aktif olduğu süreyi kıyaslayın eğer 5 veya 10 dakika gibi bir zaman periyodundan uzunsa işlem yapmayın, eğer tersi olursa aktif geçirdiği süreye ekleyebilirsiniz.

Kısa bir kod ile açıklamak istiyorum;

  $differentTime = (time() – $lastTime)

Böylece kullanıcıların sitede ne kadar aktif olduklarını ortalama olarak tutabiliriz. Aklınıza daha farklı bir yöntem gelirse mutlaka duymak isterim 🙂

 

2017 yılından beklentilerim

2017 yılından beklentilerim

 

Yeni bir yıla girerken planlı, hedefli ve tutkulu girmek amacı ile yıl içerisinde rehber olacak şekilde beklentilerimi ve hedeflerimi paylaşmak istiyorum. Belki birini etkiler ve güzel çalışmalara başlamasına vesile olurum 🙂 Ağırlıklı olarak yeni yapmak istediğim projelerden bahsedeceğim bu yazımda.

 

Okumaya devam et “2017 yılından beklentilerim”

2016 yılı benim için nasıl geçti ?

Benim için 2016 Yılı Nasıl Geçti ?

 

Yeni yıla girmeden evvel 2016 yılının benim için nasıl geçtiğini eksikleri ve artıları ile paylaşmak istedim 🙂

 

Bu yıl içerisinde yaptığım projeler nelerdi ?

 

  • Sorun Akademi
  • Oyun Yazılımı
  • Eğitim Yazılımları
  • Çeşitli firmaların ihtiyacını giderecek web uygulamaları
  • Dernek, kongre yazılımları

 

Okumaya devam et “2016 yılı benim için nasıl geçti ?”

Ardı Sonu Gelmeyen Araba Çektirme Vakam #3

beyaz-melegim

Arabası çekilen varsa bilir, “ben yemedim sen ye” parası gibi hissettirir. Arabada kullanılması için bir tuş icat etmişler: “Dörtlüler”.

Yabancısı olduğum bir mevkide arabadan inip çok kısa işimi halledip dönecektim. Bu yüzden arabanın dörlülerini yaktım ve indim arabadan. Park ettiğim yer caddenin sağ tarafı ve trafiği aksatmayacak şekildeydi. Önümde BMW markalı siyah araç Dörtlüleri açık şekilde duruyordu. İşimi halletmek için çıktım arabadan, geri döndüğümde maksimum taş çatlasın 3 veya 4 dakika olmuştur. Caddeye bir çıktım birde ne göreyim ! Daha doğrusu ne görmeyeyim … Araba yok olmuş. Sonra çevredekiler uyardı ve aracımı çeken arabayı gördüm, gidiyordu beyaz meleğim. Koşarak yetiştim ona…

Okumaya devam et “Ardı Sonu Gelmeyen Araba Çektirme Vakam #3”

Eğitim Sisteminin Eğitimsizliği Ne Olacak ?

Türkiye’deki eğitim sistemi ne zaman değişir bilmiyorum ama şuanki sistemden çok daha iyisini yapabilirdik. Nice cevher bulunduran genç beyinleri, ilgisinin olmadığı ağır biyoloji, kimya, fizik, matematik gibi alanlarda test ediyoruz. Bu cümlemden sakına bu derslerin gereksiz olduğu anlamını çıkarmayın. Tabi ki belirli bir düzeyde öğrencilerin bu bilgileri alması gerekiyor.

 

Okumaya devam et “Eğitim Sisteminin Eğitimsizliği Ne Olacak ?”

Yardım Almanın Önemi

Yardımlaşmak insan hayatının olmazsa olmaz bir parçasıdır. İnsanoğlu daha Dünya’ya gözlerini açtığında doktorların yardımı ile gözlerini açıyor. Yaşam içerisinde ki ön yargı ve kibir duygularından arınıp, öncelikle yardımlaşmanın gerekli olduğunu ve bunu yaşam stilimize yansıtmamız gerektiğini unutmayalım.

 

Kısa bir örnek ile yardımlaşmanın önemini açıklamak istiyorum; boş bir arazide direğin üstüne bayrak asmanız gerekiyor. Yanınızda sadece insan topluluğu var.. O halde insanlar omuz omuza olup yükselip bayrağı asmalısınız. Eğer sizi en yukarı götüren aşağıda ki piramidi yapan insanlar olmasaydı, bayrağı asamayacaktınız. “Hayatta yardım almadan başarı hayalleri kurmak düşünülemez”.

 

Okumaya devam et “Yardım Almanın Önemi”