MacOSX üzerinde php ile geliştirme yapmak istiyorsanız ilk yapmanız gereken şey geliştirme ortamınızı hazırlamak olacaktır.

MacOSX üzerinde halihazırda kurulu bir apache ve php sürümü bulunuyor zaten. Bunları basitçe aktif hale getirebilir ve geri kalan ayarları elle yapmak isteyebilirsiniz fakat macosx ile yüklü gelen php, apache sürümü ve eklentileri, standart ihtiyaçlara bile cevap veremeyebilir. Basit bir wordpress kurulumu bile gd, zip, iconv ve benzeri php eklentilerine ihtiyaç duyacaktır. Dolayısıyla bir noktada php kurulu php sürümünü güncellemeye ihtiyaç duyabilirsiniz. Apache için de durum aynı. Ayrıca sadece eklentiler değil, mysql gibi birkaç sunucu uygulaması da kurmak zorunda kalacaksınız. Bunları tek yerden başlatıp durdurabilmek için de başka araçlar bulmanız veya geliştirmeniz de gerekebilir.

Varolan apache ve php kurlumunu kullanmak dışında en hızlı kurlumu, MAMP (MacOSX Apache MySQL PHP) ile yapabilirsiniz. Bir çok genel eklentiyle beraber universal olarak derlenmiş ve paketlenmiş bir uygulama diyebiliriz MAMP için. MAMP ile birkaç dakika içinde standart bir web geliştirme ortamını ayağa kaldırabilirsiniz.

http://www.mamp.info/ adresinden indirebileceğiniz MAMP, basit bir şekilde kurulabiliyor. Applications klasörünüzde MAMP adında bir klasör içinde herşeyi toplu bir şekilde bulabileceğiniz MAMP, birçok ayar dosyasını da barındırıyor. Dolayısıyla Web root dizininizi kolayca değiştirebilir, php.ini veya my.cnf'i modifiye ederek istediğiniz eklentileri aktifleştirebilir pasifleştirebilirsiniz.

http://www.mamp.info/en/mamp/index.html adresinden MAMP ile beraber gelen tüm kütüphane / eklenti ve sunucu yazılımlarının listesini görebilirsiniz. MAMP'in standart sürümü ücretsiz ve basit bir yönetim arayüzü sunuyor.

MAMP
Eğer vhost, dns, email sunucusu ayarlarınızı görsel bir arayüzde yönetmek istiyorsanız tek seferlik satın alabileceğiniz bir lisans ile MAMP PRO yani sadece yönetimsel arayüz uygulaması satın alarak varolan MAMP kurulumunuzu kolayca yönetebilirsiniz.

MAMP PRO
Birkaç ipucu vermem gerekirse, MAMP PRO'da çok göz önünde olmasa da "File > Edit Template > ..." menüsünden php.ini, my.cnf, httpd.conf gibi ayar dosyalarınıza hangi dizinde olduklarını çözmeye gerek kalmadan ulaşabilirsiniz.

Web root klasörünüzü (kullanıyorsanız) Dropbox'unuzda bir dizini belirterek tüm web geliştirme dosyalarınızı ve projelerinizi dropbox'da tutarak anlık yedekleme sağlayabilirsiniz.


Baştan belirtmek zorundayım, iOS uygulamalarına otomatik yenilenen abonelikleri entegre etmek tam bir baş ağrısı. Her ödeme yönetminin zor yanları olabilir, ancak iOS uygulama mağazası üstünden yapılan otomatik tekrar eden abonelikleri yönetmek çok daha karışık bir mevzu.

Baştan başlamak gerekirse, otomatik ödeme yönetime ile yapılan abonelikler diğer tür ödemelerden farklı. "iOS uygulama içi satış entegrasyonu ve ödemeleri doğrulamak" yazısında iOS uygulama mağazası ödemelerini entegre etmek ve ödeme türleri üzerine bir yazı yazmıştım. Otomatik tekrar eden abonelik dışındaki diğer ödeme türlerinin entegresyonunu o yazıdan inceleyebilirsiniz. Ancak bu konuda bilginiz yoksa önce o yazıdaki bilgilere ihtiyacınız olacak, önce o yazıyı incelemenizi tavsiye ederim.

Otomatik tekrar eden abonelikler sayesinde, kullanıcınızın iznini aldıktan sonra iTunes aracılığıyla, 1 haftalık, 1 aylık, 2, 3, 6 veya 12 aylık periyodlarla otomatik şekilde ödemelerini sağlayabiliyorsunuz. Bir ürün için kullanıcıyı elde tutmak açısından diğer, tek seferlik satın almalardan çok daha değerli. Kullanıcınız ödemeyi ilk sefer yaparken satın almayı yapıyor ve sonrasında servisi iTunes üstünden iptal edilene kadar ödemeler otomatik tekrarlanıyor. Siz kazancınızı Apple'dan alıyorsunuz.

Devamını Oku →
iOS uygulaması geliştirmek bu günlerde oldukça popüler. Turkiye'de de birçok oyun geliştiricisi iOS platformlara yönelmeye başladı.

