/react-native-egitimi

React Native Eğitimi (Syllabus - İzlence)

React Native Eğitimi (Syllabus - İzlence)

image

React Native Nedir

React Native, iOS için Swift, Objective C veya Android için Java, Kotlin dillerini kullanmadan bu diller ile yazılmış uygulamalara eşdeğer uygulamalar geliştirebileceğiniz bir Framework'tür. Bu Framework’ü derslerimiz ile birlikte oldukça kolay ve eğlenceli bir yolla öğrenebileceksiniz.

Programın Açıklaması

Bu program ile birlikte sıfırdan ileri seviye React Native ile IOS, Android Uygulama Geliştirme bilgisine sahip olacaksınız. React Native Developer ünvanına sahip olarak yazılım dünyasında profesyonel projelerde yer alabileceksiniz.

Ön Şartlar

  • Temel düzeyde yazılım algoritması bilgisine sahip olmak.
  • Temel düzeyde HTML, CSS, JavaScript bilgisine sahip olmak.
  • Mobile Uygulama geliştirmeye istekli olmak.
  • MAC OS (işletim sistemi) sahip olmak

Olsa iyi olur

  • Daha önceden Swift, ObjectiveC, Java veya kotlin dilleri ile native IOS - Android uygulamalar geliştirmiş olmak.
  • Xcode veya Android Studio IDE’lerini daha önceden kullanmış olmak.

Programa Genel Bakış

Bu ders size React Native ile hızlı bir şekilde hem iOS hem de Android platformlarına nasıl 'native uygulama' geliştirebileceğinizi görsel arayüzlerle birlikte basitçe öğretir. Mobil yazılımda yeniyseniz veya uzman olsanız dahi hala kafanızı kurcalayan kısımlar var ise bu eğitim ile karmaşık birçok yapıyı oldukça kolay bir biçimde uygulamalı olarak öğrenebilirsiniz.

Bu eğitimle birlikte, karmaşık sayfa yapılarını küçük yapılara bölüp daha kolay hale getirerek büyük proje uygulamalarınızı geliştirebileceksiniz.

Eğitim içeriğinde profesyonel bir uygulama geliştirerek, uygulama geliştirme süreçlerine hakim olacak ve kendi projelerinizi kolaylıkla geliştirebileceksiniz.

Eğitim Temelde 5 ana başlık altında işlenecek ve bittiğinde bütün bu konuları kapsayan profesyonel bir proje geliştirilecek.

  • Github, Bitbucket Eğitimi
  • React Native’in Temelleri
  • React Native Navigations ve Redux Yapısı
  • Firebase (Auth, Database, Push Notification, Crashlytics, Admob)
  • Web Service - Api Request, Data Pars
  • Responsive Design

Eğitim Detayları

Github, Bitbucket Eğitimi

  • Github ve Bitbucket nedir?
  • Repo Nedir? Nasıl oluşturulur?
  • CMD üzerinden temel git kullanımı
  • SourceTree üzerinden temel git kullanımı
  • Gitignore nedir?
  • Commit, Push, Pull nedir?

React Native’in Temelleri

  • React Native Nedir? Neden React Native?
  • React Native Github Sayfası
  • Kurulumları yapacağımız terminal hakkında
  • React Native Dependencies(Bağımlılıklar, Gerekli Kurulumlar)
  • React Native proje init etme
  • Proje dizin dosyalarını inceleme
  • Xcode idesi tanıtımı
  • Projeyi IOS emulatör üzerinde run etme
  • Projeyi kendi IOS cihazlarımızda run etme
    • Apple Developer Hesabı Nasıl Alınır
    • Itunesconnect Nedir?
    • Itunesconnect üzerinde yeni proje oluşturma
    • developer.apple
    • Apple Certificates(Sertifikalar)
    • Apple test hesabı ekleme
  • Android Studio idesi tanıtımı
  • Genymotion Emulator
  • Projeyi Genymotion Emulator üzerinde run etme
  • Projeyi Android cihazlarımızda run etme
  • VSCode idesi tanıtımı
  • Eslint Nedir? Eslint Kurulumu?
  • React Native Development Tool
  • React Native Application Lifecycle(Uygulama yaşam döngüsü)
  • Proje nasıl loglanır?
  • React Native Componentler
    • View, Text, ScrollView, Image vs.
  • React Native Style
    • Flex yapısı hakkında
  • Class ve Method farklılığı
  • State ve Props
  • Custom Component Geliştirme

