Angular Web Programlama

Slides:



Advertisements
Similar presentations
Samsung Smart TV is a web-based application running on an application engine installed on digital TVs connected to the Internet.
Advertisements

BTP205 – Görsel Programlama I Object-Oriented Programming Nesne Tabanlı Proglamlama 1.
Validation in Angular 1.3 And other angular tidbits.
USING ANGULARJS WITH SITEFINITY
What Are My Choices for Building a Modern Web UI?
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
Introducing NativeScript [Pavel Kolev Software Telerik: a Progress company]
Canopy walk through Single-Page Apps (SPAs) Benjamin Howarth Freelancer, Code Gecko Umbraco UK Festival, Fri 30 th Oct 2015 CODE GECKO.
Getting Started with Aurelia
Ionic & Cordova crash course Ivan Varga
Chapter 1 Ionic Framework (overview) Front-end framework for developing hybrid mobile apps with HTML5 Yeunyong Kantanet School of Information and Communication.
NativeScript – Open source platform to build Native iOS/Android Apps.
APP DESIGN AND DEVELOPMENT WITH THE IONIC FRAMEWORK Chuck Leone
AngularJS. What is AngularJS  Javascript Framework  MVC  for Rich Web Application Development  by Google.
ANGULAR 2. JavaScript is a high-level, dynamic, untyped, and interpreted programming language. JavaScript was originally developed in May 1995 by Brendan.
An introduction to Angular 2
Angular JS and SharePoint
Building Desktop Apps with Node.js and Electron
SharePoint + CRM Saturday Zurich 2017
Learning About Angular
Angular 2 with ASP.NET Core in Practice
Content Introduction Technology Used to Develop Mobile Application
Angular 4 + TypeScript Getting Started
WWU Hackathon May 6 & 7.
What's new in the world of SharePoint development and deployment
Development of Internet Applications jQuery, TypeScript, LESS
Extra Course
Modern Web: Single Page Applications
Kendo UI Builder Bob Brennan
Presentation 2 Web Design.
Build Native Mobile Apps using JavaScript and Ionic
Introduction to TypeScript & Angular
Web DevelopmEnt Angular 4
Multi-Device Hybrid Apps What, Why, and When to Use Hybrid Development Option Ervin Loh ALM Program Manager
Angular JS Training | Angular JS online Training at GoLogica
In SharePoint A Practical Guide.
JavaScript Basics Stephen Delaney
Build Better Apps with MEAN.
User Interface / User Experience Demo
Best Angular 2 interview questions and Answer that have been designed for Angular 2 programmers who are preparing online interviews on Angular 2 interviews question. Visit Website:
Building Native Mobile Apps with Angular 2.0 and NativeScript
Jessica Betts, Sophia Pandey, & Ryan Amundson
A lot of Software Development is about learning
AngularJS and SharePoint 2013: Lessons Learned from the Trenches
UI Developer Overview  SV Trainings UI Developer Training is online course developed by industry experts to understand the concepts of HTML5, CSS3, Bootstrap,
Top Reasons to Choose Angular. Angular is well known for developing robust and adaptable Single Page Applications (SPA). The Application structure is.
SPA Revolution with WebAssembly and Blazor Rainer Stropek | software
Microsoft Build /8/2018 3:30 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
MEAN stack L. Grewe.
Angular (JS): A Framework for Dynamic Web Pages
Introduction to SharePoint Framework (SPFx)
Introduction to AngularJS
SPA Revolution with WebAssembly and Blazor Rainer Stropek | software
Secure Web Programming
CS5220 Advanced Topics in Web Programming Node.js Basics
CS5220 Advanced Topics in Web Programming Angular – TypeScript
Chengyu Sun California State University, Los Angeles
Angular 2 : CRUD Operations
Angular 2 Michael C. Kang.
Chengyu Sun California State University, Los Angeles
CS5220 Advanced Topics in Web Programming Angular – TypeScript
Introduction to TypeScript
Front End Development workshop
Introduce to Angular 6 Present by: Võ Văn Hào
Blazor C# running in the browser via WebAssembly
Murach's JavaScript and jQuery (3rd Ed.)
05 | An Introduction to AngularJS
Angular.
Modern Front-end Development with Angular JS 2.0
Presentation transcript:

Angular Web Programlama

