Herkese merhaba,
bu yazımda sizlere React Context API kullanımından bahsedeceğim. React ile geliştirme yapıyorsanız komponentler arasında parametre taşıma ve değişiklikleri üst/alt komponentlere taşımanın ne kadar kompleks bir durum olduğunu farketmişsinizdir. Bu durumu aşabilmek için herkes gibi ben de Redux kullanıyordum ve session da tutulması gereken obje/değişkenleri Redux'a atarak ilerliyordum. Global object olarak redux aracılığıyla alt yada üst komponentlere session değerlerini taşıyordum.
Ancak Redux'ın implementasyonu, ilgili komponentlerle ilişkilendirilmesi, Action ve Action Type ların oluşturulması,..vs açıkçası biraz yorucu olmaktaydı. Çünkü büyük ve kompleks projelerde tree yapısındaki komponentlere hükmetmek pek kolay olmuyordu. Daha ergonomik bir çözüm arayan react geliştiricileri son dönemde Facebook'un kendisinin bu işe el atarak Context API'yı yayınlamasıyla bir hayli sevindi.
React Context API; sizin komponentler arasında taşımak istediğiniz objeleri bir Provider komponenti oluşturup bu Provider komponentinin state'inde tutar. Alt komponentlerden de yine ContextAPI içinde bulunan Consumer aracılığıyla erişim imkanı sunar. Sunulan bu yapı sayesinde herhangi bir 3rd entegrasyon yapmadan komponentleri ortak değişkenlerle ilişkilendirebilirsiniz. Bu ilişkilendirmeyi yaparken Redux ta olduğu gibi Action, ActionType, Container, Reducer tanımlaması yapmanıza da gerek kalmayacaktır.
Sizleri çok fazla yazıya boğmadan şunu belirtmek isterim ki; buradaki github linkinde Context API kullanımını inceleyip örneklendirdiğim bir proje bulunmaktadır. Bu projeyi inceleyerek Context API ın kullanımını görebilirsiniz.
NOT: Context API react'ın 16.3 sürümünden sonra eklenmiştir. Belirtilenden daha düşük sürümlerde Context API çalışmayacaktır.
28 Temmuz 2018 Cumartesi
1 Temmuz 2018 Pazar
Ubuntu üzerinde apache mahout kurulumu
Herkese merhaba,
bu yazımda apache mahout'un linux makinelere nasıl kurulacağını anlatacağım. Ben direkt olarak mahout'u indirip kuruyorum ancak kaynak koddan derleyip kurmak isteyenler için de aşağıdaki adımlar yol gösterecektir.
NOT : Apache mahout'un çalışabilmesi için Java'nın ve hadoop'un bilgisayarınıza kurulmuş olması gerekir. Öncelikle java ve hadoop'u kurmayı unutmayın.
Öncelikle repoları güncelleyin
wget komutuyla mahout'u indirin
/usr/local dizininin altında mahout klasörünü oluşturun
artık mahout komutuyla apache mahout'u başlatabilirsiniz
Öncelikle yine işletim sistemini ve repoları güncelleyin
kaynak kodu maven ile derleyeceğimiz için maven kurulu değilse kurun
kurulumdan sonra maven versiyonuna bakarak kurulumun başarılı olup olmadığını doğrulayabilirsiniz
Downloads dizinine gidin
wget komutuyla mahout kaynak kodunu indirin
tar komutuyla indirdiğiniz sıkıştırılmış kaynak kodu içeren dosyayı açın
/usr/local dizininin altında mahout klasörünü oluşturun
artık mahout komutuyla apache mahout'u başlatabilirsiniz
bu yazımda apache mahout'un linux makinelere nasıl kurulacağını anlatacağım. Ben direkt olarak mahout'u indirip kuruyorum ancak kaynak koddan derleyip kurmak isteyenler için de aşağıdaki adımlar yol gösterecektir.
NOT : Apache mahout'un çalışabilmesi için Java'nın ve hadoop'un bilgisayarınıza kurulmuş olması gerekir. Öncelikle java ve hadoop'u kurmayı unutmayın.
Downloads dizinine gidin
$ wget http://mirror.stjschools.org/public/apache/mahout/0.13.0/apache-mahout-distribution-0.13.0.tar.gz
|
tar komutuyla indirdiğiniz sıkıştırılmış dosyayı açın
$ tar xzf apache-mahout-distribution-0.13.0.tar.gz
|
oluşturduğunuz dizine yazma ve çalıştırma izni vermek için aşağıdaki komutu çalıştırın
sıkıştırılış olarak indirip açtığınız dosyaları yeni oluşturduğunuz dizine taşıyın
$ mv apache-mahout-distribution-0.13.0/* /usr/local/mahout
|
taşıma işleminden sonra mahout dizinine gidin
$ cd /usr/local/mahout/
|
Son adım olarak mahout'u kurduğunuz dizinin MAHOUT_HOME değişkenine tanımlamak için aşağıdaki komutu çalıştırın
$ echo "export MAHOUT_HOME=/usr/local/mahout" >> ~/.bashrc
$ echo "export PATH=$MAHOUT_HOME/bin:$PATH" >> ~/.bashrc
|
Kaynak kodu indirerek derlemek isterseniz aşağıdaki adımları takip edin:
| $ wget http://ftp.itu.edu.tr/Mirror/Apache/mahout/0.13.0/apache-mahout-distribution-0.13.0-src.tar.gz |
| $ tar xzf apache-mahout-distribution-0.13.0-src.tar.gz |
oluşturduğunuz dizine yazma ve çalıştırma izni vermek için aşağıdaki komutu çalıştırın
sıkıştırılış olarak indirip açtığınız dosyaları yeni oluşturduğunuz dizine taşıyın
| $ mv ./apache-mahout-distribution-0.13.0/* /usr/local/mahout/ |
taşıma işleminden sonra mahout dizinine gidin
| $ cd /usr/local/mahout/ |
maven ile kaynak kodu derlemek için aşağıdaki komutu çalıştırın. Bu işlem bir hayli uzun sürecektir.
| mvn clean install -Dtest.skip=true |
Son adım olarak mahout'u kurduğunuz dizinin MAHOUT_HOME değişkenine tanımınlamak için aşağıdaki komutu çalıştırın
echo "export MAHOUT_HOME=/usr/local/mahout" >> ~/.bashrc
echo "export PATH=$MAHOUT_HOME/bin:$PATH" >> ~/.bashrc
|
Kaydol:
Kayıtlar (Atom)