Trakya Üniversitesi Mühendislik-Mimarlık Fakültesi Bilgisayar Mühendisliği Bölümü. BM Yazılım - Staj Raporu

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Trakya Üniversitesi Mühendislik-Mimarlık Fakültesi Bilgisayar Mühendisliği Bölümü. BM Yazılım - Staj Raporu"

Transkript

1 Trakya Üniversitesi Mühendislik-Mimarlık Fakültesi Bilgisayar Mühendisliği Bölümü BM Yazılım - Staj Raporu Teslim Eden : İsim-Soyisim : Muhammet Umut AKSOY Numara : Kuruluşun İsmi ve Yeri : Trakya Üniversitesi Bilgi İşlem Edirne, Türkiye Staj Tarihleri :

2 GİRİŞ Trakya Üniversitesi Bilgi İşlem Bölümünde yapacağım yazılım stajı boyunca, Android işletim sistemli cihazlar için uygulama geliştirme konusunda ve Java Programlama Dili üzerinde kendimi geliştirme ve tecrübe kazanma amacı taşımaktayım. Bu doğrultuda staj süresi boyunca Eclipse geliştirme ortamını kullanarak android uygulama geliştirmek istiyorum. Geliştireceğim mobil uygulama, içinde Jsoup kütüphanesi, AsyncTask metodu ve HashMap uygulamasının yer aldığı kaynak siteye bağlanan ve bu siteden veri çeken hava durumu uygulaması olacaktır.

3 1. GÜN Staj boyunca android programlama üzerine kendimi geliştirmeye karar vermem nedeniyle proje olarak android cihazlar için hava durumu uygulaması yazmaya karar verdim. Mevcut hava durumu uygulamalarını incelemekle işe başladım. Meteoroloji Genel Müdürlüğü tarafından yayınlanmış olan hava durumu uygulamasının yanı sıra birden çok dilde hizmet veren uluslararası hava durumu uygulamalarının çalışma prensiplerini incelememin sonunda, sadelik ve performansın ön planda olacağı bir hava durumu uygulaması düşüncesini benimsedim. Bu düşünce doğrultusunda aldığım bazı notlar; *Türkiye'nin tüm illerinin hava durumu tahminlerini içinde barındıran bir meteoroloji raporu sunan herhangi bir siteden hava durumu raporlarına erişim sağlanacak, *Uygulamayı çalıştıracak cihaz ekranlarının küçüklüğü nedeniyle raporlardaki gereksiz açıklamalar ayıklanacak ve sadece tarih, gece gündüz sıcaklıkları ve yağış durumu hakkında bilgiler sunulacak, *Yine cihaz ekranlarının küçüklüğü göz önünde bulundurularak hava durumu bilgisine ulaşılacak ilin kolay ulaşılabilecek durumda olması gerekmektedir. Bu sorunu çözmek için arama sonuçlarını anında yansıtan bir arama kutusu tasarlanacak ve en üstte yer verilecektir. Alınan bu notlar proje sonuna kadar temel teşkil edeceğini düşünüyorum. Proje başında öngörülemeyen durumlar yaşandığı takdirde notlar üzerinde gerekli düzenlemeler yapılacaktır. Öncelikle hava durumu raporlarının alınabileceği bir site bulmak için araştırmaya başladım ve stajın ilk günü bitiminde siteyi bulmayı başardım. Yabancı kaynaklardan alınacak raporların çevirilerinde oluşacak sorunların tamamı ile çözülemeyeceği, wunderground.com, weatherforecast.com, accuweather.com, weather.com gibi siteler ayrıntılı olarak incelendiğinde anlaşılmıştır. Ayrıca yukarıda bahsedilen sitelerdeki verilerin raporlamaya uygun olacak şekilde mobil uygulamaya aktarılamayacağı sonucuna varılmıştır. Bu noktadan sonra ihtiyacımızı karşılayacak hava durumu sitesi Türkçe yayın yapan ve hava durumu tahminlerini belirli bir düzende aktaran alternatifler araştırılmaya başlanmıştır. Türkiye'de yayın yapan başlıca hava durumu siteleri; Yukarıda yer alan sitelerin bir kısmı hava durumu raporlarını görseller içinde verdikleri için

4 verileri almak, işleyerek mobil uygulamada kullanmak mümkün olmayacaktır. Yani sadece, mgm.gov.tr, havadurumux.com ve 15gunlukhavadurumu.gen.tr sitelerindeki veriler işlenebilecek ve mobil uygulamada kullanılabilecek durumdadır. Bu siteler arasındaki tercih ise sayfa boyutu en küçük olan siteden yana olacaktır. Mobil cihazların internet kullanımında sıkıntılar yaşamaları ve görece daha yavaş internet bağlantılarına sahip olmaları bu tercihte etkili olmaktadır. Mgm.gov.tr sitesindeki sayfaların boyutu yaklaşık 11 KB, havadurumux.com sitesindeki sayfaların boyutu yaklaşık 9 KB, 15gunlukhavadurumu.gen.tr sitesindeki sayfaların boyutu ise yaklaşık 6 KB'dır. Gün sonunda 15gunlukhavadurumu.gen.tr üzerinden verilerin çekileceğine karar verilmiştir. Stajın 2. günü bu site detaylıca incelenecektir.

5 2. GÜN Dün hava durumu tahminlerinin 15gunlukhavadurumu.gen.tr sitesi üzerinden çekileceğini kararlaştırmıştım. Bugün ilk olarak sitenin yapısını detaylıca incelemeye başlıyorum. Site, 81 il ve bu illerin ilçelerine göre 15 günlük hava durumu tahminlerini yayınlamakta. Sitede yer alan yaklaşık 900 ilçeye ait hava durumu verileri mobil uygulamaya taşındığında uygulamanın performansını olumsuz olarak etkileyecektir. Bunun nedeni illerin hava durumlarına ulaşılırken standart bir adres yapısı olmasına rağmen, ilçelerin hava durumlarına ulaşılırken standarttan uzak farklı adres yapılarının yer almasıdır. Daha açık bir ifadeyle, görüldüğü gibi illere ait sayfaların standart bir yapısı vardır. İstenen ilin sayfasına + il adı + -hava-durumu-15-gunluk/ gibi bir yapıyla ulaşılabilinir. Bu standart yapı, bizi, herhangi bir veritabanında illerin adreslerini tutma zorunluluğundan kurtarmıştır. İl gibi bir değişken ile bütün illere ulaşılabilinir. Fakat ilçeler için aynı durum söz konusu değildir. Örneğin Muş ilinin Bulanık ilçesi sayfasına, adresiyle ulaşılırken, yine Muş ilinin Malazgirt ilçesine ait sayfaya şeklinde bir adres yapısıyla ulaşılmaktadır. Bu farklılık nedeniyle bütün ilçeler için id, ilçe adı, sayfa adresi sütunlarından oluşacak veritabanı oluşturulması gerekliliği ortaya çıkmaktadır. Performansı ve kullanışlılığı etkileyecek önemli bir faktör olması nedeniyle bundan kaçınılacak ve sadece iller bazında hava durumlarının değerleri uygulamada yer alacaktır. Bu aşamadan sonra istenilen internet adresine bağlanıp adresteki tüm veriyi bir yerde depolayan ve bu veri içinden sadece istenilen kısımların kullanılacağı bir metod üzerine çalışmalar yapılacaktır. Girilen sayfanın bütün verilerinin mobil uygulamada gösterilmesinin bir anlamı yoktur. Önemli olan sadece hava durumu tahminlerinin, sıcaklıkların ve tarihlerin yer aldığı bölümlerin uygulama içinde yer almasını sağlamaktır. Günün son saatlerinde bu metod ve algoritma üzerine yoğunlaşılmıştır. Fakat elle tutulur bir sonuç alınamamıştır. Yarın bu metod üzerine düşünmeye devam edeceğim ayrıca çeşitli yabancı kaynaklardan da istediğim şekilde bir metod bulabilmek ümidiyle araştırmalar yapacağım...

6 3. GÜN İstenilen web sayfasındaki verileri çekebilmek için uzun süre araştırma yaptım. HttpUnit, JUnit testing, Web Crawling gibi yöntemleri derinlemesine araştırdım. Java programlama diliyle kullanılabilecek yöntemlerin çoğunluğuna göz gezdirdim ve verilmiş bir çok örneği inceledim. Sonrasında bu yöntemlerden daha basit ve daha uygun bir yöntemle karşılaştım. Java'da sadece bu sorunu etkili bir şekilde çözmek için oluşturulmuş proje olan Jsoup, araştırma ve kodlama sırasında faydalanılabilecek en geniş dökümantasyona sahip. Resmi sitesi olan üzerindeki tanım ve örnekleri okumaya ve incelemeye başladım. Jsoup java için yazılmış bir HTML Parser'dır. Yoğun bir ilgi görmesi nedeniyle farklı programlama dilleri için de geliştirmeler yapılmıştır. Yapısının DOM (Document Object Model) olmasından dolayı çok kullanışlıdır. Diğer HTML Parser'lardan en önemli özelliği HTML tag ve CSS class yapılarına göre filtreleme yapabilmesidir. Hava durumu verilerini çekeceğimiz 15gunlukhavadurumu.gen.tr sitesinin kaynak kodlarına baktığımızda; <tr> <td>18 Haziran 2013<br/>Pazartesi</td> <td><img src="/icons/113_35x35.png" alt="güneşli" title="güneşli" height="35" width="35" /></td> <td style="text-align: left;">güneşli</td> <td style="text-align: center;">27 </td> <td style="text-align: center;">22 </td> </tr> <tr> <td>19 Haziran 2013<br/>Salı</td> <td><img src="/icons/113_35x35.png" alt="güneşli" title="güneşli" height="35" width="35" /></td> <td style="text-align: left;">güneşli</td> <td style="text-align: center;">27 </td> <td style="text-align: center;">23 </td> </tr> hava durumu tahminlerinin yukarıda da görüldüğü gibi <td> tagleri içinde bulunduğunu görüyoruz. Jsoup kütüphanesinin HTML tag'lere göre filtreleme yapabilmesinin vereceği bu esneklik projemize hız kazandıracaktır. Projemizde siteyle bağlantı kurmamızı sağlayacak yöntemi seçtikten sonra Jsoup kütüphanesini indirmemiz gerekiyor. Bugün, Jsoup kütüphanesinin Eclipse ortamında geliştirilecek projeye eklenmesini tamamladıktan sonra yarın Jsoup üzerine araştırmalara devam edeceğim ve Eclipse ortamında projenin ilk adımlarını atacağım.

7 Projemize Jsoup kütüphanesini eklemek için Jsoup.org sitesinin indirme bölümünde jsoup jar isimli kütüphaneyi indirmemiz gerekiyor. İndirme adresi : İndirdiğimiz jar dosyasını projenin libs klasörü içine kopyaladıktan sonra kullanacağımız herhangi bir java dosyasında import ederek rahatlıkla kullanabiliyoruz. Artık, projeye import org.jsoup.jsoup; import org.jsoup.nodes.document; import org.jsoup.nodes.element; import org.jsoup.select.elements; şeklinde temel komutları import edebiliriz.

