<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: HalukHackali</title>
    <description>The latest articles on DEV Community by HalukHackali (@halukhackali).</description>
    <link>https://dev.to/halukhackali</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F454845%2F624d172e-c9f9-4613-8dc2-52f32e749d5e.png</url>
      <title>DEV Community: HalukHackali</title>
      <link>https://dev.to/halukhackali</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/halukhackali"/>
    <language>en</language>
    <item>
      <title>Flutter ile Proje Geliştirme: PM, UI, Backend, Flutter</title>
      <dc:creator>HalukHackali</dc:creator>
      <pubDate>Sun, 09 Jan 2022 18:06:41 +0000</pubDate>
      <link>https://dev.to/halukhackali/flutter-ile-proje-gelistirme-pm-ui-backend-flutter-2a32</link>
      <guid>https://dev.to/halukhackali/flutter-ile-proje-gelistirme-pm-ui-backend-flutter-2a32</guid>
      <description>&lt;ol&gt;
&lt;li&gt; PM-Project Manager
&lt;/li&gt;
&lt;li&gt; Tasarım-UI
&lt;/li&gt;
&lt;li&gt; Back-End
&lt;/li&gt;
&lt;li&gt; Flutter-Coding
&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;h2&gt;
  
  
  💡Önemli 💡
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Local proje yapmak çok verimli değil, mümkün olduğunca local proje yapmamaya çalış.&lt;/li&gt;
&lt;li&gt;Temiz başlangıç için coding(flutter) kısmına özen göster.&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  PM - Project Manager
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Projeye başlarken bir PM'in neler bilmesi gerektiğini öğren.&lt;/li&gt;
&lt;li&gt;Elimde neler var? Bunları bil.

&lt;ul&gt;
&lt;li&gt;Theme "&lt;strong&gt;dark and light&lt;/strong&gt;" kolaylığı.&lt;/li&gt;
&lt;li&gt;UI KIT kolaylığı.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Neler yapılmış? Araştır.

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://itsallwidgets.com"&gt;https://itsallwidgets.com&lt;/a&gt; sitesinden neler yapılmış, hangi uygulamalar ne şekilde oluşturulmuş, widget'lar nasıl yapılmış gör.&lt;/li&gt;
&lt;li&gt;UI tasarımlarını iyi düşünerek projeye başla.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Tasarım-UI
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Uygulamanın '&lt;strong&gt;component&lt;/strong&gt;' setinin önceden hazırlanması çok önemli. Hazırda dursun.&lt;/li&gt;
&lt;li&gt;Tasarım işinin önceden bitirilmesi faydalı olur.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Zeplin&lt;/em&gt; öğren ;

&lt;ul&gt;
&lt;li&gt;Flutter plugin'inini Zepline ekle!

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Styleguide&lt;/strong&gt;:
&lt;strong&gt;a.&lt;/strong&gt; Color palette
&lt;strong&gt;b&lt;/strong&gt;. Text Style Catalog
&lt;strong&gt;c.&lt;/strong&gt; Spacing and Layout
&lt;strong&gt;d.&lt;/strong&gt; Component&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Tasarımcı olarak çalışmalarını Iphone_8'e göre hazırla. Çentiksiz ekranlar tasarım açısından daha uyumlu.&lt;/li&gt;
&lt;li&gt;Ekran ve Widget'lar için en-boy oranlarının nasıl ayarlanması gerektiğini &lt;a href="https://www.youtube.com/channel/UCdUaAKTLJrPZFStzEJnpQAg"&gt;HardwareAndro&lt;/a&gt; kanalından öğren.&lt;/li&gt;
&lt;li&gt;Elle en-boy-boşluk vs değerleri verme. Bunun için en kötü yüzdesel mantık kullan ya da MediaQuery ya da &lt;a href="https://pub.dev/"&gt;pub.dev&lt;/a&gt;'den &lt;a href="https://pub.dev/packages/flutter_screenutil"&gt;flutter_screenutil&lt;/a&gt; paketini kullan.&lt;/li&gt;
&lt;li&gt;Figma'da flowlar kullan. Hangi ekran-buton nereye gidecek belli olsun.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  BackEnd
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Database işlerini nasıl yapacağız önce buna karar ver?&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Database için iki farklı bakış açısı var:
&lt;/h3&gt;