React Native Navigation ve Redux Yapısı

  • React Native Navigation Yapısı
    • React Native Router Flux Nedir? Kurulumu.
      • Scene,
      • Router,
      • Drawer,
      • Actions
    • Sayfalar arası geçiş
    • Sayfalar arası veri taşıma
  • Redux Nedir? Niçin Kullanılır? Neden önemlidir?
  • Redux Components(Bileşenler) Hakkında
    • createStore,
    • applyMiddleware
  • Redux kurulumu
  • Redux Thunk Kurulumu
  • Provider(Projeyi Sarmalama)
  • Actions Functions
  • Reducers
  • Connect Component
  • mapStateToProps

Firebase (Auth, Database, Push Notification, Crashlytics, Admob)

  • Firebase Nedir? Firebase Hakkında önemli bilgiler
  • React Native Firebase Kurulumu
    • Third party library linking(React Native’e üçüncü parti kütüphane bağlama)
    • Automatic Linking nedir? nasıl yapılır?
    • Manuel Linking nedir? nasıl yapılır?
    • Cocoapods(IOS)
    • Gradle(Android)
  • Firebase Authentication ile örnek proje geliştirme
    • register işlemi
    • login işlemi
  • Firebase Database ile örnek proje içerisine
    • DB’ye veri yazma, veri okuma işlemleri
    • DB’den veri okuma işlemleri
  • Firebase Push Notification ile Örnek Projemize Push Gönderme
    • Push içerisinde parametre gönderme
    • Gelen parametreye göre navigasyon yapısını inşa etme
  • Firebase Crashlytics
    • Firebase Crashlytics nedir? Neden önemlidir?
    • Firebase Crashlytics entegrasyonu
    • Cihazlardan gelen örnek hataları inceleme
  • Firebase Admob
    • Firebase Admob nedir? Nerelerde kullanılır?
    • Firebase Admob entegrasyonu
    • Banner
    • Interstitial
    • Rewarded

Web Service - Api Request, Data Pars

  • Web Api Nedir? Neden önemlidir?
  • Web Api Kullanım alanları
  • Web api request işlemleri için Axios Kurulum
  • Axios ile örnek web service üzerinden
    • Get işlemi,
    • Gelen json datasını pars etme,
    • Post işlemi,
    • Params
    • Header
    • Body
    • Query
  • Web api bağlı olan projelerde redux yapısının kurgulanması
  • Axios ile örnek web service üzerinden post işlemleri
  • Paging yapısı nedir? Paging yapısının kullanımı
  • Ders içerisinde geliştirilecek profesyonel projenin bir web servise ile entegre edilmesi

Responsive Design

  • Sketch ve Phothoshop ile tasarlanmış tasarımları inceleme
  • Tasarımlara developer gözü ile bakma
  • Responsive düşünebilme
  • Tasarımları parçalara ayırma
  • x, 2x, 3x mantığı
  • Assets.xcassets nedir? (IOS)
  • drawer, mipmap nedir? (Android)
  • Flex yapısının önemi
  • Ders içerisinde geliştirilecek Profesyonel projeyi responsive tasarlama süreci

Kullanılacak IDE’ler

VS Code, XCode, Android Studio, Sketch, Adobe Photoshop

Proje ağırlıklı olarak VS code idesi ile geliştirilecek. Native taraftaki işler(Third party kütüphaneleri bağlama, vs) için Xcode ve Android Studio kullanacağız.

Sketch ve Photoshop uygulamaları ise tasarım sürecinde tasarımları incelemek ve parçalamak için kullanılacak

Eğitmen

Yasin Uğurlu

Linkedin => https://www.linkedin.com/in/yasinugurlu/

Github => https://github.com/yasinugrl

Stackoverflow => https://stackoverflow.com/users/7300935/yasin-ugurlu