Angular Nedir? Ücretsiz ve güçlü bir JavaScript kütüphanesidir. Genellikle Single Page Applications(SPA)’da kullanılır. HTML içinde istemci uygulamaları geliştirmeyi sağlar. Angular back-end’de API sömüren bir Front-End kütüphanedir. İstemci için JavaScript üreten TypeScript dilini kullanır. – Alternatifler : JavaScript, Dart, TypeScript Angular Versiyonlarını Anlamak (Geçici Olarak Bir Sonraki Slayta Gidelim) Dinamik web uygulamaları geliştirmek için kullanılan bir yapıdır. Web şablonu olarak HTML kullanmaya ve onu genişletmeye izin verir. Veri Bağlama ve Dependency Injection kullanmaya izin verir. İyi tanımlanmış bir yapı ile tüm DOM ve AJAX kodlarını yönetir. History – AJAX -> jQuery / Prototype -> MVC Frameworks(Knockout/Backbone) – -> AngularJS1.X -> Angular2 -> Angular4 Google’da Angular 2 geliştirmesi için çalışan özel bir ekip vardır.

Angular Versiyonlarını Anlamak AngularJS Angular 2 Angular 4 Angular 5 Angular 6 Angular 7 Angular 8

Angular Özellikleri Angular MVC tasarım deseni üzerine geliştirilmiştir Attribute eklemeleri ile HTML DOM’u genişletip kod yazımını azaltır ve süreçleri kolaylaştırır. CRUD uygulamaları için gerekli herşeyi içerir – Data-Binding, Basic Templating, Directives, Form Validation, Routing, Deep-Linking, Reusable Components, Dependency Injection vb.. Angular declarative code çerçevesiyle geliştirildi. Bu UI geliştirmeleri ve komponent tabanlı uygulama geliştirmelerinde iyiyken, imperative code iş mantığı(logic) ifade etmelerde daha etkilidir. Angular saf HTML sayfaları üretirken, controller’lar iş süreçlerini işleyerek JavaScript ile üretilir Angular popüler tüm tarayıcılar ve Android/iOS dahil tüm tablet ve telefonları destekler ve bunlarda kullanılır

Mobil ve Desktop için Angular Angular mobil ve masaüstü uygulamaları geliştirmek için kullanılabilir. – Mobil için : NativeScript – Desktop için : Electron

Angular 1.X vs. Angular 2 Kod yazmak ve okumak daha kolaydır. Yüksek performanslıdır. Modüler yapısı Angular 1.X’e göre daha gelişmiştir. DI daha gelişmiş düzeyde kullanılır. Native Mobile uygulamalar için daha gelişmiş destek sunar. Test geliştirme süreçleri daha gelişmiştir. Angular 2 göreceli olarak 1.X’e göre daha karmaşıktır ama implementation kolaydır. Angular 2 TypeScript kullanılarak geliştirildi ve bu dil Angular 2 için en ideal programlama çözümüdür. Angular 2 komponent tabanlı bir bakış açısı sağlar.

Angular 1.X vs. Angular 2 -Setting Up: Sadece angular.js’yi eklemek yeterli. -Mobil destek amacıyla geliştirilmedi. -Çekirdek konsept $scope idi. $scope olmadan view ile controller haberleşemez. -views/templates iletişimi için controller gerekli. -Performans Angular 2’ye göre düşüktür -Angular 1.X ES5, ES6 ve Dart’a sahiptir -Nesnelerin iterasyonu için ng-repeat kullanılır -Olaylar için en çok kullanılan built-in directive’ler ng-src, ng-href, ng-click’tir. -One-way binding için ng-bind kullanılır -Uygulama başlatmak için iki yönteme sahip: Auto. Bootstrapping(ng-app) ve Manuel B. -Routing için $routeProvider.when() kullanır. -Setting Up: Karmaşık. Zaman alır çünkü Gulp ya da Grunt’a bağımlı. -Mobil odaklı geliştirildi. Mobile-oriented. -DOM değişikliklerini tespit etmek için Zone.js kullanır. -Komponentler ile geliştirildi. (Template Directives + Controllers = Components) -Tek yönlü ağaç tabanlı değişiklik tanımlama modeli performansı artırır. ng-conf’a göre Angular 2, 1.X’den 5 kez daha hızlıdır. -Daha çok dil desteği var. ES5, ES6, TypeScript ve Dart dillerini kullanabilir. -Yapısal direktif söz dizimi tamamen değişti. Örn: ng-repeat yerine *ngFor geliştirildi. -Doğrudan HTML DOM eleman özelliklerini kullanır. -ng-bind değiştirildi ve yerine [property] geldi. -Uygulama başlatmak için tek yönteme sahip: Manuel Bootstrapping -Routing kullanır.

