18 Eki 2016

AngularJS’de src Yerine ng-src Kullanmak

Çok basit bir bilgi gibi dursa da çoğu zaman gözden kaçabilen bir ayrıntı. Çalıştığım projelerde bir resim için src niteliği belirlerken angular değişkeni kullanacaksam şu şekilde kullanıyorum. <img src="adres/{{url}}.png"/> Bu kodun çalışmaması için herhangi bir neden bulunmuyor. Ek olarak kod gayet de güzel çalışıyor. Fakat konsolda, ´adres/{{url}}.png´ adresi için 404 hatası veriyor. Bunun temel nedeni, […]

08 Eki 2016

Node.js ile Crawling Yaparken Bilinmesi Gerekenler

Yaklaşık 3 aydır node.js'i yalnızca scripting ve crawling için kullanıyorum. Herhangi production seviyesinde bir projede node kullanmak an itibariyle bana pek güven verici gelmiyor, fakat güzel bir makine ile nodejs üzerinde yapacağınız senkron olmayan network crawling işlemlerinde harika bir performans veriyor. Line by line bir programlama dilinde karşılaştığınız X işlemini yap, Y işlemini yap, Z […]

06 Eki 2016

Cheerio – Sunucu Taraflı DOM İşleyicisi

Cheerio, nodejs ile DOM objeleri oluşturma, değiştirme yönetme, parse etme veya benim en beğendiğim özelliği olan Crawl edilen DOM verisinin içindeki veriyi düzenli hale getirmemize ön ayak olan bir kütüphane. Kütüphanenin en beğendiğim özelliği crawl edilen DOM stringini jQuery seçicileri ile seçiyor olmanız. Birkaç örnek ile nasıl kullanıldığını gösterelim; let cheerio = require("cheerio"); let $ […]

02 Eki 2016

Angularjs $timeout Servisini Durdurmak ve Test Etmek (cancel/flush)

$timeout servisi, angular'da setTimeout() metodunu çevreleyen bir built-in servis; ek olarak geliştirme sırasında ek bir fayda sağlamasa bile*, kod testi sırasında, flush gibi metodlar ile, test sürecini kolaylaştırıyor/hızlandırıyor. (*) ek olarak sunduğu zamanlayıcısı promise olarak atayıp .cancel() metodu ile clearTimeout işlevi görmesi açısıdan daha hoş bir yaklaşıma sahip olduğunu söyleyebiliriz, fakat ek olarak herhangi bir […]

02 Eki 2016

SVGO – SVG Optimize Etme/Sıkıştırma Aracı

SVGO, nodejs ile yazılmış, svg vektör grafiklerinini kayıpsız sıkıştıran, (optimize eden) güzel bir konsol uygulaması. Ayrıca nodejs tabanlı olması açısından, Javascript uygulamarı içerisine de istenirse rahatlıkla gömülebiliryor. npm install -g svgo Komutu ile npm üzerinden global olarak yükleyerek konsol uygulaması olarak kullanabilirsiniz. Konsol uygulamasında bilmeniz gereken bazı komuşlar şu şekilde; svgo [Secenekler] [Argumanlar] // Genel […]

21 Eyl 2016

MD Formatında Javascript Kod Dökümantasyonu – JSDoc2md

JSDoc, javascript kodlarınıza eklenen yorumları kompile ederek, HTML halinde sayfalar şeklinde dökümantasyona çeviren güzel bir konsol uygulaması. Bunun yanında, JSDoc2MD isimli ve yine JSDoc üzerine oluşturulmuş bir diğer güzel uygulama ile, kodlarınızın dökümantasyonunu tek sayfa halinde md formatında çıktı olarak da alabiliyorsunuz. jsdoc-to-markdown @Github Uygulamayı npm üzerinden yükledikten sonra; npm install jsdoc-to-markdown Fonksiyon ve class'larınız […]

21 Eyl 2016

Javascript Mantıksal Karşılaştırmaları: == ve === Arasındaki Fark

Bu yazıda, birbirine çok benzeyen 2 mantıksal karşılaştırma olan == ve === veya != ve !== arasındaki temel farktan bahsedeceğiz; == karşılaştırıcısı, karşılaştırılan değerlerin birbiirine eşit olup olduğunu kontrol etmeden, ikinci değeri ilk değere cast etmektedir. === karşılaştırıcısı, == karşılaştırıcısında olduğu gibi herhangi bir type değişikliği yapmadan, karşılaştırılan değerlerin aynı tipte olduğunu varsayarak kontrol yapar. […]

15 Eyl 2016

ES6 Import İfadesi ve Yöntemleri

Bildiğiniz gibi, Javascript'in ES5 standartında, javascript dosyaları arasında import veya export benzeri native bir mekanizma bulunmuyordu. Bu önemli özellik, yeni standart ES6'daki import-export statement ile kullanılabiliyor. 2 dosya arasında özellikle fonksiyon ve class'ların import edilebiliyor olması, ES6'nin temeldeki mantığı olan, javascript'i daha modüler hale getirme felsefesini destekliyor. Import Yöntemleri Klasik kullanımını şöyle özetleyebiliriz; import {elemanim} […]

07 Eyl 2016

Javascript’te Türkçe Karakterleri Büyütüp Küçültmek – toLocaleUpperCase()

Javascript'te küçük harflerden oluşan bir string'i büyük hale getirmek için, .toUpperCase() veya küçük hale getirmek için .toLowerCase() metodlarını kullanıyoruz. Bir örneğini şöyle gösterelim; var sebze = "patates"; console.log(sebze.toUpperCase()); // PATATES çıktısını verir Fakat, eğer büyük hale getirmeye çalıştığımız string Türkçe karakterler içeriyorsa, bu durumda bu metodlar bazı tarayıcılarda veya tarayıcı motorlarında işe yaramamakta; Bu tip […]

27 Ağu 2016

CSS’de Transition İptal Etme – Durdurma İşlemi

Özellikle Angular gibi, view tarafında DOM objelerinin fazla değişmediği uygulamalarda, CSS'in transition özelliği ile animasyon yönetimi sağlıyorsanız, bazı durumlarda Javascript tarafında bir olay gerçekleştiğinde, animasyonun durmasını veya gerçekleşmemesini isteyebiliyorsunuz. Ben bu durumla karşılaştığımda, biraz baş ağrısı yaşadıktan sonra, transition öldürülecek DOM objesinin, transition özelliğini geçici olarak overwrite etme çözümü ile sorunumu çözdüm. Basit bir şekilde […]