8 4. GÜN Günün önemli kısmını Jsoup kütüphanesinin dökümantasyonlarını okuyarak geçirdim. Özellikle "select" metodu üzerine bir çok örnek inceledim ve kullanılışı hakkında önemli bilgiler edindim. Select metodu, Döküman (Document), Element (Element) ve Elementler (Elements) üzerinde kullanılabilen bir metod. Select metodu işlem yaptıktan sonra sonuç olarak Elements yani Element listesi döndürür. Fakat ilk değeri, son değeri ya da filtrelemeye uygun olarak istenen tek değeri Element olarak döndürdüğü metodlara da sahiptir. Element.select(String selector) şeklinde bir kullanıma sahiptir. Seçim yapacak bir String değer alır. Ve yukarıda da belirttiğim gibi Documents, Elements, Element üzerinde çalışabilir. Buna basit bir örnek vermek gerekirse; File input = new File("/tmp/input.html"); Document doc = Jsoup.parse(input, "UTF-8", " Elements link = doc.select("a[href]"); // döküman içerisinde a href etiketi bulunanları seç ve link Elementlerine ata. Elements png = doc.select("img[src$=.png]"); // img src etiketi bulunan sonu.png ile bitenleri seç ve png Elementlerine ata Element masthead = doc.select("div.masthead").first(); // masthead sınıfı olan divlerin ilkini seç ve masthead elementine ata. Görüldüğü gibi documents olarak tanımlanmış olan doc nesnesinden istenilen özellikteki kısımları çok rahatlıkla alıp Element ya da Elements olarak tanımlanmış nesnelere aktarmaktadır. Örnek olarak verdiğim kodlarda görüldüğü gibi select() metodunun first() gibi metodları da bulunmaktadır. Select() metoduyla kullanılan diğer önemli alt metodları da araştırdım. Öğrendiklerimden bazıları şunlardır; Element.Select(String selector).add(element element) => add içerisindeki elementi ekler. Element.Select(String selector).after(string arg0) => after içerisindeki stringten sonra gelen elementi seçer. Element.Select(String selector).before(string arg0) => before içerisindeki stringten önce gelen elementi seçer. Element.Select(String selector).clear() => elementi temizler. Element.Select(String selector).clone() => başka bir elemente kopyalar (klonlar). Element.Select(String selector).contains(object o) => o nesnesi içerip içermediğini kontrol eder, Boolean değer döndürür. Element.Select(String selector).equals(object o) => o nesnesine eşit olup olmadığını kontrol eder, Boolean değer döndürür.

9 Element.Select(String selector).first() => ilk elementi seçer. Element.Select(String selector).get(int index) => verilen index değerindeki elementi alır. Element.Select(String selector).last() => son elementi alır. Element.Select(String selector).text() => verileri element olarak değil text olarak alır ve element değil String değer döndürür. Jsoup kütüphanesinin çok zengin olması nedeniyle kullanılan metodlara ait yüzlerce farklı ve çok kullanışlı alt metodlar bulunmaktadır. Select metodunun sahip olduğu burada yer almayan onlarca farklı alt metod bulunmaktadır.

10 5. GÜN Dün Jsoup kütüphanesinin select metoduyla ilgili yaptığım araştırma ve incelemelere bugünde devam ettim. Select metodunun genel olarak CSS taglere göre seçim yapıldığından bahsedilse de farklı kullanım yöntemleriyle çok daha fazla seçenek sunabiliyor. Bugün gün boyunca Select(String seçenek) kısmıyla yani Select metoduna değer olarak verdiğimiz Stringlerin tipleri hakkında bilgiler edindim. Öğrendiklerimi aktaracak olursam; tagname: tag ismine göre elementleri bulur. Örneğin a tagine göre... ns tag: namespace'e göre yani verilen isim uzayındaki bir tag ismine göre elementleri bulur. Örneğin değer olarak verilenfb name stringi <fb:name> etiketinde yer alan elementleri bulur. #id: ID'ye göre elementleri bulur. Örneğin #logo yazıldığında logo ID'sine sahip olan elementleri bulur..class: sınıfına göre elementleri bulur. Örneğin.masthead sınıfındaki elementleri alabiliriz. [attribute]: özelliğine göre elementleri bulur. Örneğin [href] özelliği bulunan elementleri seçtirebiliriz. [attr=value]: yazılan değere eşit olan özelliğin olduğu elementleri bulur. Örneğin [width=500] yazdığımızda genişliği 500'e eşit olan elementler seçilir. [attr^=value], [attr$=value], [attr*=value]: belirtilen özellikle başlayan, belirtilen özellikle biten ya da belirtilen özelliği içinde barındıran elementler seçilir. [attr~=regex]: düzenli ifadelere göre de seçim yapmak mümkündür. Örneğin img[src~=(?i)\.(png jpe?g)] şeklinde bir string yazdığımızda src etiketinin bulunduğu png, jpg, jpeg formatındaki resimleri seçmemizi sağlar. *: bütün elementleri seçmemizi sağlar. Yukarıdaki gibi yaptığımız seçimlere ek olarak, bu özellikleri birlikte kombinasyonlar şeklinde kullanarak da seçimler yapabiliriz. Bu konuda öğrendiklerim; el#id: element ve ID bir arada. Örneğin div#logo el.class: element ve sınıf bir arada. Örneğin div.masthead el[attr]: element ve özelliği bir arada a[href] Bunun gibi birçok özelliği birlikte kullanma esnekliği sayesinde select metodunun gücünü kat kat artırabiliriyoruz.

11 Jsoup kütüphanesinin dökümantasyonunu okumaya devam ediyorum. Haftaya adresine verileri çekilecek sitenin kaynak kodlarını yükleyerek denemeler yapmaya başlayacağım.

12 6. GÜN İlk hafta yoğun bir araştırma ve öğrenme dönemi oldu. İkinci haftanın daha çok proje tasarımı ve algoritmalar üzerinde geçmesini temenni ediyorum. Geçen hafta Jsoup kütüphanesinin dökümanlarının bir kısmını okuduktan sonra şimdi adresinden faydalanarak denemeler yapmaya başlayabilirim. Öncelikle hava durumu verilerini çekeceğim 15gunlukhavadurumu.gen.tr sitesine tekrar dönelim. Her ile ait hava durumu verilerine adı"+-hava-durumu-15-gunluk/ şeklindeki sayfalarla ulaşabiliyorduk. Şimdi de sayfaların kaynak kodlarını inceleyelim ve hava durumu verilerine ulaşma yollarına bakalım.jsoup deneme sayfasında Edirne iline ait sayfanın kaynak kodlarını koyarak denemelere başladım. Öncelikle filtreleme yaptırabileceğim herhangi bir css tag aradım fakat sadece hava durumlarını ayrıştıracak herhangi bir tag bulamadım. Sonra hava durumu verilerinin tablo şeklinde gösterildiğini farkettim ve HTML table kodlarında ayıracak denemeler yapmaya başladım. <tr> etiketini girdiğimde hava durumu verilerinin günlere göre ayrıldığını fakat her gün için, gelen verilerin ayrıştırılmasının zor olacağını farkettim. Android projemizde tarih verilerinin ayrı, hava verilerinin ayrı, sıcaklık verilerinin ayrı olarak gösterilmesi, karmaşıklığı azaltacak olması nedeniyle seçilmiştir. <tr> etiketi ile istediğim şekilde düzenleme yapamayacak olmamdan dolayı başka daha özel bir etiket aramaya başladım. Sonrasında <td> etiketinin sadece hava durumu verilerinde kullanıldığını ve bu verileri istediğim şekilde, tarih, hava durumu, sıcaklık olacak şekilde farklı farklı listeleyebildiğini gördüm. adresinde yaptığım <td> denemesinde, bir string dizisi içinde 0. eleman 1. gün tarihi, 1. eleman 1. gün hava durumu resmi, 2. eleman 1. gün hava durumu, 3. eleman 1. gün gündüz sıcaklığı, 4. eleman 1. gün gece sıcaklığı şeklinde tutulabileceğini farkettim. Yani her bir günün verileri için string dizide 5 hücre tutulacak ve istenen bir günün verilerine 5*İstenen gün formülüyle ulaşabiliyoruz. 14 günlük verilerin olduğu sitede 60 elemanlı bir dizi üzerinde bütün verileri ayrıştırılmış olarak saklayabilir ve bu elemanlar üzerinde istediğimiz şekilde işlemler yapabiliriz. Verileri çekme ve işleme konusuna bu şekilde bir çözüm bulduktan sonra projenin tasarımı için algoritmaları üzerine düşünmeye başladım. En az iki farklı ekran olması gerektiği, ilk ekranda illerin listelendiği ve bu illerden birisinin seçileceği, ikinci ekranda seçilen ilin verilerinin listeleneceği bir işleyiş olması gerektiğine karar verdim. İlk ekrandan seçilen il bilgisinin ikinci ekrana gideceği, ikinci ekranda bu bilgi ile gerekli internet sayfasına erişilip hava durumu tahminlerinin alınarak ikinci sayfa içinde yer alacak ögelerde listeleneceği geliştireceğim algoritmanın temellerini oluşturacağını gün sonunda bulmuş oldum. Bu temel üstüne diğer detayları ilerleyen günlerde tamamlamayı planlıyorum.

13 7. GÜN Bütün gün algoritma geliştirme üzerine çalıştım. Projede kullanılacak algoritmaları büyük ölçüde oluşturdum. Kullanacağım algoritmalar; 1.Başla 2.İl adlarını yükle 3.İlleri listele 4.İl arama çubuğuna değer girildiğinde girilen değere göre tekrar illeri listele. 5.İl seçildiğinde seçilen il verisini tut, diğer ekrana geç. 6.İlk ekrandan gelen veriyi al, büyük harfleri küçük harflere çevir, Türkçe karakterleri dönüştür ve il değişkeni olarak tut. 7.site ismi + il değişkeni + hava-durumu-15-gunluk adres değişkeni oluştur. 8.Jsoup kütüphanesinden faydalanarak adres değişkenindeki adresle bağlantıyı başlat. 9.Başlatılan bağlantıdan gelen verileri bir document nesnesinde tut. 10.Document nesnesindeki veriler içinde "td" etiketine göre filtreleme yap ve filtrelenen verileri elementler olarak tut. 11.Tutulan elementleri bir string dizisine aktar. 12.Dizinin 0, 5, 10, , 25, 30, 35, 40, 45, 50, 55, 60, 65 elemanlarını tarih textview'u olarak göster. 13.Dizinin 1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61, 66 elemanlarında bulunan resimleri, drawable klasöründeki resimlerle eşleştir ve resim imageview'u olarak göster. 14.Dizinin 3, 8, 13, 18, 23, 28, 33, 38, 43, 48, 53, 58, 63, 68 elemanlarındaki gündüz sıcaklıklarını durum textview'u içinde gündüz sıcaklıkları olarak göster. 15.Dizinin 4, 9, 14, 19, 24, 29, 34, 39, 44, 49, 54, 59, 64, 69 elemanlarındaki gece sıcaklıklarını durum textview'u içinde gece sıcaklıkları olarak göster. 16.Bitir. Analiz ve tasarım aşamasındaki kısımları tamamladıktan sonra, projenin kurulumuyla uygulama daha doğrusu gerçekleştirim aşamasına geçmiş olacağım. Proje Eclipse ortamı üzerinde gerçekleştirilecek, bu yüzden ilk iş olarak Eclipse ortamında yeni bir proje açmakla başlıyorum gerçekleştirim aşamasına. Eclipse ortamını açtıktan sonra File > New > Android Application Project bağlantısına tıklayarak gelen pencerede gerekli yerleri dolduruyorum. Application Name kısmına Hava Durumu, Project Name kısmına HavaDurumu ve Package Name kısmına com.umut.havadurumu yazdıktan sonra Finish butonunu tıklayarak projemizi oluşturmuş oluyorum. Kurulum olduktan sonra Package Explorer alanında proje klasörüm gelmiş oldu. Hava Durumu klasöründeki src alt klasöründe, yazacağım java dosyaları, res>layout alt klasöründe xml

14 dosyaları, res>drawable-hdpi alt klasöründe hava durumu ikonları, libs alt klasöründe ise Jsoup adresinden indirdiğimiz, jsoup kütüphanesinin jar dosyası yer alacak. Kurulum tamamlandıktan sonra çalışmamız için MainActivity.java ve ana uygulama ekranı olarak da activity_main.xml dosyaları hazır olarak geldi. Bu hazır dosyalar bize yetmeyeceği için mevcut dosyaların yanlarına yenilerini ekleyeceğiz. Hazır olarak gelen MainActivity.java dosyasında algoritmamın ilk 5 adımını gerçekleştirip oluşturacağımız başka bir dosyada algoritmanın geri kalan adımlarını tamamlayacağız. activity_main.xml dosyasında ise kullanıcı arayüzü oluşturup MainActivity.java dosyasında gerçekleştirilen olayların bu dosyada görüntülenmesini sağlayacağız. Yarın, projeye activity_main.xml dosyasında tasarım yaparak ve MainActivity.java dosyasını yazmaya başlayarak devam edeceğim.

15 8. GÜN 8.güne activty_main.xml dosyasının tasarımında nelerin olması gerektiğini düşünerek başladım. İllerin listeleneceği bir listview ve listview'den önce edittext koymanın yeterli geleceğini düşünüyorum. Edittext'e girilecek karakterlere göre listview'daki iller tekrardan listelenecek ve böylelikle alttaki illere kolay erişim sağlanmış olacaktır. Daha açık bir ifadeyle anlatmak gerekirse, listview'da Edirne iline ulaşmak isteyen birisi 20'den fazla ili geçtikten sonra Edirne ilini bulmuş olacaktır. Halbuki edittext üzerine "e" karakterini girebilse Edirne ili ilk 5 sonuç içinde sıralanacağı için kolaylıkla tıklama imkanına kavuşmuş olacaktır. Bu işlevselliği uygulamaya koymaya karar verdikten sonra activity_main.xml dosyasının kodları şu şekilde yazılmış oldu; <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <EditText android:id="@+id/inputsearch" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="ili arayın.." android:inputtype="textvisiblepassword"/> <ListView android:id="@+id/list_view" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout> Burada kullandığımız listview'da gösterilecek illerin başka bir xml dosyasında bir textview içinde yer alması gerekmektedir. Bunun için activity_main.xml dosyasına ek olarak, list_item.xml dosyasını oluşturdum. Ve bu dosyada iller id'sine sahip bir textview kullandım. list_item.xml dosyasında yazdığım kodlar şu şekildedir; <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" >

16 <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="10dip" android:textsize="16dip" android:textstyle="bold"/> </LinearLayout> Kullanacağım xml dosyalarından ikisini yazdıktan sonra, MainActivity.java dosyası üzerinde çalışmaya başlayabilirim. Bu dosyada yapılacakların ekranda görülmesi için bu dosyayı, activity_main.xml dosyasıyla birbirine bağlamamız gerekmektedir. public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); oncreate metoduna setcontentview ile yazarak birbirlerine bağlamayı gerçekleştirdim. Böylelikle java dosyaları üzerinde çalışmaya da başlamış oldum. Yarın java dosyalarındaki çalışmalarıma devam edeceğim.