Angular 2 vs. Angular 4 -Angular 2 Angular 4’den dosya boyutu olarak daha büyüktür. -*ngIf if/else söz dizimine göre geliştirilmedi. -Temel text işlemleri için logic geliştirilmeli. -Template oluşturmak için template özellikleri kullanılmalıdır. -Animasyonlar için birçok paket import edilmeli ve transaction’lar uygulanmalıdır. -Angular 4 önceki versiyona göre daha hafif dosyaya sahip ve hızlıdır. -*ngIf if/else söz dizimine sahip. Örn: AJAX çağrısı yaparken sayfada loading gösterilebilir. -Angular 4 ile ‘titlecase’ tanıtıldı. Metnin ilk harflerini büyütür. {{‘hello’ | titlecase}} -ng-template adında yeni bir direktif tanıtıldı. -Animasyonlar için kullanılacak paketler tek bir pakette browser/animations

ES5 vs. ES6

Neden Angular? Temiz ve Anlamlı HTML Güçlü Veri Bağlama Mimari Tasarımından Gelen Güçlü Modüler Tasarım Built-in Back-End Entegrasyon Kabiliyeti TypeScript, TypeScript, TypeScript … MVC Tasarım Desenine Göre Tasarlandı Animasyon…

MVC Tasarım Deseni

Animasyon?

Backend Service-Oriented, RESTful, Microservice vb.

TypeScript

Çıktı olarak JavaScript üreten bir programlama dilidir.(JavaScript Transpiler) OOP : Nesne Yönelimli Programlama’ya yönelik geliştirilmiştir. Derleme zamanı hatalarını yönetir. Tüm JavaScript kütüphaneleri TypeScript içerisinde de kullanılabilir. Platform-bağımsız bir dildir ve farklı cihaz, tarayıcı ve işletim sistemlerinde çalışır.

Neden TypeScript? JavaScript’de olmayan derleme-zamanlı hataları denetleme yeteneği vardır. JS yorumlar, TS ise derler. JS dinamik veri tiplemesine sahiptir. Verilerin tipi dinamik olarak yürütme aşamasında belirlenir. TS ise statik bir dildir. TypeScript OOP bir dildir. Sınıflar, arayüzler, modüller ve miras gibi yetenekleri vardır. JS ise betik dilidir. Kolay okunabilir ve düzenlenebilir bir dildir.

Static Typing & Dynamic Typing { name: "Ferrari", model: "Marenello", // rAn: function() run: function() { // Running... } class Car { public string name; public string model; public void run() { // Running... }

TypeScript Veri Tipleri Temel Veri Tipleri String & Templated String Arrays Tuples Enum Any & void Null & undefined Type Inference Type Casting Let & var Sabit Tanımlamak : const

TypeScript

TypeScript Nasıl Çalışır?

Angular Modülerdir

Lego gibi…

Angular Ortam Gereksinimleri Editörler – Visual Studio Code Plugin : Angular 8 Snippets Plugin : TypeScript Here – Visual Studio.NET (Plugins) : Angular Gereksinimleri – Node.js – Angular CLIhttps://github.com/angular/angular-clihttps://github.com/angular/angular-cli npm install npm install –g npm install –g – TypeScript npm install –g typescript(ya da tsc –version To Uninstall : npm uninstall & npm uninstall –g angular-cli & npm cache clean – Nodemon (Zaruri Değil) : JS dosyalarını izler ve kodlarda değişiklik varsa tekrar çalıştırır. npm install –g nodemon POSTMAN (API Test) –

Angular Ortam Testleri ve Yardım Listesi Angular gereksinimlerinin başarıyla test edildiğini anlamak için: ps> node –version (ya da -v) ps> npm –version (ya da -v) ps> ng --version (ya da -v) ps> tsc --version (ya da -v) Angular hakkında yardım listesine ulaşmak için: – ng help

Angular Proje Oluşturma Rehberi C:\\ dizini içerisinde uygulamalar için bir klasör oluştur. – C:\\ngApps\ PowerShell ya da komut satırı aracını aç ve aşağıdaki komutları çalıştır. – npm install CLI kurmak için) npm install –g (Angular CLI’ın belirli bir versiyonunu kurmak için) npm install –g (Angular CLI’ın son versiyonunu kurmak için) – npm install –g typescript tsc --version – ps> cd C:\ngApps – ng new first-angular-app Routing? N CSS – cd first-angular-app – code.(Projeyi VSCode’da açmak için) Angular projesini çalıştırmak ve yayına vermek – IDE> Terminal> ng serve(Projeyi yayına sunmak için) ng serve –open(Projeyi direkt olarak tarayıcıda açar) ng serve –port 8081(Projeyi belirtilen port üzerinden tarayıcıda açar)