Uygulamanızda geliştireceğiniz gelir modeliniz bir şekilde Apple ödeme sistemine bağlanmak zorunda çünkü Apple uygulama geliştirici kontratınıza göre uygulama üzerinde yapacağınız herhangi bir satış modelini Apple ödeme sistemi üzerinden yapmak durumundasınız. Apple uygualama içi ödeme sistemini kullanmanın avantajları ve dezavantajları var.

En büyük dezavantajı her ödemede, Apple'a 30% vermek. Bunun dışında ödemeleri doğrulamanın teknik zorlukları da var. Bunun dışında avantajları, dezavantajlarını unutturacak kadar değerli. Çünkü iOS üstünden yapılacak bir alışverişte herhangi bir ödeme bilgisi sorgusu olmayacak, kullanıcılar ödeme bilgilerini zaten sistemde tanıtmış durumda. Yani bir ödeme kabul edebilmek aslında sadece bir onaylama kutusuna indirgeniyor. Çoğu durumda tek onay sorusuna cevap vermek ve Apple kimlik şifresini doğrulamakla ödeme sağlanabiliyor.

Bir diğer avantaj da, herhangi bir ödeme yönetim sistemi, banka vs gibi bir entegrasyonla uğraşmak durumunda olmamanız.

Şimdi gelelim entegrasyona, iOS geliştirici (objective-c) tarafında gerekli entegrasyonu StoreKit denilen bir Apple arabirimi ile iOS uygulamanıza yapmanız gerekiyor. Bazi amatör programcılar veya sunucu bağımsız uygulama yazmaya çalışan geliştiriciler ya gözden kaçırıyorlar ya da gerek görmüyorlar ama aslında StoreKit'den aldığınız tüm fatura kopyalarını (receipts) Apple sunucularına göndererek doğrulamanız gerekiyor.

Devamını Oku →
Bu sabah metorya binerken ipad mini'yi düşürdüm ve ters olarak (ekran üstte kalacak şekilde) sert bir şekilde yeri öptü. Aynı hareketi 5-6 yıl önce yeni aldığım bir macbook pro'ya da yapmıştım. Herhalde ilk düşürdüğüm cihazdır o, o zaman soğuk terlemiştim ama artık mobil cihazlarla herhalde çok daha fazla alıştık düşürmeye.



Normalde çok dikkatliyimdir ve son 3 ayı ve yıllar önce düşürdüğüm macbook'u saymazsak hayatımda hiçbirşeyi düşürmemiş unutmamışımdır. Ancak iphone 5'i çıktığından beri kullanıyorum ve ilk hafta 3 kere düşürdüm, neyseki ofiste evde ve alçak mesafeden oldu hepsi. Geçen ay ipad mini aldım ve iphone5'deki gibi boyut ve ağırlığı ciddi derecede ufaltmışlar.

Ev ve ofisim arasındaki seyahatimde neredeyse her gün ipad'le genellikle birşeyler okuyarak geçiriyorum, eski büyük ipadi bu kadar çok taşımıyordum ama son 1 aydır ipad mini ile bunu her gün yapmaya başladım. Kullandığım metro hattı sabahları biraz kalabalık oluyor ve çoğunlukla ayakta seyahat ediyorum. Bu sabah ipadi ikinci kere düşürdüm, daha önce de bir yerlerde düşürmüştüm ve neyseki hala hasarsız çiziksik durumda.

Sanırım ağır cihazlara alışmışız veya artık elde tutulamayacak ağırlıklara gelmeye başladı mobil cihaz üreten şirketler. Ama açıkça ki dikkatli olan biri için bile bu cihazlar düşmeye, elden kaymaya daha yatkınlar. Her gün birinin kırılmış, çatlamış telefonunu veya tabletini görüyorum. Muhtemelen cam değiştirme eskisi gibi pahalı değil veya bunu servis olarak sunan gayrı resmi şirketler var. Yoksa bile yakın zamanda çoğalacaklar eminim :-)

Bu yazıdan sonra birkaç sağlamlık testi videosuna göz atmak isteyebilirsiniz:http://youtu.be/pMvE0lkunBg vehttp://youtu.be/T4kBn-GRw1M

Popüler Etiketler

mootools ajax xmlhttprequest javascript js php pear mdb2 prepare execute mysql mssql pgsql kitap ui design development social google chart api osx applications free url service tool search apache apple server html html5 form input mobile örnek kod firefox logo framework db code kurulum kontrol yapıları if switch iphone ipad mail newsletter subscription css ide editor phpstorm jetbrains deployment version control svn git less compile compiler macosx windows linux app on-the-fly twitter statistics istatistik insanlar oyun dokuman portfolio ios app store store in-app purchase purchase verification storekit itunes connect itunes internet jquery htaccess mod_rewrite cookie assets rss xml export sql injection fstab ntfs lifestream parse browsers table plugin nedir ux login css3 webkit subversion startups www subdomain redirect crossdomain query box coding wanda digital tebrik developer license button pharma hack wordpress optimization facebook connect ruffles cache ubuntu workspace konsol terminal blog ie browser bootstrap opengraph graph share optimizasyon analyse procedure media screen date diff ipucu object wireless player network gimp auth http generator internet explorer seo meta radio style lisans widget calendar regex fql support grafik mfyz imza signature while sosyal medya database banner route router open source web app language nasıl tarih textarea proje select doritos tytz zaman notebook laptop session iOS sitemap spam link download job howto icon ikon xhtml integration music cms kampanya icons