17 9. GÜN Dün MainActivity.java dosyasıyla activity_main.xml dosyasını birbirine bağlayıp çalışmamı sonlandırmıştım şimdi kaldığım yerden çalışmalarıma devam ediyorum. Yazdığım algoritmayı hatırlayacak olursak ilk yapacağımız iş il adlarını yüklemek olacak. Bu yüzden dün yazdığım oncreate metoduna eklemeler yapacağım. OnCreate metodu üzerinde bu kodları yazmamın nedeni bu işlemlerin sayfa yüklenir yüklenmez gerçekleşmesi gerektiği. Başka bir olayın gerçekleşmesini beklemeksiniz bu işlemler gerçekleşmeli. Hemen iller ismiyle bir String dizisi oluşturdum ve bütün illeri bu diziye eleman olarak atadım. Sonrasında list_view id'li listview'u lv değişkenine, inputsearch id'li edittext'i de inputsearch değişkenine atadım. Bir adapter tanımlayarak lv listview'una illerin yüklenmesini gerçekleştirdim. Bütün bunlara karşılık gelen yazdığım kodlar şu şekildedir; String iller[] = {"Adana", "Adıyaman", "Afyonkarahisar", "Ağrı", "Aksaray", "Amasya", "Ankara", "Antalya", "Ardahan", "Artvin", "Aydın", "Balıkesir", "Bartın", "Batman", "Bayburt", "Bilecik", "Bingöl", "Bitlis", "Bolu", "Burdur", "Bursa", "Çanakkale", "Çankırı", "Çorum", "Denizli", "Diyarbakır", "Düzce", "Edirne", "Elazığ", "Erzincan", "Erzurum", "Eskişehir", "Gaziantep", "Giresun", "Gümüşhane", "Hakkari", "Hatay", "Iğdır", "Isparta", "İstanbul", "İzmir", "Kahramanmaraş", "Karabük", "Karaman", "Kars", "Kastamonu", "Kayseri", "Kırıkkale", "Kırklareli", "Kırşehir", "Kilis", "Kocaeli", "Konya", "Kütahya", "Malatya", "Manisa", "Mardin", "Mersin", "Muğla", "Muş", "Nevşehir", "Niğde", "Ordu", "Osmaniye", "Rize", "Sakarya", "Samsun", "Siirt", "Sinop", "Sivas", "Şanlıurfa", "Şırnak","Tekirdağ", "Tokat", "Trabzon", "Tunceli", "Uşak", "Van", "Yalova", "Yozgat", "Zonguldak"}; lv = (ListView) findviewbyid(r.id.list_view); inputsearch = (EditText) findviewbyid(r.id.inputsearch); adapter = new ArrayAdapter<String>(this, R.layout.list_item, R.id.iller, iller); lv.setadapter(adapter); Bu kodları yazdıktan sonra uygulamayı çalıştırdığımda illerin hepsinin listview üzerinde görüntülenmesini sağladım. Bundan sonra MainActivity.java dosyasında yapmam gereken işler olarak inputsearch edittext'ine göre listview'daki il sıralamalarının değişmesi ve tıklanan ilin değerinin saklanarak diğer ekrana geçilip il değerinin diğer ekrana yollanması kaldı. Diğer ekrana değer gönderme konusunda eksiklerim olduğu için uzunca bir araştırma yapmam gerekecek. Bu nedenle bu işi yarına bırakıyorum ve bugünlük inputsearch edittext'i ile çalışıyorum. Yapmak istediğim iş için addtextchangelistener metodunu kullanacağım. Bu metodla text değiştiği zaman yapılacaklar, text değişmeden önce yapılacaklar ve text değiştikten sonra yapılacaklar rahatlıkla yapılabilinir. Bu metodu öğrenmek için uzun araştırmalar yaptıktan sonra text değiştiği zaman yapılacakları ontextchanged metodunda yazabilecek duruma geldim.

