Dart Programlama Dili Dersleri
4.7 (155 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,621 students enrolled

Dart Programlama Dili Dersleri

Google Flutter ile iOS ve Android uygulamalar tasarlayabilmek için öncelikle Dart programlama dilini öğrenmelisiniz.
4.7 (155 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,621 students enrolled
Created by Zeki Çıplak
Last updated 6/2020
Turkish
Current price: $118.99 Original price: $169.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 10.5 hours on-demand video
  • 13 articles
  • 99 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Dart Programlama Dili hakkında yer yer ileri düzeye varan bilgiler edineceksiniz.
  • Asenkron Programlama dersleri ile Gecikmeli İşlemler (Future), Akış (Stream) temelli uygulamalar ve Paralel Çalışan (Multi Thread) kodlar yazabileceksiniz.
  • Hiç programlama bilmeyen bir öğrenci iseniz, programlamanın genel mantığı hakkında bilgi sahibi olacaksınız. Hızlı çalışan, kolay öğrenilen, çok şey gerçekleştirilebilen, Google destekli yüksek seviye bir programlama dili öğrenmiş olacaksınız.
  • Websocket ve HttpServer dersleri ile çok çeşitli Server-Side (Sunucu Taraflı, API vb. gibi) uygulamalar geliştirebileceksiniz.
Course content
Expand all 111 lectures 10:34:36
+ Değişkenler ve Türleri (Variables and Data Types)
8 lectures 45:45
Var, String, Num
11:20
Int, Double
04:24
Bool
02:23
Dynamic, Null
03:55
Object ve Metodlar
16:17
Const, Final
05:54
Bölüm Sonu Alıştırmaları
00:45
Alıştırmaların Çözümleri
00:46
+ Operatörler (Operators)
8 lectures 18:34
Aritmetik Operatörler (+,-,*,/,~/,%)
03:56
Atama Operatörleri (=,+=,-=,*=,/=,~/=,%=,??=)
02:41
Arttırma ve Azaltma Operatörleri (++var, --var, var++, var--)
03:42
Eşitlik ve İlişkisel Operatörler (==,!=,>,<,>=,<=)
01:59
Type Test Operatörleri (is,is!,as)
01:48
Mantıksal Operatörler (!,||,&&)
03:32
Bölüm Sonu Alıştırmaları
00:38
Alıştırmaların Çözümleri
00:17
+ Koşullu İfadeler (Conditional Expressions)
6 lectures 16:24
If Else
05:11
Özel Koşullu İfadeler (Koşul ? '':'') , (Null ?? ...)
04:16
Switch Case
03:16
Assert
02:23
Bölüm Sonu Alıştırmaları
00:36
Alıştırmaların Çözümleri
00:41
+ Fonksiyonlar (Functions)
7 lectures 20:10
Fonksiyon Kavramı
03:37
Fonksiyon Parametreleri (Arguments)
07:02
Pratik Fonksiyon (Fat Arrow)
02:13
Anonim Fonksiyon (Function Type)
02:44
Fonksiyon Hiyerarşisi
02:47
Bölüm Sonu Alıştırmaları
00:47
Alıştırmaların Çözümleri
00:59
+ Koleksiyonlar (Collections)
15 lectures 01:32:32
Iterable
04:14
List
09:45
List Örnekleri
28:08
Unmodifiable List (Değiştirilemez Liste)
03:54
Set
06:10
HashSet
01:58
Queue
03:10
Lazy Iterable Metodları
12:21
Map
08:47
HashMap
02:59
Map Örnekleri
04:21
Unmodifiable Map (Değiştirilemez Map)
02:12
Set (Dart Update 2.2)
03:10
Bölüm Sonu Alıştırmaları
00:32
Alıştırmaların Çözümleri
00:51
+ Döngüler (Loops)
8 lectures 28:57
For Döngüsü
10:45
For In Döngüsü
05:14
ForEach Döngüsü
03:24
While Döngüsü
03:57
Do While Döngüsü
01:48
Break, Continue
02:51
Bölüm Sonu Alıştırmaları
00:21
Alıştırmaların Çözümleri
00:36
+ Sınıflar (Classes)
17 lectures 02:14:08
Class Benzeri Kullanım
04:54
Class Kavramı
07:15
Constructors
11:19
Setter, Getter
10:06
Inheritance (Extends Class)
11:04
Super Constructor
09:36
Initializers (Başlatıcılar)
05:46
Final Initializer
06:48
Factory Constructor
08:43
Abstract Class
07:43
Static
07:37
Interface (Implements Class)
08:48
Operator Metodları
09:00
Comparing Objects (Nesnelerin Karşılaştırılması)
07:43
Singleton
07:15
Mixin
07:10
Enum
03:21
Requirements
  • Bilgisayar kullanmayı bilmek
  • Programlama konusunda istekli olmak
Description

DART DÜNYASINA HOŞ GELDİNİZ!


DART, Google tarafından geliştirilen genel amaçlı bir programlama dilidir. Dart kullanarak çok kısa bir sürede server kurulumu yapabilir, birçok platformda çalışabilecek web projeleri ve mobil uygulamalar geliştirebilirsiniz. Ayrıca internete bağlanan eşyalar, yani geleceğin teknolojisi olan "Internet Of Things" için de çok hızlı çalışan yazılımlar üretebilirsiniz.


Google, programcıların geçmiş tecrübelerine dayanarak, programlama dillerinin tüm güzel özelliklerini bir araya getirdi ve bir programlama dilinin ihtiyacı olabilecek her şeyi Dart üzerinde topladı. Dart hızlı olduğu kadar, pratik bir (Syntax) yazım diline de sahip... Eğer daha önce C++, C#, Java veya JavaScript dilinde projeler gerçekleştirdiyseniz, Dart programlama dilini öğrenmeniz fazla uzun sürmeyecek, hiçbir yabancılık çekmeyeceksiniz. Dart programlama dilinde çalışmak için, özel bir editör de kullanmanız gerekmiyor. Daha önceden aşina olduğunuz, popüler olan bütün editörleri (VSCode, IntelliJ, Android Studio vb. gibi) Dart projeleriniz için de kullanabilirsiniz.


Bildiğiniz gibi mobil dünya, günden güne çok büyük bir hızla gelişmekte, eskisine göre internette daha fazla zaman geçirmekteyiz. Çünkü artık her yerden internete girebiliyoruz. Bu da mobil uygulamaların hayatımızdaki önemini daha da arttırıyor. Mobil kullanıcı sayısı arttıkça, mobil uygulamalardan beklenen özellikler de artıyor elbette... Mobil uygulamalar, kaliteli bir dizayna sahip olmakla birlikte, çekici animasyonlarla zenginleştirilmiş ve en önemlisi hızlı çalışan yapılar olmak zorunda. Her şey hızlanırken, yavaş çalışan bir uygulamayı hiç kimse kullanmak istemez! Dart, diğer diller ile yapılan birçok (Benchmarking) karşılaştırma testi ile performansını kanıtlamış durumdadır. 2011 yılında doğan Dart, kendisinden yıllar önce oluşturulan bir çok programlama dilinden daha hızlı sonuçlar vermektedir.


Google, Flutter projesi ile özellikle mobil uygulama tasarımında bir devrim meydana getirdi. Flutter ile birçok (Widget) hazır kütüphaneyi kullanarak tasarlayacağınız mobil uygulamada, her platform için ayrı ayrı kod yazmanıza gerek kalmıyor. Oluşturacağınız bir mobil uygulamayı; hem IOS, hem de Android sistemlerde çalıştırabiliyorsunuz. Flutter, Dart alt yapısını kullandığı için hem tasarım olarak, hem de performans olarak çok iyi uygulamaların geliştirilmesini sağlıyor. Bu açıdan Flutter'da mobil uygulama projesi gerçekleştirebilmek için Dart programlama dilinin de çok iyi öğrenilmesi gerekiyor.


En çok yapılan hatalardan biri, Dart programlama dilini iyi öğrenmeden, Flutter üzerinde mobil uygulama geliştirmeye çalışmaktır. Birçok kullanıcı, bir an önce sonuca ulaşmak istediği için Dart Programlama Eğitimi'ni önemli görmüyor veya es geçiyor. Bu çok büyük bir hatadır. Bu eğitim seti ile Flutter'da desktop/mobil uygulama eğitimi almaya hazır hale geliyorsunuz. Çünkü Dart programlama dili iyi öğrenilmeden, Flutter üzerinde yapılacak bir proje, ne yazık ki sonuca ulaşamıyor. Kullanıcıların birçoğu, bir takım görsellerden, buton, menü veya ikonlardan oluşan amaçsız uygulamalar geliştirmekten öteye gidemiyor. Görsel olarak bir şeyler tasarlayabiliyor olmakla, çalışan ve faydalı bir uygulama yapmak aynı şey değildir!


Flutter ile mobil uygulamada bir takım materyalleri kullanarak, çok kısa zamanda şık ve çekici bir sayfa oluşturabilirsiniz. Fakat bu mimarinin arka planında, gerçekleştirilmesi gereken çok fazla iş vardır. Aklınıza gelen bir fikri mobil uygulamaya dökebilmek için tasarımdan önce, yeterli bir programlama bilgisine sahip olmanız gerekiyor.


Dart ile sadece mobil dünyada değil, web tasarım dünyasında da bir adım öndesiniz. Yine Google'ın tasarladığı "Material Design" kütüphanesini hazır olarak hem Flutter'da, hem AngularDart projelerinizde kullanabilirsiniz.


Google'ın, üzerinde çok ciddi yatırımlar yaptığı Dart programlama dili, yeni güncellemelerle günden güne gelişmektedir. Google, bu amaçla hem kendi etkinliklerinde, hem de başka çevrelerce düzenlenen etkinliklerde, hem Dart dilini hem de Flutter'ı tüm dünyaya tanıtma çalışmaları yapıyor.


Google yakın bir zamanda Fuchsia (Fuşya) adlı bir işletim sistemi çıkaracak. Bu işletim sisteminin, tasarım ve performans başta olmak üzere, tüm standartların üzerinde olması bekleniyor. Fuschia işletim sisteminin arayüzü uygulamaları da Flutter ile (Dolayısıyla Dart programlama diliyle) gerçekleştiriliyor.


Fuschia'nın yanı sıra, birçok büyük şirket Flutter ile (dolayısıyla Dart programlama diliyle) şimdiden çalışmaya başlamış durumdadır. Bunların en başında AliBaba geliyor. Milyonlarca kullanıcısı olan AliBaba, yeni mobil uygulamasını Flutter ile tasarladı.


Sözün kısası; Dart, gelecekte internete bağlanan her cihazda kullanılabilir olacak. Bu yönüyle de rakiplerine fark atıyor. Kolay, anlaşılabilir ve sade yazım şekliyle, hiçbir programlama bilgisi olmayan kişilerin de kolayca öğrenebileceği bir yapıya sahip olan Dart için, "geleceğin programlama dilidir" diyebiliriz.


KURS İÇERİĞİ


BÖLÜM 1. SUNUM (Presentation)

1.1. Dart Programlama Dili ve Geleceği

1.2. Neler Öğreneceksiniz?


BÖLÜM 2. KURULUMLAR (Installing)

2.1. Dart SDK Kurulumu

2.2. Visual Studio Code Kurulumu


BÖLÜM 3. DART PROGRAMLAMAYA GİRİŞ (Introduction to Dart)

3.1. VS Code ile ilk kodun çalıştırılması

3.2. DartPad

3.3. PowerShell

3.4. Comments (Yorumlar)


BÖLÜM 4. DEĞİŞKENLER VE TÜRLERİ (Variables and Types)

4.1. Var, String, Num

4.2. Int, Double

4.3. Bool

4.4. Dynamic, Null

4.5. Object ve Metodlar

4.6. Const, Final


BÖLÜM 5. OPERATÖRLER (Operators)

5.1. Aritmetik Operatörler

5.2. Atama Operatörleri

5.3. Arttırma ve Azaltma Operatörleri

5.4. Eşitlik ve İlişkisel Operatörler

5.5. Type Test Operatörleri

5.6. Mantıksal Operatörler


BÖLÜM 6. KOŞULLU İFADELER (Conditional Expressions)

6.1. If Else

6.2. Özel Koşullu İfadeler

6.3. Switch Case

6.4. Assert


BÖLÜM 7. FONKSİYONLAR (Functions)

7.1. Fonksiyon Kavramı

7.2. Fonksiyon Parametreleri (Arguments)

7.3. Pratik Fonksiyon (Fat Arrow)

7.4. Anonim Fonksiyon (Lambda Expression)

7.5. Fonksiyon Hiyerarşisi


BÖLÜM 8. KOLEKSİYONLAR (Collections)

8.1. Iterable

8.2. List

8.3. List Örnekleri

8.4. Unmodifiable List (Değiştirilemez Liste)

8.5. Set

8.6. HashSet

8.7. Queue

8.8. Lazy Iterable Metodları

8.9. Map

8.10. HashMap

8.11. Map Örnekleri

8.12. Unmodifiable Map (Değiştirilemez Map)

8.13. Set (Dart Update 2.2)


BÖLÜM 9. DÖNGÜLER (Loops)

9.1. For Döngüsü

9.2. For In Döngüsü

9.3. ForEach Döngüsü

9.4. While Döngüsü

9.5. Do While Döngüsü

9.6. Break, Continue


BÖLÜM 10. SINIFLAR (Classes)

10.1. Class Benzeri Kullanım

10.2. Class Kavramı

10.3. Constructors (Yapıcı Metodlar)

10.4. Setter, Getter

10.5. Inheritance (Kalıtım)

10.6. Super Constructor

10.7. Initializers (Başlatıcılar)

10.8. Final Initializer

10.9. Factory Constructor

10.10. Abstract Class

10.11. Static

10.12. Interface (Implement Class)

10.13. Operator Metodları

10.14. Comparing Objects (Nesnelerin Karşılaştırılması)

10.15. Singleton

10.16. Mixin

10.17. Enum


BÖLÜM 11. HATA AYIKLAMA (Error Handling)

11.1. Exceptions

11.2. Exception Class


BÖLÜM 12. ASENKRON PROGRAMLAMA (Asynchronous Programming)

12.1. Future (Gecikmeli İşlemler)

12.2. Async Await

12.3. Future Wait

12.4. Future Then

12.5. Timers (Zamanlayıcılar)

12.6. Streams (Akışlar)

12.7. Stream Broadcast

12.8. Stream Transform

12.9. Async* Yield

12.10. Async Await For

12.11. StreamController (Akış Kontrolcüsü)

12.12. Isolates (Multi Threading)


BÖLÜM 13. HAZIR KÜTÜPHANELERİN KULLANIMI (Libraries and Packages)

13.1. Kütüphane Kavramları

13.2. dart:core

13.3. dart:async

13.4. dart:math

13.5. dart:convert

13.6. dart:io >> (Dosyadan Veri Okuma - File Reading)

13.7. dart:io >> (Dosyaya Veri Yazma - File Writing)

13.8. dart:io >> (Klasör/Dizin İşlemleri - Directory)

13.9. File Class, Directory Class Örnekleri

13.10. Package Kurulumu (pubspec.yaml)

13.11. Package: http

13.12. Package: image


BÖLÜM 14. DART SERVER PROGRAMLAMA (Dart Server Programming)

14.1. Standart Input/Output Streams (stdin, stdout, stderr)

14.2. Process Class (Sunucuda Program Çalıştırma - Execute Programs in Server)

14.3. HttpServer Class

14.4. WebSocket


BÖLÜM 15. DART SQL PROGRAMLAMA (Dart SQL Programming)

15.1. Package: mysql1

        15.2. Package: dart_sqlite3


BÖLÜM 16. EK KONULAR (Bonus)

        16.1. dart2native ile .exe dosyası yapmak



Who this course is for:
  • Hiç programlama bilmeyen, kaliteli bir programlama dili öğrenmek isteyenler
  • Daha önce az da olsa programlama bilgisine sahip olan ve bilgisini arttırmak isteyenler
  • Aynı programlama diliyle, hem iOS hem de Android sistemlerde uygulamalar gerçekleştirme eğitimine hazırlanmak isteyenler
  • Mobil Uygulama, Yapay Zeka veya Internet of Things (İnternete bağlanan eşyalar) için hızlı ve pratik bir programlama dili öğrenmek isteyenler