&lt;p&gt;1️⃣ &lt;code&gt;FireBase Kullan&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Sunucu maliyeti düşük 📉&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Security derdi yok ✅&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;No-Sql yapısı var 🚩&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Search embeded olarak gelmiyor. (Elasticsearch ile search işlerini yapabilirsin.) ⚠️&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;2️⃣ &lt;code&gt;Kendi Backend'ini Yaz&lt;/code&gt;&lt;br&gt;
(&lt;em&gt;Node.js - Go - **Django&lt;/em&gt;* - Spring - .Net vb* kullan...)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Sunucu maliyeti ilk zamanlar yüksek 💲&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Daha uzun zaman alabilir ⏳&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Güvenlik işleri zor 🚨&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Devops tutmak gerekebilir ❌&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sunucu - Publishing - Security işlerine biraz hakim olmak gerekli ❌&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Her şey senin elinde, daha özgür hareket edebilirsin. ✅&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Seraching embeded değil, doğrudan query yap kullan ✅&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Firebase'e göre daha zor ama daha işlevsel ✅&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Büyük projeler için ve kendini geliştirmek için daha faydalı✅&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Zaman içinde maliyet avantakı oluşuyor 📉&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Flutter
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/channel/UCdUaAKTLJrPZFStzEJnpQAg"&gt;HardwareAndro&lt;/a&gt; kanalındaki videoları izle ve &lt;a href="https://vb10.dev"&gt;vb10.dev&lt;/a&gt; sitesinden "&lt;strong&gt;Ana Kısım&lt;/strong&gt;" bölümünü iyice oku.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pub.dev/"&gt;pub.dev&lt;/a&gt; sitesindeki önmeli paketleri kullan.

&lt;ul&gt;
&lt;li&gt;Localization için: &lt;a href="https://pub.dev/packages/easy_localization"&gt;easy_localization&lt;/a&gt; kullan.&lt;/li&gt;
&lt;li&gt;State Managment için: &lt;a href="https://pub.dev/packages/mobx"&gt;mobx&lt;/a&gt; kullan&lt;/li&gt;
&lt;li&gt;Kendini geliştir ve bunların üzerine &lt;a href="https://pub.dev/packages/bloc"&gt;bloc&lt;/a&gt; ekle/öğren.&lt;/li&gt;
&lt;li&gt;Animasyonlar için: &lt;a href="https://pub.dev/packages/animations"&gt;animations&lt;/a&gt; kullan&lt;/li&gt;
&lt;li&gt;Ekran boyutlandırma için: &lt;a href="https://pub.dev/packages/flutter_screenutil"&gt;flutter_screenutil&lt;/a&gt; kullan&lt;/li&gt;
&lt;li&gt;Routing içi: Veli Hoca'yı bekle, paket yazıyor. 🔥🐍&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Projeyi temiz tut;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://vb10.dev"&gt;vb10.dev&lt;/a&gt;'den projeyi temiz tutmakla alakalı yazıları oku:

&lt;ul&gt;
&lt;li&gt;Tema kullanımı, 🎨&lt;/li&gt;
&lt;li&gt;Saklama(cache), 💾&lt;/li&gt;
&lt;li&gt;Çoklu dil(multi language) 🇹🇷🇺🇸&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pub.dev/packages/hive"&gt;Hive&lt;/a&gt; kullan ✅&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Unit testleri yaz.&lt;/li&gt;
&lt;li&gt;Service testleri yaz.&lt;/li&gt;
&lt;li&gt;Tema yönetimi yap. (Custom tema yaz) 🎨&lt;/li&gt;
&lt;li&gt;Widget'ları modüler ve atomic yap. Widget catalog oluştur. 🧩&lt;/li&gt;
&lt;li&gt;Bir sayfada max. 200 satır kod olsun. Fazlaysa parçala, widget'ları dışarı çıkar. 🔪&lt;/li&gt;
&lt;li&gt;Dart Lang Tutorial'ı mutlaka oku. 📑&lt;/li&gt;
&lt;li&gt;'&lt;strong&gt;Flutter Apperantive&lt;/strong&gt;' kitabını oku. 📘&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dart.dev/guides/language/effective-dart/usage"&gt;dart.dev&lt;/a&gt;'den &lt;strong&gt;&lt;em&gt;Effective Dart&lt;/em&gt;&lt;/strong&gt; bölümünü oku.  📄&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
  </channel>
</rss>