18 Çalışmasını sağladığım en son kodlar şu şekilde oldu; inputsearch.addtextchangedlistener(new TextWatcher() public void ontextchanged(charsequence cs, int arg1, int arg2, int arg3) { // Text değiştiği zaman MainActivity.this.adapter.getFilter().filter(cs); } } Uygulamaya bu fonksiyonu kazandırmak çok vaktimi almış, çok fazla araştırmama neden olmuş olsa da başarmış olmaktan mutluyum. Yarın, diğer ekrana geçişi ve ekrana geçerken veri gönderme üzerine araştırmalar yapacağım.

19 10. GÜN Dün MainActivity.java dosyası üzerinde yazdığım kodlardan sonra algoritmamdaki 4. adımı da tamamlamış oldum. Artık yavaş yavaş MainActivity.java dosyasındaki işim bitiyor ve diğer ekran ve java dosyasıyla çalışmalarım başlıyor. Fakat bundan önce algoritmadaki 5. adımı ve MainActivity.java dosyasındaki son kısımları yazmam gerekiyor. Son kısımları yazabilmem için android uygulamalarda bir ekrandan diğer ekrana geçişi ve geçiş esnasında veri aktarımını öğrenmem gerekiyor. Bu amaçla, bugünü tamamen bu yöntemi araştırmak ve öğrenmekle geçirdim diyebilirim. Activity'ler arası veri aktarımı için Bundle yapısı gerektiğini öğrendikten sonra bununla ilgili araştırmalara başladım. Uygulamamda bir Bundle oluşturup bu Bundle'a putstring metoduyla il ismini String değişken içerisinde verip en sonda da intent.putextras() koduyla başlayan diğer Activity'ye veri gönderimini tamamlayacağımı çok uzun bir araştırmayla öğrenmiş oldum. Günün geri kalanında da bu öğrendiğimi uygulamam üzerinde koda dönüştürmekle uğraştım. Activity geçişini ve Bundle ile veri gönderimini listview'un setonclicklistener altında onitemclick metodu içerisinde yazmam gerektiğini farkettim. SetOnClickListener listview'da herhangi bir ögeye tıklanıp tıklanmadığını "dinleyen" bir metod. Bu metodun altında da dinleme sonucunda tıklanmanın gerçekleştiği farkedilirse yapılacakları onitemclick metoduna yazmamı sağlamaktadır. Bu şekilde listview tıklama olmadığı sürece bekleyecek, tıklama olduğunda harekete geçecek ve bir intent bir Bundle oluşturacaktır. Bundle'a listview'da tıklanan ili yükleyecek, intent ile diğer ekrana geçiş yapacak ve geçiş yaparken de veri gönderimi sağlanacaktır. Tüm bu işleri yapacak kod aşağıdaki şekildedir; final ListView listview1 = (ListView)findViewById(R.id.list_view); listview1.setonitemclicklistener(new OnItemClickListener() public void onitemclick(adapterview<?> a, View v, int position, long id) { bundle = new Bundle(); havaliste.class); } }); Intent intent = new Intent(getApplicationContext(), String str = "il adı"; str=listview1.getitematposition(position).tostring(); bundle.putstring("deneme", str); intent.putextras(bundle); startactivity(intent);

20 Yukarıda öncelikle listview1 isimli list_view id'li bir ListView tanımladım. Sonrasında listview1'in setonitemclicklistener ile her hangi bir item'ına tıklanıp tıklanmadığını dinletmeyi gerçekleştirdim. Tıklama gerçekleştiğinde yapılacakları ise onitemclick metodunda yazdım. Bu metod içinde bundle isimli yeni Bundle bir tane de havaliste sınıfına gidecek bir intent isimli Intent oluşturdum. NullPointerException gibi bir hatanın oluşmasını engellemek için oluşturduğum str değişkenine "il adı" şeklinde başlangıç değeri verdim. Böylece uygulama hata vermeden geçiş yapabilecek fakat diğer ekranda il adı şeklinde değer döndürdüğünü gördüğüm zaman hatanın nereden kaynaklandığını anlayabileceğim. Sonrasında str değişkenine listview1'in tıklanan item'ının position değerine göre seçip bunu stringe çevirerek atama yapıyorum. Burada getitematposition kullanmamın nedeni inputsearch ile illerin yerleri değiştiğinde hata oluşmasını engellemek içindir. En son olarak da bundle içerisine str stringini "deneme" anahtar kelimesiyle koyup bu bundle'ı da intent içine yerleştirmek oldu ve herşey tamamlandığında intenti başlattım.

21 11. GÜN 2 hafta sonunda algoritmadaki ilk 5 adımı, MainActivity.java dosyasındaki bütün kodları ve activity_main.xml, list_item.xml dosyalarındaki tasarımın tamamını yapmış oldum. Stajın geri kalan 2 haftasında ise algoritmadaki son 10 adımı tamamlayıp uygulamayı tamamı ile çalışır duruma getirmek için çalışmalar yapacağım. İkinci haftanın ilk gününde yeni ekrana geçiş yaptığımız için bu yeni ekranın tasarımını yapacağım. Yeni ekranımızda da ilk ekrana benzer şekilde bir adet TextView ve bir adet ListView olacak. Fakat buradaki görevler çok daha farklı olacak. TextView MainActivity.java dosyasındaki bundle'dan hangi il adının geldiğini görüntülemek için, ListView ise o ile ait hava durumu verilerini görüntülemek için kullanılacak. Tabi ki, ListView kullandığımız için ListView içerisinde görüntülenecek değerleri başka bir xml dosyası tasarlayarak halletmemiz gerekecek. 10.günün son saatlerinde havaliste activity'sine geçiş yapacağımızı yazmıştık. Bu nedenle bugün tasarlayacağım xml dosyasına ve sonraki günlerde yazacağım java dosyasına da havaliste ismini vermek istiyorum. Package Explorer üzerinde layout klasörüne geldikten sonra klasöre sağ tıklayıp New > Android XML File seçeneğine tıklıyorum. Burada dosya ismi olarak havaliste.xml yazdıktan sonra Finish butonuna tıklıyorum ve havaliste.xml dosyamı layout klasörü altında oluşturmuş oluyorum. Her dosyanın uygun olan klasörler altında toplanması proje büyüdüğünde ve ilerlediğinde karışıklığı engellemek için hayati önemde alınacak bir önlemdir. Bundan sonra havaliste.xml dosyasının tasarımını şu şekilde tamamlıyorum; <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="hava Durumu" android:textappearance="?android:attr/textappearancelarge" /> <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout>

22 Burada textview1 id'li TextView il adını göstermemizi, list id'li ListView ise hava durumu tahminlerini listelememizi sağlayacak. Havaliste.xml dosyasında kullandığımız ListView içerisinde gösterilecek verilerin neler olacağını belirlemek için başka bir xml dosyası oluşturmam gerekecektir. Fakat ben bu işi yarına bırakıyorum. Yarın yeni xml dosyamı tasarlayarak devam edeceğim.

23 12. GÜN Dün geçiş yapacağımız ve hava durumu verilerini gösterilmesini sağlayacağımız havaliste.xml dosyasını tasarladıktan sonra bugün, list.xml adında ListView'da olacak verilerin tiplerini belirteceğim bir xml dosyası oluşturdum. Tasarımını yaptığım list.xml dosyasının kodları şu şekilde; <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <LinearLayout android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="0.79" android:orientation="vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="large Text" android:textappearance="?android:attr/textappearancelarge" /> </LinearLayout> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" /> <LinearLayout android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="0.79" android:orientation="vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="large Text" android:textappearance="?android:attr/textappearancelarge" /> </LinearLayout> </LinearLayout>

24 Bu tasarımda bir yatay, iki dikey toplam üç adet LinearLayout kullandım. İlk kullandığım ve yatay olan LinearLayout bütün ögeleri toplama işlemini görüyor. Diğer dikey layoutlar ise, TextView'ların daha hoş ve ekranda kayma yapmadan durmalarını sağlamak için kullanıldı. Kullanılan 2 TextView'dan ilki tarih verilerinin gösterilmesini, ikincisi ise gündüz ve gece sıcaklıklarının gösterilmesini sağlayacak. Aynı zamanda bir adet de ImageView kullanarak uygulamaya görsellik kattım ve hava durumu tahminlerini gösteren ikonların görüntülenmesini sağladım. Xml dosyalarının tasarımlarını tamamladıktan sonra, 13. gün yeni java dosyasını yazmaya başlayacağım.

25 13. GÜN 13.günde havaliste.java dosyasını oluşturdum. MainActivity.java dosyasındaki bundle'dan gelen veriyi almak için çalışmalar yaptım fakat tam anlamıyla başarılı olamadım. Bu yüzden bugünün çok büyük bölümü yaptığım hataları araştırmakla geçti ve bu esnada uygulamamda AsyncTask kullanmam gerektiğini farkettim. Hatalarım hakkında araştırmalardan arta kalan vakitte AsyncTask üzerine araştırmalar yaptım fakat araştırmalarımı tamamlayamadım. Yarın da AsyncTask üzerindeki araştırmalarımı yapmaya devam edeceğim. Bugün kodlama üzerine yaptıklarım şu şekilde; public class havaliste extends public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.havaliste); Bundle veriler = getintent().getextras(); String edtgelenilk = veriler.getstring("deneme"); 2 gün önce oluşturduğum havaliste.xml dosyasıyla havaliste.java dosyasını bağlamayı gerçekleştirdim. Ayrıca veriler isminde bir Bundle oluşturdum ve intent ile gelen veriyi bu Bundle'a yüklemesini sağladım. Sonrasında edtgelenilk ismiyle bir String oluşturdum ve bu stringe veriler bundle'ındaki "deneme" anahtar kelimeli stringi atadım. Bu kodları yazdıktan sonra AsyncTask yapısını keşfettim ve araştırmalarım sonunda yazdığım kodların AsyncTask yapısına göre tekrardan düzenlenmesi gerekliliğini farkettim... Bugünkü araştırmalarım sonucunda AsyncTask yapısı hakkında aktarabileceklerim; AsyncTask, kullanıcı uygulamayı kullanırken arka planda yapmak istediğimiz işleri gerçekleştirmemiz için kullanılır. Örnek olarak, kullanıcı menüyü incelerken arka planda menü bilgilerini indirebiliriz. Bu yapının kullanılma sebebi kullanıcıları sıkmadan uygulamanın içeriklerine ulaşmalarını sağlamaktır. AsyncTask classından türetilmiş sınıf ve bu sınıf içerisinde arkaplanda yapmak istediğimiz işlemleri yapabiliriz. Android uygulamaları geliştirirken; uygulama arayüzünün yüklenmesi veya yenilenmesi durumlarında, kullanıcıyı bilgilendirmek için AsyncTask kullanımına ihtiyaç vardır. Diğer türlü arayüz üzerinde işlem yapmak mümkün değildir. AsyncTask i hem inner class olarak hem de ayrı bir class olarak kullanmak mümkün. Ben projemde AsyncTask'i inner class olarak kullanacağım. Yarın AsyncTask hakkındaki araştırmalarımı bitirip bu yapıyı kullanarak havaliste.java dosyasını yazmaya devam etmeyi planlıyorum.

26 14. GÜN Bugünün büyük çoğunluğunu AsyncTask üzerinde araştırmalar yaparak geçirdim. Araştırmalarımdan sonra projeme AsyncTask yapısını ekleyebilecek bilgiye ulaştım ve gün boyunca şu şekilde bir yapı yazdım; public class havaliste extends public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.havaliste); new MyTask().execute(); } class MyTask extends AsyncTask<Void, Void, String> { ProgressDialog pd = protected void onpreexecute(){ pd = new ProgressDialog(havaliste.this); pd.setmessage("çalışıyor..."); protected String doinbackground(void... params) { Bundle veriler = getintent().getextras(); String edtgelenilk = veriler.getstring("deneme"); protected void onpostexecute(string result) { } } Uygulama çalıştığında AsyncTask olarak tanımlanmış MyTask çalışacaktır. AsyncTask oluşturulurken gönderilenler Constructor a, execute metodu ile gönderilenler ise doinbackground metoduna gider. Ayrıca inner class tanımını yaparken kullanılan <Void, Void, String> tanımı sırasıyla gönderilecek parametre tipi, işlemler yapılırken kullanılacak parametre tipi ve işlemler sonucunda geri döndürelecek veri tipidir. AsyncTask içerisine veri gönderilmeyecek ve alınmayacaksa bu parametrelerin her biri Void olarak belirtilmelidir. Ayrıca daha önce oncreate metodu altında yazdığım bundle kodları AsyncTask yapısına

27 geçtiğim için bu yapının doinbackground kısmına alınmıştır. Projem AsyncTask yapısıyla daha sağlam ve işlenmesi daha kolay bir yapıya kavuştuktan sonra yarından itibaren algoritmadaki kalan adımları yazmaya devam edebilirim.

28 15. GÜN Dün doinbackground metodu altında bundle kodlarını yazmıştım. Diğer metodlar altında değil de doinbackground altında yazmamın nedeni, uygulamayı çalıştıran cihazların, tüm bu işlemleri arka planda yapmalarını sağlayabilmektir. DoInBackground kısmında yapacağımız işlemler tam olarak bitmedi. Yazdığım AsyncTask yapısında doinbackground'un bir string değer döndürmesi ve bu stringi de onpostexecute tarafının alması gerekmektedir. Fakat ben, doinbackground tarafından değer döndürülecek herhangi bir string yazmadım. Stajın 15. gününde bunun üzerine çalışmalar yapacağım. Bundle ile önceki ekrandan gelen il ismini bir stringe atadım, ama bu stringi return etmemin bir anlamı yok. Bu string değerini kullanarak siteyle bağlantı kurmalı oradan gelen verileri bir string içine aktarmalı ve bu string değerini değer olarak döndürmeliyim. Bu mantıkla doinbackground'daki yazdığım kodları şu şekilde geliştirdim; class MyTask extends AsyncTask<Void, Void, String> { ProgressDialog pd = null; String title3 protected void onpreexecute(){ pd = new ProgressDialog(havaliste.this); pd.setmessage("çalışıyor..."); protected String doinbackground(void... params) { try { Bundle veriler = getintent().getextras(); String edtgelenilk = veriler.getstring("deneme"); String edtgelen = edtgelenilk; edtgelen=edtgelen.tolowercase(); edtgelen=edtgelen.replace("ç", "c"); edtgelen=edtgelen.replace("ğ", "g"); edtgelen=edtgelen.replace("ı", "i"); edtgelen=edtgelen.replace("ö", "o"); edtgelen=edtgelen.replace("ş", "s"); edtgelen=edtgelen.replace("ü", "u"); String il = " + edtgelen + "-hava-durumu-15-gunluk/"; } catch (IOException e) { e.printstacktrace(); } return title3; }

29 Öncelikle doinbackground içindeki kodları try catch yapısı içine alarak olası durumlarda oluşabilecek kilitlenmelerin önüne geçmiş oldum. Try catch blogu çalışmasa dahi title3 değişkenini oluştururken başlangıç değeri verdiğim için, doinbackground hatalı da olsa bir string değeri döndürmüş olacak. Try cath bloguna baktığımızda bundle ile önceki ekrandan alınan il verisinin edtgelen isimli bir string değişkenine aktardığımı göreceğiz. Bu string değişkenini siteye bağlantı kurarken kullanacağım için, replace metodlarıyla önce büyük harfi küçük harfe döndürdüm sonrasında da Türkçe karakterlerin dönüşümlerini gerçekleştirdim. Böylece uygun bir web sayfa adresi yapısı oluşturmuş oldum. Yarın web sayfa adresini, Jsoup kütüphanesiyle kullanarak hava durumu verilerini almak üzere çalışmalar yapacağım.

30 16. GÜN Stajın başında uzun uzun incelediğim Jsoup kütüphanesini projemde kullanacağım zamana gelmiş bulunmaktayım. Bugün il isimli string değişkenine atadığım web sayfası adresini Jsoup'da connect metodunda kullanacağım. Connect kodu sonucunda sayfanın tüm kaynak koduna ulaşıp bunlar bir Document nesnesine aktaracağım. Sonra bu document içinde <td> etiketine uygun olan bölümleri elementler halinde tutacağım ve bu elementlerden string nesnesine aktaracağım. En sonda da bu string değerini döndürerek doinbackground'da çalışmalarımı bitirecek ve onpostexecute kısmında çalışmaya başlayacağım. Projemde kullanacağım Jsoup kodları için öncelikle bazı import işlemleri yapmam gerekecek. Libs klasöründeki Jsoup kütüphanesinden metodları çağırabilmemi sağlayacak bu import kodları şu şekildedir; import org.jsoup.jsoup; import org.jsoup.nodes.document; import org.jsoup.nodes.element; import org.jsoup.select.elements; İlk olarak Jsoup kütüphanesini import ediyorum java dosyama. Sonrasında üçünü de kullanacağım için Document, Elements ve Element nodelarını import ediyorum. İmport işlemini tamamladığıma göre artık bu Jsoup kütüphanesini kullanmaya başlayabilirim. DoInBackground metodunun tamamlanmış hali şu protected String doinbackground(void... params) { try { Bundle veriler = getintent().getextras(); String edtgelenilk = veriler.getstring("deneme"); String edtgelen = edtgelenilk; edtgelen=edtgelen.tolowercase(); edtgelen=edtgelen.replace("ç", "c"); edtgelen=edtgelen.replace("ğ", "g"); edtgelen=edtgelen.replace("ı", "i"); edtgelen=edtgelen.replace("ö", "o"); edtgelen=edtgelen.replace("ş", "s"); edtgelen=edtgelen.replace("ü", "u"); String il = " + edtgelen + "-hava-durumu-15-gunluk/"; Document doc = Jsoup.connect(il).userAgent("Mozilla").get(); Elements els = doc.getelementsbytag("td"); for (Element el : els) { title3= title3 + el.html()+"xxx";

31 } title3= edtgelenilk + "yyy" + title3; } catch (IOException e) { e.printstacktrace(); } return title3; } Jsoup.connect ile doc değişkenine sayfanın tüm kaynak kodunu yükledim. ElementsByTag komutu ile <td> tagi içindeki verileri alıp els Elementleri için aktardım. Sonrasında for döngüsüyle title3 değişkenine bu elementleri, aralarında xxx ayıracı olacak şekilde atadım. En son, verilerin hangi ile ait olduğunu belirtmek için yyy ayıracı kullanarak ilin ismini de title3 stringine koydum ve bu title3 değişkenini return ettim. Yarın döndürdüğüm title3 değişkenin onpostexecute metodunda kullanacağım.

32 17. GÜN Bugün, dün doinbackground'dan dönen title3 stringini onpostexecute üzerinde kullanmaya çalıştım. Döndürdüğüm bu değeri sağlıklı bir şekilde onpostexecute'ta alabildim fakat verileri tam anlamıyla ayıramadım. Yüzlerce deneme yaptım, saatlerce bu ayrıştırma işlemi üzerine düşündüm bir çıkar yolu bulamadım. Proje bu aşamada tıkandı. Tıkanıklığı bu şekilde çözemeyeceğimi düşününce, doinbackground'da, title3 değişkenine verileri farklı şekilde yüklemeye çalıştım fakat burada uğraşmak çok daha fazla sorun ortaya çıkardı. DoInBackground'daki denemeler sonucunda sıklıkla NullPointerException hatası aldım ve her hatada kodları tekrardan gözden geçirip iyice kafamın karışmasına sebep oldum. Kafamı toparlamak için, birkaç saat, tamamı ile kodlardan uzak kağıt üzerinde mantık hatası aradım. Bütün gün bu şekilde bitti. Kağıda doinbackground ve onpostexecute metodlarının yaptıkları işleri yazdım. Kağıttaki analizlerim sonucu doinbackground'da yaptıklarımın belirli mantık dahilinde olduğuna kanaat getirerek, o kısmı tekrar yazmaktan protected void onpostexecute(string result) { result = result.replace("xxxxxx", "xxx"); result = result.replace("<br />", " "); result = result.replace(" ", " C"); result = result.replace("ç", "Ç"); String[] sonuc; String[] sonucilk = {"il","sonuçlar"}; sonucilk = result.split("yyy"); sonuc = sonucilk[1].split("xxx"); TextView baslik = (TextView) findviewbyid(r.id.textview1); baslik.settext(sonuc[0] + " Hava Durumu"); } Buraya kadar yazdığım kodlar doğru olarak çalışmakta fakat bundan sonrasında listview ekleyip sonuçları listview'de gösterdiğimde NullPointerException hatası almaktayım. Bu hatanın çözümü için araştırmalara devam ediyorum. Yarın araştırmalarıma devam edeceğim.

33 18. GÜN Dün takıldığım sorun üzerine bugün araştırmalara devam ettim. Araştırmalarım sonucunda ListView kullanarak birbirlerinden farklı tipteki verilerin bir arada gösterilebilmesinin en sağlıklı yöntemlerinden birinin HashMap yapısı kullanmak olduğunu buldum. Benim sorunumu tam olarak çözüp çözmeyeceğinden emin olmamakla beraber, araştırmalarımı bu yönde devam ettirdim ve projemde deneme amaçlı olarak HashMap kullanmaya karar verdim. HashMap kullanımını tamamlamak için gerekli 7 adım bulunmaktadır; 1. ListView oluştur. 2. HashMap için ArrayList oluştur. 3. HashMap oluştur. 4. HashMap'e veri koy. 5. HashMap'i ArrayList'e ekle. 6. ArrayList'i SimpleDataAdapter ile şarj et. 7. SetAdapter komutu ile tamamla. Bu 7 adımında uygulandığı örnek bir uygulamayı da inceledim; ListView list = (ListView) findviewbyid(r.id.schedule); //1. adım ArrayList<HashMap<String, String>>mylist=new ArrayList<Hashmap<String, String>>(); //2.adım HashMap<String, String> map = new HashMap<String, String>(); //3. adım map.put("train", "103(x)"); map.put("from", "6:35 AM"); map.put("to", "7:45 AM"); //4. adım mylist.add(map); //5. adım mschedule = new SimpleAdapter(this, mylist, R.layout.row, new String[] {"train", "from", "to"}, new int[] {R.id.TRAIN_CELL, R.id.FROM_CELL, R.id.TO_CELL}); //6.adım list.setadapter(mschedule); //7.adım Bu örnek sayesinde HashMap kullanımını anladığımı düşünüyorum ve projemde bu yöntemi kullanarak ilerleyeceğim. Bu arada kodları incelerken, dün yazdığım kodlarda String[] olarak tanımladığım sonuç dizisinin elemanlarına başlangıç değerleri vermediğimi farkettim. İleride yeni sorunlar çıkarabileceğini düşündüğüm için başlangıç değerleri atadım ve yeni hali şu şekilde oldu; String[] sonuc = {"yükleniyor","yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor", "yükleniyor", "yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor",

34 "yükleniyor","yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor", "yükleniyor","yükleniyor", "yükleniyor","yükleniyor","yükleniyor", "yükleniyor","yükleniyor","yükleniyor", "yükleniyor","yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor"}; Yarın HashMap yöntemini uygulamamda oluşturmaya çalışacağım.

35 19. GÜN Dünkü araştırmalarım sonucunda öğrendiğim HashMap için çalışmalara başladım. Dün verdiğim örneğe benzer şekilde projemde HashMap'i kısmen uygulamayı başardım. Kısmen diyorum, çünkü ImageView üzerinde resimleri göstermeyi şu an başaramadım. 15Gunlukhavadurumu.gen.tr, sitesindeki hava durumunu gösteren resimleri icons adlı bir klasörde tuttuğunu farkettim ve bu klasördeki bütün.png formatındaki resimleri kopyalayarak, projenin res klasörünün altında bulunan drawable-hdpi klasörüne yerleştirdim. Uygulamamda, gelen resim verilerine göre karşılaştırma yaparak aynı resmi ImageView içerisinde göstermek için çok çaba sarfettim fakat çalışma anında hata vermemesine rağmen görüntülemede sorun çıkarmaktadır. Bu hatayı stajın son gününe bırakarak, bugün içinde yazdığım bütün kodları yayınlıyorum; protected void onpostexecute(string result) { result = result.replace("xxxxxx", "xxx"); result = result.replace("<br />", " "); result = result.replace(" ", " C"); result = result.replace("ç", "Ç"); String[] sonuc = {"yükleniyor","yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor", "yükleniyor", "yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor","yükleniyor","yükleniyor", "yükleniyor", "yükleniyor", "yükleniyor","yükleniyor","yükleniyor", "yükleniyor","yükleniyor", "yükleniyor"}; String[] sonucilk = {"il","sonuçlar"}; sonucilk = result.split("yyy"); sonuc = sonucilk[1].split("xxx"); TextView baslik = (TextView) findviewbyid(r.id.textview1); baslik.settext(sonucilk[0] + " Hava Durumu"); List<HashMap<String, String>> listinfo = new ArrayList<HashMap<String, String>>(); listinfo.clear(); for(int i=0;i<14;i++){ HashMap<String, String> hm = new HashMap<String, String>(); hm.put("tarih", sonuc[i*5]); sonuc[i*5+1] = "i"+sonuc[i*5+1].substring(17, 20);

36 hm.put("hava", Integer.toString(R.drawable.i113)); //yukarıdaki satırda istediğim resmi görüntüleyemediğim için //çalışıp çalışmadığını kontrolde default resim görüntüledim. hm.put("durum", " " + sonuc[i*5+3]+ " / " + sonuc[i*5+4]); listinfo.add(hm); } String[] from = { "tarih","hava", "durum" }; int[] to = { R.id.tarih,R.id.hava, R.id.durum }; SimpleAdapter adapter = new SimpleAdapter(getBaseContext(), listinfo,r.layout.list_hava, from, to); ListView mylist = (ListView) findviewbyid(android.r.id.list); mylist.setadapter(adapter); Bu şekilde yazıldığında herhangi bir sorun olmaksızın uygulama çalışmakta fakat resim görüntüleme konusunda istenilen resim değil default olarak belirlediğim bir resim görüntülenmektedir. Uygulamanın şu ana kadar ki hali, belirttiğim sorun hariç aksaklık olmadan çalışmaktadır. Yarın bu hatanın çözülmesi için çalışmalar yaptıktan sonra, vakit olduğu müddetçe test ve hata ayıklama üzerine çalışacağım ve 20 günlük stajımı bitirmiş olacağım.

2. GÜN. Daha açık bir ifadeyle,

2. GÜN. Daha açık bir ifadeyle, 1. GÜN Staj boyunca android programlama üzerine kendimi geliştirmeye karar vermem nedeniyle proje olarak android cihazlar için hava durumu uygulaması yazmaya karar verdim. Mevcut hava durumu uygulamalarını

Detaylı

Yatırım Teşvik Uygulamalarında Bölgeler

Yatırım Teşvik Uygulamalarında Bölgeler Yatırım Teşvik Uygulamalarında Bölgeler 1. Bölge: Ankara, Antalya, Bursa, Eskişehir, İstanbul, İzmir, Kocaeli, Muğla 2. Bölge: Adana, Aydın, Bolu, Çanakkale (Bozcaada ve Gökçeada İlçeleri Hariç), Denizli,

Detaylı

TABLO-4. LİSANS MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR ( EKPSS 2014 )

TABLO-4. LİSANS MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR ( EKPSS 2014 ) 7769 MİLLİ EĞİTİM BAKANLIĞI Memur ADANA TÜM İLÇELER Taşra GİH 7 17 4001 7770 MİLLİ EĞİTİM BAKANLIĞI Memur ADIYAMAN TÜM İLÇELER Taşra GİH 7 9 4001 7771 MİLLİ EĞİTİM BAKANLIĞI Memur AFYONKARAHİSAR TÜM İLÇELER

Detaylı

TABLO-3. ÖNLİSANS MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR ( EKPSS 2014 )

TABLO-3. ÖNLİSANS MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR ( EKPSS 2014 ) 7858 MİLLİ EĞİTİM BAKANLIĞI Memur ADANA TÜM İLÇELER Taşra GİH 10 8 ### 7859 MİLLİ EĞİTİM BAKANLIĞI Memur ADIYAMAN TÜM İLÇELER Taşra GİH 10 4 ### 7860 MİLLİ EĞİTİM BAKANLIĞI Memur AFYONKARAHİSAR TÜM İLÇELER

Detaylı

Fren Test Cihazları Satış Bayiler. Administrator tarafından yazıldı. Perşembe, 05 Mayıs :26 - Son Güncelleme Pazartesi, 30 Kasım :22

Fren Test Cihazları Satış Bayiler. Administrator tarafından yazıldı. Perşembe, 05 Mayıs :26 - Son Güncelleme Pazartesi, 30 Kasım :22 FDR Adana Fren Test Cihazları FDR Adıyaman Fren Test Cihazları FDR AfyonFren Test Cihazları FDR Ağrı Fren Test Cihazları FDR Amasya Fren Test Cihazları FDR Ankara Fren Test Cihazları FDR Antalya Fren Test

Detaylı

YEREL SEÇİM ANALİZLERİ. Şubat, 2014

YEREL SEÇİM ANALİZLERİ. Şubat, 2014 YEREL SEÇİM ANALİZLERİ Şubat, 2014 Partilerin Kazanacağı Belediye Sayıları Partilere Göre 81İlin Yerel Seçimlerde Alınması Muhtemel Oy Oranları # % AK Parti 37 45,7 CHP 9 11,1 MHP 5 6,2 BDP/HDP 8 9,9 Rekabet

Detaylı

3. basamak. Otomobil Kamyonet Motorsiklet

3. basamak. Otomobil Kamyonet Motorsiklet Tablo-1: İndirim veya artırım uygulanmayan iller için azami primler (TL)* İzmir, Yalova, Erzurum, Kayseri Otomobil 018 614 211 807 686 565 444 Kamyonet 638 110 583 055 897 739 580 Motorsiklet 823 658 494

Detaylı

OTO KALORİFER PETEK TEMİZLİĞİ - VİDEO

OTO KALORİFER PETEK TEMİZLİĞİ - VİDEO OTO KALORİFER PETEK TEMİZLİĞİ - VİDEO Oto Kalorifer Peteği Temizleme Makinası, Araç Kalorifer Petek Temizliği Cihazı. kalorifer peteği nasıl temizlenir, kalorifer peteği temizleme fiyatları, kalorifer

Detaylı

Tüvturk Araç Muayene Gezici Mobil İstasyon Programı

Tüvturk Araç Muayene Gezici Mobil İstasyon Programı Tüvturk Araç Muayene Gezici Mobil İstasyon Programı Tüvturk Gezici istasyonlarında ağır vasıtalar (3.5 ton üzeri) hariç tüm motorlu ve motorsuz araçlar için muayene hizmeti verilmektedir. Gezici istasyonlar

Detaylı

Tüvturk Araç Muayene Gezici Mobil İstasyon Programı

Tüvturk Araç Muayene Gezici Mobil İstasyon Programı Tüvturk Araç Muayene Gezici Mobil İstasyon Programı Tüvturk Gezici istasyonlarında ağır vasıtalar (3.5 ton üzeri) hariç tüm motorlu ve motorsuz araçlar için muayene hizmeti verilmektedir. Gezici İstasyon

Detaylı

İL ADI UNVAN KODU UNVAN ADI BRANŞ KODU BRANŞ ADI PLANLANAN SAYI ÖĞRENİM DÜZEYİ

İL ADI UNVAN KODU UNVAN ADI BRANŞ KODU BRANŞ ADI PLANLANAN SAYI ÖĞRENİM DÜZEYİ ADANA 8140 BİYOLOG 0 1 LİSANS ADANA 8315 ÇOCUK GELİŞİMCİSİ 0 1 LİSANS ADANA 8225 DİYETİSYEN 0 1 LİSANS ADANA 8155 PSİKOLOG 0 1 LİSANS ADANA 8410 SAĞLIK MEMURU 6000 ÇEVRE SAĞLIĞI 4 LİSE ADANA 8410 SAĞLIK

Detaylı

TAŞRA TEŞKİLATI MÜNHAL TEKNİKER KADROLARI

TAŞRA TEŞKİLATI MÜNHAL TEKNİKER KADROLARI ADANA MERKEZ 111918 İL MEM İNŞAAT 1 ADANA MERKEZ 111918 İL MEM ELEKTRİK 2 ADIYAMAN MERKEZ 114014 İL MEM İNŞAAT 1 ADIYAMAN MERKEZ 114014 İL MEM ELEKTRİK 1 AFYONKARAHİSARMERKEZ 114972 İL MEM İNŞAAT 1 AFYONKARAHİSARMERKEZ

Detaylı

LİSTE - II TÜRKİYE HALK SAĞLIĞI KURUMU - TAŞRA

LİSTE - II TÜRKİYE HALK SAĞLIĞI KURUMU - TAŞRA YER DEĞİŞİKLİĞİ BAŞVURULARI İÇİN İLAN EDİLEN LİSTESİ 1 ADANA BİYOLOG GENEL BÜTÇE 1 1 ADANA EBE GENEL BÜTÇE 6 1 ADANA HEMŞİRE GENEL BÜTÇE 2 1 ADANA SAĞLIK MEMURU ÇEVRE SAĞLIĞI TEKNİSYENİ GENEL BÜTÇE 1 1

Detaylı

İllere ve yıllara göre konut satış sayıları, House sales by provinces and years,

İllere ve yıllara göre konut satış sayıları, House sales by provinces and years, 2013 Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık Toplam January February March April May June July August September October November December Total Türkiye 87 444 88 519

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ ADRESE DAYALI NÜFUS KAYIT SİSTEMİ (ADNKS) 2014 Yılı Türkiye İstatistik Kurumu 28/01/2015 tarihinde 2014 yılı Adrese Dayalı Kayıt Sistemi Sonuçları haber bültenini yayımladı. 31 Aralık 2014 tarihi itibariyle;

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ ADRESE DAYALI NÜFUS KAYIT SİSTEMİ (ADNKS) 2015 Yılı Türkiye İstatistik Kurumu 28/01/2016 tarihinde 2015 yılı Adrese Dayalı Kayıt Sistemi Sonuçları haber bültenini yayımladı. 31 Aralık 2015 tarihi itibariyle;

Detaylı

LİSTE - II TÜRKİYE HALK SAĞLIĞI KURUMU - TAŞRA

LİSTE - II TÜRKİYE HALK SAĞLIĞI KURUMU - TAŞRA 1 ADANA EBE 4 1 ADANA SAĞLIK MEMURU RÖNTGEN TEKNİSYENİ 1 1 ADANA SAĞLIK MEMURU TIBBİ SEKRETER 2 2 ADIYAMAN DİYETİSYEN 2 2 ADIYAMAN EBE 2 2 ADIYAMAN HEMŞİRE 1 2 ADIYAMAN SAĞLIK MEMURU TIBBİ SEKRETER 1 2

Detaylı

Karşılıksız İşlemi Yapılan Çek Sayılarının İllere ve Bölgelere Göre Dağılımı (1) ( 2017 )

Karşılıksız İşlemi Yapılan Çek Sayılarının İllere ve Bölgelere Göre Dağılımı (1) ( 2017 ) Karşılıksız İşlemi Yapılan Çek Sayılarının İllere ve Bölgelere Göre Dağılımı (1) İller ve Bölgeler (2) Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık Toplam İstanbul 18.257

Detaylı

İLLERE GÖRE NÜFUS KÜTÜKLERİNE KAYITLI EN ÇOK KULLANILAN 5 KADIN VE ERKEK ADI

İLLERE GÖRE NÜFUS KÜTÜKLERİNE KAYITLI EN ÇOK KULLANILAN 5 KADIN VE ERKEK ADI İLLERE GÖRE NÜFUS KÜTÜKLERİNE KAYITLI EN ÇOK KULLANILAN 5 KADIN VE ERKEK ADI İL KADIN ADI ERKEK ADI ADANA ADIYAMAN AFYONKARAHİSAR AKSARAY SULTAN SULTAN İBRAHİM RAMAZAN 1/17 2/17 AMASYA ANKARA ANTALYA ARDAHAN

Detaylı

KPSS-2014/3 Sağlık Bakanlığı ve Bağlı Kuruluşlarının Sözleşmeli Pozisyonlarına Yerleştirme (Ortaöğretim)

KPSS-2014/3 Sağlık Bakanlığı ve Bağlı Kuruluşlarının Sözleşmeli Pozisyonlarına Yerleştirme (Ortaöğretim) KURUM ADI KADRO ADI 190160001 SAĞLIK BAKANLIĞI SAĞLIK MEMURU (ADANA TÜM İLÇELER Taşra) 5 0 75,57278 78,51528 190160003 SAĞLIK BAKANLIĞI SAĞLIK MEMURU (ARTVİN TÜM İLÇELER Taşra) 4 0 75,26887 75,34407 190160005

Detaylı

Anket: SAÜ Fizik Bölümü Mezunları İşveren Anketi

Anket: SAÜ Fizik Bölümü Mezunları İşveren Anketi Çıkış Hesabım Ahmet Karakiraz - akarakiraz@gmail.com o o o Anasayfa Anketlerim Adres Listelerim o o Soru Alanlarım Yeni Anket Oluştur Daha fazla katılım alma ve özelliğe mi ihtiyacınız var? Üyeliğinizi

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ ADRESE DAYALI NÜFUS KAYIT SİSTEMİ (ADNKS) 2013 Yılı Türkiye İstatistik Kurumu 29/01/2014 tarihinde 2013 yılı Adrese Dayalı Kayıt Sistemi Sonuçları haber bültenini yayımladı. 31 Aralık 2013 tarihi itibariyle;

Detaylı

Ajans Press; Marka Şehir ve Belediyelerin Medya Karnesini açıkladı

Ajans Press; Marka Şehir ve Belediyelerin Medya Karnesini açıkladı Basın Bildirisi Ajans Press; Marka Şehir ve Belediyelerin Medya Karnesini açıkladı 01 Ocak - 31 Aralık 2011 tarihleri arası Ajans Press in takibinde olan yerel, bölgesel ve ulusal 2659 yazılı basın takibinden

Detaylı

BAYİLER. Administrator tarafından yazıldı. Çarşamba, 18 Nisan :29 - Son Güncelleme Cuma, 03 Mayıs :39

BAYİLER. Administrator tarafından yazıldı. Çarşamba, 18 Nisan :29 - Son Güncelleme Cuma, 03 Mayıs :39 Federal CNG Dönüşüm Sistemleri olarak, başta Konya olmak üzere Türkiye'nin her bölgesinde ve her ilimizde CNG Dönüşüm Sistemleri konusunda hizmet vermekteyiz. FEDERAL CNG DÖNÜŞÜM SİSTEMLERİ Adana CNG Dönüşüm

Detaylı

TABLO-1. İLKÖĞRETİM/ORTAOKUL/İLKOKUL MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR (2015 EKPSS/KURA )

TABLO-1. İLKÖĞRETİM/ORTAOKUL/İLKOKUL MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR (2015 EKPSS/KURA ) KURUM KODU DPB NO KURUM ADI / POZİSYON UNVANI İL İLÇE TEŞKİLAT SINIF 490060001 12062 AİLE VE SOSYAL POLİTİKALAR BAKANLIĞI HİZMETLİ IĞDIR TÜM İLÇELER Taşra YH 12 2 999 1000 1001 490060003 12079 AİLE VE

Detaylı

İTİBARİYLA KÖY YOLU ENVANTERİ

İTİBARİYLA KÖY YOLU ENVANTERİ ADIYAMAN 1. DERECE 0 3 756 2.067 0 2.826 ADIYAMAN 2. DERECE 0 0 350 210 0 560 ADIYAMAN KÖY İÇİ YOL 0 0 636 173 22 0 831 ADIYAMAN TOPLAM 0 3 1.742 2.450 22 0 4.217 AFYONKARAHİSAR 1. DERECE 67 115 216 1.868

Detaylı

LİMANLAR GERİ SAHA KARAYOLU VE DEMİRYOLU BAĞLANTILARI MASTER PLAN ÇALIŞMASI

LİMANLAR GERİ SAHA KARAYOLU VE DEMİRYOLU BAĞLANTILARI MASTER PLAN ÇALIŞMASI T.C. ULAŞTIRMA, DENİZCİLİK VE HABERLEŞME BAKANLIĞI ALTYAPI YATIRIMLARI GENEL MÜDÜRLÜĞÜ LİMANLAR GERİ SAHA KARAYOLU VE DEMİRYOLU BAĞLANTILARI MASTER PLAN ÇALIŞMASI SONUÇ RAPORU-EKLER Mühendislik Anonim

Detaylı

TABİP İL BÖLGE SE PDC KAD ORAN GRUP KİLİS 4 63 88 96 109,09% A1 KARAMAN 4 32 127 130 102,36% A2 İZMİR 1 3 1821 1864 102,36% A3 MALATYA 5 42 373 375

TABİP İL BÖLGE SE PDC KAD ORAN GRUP KİLİS 4 63 88 96 109,09% A1 KARAMAN 4 32 127 130 102,36% A2 İZMİR 1 3 1821 1864 102,36% A3 MALATYA 5 42 373 375 TABİP İL BÖLGE SE PDC KAD ORAN GRUP KİLİS 4 63 88 96 109,09% A1 KARAMAN 4 32 127 130 102,36% A2 İZMİR 1 3 1821 1864 102,36% A3 MALATYA 5 42 373 375 100,54% A4 ELAZIĞ 5 39 308 309 100,32% A5 YALOVA 2 13

Detaylı

TÜRMOB TÜRKİYE SERBEST MUHASEBECİ MALİ MÜŞAVİRLER VE YEMİNLİ MALİ MÜŞAVİRLER ODALARI BİRLİĞİ BİLİRKİŞİLİK TEMEL EĞİTİM İZNİ VERİLEN İLLER LİSTESİ

TÜRMOB TÜRKİYE SERBEST MUHASEBECİ MALİ MÜŞAVİRLER VE YEMİNLİ MALİ MÜŞAVİRLER ODALARI BİRLİĞİ BİLİRKİŞİLİK TEMEL EĞİTİM İZNİ VERİLEN İLLER LİSTESİ Ek: 1 TÜRMOB TÜRKİYE SERBEST MUHASEBECİ MALİ MÜŞAVİRLER VE YEMİNLİ MALİ MÜŞAVİRLER ODALARI BİRLİĞİ BİLİRKİŞİLİK TEMEL EĞİTİM İZNİ VERİLEN İLLER LİSTESİ EGİTİM İZNİ S.NO VERİLEN İL EGİTİM İZNİ S.NO VERİLEN

Detaylı

2017 YILI BİLİM SANAT MERKEZLERİNE ÖĞRETMEN ATAMASI SONUCU OLUŞAN İL-ALAN BAZLI TABAN PUANLAR

2017 YILI BİLİM SANAT MERKEZLERİNE ÖĞRETMEN ATAMASI SONUCU OLUŞAN İL-ALAN BAZLI TABAN PUANLAR 2017 YILI BİLİM SANAT MERKEZLERİNE ÖĞRETMEN ATAMASI SONUCU OLUŞAN İL-ALAN BAZLI TABAN PUANLAR Alan Adı İl Adı Atama Puanı Ek2 Puanı Hizmet Süresi Başvuru Atama Bilişim Teknolojileri ANKARA 42,000 10 3269

Detaylı

TABLO-2. ORTAÖĞRETİM MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR ( EKPSS 2014)

TABLO-2. ORTAÖĞRETİM MEZUNLARININ TERCİH EDEBİLECEĞİ KADROLAR ( EKPSS 2014) 7942 MİLLİ EĞİTİM BAKANLIĞI Hizmetli ADANA TÜM İLÇELER Taşra YH 12 9 2001 7943 MİLLİ EĞİTİM BAKANLIĞI Hizmetli ADIYAMAN TÜM İLÇELER Taşra YH 12 5 2001 7944 MİLLİ EĞİTİM BAKANLIĞI Hizmetli AFYONKARAHİSAR

Detaylı

İZMİR İN EN BÜYÜK SORUNU İŞSİZLİK RAKAMLARININ ANALİZİ

İZMİR İN EN BÜYÜK SORUNU İŞSİZLİK RAKAMLARININ ANALİZİ 2015 TEMMUZ- AĞUSTOS EKONOMİK İZMİR İN EN BÜYÜK SORUNU İŞSİZLİK RAKAMLARININ ANALİZİ Erdem ALPTEKİN Türkiye İstatistik Kurumu verilerine göre; 2014 yılında ülkemizde işsizlik oranı % 9,9 seviyesinde gerçekleşti.

Detaylı

KPSS-2014/3 Sağlık Bakanlığı ve Bağlı Kuruluşlarının Kadrolarına Yerleştirme Sonuçlarına Göre En Büyük ve En Küçük Puanlar (Lisans)

KPSS-2014/3 Sağlık Bakanlığı ve Bağlı Kuruluşlarının Kadrolarına Yerleştirme Sonuçlarına Göre En Büyük ve En Küçük Puanlar (Lisans) KURUM ADI ADI 390160001 SAĞLIK BAKANLIĞI PSİKOLOG (AĞRI TÜM İLÇELER Taşra) 1 0 72,44764 72,44764 390160003 SAĞLIK BAKANLIĞI PSİKOLOG (ARDAHAN TÜM İLÇELER Taşra) 1 0 72,11422 72,11422 390160005 SAĞLIK BAKANLIĞI

Detaylı

2015 KOCAELİ NÜFUSUNUN BÖLGESEL ANALİZİ TUİK

2015 KOCAELİ NÜFUSUNUN BÖLGESEL ANALİZİ TUİK 0 NÜFUSUNUN BÖLGESEL ANALİZİ TUİK Verilerine Göre Hazırlanmıştır. İLİNİN NÜFUSU.. NÜFUSUNA KAYITLI OLANLAR NDE YAŞAYIP NÜFUS KAYDI BAŞKA İLLERDE OLANLAR.0 %... %. NÜFUSUNUN BÖLGESEL ANALİZİ 0 TUİK Verilerine

Detaylı

KURUM ADI KADRO ADI KONT.

KURUM ADI KADRO ADI KONT. . KPSS-2014/2 310020001 ADIYAMAN ÜNİVERSİTESİ Memur (ADIYAMAN MERKEZ Merkez) 1 0 86,13395 86,13395 310020003 ADIYAMAN ÜNİVERSİTESİ Memur (ADIYAMAN MERKEZ Merkez) 1 0 87,43649 87,43649 310020005 ADIYAMAN

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU EYLÜL 2016 Türkiye İstatistik Kurumu 03/10/2016 tarihinde 2016 yılı Eylül ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ HANEHALKI İŞGÜCÜ İSTATİSTİKLERİ BİLGİ NOTU 2013 Yılı Türkiye İstatistik Kurumu 06/03/2014 tarihinde 2013 yılı Hanehalkı İşgücü İstatistikleri haber bültenini yayımladı. 2013 yılında bir önceki yıla göre;

Detaylı

Talepte Bulunan PersonelinÜnvanlara Göre Dağılımı

Talepte Bulunan PersonelinÜnvanlara Göre Dağılımı 15/06/2011-05/08/2011 Tarihleri Arasında Başkanlığımız İnternet Sitesinde Yayınlanan "Hizmetiçi Eğitim İhtiyacının Belirlenmesi Anketi"ne Katılan 7.191 Personelin 58.878 Tercihin, "Tercih Edilen Eğitim

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU TEMMUZ 2017 Türkiye İstatistik Kurumu 03/08/2017 tarihinde 2017 yılı Temmuz ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

İÇİNDEKİLER. Rapor Özet Türkiye genelinde il merkezlerinin içmesuyu durumu

İÇİNDEKİLER. Rapor Özet Türkiye genelinde il merkezlerinin içmesuyu durumu İÇİNDEKİLER Rapor Özet Türkiye genelinde il merkezlerinin içmesuyu durumu Çizelge 1 Türkiye genelinde il merkezlerinin su ihtiyaçları ve ihtiyaçların karşılanma durumu icmali Çizelge 2. 2013-2015 yılları

Detaylı

Mart 2012 SAGMER İstatistikleri

Mart 2012 SAGMER İstatistikleri Mart 2012 SAGMER İstatistikleri *Ekli dosyadaki istatistikî veriler, Sigorta Şirketlerinin SBM ye gönderdiği verilerden oluşturulmuştur. Veriler 31 Mart 2012 itibariyle alınmıştır. Tablo 1: Ödeme Yöntemine

Detaylı

7 Haziran Kasım 2015 Seçimleri Arasındaki Değişim

7 Haziran Kasım 2015 Seçimleri Arasındaki Değişim 7 Haziran 2015 1 Kasım 2015 Seçimleri Arasındaki Değişim Erol Tuncer 2 EROL TUNCER Giriş 2015 yılında siyasî tarihimizde bir ilk yaşanmış, aynı yılın 7 Haziran ve 1 Kasım günlerinde iki kez Milletvekili

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU MAYIS 2017 Türkiye İstatistik Kurumu 05/06/2017 tarihinde 2017 yılı Mayıs ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

2016 Ocak İşkolu İstatistiklerinin İllere Göre Dağılımı 1

2016 Ocak İşkolu İstatistiklerinin İllere Göre Dağılımı 1 2016 Ocak İşkolu İstatistiklerinin İllere Göre Dağılımı 1 1 30 Ocak 2016 tarih ve 29609 sayılı Resmi Gazete de Yayınlanan İşkollarındaki Ve Sendikaların Üye na İlişkin 2016 Ocak Ayı İstatistikleri Hakkında

Detaylı

Android Ders Notları

Android Ders Notları Android Ders Notları 1. Yeni Bir Proje Başlatma Android Studio programında yeni bir proje başlatıyoruz. İlk olarak karşımıza resim 1 deki gibi bir pencere gelecek. Burada Application name kısmına proje

Detaylı

2016 Türkiye de 185 bin 128 adet ölümlü yaralanmalı trafik kazası meydana geldi Ülkemiz karayolu ağında 2016 yılında toplam 1 milyon 182 bin 491 adet

2016 Türkiye de 185 bin 128 adet ölümlü yaralanmalı trafik kazası meydana geldi Ülkemiz karayolu ağında 2016 yılında toplam 1 milyon 182 bin 491 adet 1 2016 Türkiye de 185 bin 128 adet ölümlü yaralanmalı trafik kazası meydana geldi Ülkemiz karayolu ağında 2016 yılında toplam 1 milyon 182 bin 491 adet trafik kazası meydana geldi. Bu kazaların 997 bin

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU MAYIS 2016 Türkiye İstatistik Kurumu 03/06/2016 tarihinde 2016 yılı Mayıs ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

İleri Teknolojili Tıbbi Görüntüleme Cihazları Yoğunluğu. Prepared by: Siemens Turkey Strategy and Business Development, SBD Istanbul, March 2010

İleri Teknolojili Tıbbi Görüntüleme Cihazları Yoğunluğu. Prepared by: Siemens Turkey Strategy and Business Development, SBD Istanbul, March 2010 İleri Teknolojili Tıbbi Görüntüleme Cihazları Yoğunluğu Prepared by: Siemens Turkey Strategy and Business Development, SBD Istanbul, March 200 Bilgisayarlı Tomografi milyon kişiye düşen cihaz sayısı İlk

Detaylı

Mayıs 2012 SAGMER İstatistikleri

Mayıs 2012 SAGMER İstatistikleri Mayıs 2012 SAGMER İstatistikleri *Ekli dosyadaki istatistikî veriler, Sigorta Şirketlerinin SBM ye gönderdiği verilerden oluşturulmuştur. Veriler 31 Mayıs 2012 itibariyle alınmıştır. Tablo 1: Ödeme Yöntemine

Detaylı

KARABÜK ÜNİVERSİTESİ PERSONEL DAİRE BAŞKANLIĞI

KARABÜK ÜNİVERSİTESİ PERSONEL DAİRE BAŞKANLIĞI KARABÜK ÜNİVERSİTESİ PERSONEL DAİRE BAŞKANLIĞI Yıllara Göre Akademik Personel,İdari Personel ve Öğrenci Sayıları Öğrenci Sayıları Akademik Personel 9.877..79.78 İdari Personel.7..79.. 9 9 9 977 7.99 8.78

Detaylı

2012-ÖMSS Sınav Sonucu İle Yapılan Yerleştirme Sonuçlarına İlişkin Sayısal Bilgiler (Ortaöğretim)

2012-ÖMSS Sınav Sonucu İle Yapılan Yerleştirme Sonuçlarına İlişkin Sayısal Bilgiler (Ortaöğretim) 10020121001 ABANT İZZET BAYSAL ÜNİVERSİTESİ SANTRAL MEMURU (BOLU / MERKEZ - Merkez) 1 0 90,04922 90,04922 10020121003 AİLE VE SOSYAL POLİTİKALAR BAKANLIĞI HİZMETLİ (ADIYAMAN / MERKEZ - Taşra) 1 0 86,74214

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU EYLÜL 2014 Türkiye İstatistik Kurumu 03/10/2014 tarihinde 2014 yılı Eylül ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU NİSAN 2014 Türkiye İstatistik Kurumu 05/05/2014 tarihinde 2014 yılı Nisan ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU OCAK 2016 Türkiye İstatistik Kurumu 03/02/2016 tarihinde 2016 yılı Ocak ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

TAKVİM KARTONLARI 2016 YILI RESMİ TATİL GÜNLERİ

TAKVİM KARTONLARI 2016 YILI RESMİ TATİL GÜNLERİ 2016 YILI RESMİ TATİL GÜNLERİ 2016 YILI MÜBAREK GÜN ve GECELER Yılbaşı 1 Ocak Cuma Ulusal Egemenlik ve Çocuk Bayramı 23 Nisan Cumartesi Emek ve Dayanışma Günü 1 Mayıs Pazar Gençlik ve Spor Bayramı 19 Mayıs

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU EKİM 2014 Türkiye İstatistik Kurumu 03/11/2014 tarihinde 2014 yılı Ekim ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

Ulusal Gelişmeler. Büyüme Hızı (%) Türkiye ekonomisi 2017 itibariyle dünyanın 17. Avrupa nın 6. büyük ekonomisidir. a r k a. o r g.

Ulusal Gelişmeler. Büyüme Hızı (%) Türkiye ekonomisi 2017 itibariyle dünyanın 17. Avrupa nın 6. büyük ekonomisidir.   a r k a. o r g. Ulusal Gelişmeler Büyüme Hızı (%) Türkiye ekonomisi 2017 itibariyle dünyanın 17. Avrupa nın 6. büyük ekonomisidir. %10 veya fazla %6-%10 %3-%6 %0-%3 %0 dan küçük Veri yok Kaynak: TÜİK- Dünya Bankası; *:

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU AĞUSTOS 2014 Türkiye İstatistik Kurumu 03/09/2014 tarihinde 2014 yılı Ağustos ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

VERGİ BİRİMLERİ. Taşra Teşkilatındaki Birimlerin Yıllar İtibariyle Sayısal Durumu

VERGİ BİRİMLERİ. Taşra Teşkilatındaki Birimlerin Yıllar İtibariyle Sayısal Durumu VERGİ BİRİMLERİ Taşra Teşkilatındaki Birimlerin Yıllar İtibariyle Sayısal Durumu 2. Vergi Birimleri. 2.1. Vergi Birimlerinin Yıllar İtibariyle Sayısal Durumu Birimin Adı 31/12/1996 31/12/1997 31/12/1998

Detaylı

Faaliyet Raporu (1 Ocak 31 Aralık 2009) İstatistikler İSTATİSTİKİ BİLGİLER

Faaliyet Raporu (1 Ocak 31 Aralık 2009) İstatistikler İSTATİSTİKİ BİLGİLER İSTATİSTİKİ BİLGİLER 1 MESLEK MENSUPLARI YILLARA GÖRE SAYILARI GRAFİĞİ 2009 Aralık 2008 Eylül-Aralık 2007-2008 2006-2007 2005-2006 2004-2005 2003-2004 2002-2003 2001-2002 2000-2001 1994-1995 1990-1991

Detaylı

KPSS-2014/3 Sağlık Bakanlığı ve Bağlı Kuruluşlarının Kadrolarına Yerleştirme Sonuçlarına Göre En Büyük ve En Küçük Puanlar (Önlisans)

KPSS-2014/3 Sağlık Bakanlığı ve Bağlı Kuruluşlarının Kadrolarına Yerleştirme Sonuçlarına Göre En Büyük ve En Küçük Puanlar (Önlisans) KURUM ADI ADI 290160001 SAĞLIK BAKANLIĞI SAĞLIK TEKNİKERİ (ADANA TÜM İLÇELER Taşra) 1 0 85,13376 85,13376 290160003 SAĞLIK BAKANLIĞI SAĞLIK TEKNİKERİ (AFYONKARAHİSAR TÜM İLÇELER Taşra) 2 0 81,03624 82,65201

Detaylı

2016 YILI DIŞ TİCARET RAKAMLARI

2016 YILI DIŞ TİCARET RAKAMLARI 2016 YILI DIŞ TİCARET RAKAMLARI 2016 yılında 726 firma ile 777 milyon dolar ihracat, 44 firma ile 344 milyon dolar ithalat yaparak 1 milyar 121 milyon dolar dış ticaret hacmi gerçekleştirmiştir. 2016 yılı

Detaylı

İŞYERİ EĞİLİM ARAŞTIRMASI 2017

İŞYERİ EĞİLİM ARAŞTIRMASI 2017 İŞYERİ EĞİLİM ARAŞTIRMASI 2017 TÜRKİYE İSTATİSTİK KURUMU Neden İşyeri Eğilim Anketi? Kamu hizmetlerinin doğru planlanması ve kamu kaynaklarının etkin olarak kullanılması için güvenilir istatistiklere ihtiyaç

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU ARALIK 2014 Türkiye İstatistik Kurumu 05/01/2015 tarihinde 2014 yılı Aralık ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU AĞUSTOS 2016 Türkiye İstatistik Kurumu 05/09/2016 tarihinde 2016 yılı Ağustos ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU EYLÜL 2015 Türkiye İstatistik Kurumu 05/10/2015 tarihinde 2015 yılı Eylül ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

Türkiye den bir eşitsizlik fotoğrafı daha: Yaşlanmadan ölenler! / Kayıhan Pala

Türkiye den bir eşitsizlik fotoğrafı daha: Yaşlanmadan ölenler! / Kayıhan Pala Türkiye den bir eşitsizlik fotoğrafı daha: Yaşlanmadan ölenler! / Kayıhan Pala Yeni açıklanan 2015 yılı ölüm istatistikleri Türkiye nin eşitsizliklerle dolu karnesini bir kez daha gündeme getiriyor. Türkiye

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU KASIM 2016 Türkiye İstatistik Kurumu 05/12/2016 tarihinde 2016 yılı Kasım ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

Doğal Gaz Sektör Raporu

Doğal Gaz Sektör Raporu GAZBİR Türkiye Doğal Gaz Dağıtıcıları Birliği TEMMUZ Doğal Gaz Sektör Raporu İthalat 4.5, 4., Temmuz ayında yılının aynı ayına göre ülke ithalat miktarında 915,37 milyon sm 3, %28,43 lük bir artış meydana

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU HAZİRAN 2015 Türkiye İstatistik Kurumu 03/07/2015 tarihinde 2015 yılı Haziran ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU HAZİRAN 2014 Türkiye İstatistik Kurumu 03/07/2014 tarihinde 2014 yılı Haziran ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

T.C. KÜLTÜR VE TURİZM BAKANLIĞI

T.C. KÜLTÜR VE TURİZM BAKANLIĞI T.C. KÜLTÜR VE TURİZM BAKANLIĞI TELİF HAKLARI GENEL MÜDÜRLÜĞÜ İSTATİSTİKSEL BİLGİLENDİRME RAPORU (SERTİFİKA) Hazırlayan: İrfan Taylan ÇOKYAMAN OCAK 2013 ANKARA SERTİFİKA BÖLÜM İSTATİSTİKLERİ 2 1) SERTİFİKA

Detaylı

Türkiye İletim Sistemi Bağlantı Kapasitesi Raporu ( Dönemi)

Türkiye İletim Sistemi Bağlantı Kapasitesi Raporu ( Dönemi) Türkiye İletim Sistemi Bağlantı Kapasitesi Raporu (2016-2026 Dönemi) 13.04.2016 Yönetici Özeti Bu rapor, Türkiye elektrik iletim sistemi mevcut durumu, TEİAŞ tarafından planlanan iletim sistemi yatırımları

Detaylı

Haziran SAGMER İstatistikleri

Haziran SAGMER İstatistikleri Haziran 2018 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2017 2018 Haziran Ocak - Haziran Haziran Ocak - Haziran ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup Ferdi

Detaylı

Ocak SAGMER İstatistikleri

Ocak SAGMER İstatistikleri 2012 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2011 2012 ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup BANKAYA ÖDEME 1,2% 18,8% 2,8% 26,5% ÇEK 0,0% 0,0% 0,0% 0,0%

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU OCAK 2015 Türkiye İstatistik Kurumu 03/02/2015 tarihinde 2015 yılı Ocak ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi (TÜFE)

Detaylı

Kasım SAGMER İstatistikleri

Kasım SAGMER İstatistikleri Kasım 2018 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2017 2018 Kasım Ocak - Kasım Kasım Ocak - Kasım ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup Ferdi Grup Ferdi

Detaylı

Ocak SAGMER İstatistikleri

Ocak SAGMER İstatistikleri 2013 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2012 2013 ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup BANKAYA ÖDEME 2,8% 26,5% 6,6% 3,2% ÇEK 0,0% 0,0% 0,0% 0,0% DİĞER

Detaylı

Ağustos SAGMER İstatistikleri

Ağustos SAGMER İstatistikleri Ağustos 2017 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2016 2017 Ağustos Ocak - Ağustos Ağustos Ocak - Ağustos ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup Ferdi

Detaylı

SAMSUN TİCARET VE SANAYİ ODASI EKONOMİK BÜLTEN

SAMSUN TİCARET VE SANAYİ ODASI EKONOMİK BÜLTEN SAMSUN TİCARET VE SANAYİ ODASI EKONOMİK BÜLTEN ARALIK 2016 Bu eserin tüm telif hakları Samsun Ticaret ve Sanayi Odası na aittir. Samsun Ticaret ve Sanayi Odası nın ismi kaydedilmek koşulu ile alıntı yapmak

Detaylı

Mart SAGMER İstatistikleri

Mart SAGMER İstatistikleri Mart 2012 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2011 2012 Mart Ocak - Mart Mart Ocak - Mart ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup Ferdi Grup Ferdi Grup

Detaylı

Mart SAGMER İstatistikleri

Mart SAGMER İstatistikleri Mart 2013 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2012 2013 Mart Ocak - Mart Mart Ocak - Mart ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup Ferdi Grup Ferdi Grup

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU AĞUSTOS 2015 Türkiye İstatistik Kurumu 03/09/2015 tarihinde 2015 yılı Ağustos ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

Mayıs 2014 SAGMER İstatistikleri

Mayıs 2014 SAGMER İstatistikleri Mayıs 2014 SAGMER İstatistikleri *Ekli dosyadaki istatistikî veriler, Sigorta Şirketlerinin SBM ye gönderdiği verilerden oluşturulmuştur. Veriler 31 Mayıs 2014 itibariyle alınmıştır. Tablo 1: Ödeme Yöntemine

Detaylı

Listview Kullanımı. Aşağıdaki örnekte bir ListView'ı birkaç ülke ismiyle dolduracağız.

Listview Kullanımı. Aşağıdaki örnekte bir ListView'ı birkaç ülke ismiyle dolduracağız. Listview Kullanımı Mobil cihazlarda kullanıcılara birbiriyle ilişkili verileri listeyle vermek çok tercih edilen bir yöntemdir. Kullanıcı listedeki veriler içinde tek parmağıyla yukarı-aşağı sürükleme

Detaylı

Ocak SAGMER İstatistikleri

Ocak SAGMER İstatistikleri 2016 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2015 2016 ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup BANKAYA ÖDEME 8,6% 6,8% 7,3% 26,7% ÇEK 0,0% 0,5% 0,0% 0,4% DİĞER

Detaylı

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ

TÜRKİYE ODALAR VE BORSALAR BİRLİĞİ TÜKETİCİ FİYAT ENDEKSİ (TÜFE) BİLGİ NOTU ARALIK 2015 Türkiye İstatistik Kurumu 04/01/2016 tarihinde 2015 yılı Aralık ayı Tüketici Fiyat Endeksi (TÜFE) haber bültenini yayımladı. Tüketici Fiyat Endeksi

Detaylı

(ki-kare) analizi ( Tablo 1. Araştırmaya Katılanların Çalıştıkları Okul Türüne Göre Dağılımı. Sayı % 1259 65,6 659 34,4 1918 100,0

(ki-kare) analizi ( Tablo 1. Araştırmaya Katılanların Çalıştıkları Okul Türüne Göre Dağılımı. Sayı % 1259 65,6 659 34,4 1918 100,0 ÖĞRENME ORTAMLARININ DEĞERLENDİRİLMESİ ARAŞTIRMASI Eğitimin kalitesi, öğrenme ortamlarının kalitesiyle doğru orantılıdır. Nitelikli öğrencilerin yetişmesi için nitelikli öğretmenlerin yanında öğrenme ortamlarının

Detaylı

Google Etiketler: FEDERAL KAMPANA TORNA MAKİNASI - FİRMAMIZ

Google Etiketler: FEDERAL KAMPANA TORNA MAKİNASI - FİRMAMIZ Federal Kampana Torna Makinası Firması; 1999 Yılında kurulmuştur. Federal Otomotiv Ltd. Şti. Otomotiv Servis Ekipmanları sektöründe hizmet vermektedir. Kurulduğundan bu gün müessesemiz, müşterileri ve

Detaylı

122. GRUPTA İHALE EDİLECEK SAHALARIN LİSTESİ. Belirlenen Taban İhale Bedeli TL. 1 Adana 3327245 3183357 II. Grup 81.07 Arama 6.06.2016 9,30 60.

122. GRUPTA İHALE EDİLECEK SAHALARIN LİSTESİ. Belirlenen Taban İhale Bedeli TL. 1 Adana 3327245 3183357 II. Grup 81.07 Arama 6.06.2016 9,30 60. 122. GRUPTA İHALE EDİLECEK SAHALARIN LİSTESİ Sıra No İli Erişim İlişkili Erişim Maden Grubu Alanı Ruhsat Safhası İhale Tarihi Saati Belirlenen Taban İhale Bedeli TL. 1 Adana 3327245 3183357 II. Grup 81.07

Detaylı

Mart SAGMER İstatistikleri

Mart SAGMER İstatistikleri Mart 2014 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2013 2014 Mart Ocak - Mart Mart Ocak - Mart ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup Ferdi Grup Ferdi Grup

Detaylı

Ocak SAGMER İstatistikleri

Ocak SAGMER İstatistikleri 2015 SAGMER İstatistikleri Tablo 1: Ödeme Yöntemine Göre Yazılan Poliçe Adedi Dağılımı 2014 2015 ÜRÜN GRUBU ÖDEME TİPİ Ferdi Grup Ferdi Grup BANKAYA ÖDEME 6,7% 8,6% 9,0% 8,3% ÇEK 0,0% 0,0% 0,0% 0,0% DİĞER

Detaylı

TABLO-1. MERKEZİ YERLEŞTİRMEDEKİ EN KÜÇÜK VE EN BÜYÜK PUANLAR ( ORTAÖĞRETİM MEZUNLARI )

TABLO-1. MERKEZİ YERLEŞTİRMEDEKİ EN KÜÇÜK VE EN BÜYÜK PUANLAR ( ORTAÖĞRETİM MEZUNLARI ) 1573951 3 0 091.496 092.411 HEMŞİRE (BOLU) ABANT İZZET BAYSAL ÜNİVERSİTESİ (Merkez) 1573953 29 0 093.232 096.492 KORUMA VE GÜVENLİK GÖREVLİSİ (ANKARA) ADALET BAKANLIĞI (Merkez) 1573955 11 0 092.813 093.230

Detaylı

e-fatura UYGULAMA KILAVUZU

e-fatura UYGULAMA KILAVUZU e-fatura UYGULAMA KILAVUZU 29.09.2017 Ver:1.0 i İçindekiler Tablosu 1 SOSYAL GÜVENLİK KURUMU E- FATURA UYGULAMASI... 1 2 E-FATURA GRUPLARI VE ÖZEL ALANLAR... 1 2.1 SAĞLIK HİZMETİ SUNUCULARINA AİT FATURALAR...

Detaylı

Ulusal Gelişmeler. Büyüme Hızı (%) a r k a. o r g. t r 11,5 7,5 5,8 7,4 7,4 7,3 7,2 3,6 6,1 5,3 3,2 5,3 5,3 4,9 4,8 4,2 2,6 1,8 -3, ,8

Ulusal Gelişmeler. Büyüme Hızı (%)   a r k a. o r g. t r 11,5 7,5 5,8 7,4 7,4 7,3 7,2 3,6 6,1 5,3 3,2 5,3 5,3 4,9 4,8 4,2 2,6 1,8 -3, ,8 Büyüme Hızı (%) %10 veya fazla %6-%10 %3-%6 %0-%3 %0 dan küçük Veri yok 2018* 2017 2016 2015 YILLIK 2,6 IV -3,0 III 1,8 II 5,3 I 7,4 YILLIK 7,4 IV 7,3 III 11,5 II 5,3 I 5,3 YILLIK 3,2 IV 4,2 III -0,8 II

Detaylı

LİSTE - III TÜRKİYE KAMU HASTANELERİ KURUMU - TAŞRA İL KODU İL ADI POZİSYON ADI BÜTÇE TÜRÜ

LİSTE - III TÜRKİYE KAMU HASTANELERİ KURUMU - TAŞRA İL KODU İL ADI POZİSYON ADI BÜTÇE TÜRÜ YER DEĞİŞİKLİĞİ BAŞVURULARI İÇİN İLAN EDİLEN LİSTESİ 1 ADANA DİŞ TABİBİ DÖNER SERMAYE 1 1 ADANA DİŞ TABİBİ GENEL BÜTÇE 2 1 ADANA EBE DÖNER SERMAYE 1 1 ADANA EBE GENEL BÜTÇE 5 1 ADANA ECZACI DÖNER SERMAYE

Detaylı

T.C. ÇEVRE VE ŞEHİRCİLİK BAKANLIĞI TEHLİKELİ ATIK İSTATİSTİKLERİ BÜLTENİ(2013)

T.C. ÇEVRE VE ŞEHİRCİLİK BAKANLIĞI TEHLİKELİ ATIK İSTATİSTİKLERİ BÜLTENİ(2013) Sayı: 4 02.07.2015 16:00 Mülga Tehlikeli Atıkların Kontrolü Yönetmeliği kapsamında yıllık tehlikeli atık beyanları, Çevre ve Şehircilik Bakanlığı Çevre Bilgi Sistemi altında yer alan Atık Yönetim Uygulaması/Tehlikeli

Detaylı

Türkiye'nin en rekabetçi illeri "yorgun devleri"

Türkiye'nin en rekabetçi illeri yorgun devleri Türkiye'nin en rekabetçi illeri "yorgun devleri" Türkiye nin kalkınmasında önemli rol üstlenen İstanbul, Ankara ve İzmir, iller arasında rekabet sıralamasında da öne çıktı. İSTANBUL - Elif Ferhan Yeşilyurt

Detaylı

Gayri Safi Katma Değer

Gayri Safi Katma Değer Artıyor Ekonomik birimlerin belli bir dönemde bir bölgedeki ekonomik faaliyetleri sonucunda ürettikleri mal ve hizmetlerin (çıktı) değerinden, bu üretimde bulunabilmek için kullandıkları mal ve hizmetler

Detaylı

BÖLÜM -VI- BÖLGESEL AZALTMA KATSAYILARI

BÖLÜM -VI- BÖLGESEL AZALTMA KATSAYILARI BÖLÜM -VI- BÖLGESEL AZALTMA KATSAYILARI 173 174 Elektrik, Elektronik-Biyomedikal-Kontrol Mühendisliği Hizmetleri EK-1 BÖLGESEL AZALTMA KATSAYILARI (BK) EMO Yönetim Kurulunun 06.11.2015 tarih ve 44/51 sayılı

Detaylı