Sıfırdan Her Yönüyle React ve Redux (2022)
What you'll learn
- React'i sıfırdan öğreneceksiniz.
- React'e her yönüyle hakim olacaksınız.
- Context API ile state yönetimi yapabileceksiniz.
- Unit test yazmayı öğreneceksiniz.
- Real time çalışan web uygulamaları geliştirebileceksiniz.
- İnternet bağlantısı olmadan da çalışabilen web sayfaları geliştirebileceksiniz.
- React projelerinin nasıl deploy edileceğini öğreneceksiniz.
- Single page web uygulamaları geliştirebileceksiniz.
- Backend servisleri ile nasıl çalışacağınızı öğreneceksiniz.
- JavaScript Service Worker'lar ile çalışabileceksiniz.
Requirements
- Temel seviye JavaScript bilgisi.
Description
Öğreneceğiniz Başlıca Teknik Terimler
Components
Props
States
Hooks
Lifecycle
React Router
Memoization
Context API
JWT Authentication
Real time Çalışan Uygulamalar Geliştirmek (Socket IO)
Unit Testing
NPMJS Üzerinde Component Paylaşmak
Localization
Deploy
Gerçek Dünya Projeleri (E-Commerce app, Chat app vb.)
Neleri Konuşuyoruz
Her zaman beklentilerin üzerinde kurs vermeyi hedefledim. Bu da demek oluyor ki, sadece React ve Redux öğrenmeyeceksiniz. Bu teknolojiler ile entegre çalışabilecek veya bu teknolojiler ile birlikte kullandığınızda ortaya daha iyi işler çıkarabileceğinize inandığım teknolojilerden de bahsettim.
Öğrendiklerimizi de havada bırakmayıp projeler ile iyice pekiştirdik. Projelere çok fazla önem verdim. Kursun yaklaşık 6 saatlik kısmını projeler oluşturuyor.
Temel Dersler
Bir teknolojiyi her yönüyle öğrenirken en önemli nokta temel dersler. Eğer kullandığınız teknolojinin hangi amaca hizmet ettiğini, hangi sorunu çözmek için ortaya çıktığını bilmeden sırf popüler diye kullanırsanız inanın bana kaliteli işler çıkmıyor. İşte bu noktada "React Nedir?", "Redux Nedir?" ve hangi amaca hizmet etmek için, hangi sorunu çözerek ortaya çıkmışlar detaylı olarak anlattım.
Kodlarımızı tamamen EcmaScript 6 standartlarına uygun olarak yazdık. EcmaScript 6 temellerinden ve modül sisteminden de ayrıca bahsettim.
React'in temelini oluşturan Component, Props, State, Lifecycle, React Router gibi kavramları özenerek anlattım.
Context API
React uygulamaları geliştirirken state'i yönetmek gerçekten çok büyük sorun olabiliyor. State yönetimi için onlarca kütüphane sayılabilir. Bunların arasında en basit ve anlaşılabilir olarak React'in çekirdeğinde bulunan Context API göze çarpıyor. Biz de kurs boyunca projelerimizi Context API'ı kullanarak geliştirdik ve gayet net bir şekilde pekiştiğine inanıyorum.
Redux
Redux, çoğu zaman anlaması ve uygulaması zor olduğu söylenen bir yapı. Ben bu sorunu konunun sıralı bir şekilde anlatılmamasına bağlıyorum. Sıralı olarak üzerine konarak anlatılan bir kursta oldukça anlaşılır bir yapı.
Redux nedir? Neden ihtiyaç duyarız gibi kilit bir soruyu cevapladıktan sonra, Redux data flow'u tanımlayarak Action, Reducer, Dispatcher, Store, Provider gibi redux'ın en kilit kavramlarını tek tek anlattım.
Redux-Thunk Middleware ile Async Action'ları nasıl yönetip kullanabileceğinize gerek Redux'ın temellerinde gerek proje derslerinde sık sık değinerek akılda kalıcı olarak kalmasını sağladım.
Siz kurs içerisinde fark etmiyorsunuz ancak ben aynı şeyi farklı videolarda sık sık tekrarlıyorum. Bir şeyin akılda kalması da tekrara bağlı zaten.
Next.JS
Server Side Rendering'in ne olduğunu anladıktan sonra SSR konusunda en iyi altyapıyı sağlayan Next.JS'i öğrenmeye başladık.
Next.JS'in sahip olduğu Routing, Styled Component, HMR, Isomorphic Fetch, Prefetch gibi kavramları enine boyuna anlattım.
Ayrıca custom routing işlemlerinde de Express.JS kullanarak konuyu destekledim.
Bu bölümden sonra günümüzün en modern web teknolojilerinden biri olan Next.JS ile SSR destekli React uygulamaları geliştirebileceksiniz.
Progressive Web Uygulamaları ve JavaScript Service Workers
Progressive Web Uygulamaları, belki şuan'a kadar pek duymadığınız ama önümüzdeki on yıl içerisinde en çok duyacağınız kavramlarından biri.
Bir web site düşünün ki internet bağlantısı olmasa dahi çalışabilsin. Bize bunu kazandıran Service Workers denilen yapı. Internetin çekmediği metrolarda insanların web sitenizi kullanmasını ister misiniz? İşte bu konuyu da kursta anlattım. Faydalanacağınıza eminim.
Deploy
Projenizi yaptıktan sonra en sancılı süreçlerden biri bu olabiliyor. React uygulamalarınızı deploy edebileceğiniz hazır servislerden olan Surge ve Netlify'ı öğreneceksiniz. Ayrıca kendi sunucunuza nasıl deploy edeceğinizi öğrenmeniz için de AWS EC2 üzerine deploy işlemlerini konuşuyor ve uyguluyoruz.
Who this course is for:
- React öğrenmek isteyen,
- Redux öğrenmek isteyen,
- Server Side Rendering işlemlerini öğrenmek isteyen,
- NextJS'i öğrenmek isteyen,
- Progressive web uygulamaları ve JavaScript Service Worker'ları öğrenmek isteyen,
- Günümüzün en popüler front-end mimarilerini öğrenmek isteyen herkes.
Instructor
Sakarya Üniversitesi Bilişim Sistemleri Mühendisliği bölümünden mezun oldum. Üç yıl süreyle Koç Holding'de Yazılım Geliştirme Mühendisi olarak görev yaptım. Sakarya Üniversitesinde bir yıl süreyle Yazılım Eğitmeni olarak görev yaptım.
JavaScript ve sağlamış olduğu teknolojiler ile ilgileniyorum. Üniversitelerde düzenlenen teknoloji konulu konferanslara katılarak bilgi ve tecrübelerimi aktarmaya çalışıyorum. Kariyerime yeni fikirler üretmeye çalışan şirketimizde devam ediyorum.