20
Modern Web Uygulamalarında Özgür Teknolojiler Uğur ARICI Özgür Web Teknolojileri Günleri 2016 22 Ekim 2016 - Boğaziçi Üniversitesi

Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Modern Web Uygulamalarında Özgür Teknolojiler

Uğur ARICI Özgür Web Teknolojileri Günleri 2016 22 Ekim 2016 - Boğaziçi Üniversitesi

Page 2: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Nelere Değineceğiz?• Web Siteleri vs Web Uygulamaları

• Tek Sayfa Uygulamalar - SPA (Single Page Applications)

• Değişen Veriler

• Çift Yönlü Veri İşleme - Two Way Data Binding

• Javascriptin Payı

• Çatılar

Page 3: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Web Siteleri Web Uygulamaları

• İçerik sunumu için kullanılır

• Birçok web sayfasından oluşur

• Aslında birbirinden bağımsız web sayfaları arasında dolaşılır

• Belirli bir iş yapabilmek / hizmet verebilmek için tasarlanır

• Kullanım süreçleri ve kullanıcı deneyimine odaklanır

• Web teknolojilerini kullanarak masaüstü uygulamalarına yakın bir deneyim vermeye çalışır

Page 4: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Gmail

Page 5: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Basecamp

Page 6: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Paraşüt

Page 7: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

REOS - Emlak Sistemi

Page 8: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Figma

Page 9: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

SPA - Single Page Applications• Tek sayfadan oluşan uygulamalar

• Sayfa sadece bir kere yüklenir, sonrasında gelen taleplere göre ihtiyaç duyulan bilgi sunucu tarafına sorulur

• Bazen tüm parçalar önceden yüklenir, bilgi geldikçe bilgiyle beraber gösterilir, bazen ilgili kısım da sonradan çağırılır

• Masaüstü uygulamalarına yakın bir deneyim sağlamak hedeflenir

Page 10: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

SPA - Single Page Applications

Görsel: Microsoft

• Kullanıcı işlemleri (tıklamalar) için başka bir sayfaya gitmek yerine, o talep için uygulamada ne işlem yapılacağı JavaScriptte tanımlanır

• Uygulanacak işlem bilgi aktarımı gerekiyorsa AJAX ile yapılır, JSON formatında veri gönderilir ve alınır

• AJAX işleminin başarılı ya da başarısız sonucuna göre uygulamada ne işlem yapılacağı da tanımlanır

Page 11: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

JSONJavaScript Object Notation

JSON hafif bir veri değişim formatıdır. İnsanların okuyup yazabilmesi kolaydır. Makinaların tarayıp, yaratabilmesi

kolaydır. Kaynak: json.org

{ konusma: “Modern Web Uygulamaları”, sure_dk: 20, etiketler: [“modern web”, “spa”, “js”], konusmaci: {

isim: “Uğur ARICI”, twitter: “@ugursus” }

}

Page 12: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

JavaScript HTML DOMDocument Object Model

var x = document.getElementsByTagName("body")[0];

Görsel: w3schools

document.title = “Bununla Değişsin”;

Page 13: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

MVC MVVMModel - View - Controller Model - View - View Model

Görseller: Microsoft, Vikipedi

Page 14: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Görseller: AngularJS, Sitepoint

Çift Yönlü Veri İşleme - Two-Way Data Binding

Page 15: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Modern Web Uygulamasına Bakış

Görsel: singlepageappbook, dnnsoftware

JavaScript

Page 16: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Alanlara Göre Geliştirme İhtiyacı

Front-End Back-EndJS

Modern Web Uygulamaları

Page 17: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Çatılar, Kütüphaneler, YardımcılarArtık adına ne derseniz…

Angular React Vue.js Ember.js

Backbone Cycle.js Aurelia Mercury

ve daha niceleri…

Page 18: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Gerçekten ihtiyacınız var mı?

Hayli zaman alabilir. Buna değer mi?

Page 19: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Nereden Başlamalı?• JavaScript

• ES2015 (ECMAScript 6)

• JSON (BSON da iyi olur)

• jQuery (Şaka değil!)

• node.js

• npm

• Angular, React, Vue.js …

Page 20: Modern Web Uygulamalarında Özgür Teknolojiler · 2017-03-17 · JavaScript Object Notation JSON hafif bir veri değişim formatıdır. İnsanların okuyup ... MVC MVVM Model -

Teşekkürler

Modern Web Uygulamalarında Özgür Teknolojiler Uğur ARICI

Özgür Web Teknolojileri Günleri 2016 22 Ekim 2016 - Boğaziçi Üniversitesi

@ugursus