Carola Nitz Etkili hata ayıklama sunumlarıyla birçok kişi tarafından tanınmaktadır, ancak aynı zamanda Apple'daki Haritalar ekibinde çalışmıştır ve şu anda çok popüler VLC medya oynatıcıları için iOS uygulaması üzerinde çalışmaktadır.

Hem açık hem de kapalı kaynaklı yazılımlarda çalışan çok çeşitli deneyimim sayesinde, hata ayıklama, eski kod, başkalarına danışmanlık ve daha birçok konuda tavsiyede bulunmak için Carola ile temasa geçtim.

Swift ile Hacking: VLC kısa bir süre önce tüm platformlarda üç milyar indirmeyi geçerek, şimdiye kadar yapılmış en popüler yazılımlardan biri haline getirdi. Ekibe katılmana ne sebep oldu?

Carola Nitz: Başlangıçta 2013 / 2014'te VLC'ye katkıda bulunmaya başladım. O zamanlar, ilk işimden edindiğim bilgileri kaybetmemek için C / C ++ dilinde yazılmış bir projeye katılmaktı. Ama bir iOS Geliştiricisi olduğumu öğrenir öğrenmez VLC'nin bu bölümüne girdim!

Kendimi Google Drive entegrasyonunu inşa ederek, projeyi CocoaPod'ları kullanmak üzere devretti, VLCKit'i ilk kez ARC'ye devretme taahhüdünde buldum – bu da diğerlerinin yıllar boyunca bu işleri ve diğer işleri bitirmelerini sağladı. Yeni bir iOS Geliştiricisi olarak yeni başlamıştım, işim üzerinde çok fazla etkim varmış gibi hissetmiyordum, ama VLC bana tam olarak bunu verdi. Yaptığım bir şeyin, kullanıcılarımızın önemli bir kısmı tarafından kullanıldığını ve o kadar popüler hale geldiğini görmek, kesinlikle haber değeri kazanacak şekilde beni teşvik etti ve daha fazla bilgi edinmek ve daha fazla bilgi edinmek için dürtü besledi.

“Bu açık kaynaklı projeye katılana kadar var olmadığımı bilmediğim yepyeni bir dünya vardı ve bu benim geliştirici kadar büyümeme yardımcı oldu!”

Ek olarak, VLC'nin arkasında kar amacı gütmeyen VideoLAN düzenli olarak işbirliği yapmak için tüm geliştiricilerini Avrupa'daki farklı şehirlere uçuruyor ve yıllar içinde Google, Nginx, Vimeo ve her türden ilginç şirketlerden gelen mükemmel insanlarla iletişim kurmayı başardım. Bu açık kaynaklı projeye katılana kadar var olduğunu bilmediğim yepyeni bir dünya vardı ve geliştirici olarak o kadar büyümeme yardımcı oldu! Her şey açık kaynak olduğu için, diğer geliştiricilere istediklerinde kodlamalarını gösterebildim, bilgimi paylaşmama ve ek olarak kendimi nasıl geliştirebileceğim konusunda başkalarından geribildirim almama yardım ettim.

Eski bir VLC geliştiricisi tarafından yönlendirildiğim için aynı zamanda komik olan Apple'a katıldığımda, bunun benim için ne kadar önemli olduğunu hafife aldım. Apple'daki zamanımın tadını çıkarırken çok ve o kadar çok şey öğrendim ki, artık VideoLAN’ın bir parçası olmama, bilgi birikimine katkıda bulunamama ve paylaşamama duygusu vardı, bazıları da beni çok üzdü.

Ayrıldığımda Videolabs için çalışmayı planlamıyordum, farklı bir tam zamanlı işle daha önce olduğu gibi katkıda bulunacağımı düşündüm. Ancak JB [Jean-Baptiste Kempf, president of VideoLAN] hemen bana sözleşme çalışması verdi, röportaj yapmak zorunda kalmadan ve ilk başta ara ara çözüm olması gereken şey, uzaktan müşteri için çalıştığım ana müşterim oldu, beni yine VLC'yi temsil etmek için dünyaya uçurdu ve bir kez daha vermeme izin verdi. Konferanslarda ve dünyada 20 milyondan fazla insana ulaşan bir Uygulama üzerinde çalışabilme becerisi.

HWS: İOS uygulaması kendi başına oldukça popülerdir, ancak ortak hedeflere ulaşıldığından emin olmak için gelişimi diğer ekiplerle nasıl koordine ediyorsunuz?

CN: Birçok insan bunu duyduğunda şaşırır, ancak oldukça küçük bir ekibiz. İOS'ta, ara sıra dış katkı yapan iki tam zamanlı geliştiricimiz var ve Android'de bir tane var, ancak özünde, geçen yıl 10'dan fazla taahhüt almış 20 kişiyle birlikte, diğer tüm platformlarla kısmen kesişen bir grup geliştiricimiz var. . Dev ops için ~ 2 geliştiricimiz, Mac'te 3 kişi ve .net ve Windows mobile için bir tane geliştiricimiz var.
Kendimizi Trac adlı bir sistemle düzenliyoruz, ancak bir noktada gitlab'a geçmeyi hedefliyoruz.

“İOS'ta, her zaman beklenenden daha uzun süren UI'yi elden geçiriyoruz”

Çekirdek büyük salınım döngüsünü ve hangi işlevlerin eklendiğini belirliyor ve geçen yıl 3.0'ı yayınlamak için her platformu getirdik ve onunla birlikte 360 ​​video, Chromecast desteği ve Ambisonic ses gibi özellikler de sunuyor. Daha önce Android 1.x iOS 2.x'e sahipti ve hangi sürümün hangi çekirdek özelliklere sahip olduğunu anlamak zordu. Platforma özgü özellikler için hemen hemen geliştirme ekibine kalmış ve bir araya geldiğimizde olası özellikleri tartışıyoruz.

Diğer işlevsellik bazen müşteri çalışmasının sonucudur, belirli sayıda insanın işlevsellikten yoksun olduğunu gördüğümüzde, onlar için inşa ederiz, ancak bunu çekirdeğin bir parçası yaparız. Neyse ki, açık kaynak üzerinde çalıştığım için her şey hakkında konuşabiliyorum! Şu anki ilginç projeler arasında hızlı bir AV1 kod çözücüsü olan dav1d var ve iOS'ta her zaman olduğu gibi beklenenden daha uzun süren UI üzerinde çalışıyoruz. 4.0 ile nelerin değişeceğini görmek isterseniz buraya bir göz atabilirsiniz: https://github.com/videolan/vlc/blob/master/NEWS

HWS: VLC, birçok platformda iyi çalıştığı ile ünlüdür – Apple ekosisteminin dışında çalışma şansınız var mı?

CN: Apple kodundan uzaklaşmıyorum. Zaman zaman çekirdek kütüphanesi libvlc'si için sarmalayıcı olan ve C kodu yazma gerektiren bazı VLCKit yamaları düzenlemeliyim, ancak iş arkadaşlarından libvlc'nin içsel işleyişini anlamak zaman alır çünkü çoğu zaman bunu yapmamı istiyorum. Zaman zaman Android kod tabanına bakıyorum ve bir çok açık kaynaklı ve medya ile ilgili etkinliğe katılıyorum – ancak bu oldukça fazla.

HWS: Bu kadar popüler bir uygulamayla, sürekli entegrasyon ve test için oldukça güçlü bir düzene sahip olmalısınız – kullandığınız ve neden kullandığınız konusunda bize yol gösterebilir misiniz?

“Duyduğun gibi, birçok geliştiricimiz yok, bu da doğrudan yama incelemelerinde ustalaşmayı taahhüt eden insanlara yol açıyor.”

CN: Dürüst olmak gerekirse, bu hala gelişmemiz gereken bir alan. Duyduğun gibi, birçok geliştiricimiz yok, bu da doğrudan yama incelemelerinde ustalaşmayı taahhüt eden insanlara yol açıyor. Her zaman farklı platformları günde bir kez test edecek şekilde inşa ettik, bu yüzden onlar inşa ettiler, ancak tam zamanlı çalışmaya başladığımda pek bir yer yoktu ve VLCKit bile özel bir dizüstü bilgisayarda kurulmuştu.

Geçen yıl çok şey ekledik! VLCKit, Jenkins tarafından temiz bir yapı ortamında inşa edildi, GitHub aynamız için ve bu yıl da özel GitLab'ımız için çekme istekleri ekledik. Çekme istekleriyle, ustalığa inmeden önce her yapı kopma taahhüdünü kontrol etmek için CircleCI'yi yerleştirdik. Geçen yıla kadar herhangi bir test yapmadık, ancak gerçekten değiştirmek istediğimizden beri, ilk testleri ve bir kod kapsamı raporunu ekleyen VLCKit'in etrafına bir test çerçevesi eklemek için bir Google Yaz Kodu projesi danışmanlığımı değiştirmek istedik. Bunun için XCtest'i kullandık, ancak hala bu alanda geliştireceğimiz çok şey var!

İOS ve tvOS için, en azından geçen yıl çekirdek işlevsellikten haiz olmadığımızdan emin olmak için her sürümden önce geçtiğimiz bir test sayfası ekledik, ancak yakın zamanda da otomatikleştirmeyi umuyorum. Ne yazık ki, iOS, tvOS ve VLCKit + istemci çalışmaları için uygulamaları yöneten iki mühendisle birlikte, zamanımız çok sınırlı ve bu, gerektiği kadar zaman almadığı kısım.

HWS: İOS için VLC ve macOS için VLC tamamen farklı ürünler gibi gözüküyor, ancak şimdi Apple bize UIKit uygulamalarını Mac'te göndermek için araçlar sağlamaya gidiyor, büyük bir VLC birleşmesi mi görüyorsunuz?

“Kişisel olarak React Native, Flutter veya başka bir çapraz platform çözümünün çok performans göstermesi gereken bir uygulama için mükemmel bir seçim olmadığına şahsen inanıyorum”

CN: Şu anda çekirdeğin yanı sıra tamamen farklı uygulamalar da var; ancak paylaşılan bileşenlere mümkün olduğunca taşınmaya çalışıyoruz ve bunun bir çabası da paylaşılan bir medya kütüphanesine sahip olmak. Büyük bir birleşme olası değildir. Mac'teki App Store'dan geçmiyoruz ve bunun için birçok neden var – GPL lisanslı kodu kullanmaktan, gözden geçirme işlemini asla geçmeyecek belirli API'lere kadar. İOS uygulamamızı macOS'a taşımak istiyorum ve bir noktada eğlenmek için yapabilirim, ancak bunun gibi bir şey Videolan'dan resmi olarak planlanmamıştır ve Mac için geçerli VLC'nin sınırlı bir özelliği olan hafif bir sürümüyle sonuçlanacaktır. .

Ben kişisel olarak React Native, Flutter veya başka bir çapraz platform çözümünün çok performans göstermesi gereken veya bellek kullanımı konusunda temkinli olması gereken bir uygulama için mükemmel bir seçim olmadığına inanıyorum. Her platformlar arası çözümde olduğu gibi, başka bir karmaşıklık katmanı eklersiniz ve mümkün olduğunca donanıma yakın olmamız gerekir, çünkü video oynatma bir mobil cihazda yapabileceğiniz en yüksek performans gerektiren şeylerden biridir.

Netflix, Amazon, Hulu ve ortaklarının etkisini kesinlikle görüyoruz. Video içeriğini kendiniz alma ve oynatma ihtiyacı azalmış ve bununla birlikte masaüstü video oynatıcıya ihtiyaç duyulmuştur. VLC hala güçlüyüz, çünkü sadece bir oyuncudan çok daha fazlasıyız ama aynı zamanda mobil portlarımızda artan bir sayı görüyoruz.

HWS: VLC, hem şirket tarafı hem de büyük bir açık kaynaklı taraf olması nedeniyle olağandışıdır. Daha geniş VLC projesi ile ne kadar çalışacaksınız?

CN: Aslında sıradışı olduğunu söyleyemem. Birçok açık kaynaklı proje daha büyük bir şirkete aittir ve kurumsal bir tarafa sahiptir – tutkulu insanların sevdikleri bir projede tam zamanlı çalışmasını sağlar. Apple'da Firefox ve Mozilla, Travis CI ve Swift'e bakıyorum. Sürekli çalışıp VLC topluluğu ile buluşuyorum; Bizim için en büyük etkinlik kesinlikle Brüksel’de FOSDEM’dir, diğeri ise herkesin bir araya geldiği ve işbirliği yaptığı VideoLAN Geliştirici Günleri’dir. Aile birleşmeleri gibi bu olayları bir şekilde görüyorum ve topluluktaki diğer projeler hakkında aksi halde bilmediğim çok şey öğreniyorum.

HWS: Google Yaz Kuralları'nın bir parçası olarak mentor olarak hareket ettiğinizden bahsettiniz – bu sizin için nasıl geçti?

“Test çerçevesi üzerinde çalışan öğrencinin Apple'da test ekibinde bir işe girdiğini öğrendiğimde en büyük akıl hocamdan anım oldu”

CN: Ben gerçekten, gerçekten Google Summer of Code'u seviyorum ve geçen yıl iki öğrenciye akıl hocası oldum. Başkalarının büyümesine yardımcı olmak için öğretmek ve yardım etmek için en memnun edici şeylerden biri. Öğrencilerimden biri C tabanlı medya kütüphanesini iOS uygulamamıza başarıyla entegre etti ve bir diğeri geçen yıl VLCKit için bir test çerçevesi oluşturdu. Bu benim için büyük bir öğrenme deneyimiydi ve geçmişte yaptığımız seçimlerin çoğunu iyi bir şekilde yeniden düşünmem için beni zorladı.

En büyük kararım, haftada bir birebir sahip olmanın öğrencileriniz ve kendiniz için yapabileceğiniz en iyi şey olmasıdır. Çevrimiçi olarak erişilebilir olsanız bile, bir video sohbeti sırasında bir şey sormak yerine, ulaşmanız hala çok daha cesaretlidir. İletişimi çok geliştirdi ve mevcut işleri engelleyen yerlerin nerede olduğunu bilmeme yardımcı oldu. Test çerçevesi üzerinde çalışan öğrencinin Apple'da test ekibinde bir işe girdiğini ve GSOC için bu yıl bekleyemeyeceğimi öğrendiğimde, en büyük akıl hocam anı yaşadım. Eğer bir öğrenciyseniz ve bu yıla katılmak istiyorsanız, lütfen bana bildirin!

HWS: Sizinle ilk önce bir YouTube videosunda tanıştım, Swift kodunu hata ayıklamakla ilgili en eski konuşma olduğunu düşündüm. İnsanlara verdiğiniz tüm hata ayıklama önerilerinden, keşfettiğiniz tüm ipuçlarından ve püf noktalarından, insanların hataları daha hızlı bulup düzeltmelerine yardımcı olmak için ilk üç ipucunuz nedir?

CN: TAMAM! Öncelikle, hangi istekleri ve yanıtları gerçekten alıp gönderdiğinizi görmek için Charles Proxy'yi kullanın. İkincisi, sembolik ve istisna sınır değerlerini kullanın. Otomatik Düzen'in nerede kırıldığını, uygulamanın neden kilitlendiğini veya hangi kodun belirli bir işlevi çağırdığını biliyorsunuz. Üçüncüsü, lldb'deki çalışma zamanında değişkenleri değiştirmek en büyüğüdür. Uygulamanızı yeniden başlatmanız gerekmez ve değişiklikleri hemen deneyebilirsiniz – bu çok zaman kazandıracak!

HWS: Daha yakın zamanda, eski kod hakkında konuşuyorsunuz – daha spesifik olarak, çalışmanın büyük, olgun bir projeyle çalışırken güvenle nasıl güvenle değişiklikler yapabileceği. Bunun ne kadarı VLC'deki deneyiminizden geldi?

“İşte o zaman projenize katılan herkes için ve aynı zamanda sadece kendiniz için testler, belgeler ve otomasyona sahip olmanın ne kadar önemli olduğunun farkındasınız.”

CN: VLC ile çalışmaktan çok şey geldi. Pod'lar olmadan tek başına iOS kod temeli şu anda 38.243 satırda ancak VLCKit ve benzerlerini eklediğinizde, 280.404'deyiz ve bu uygulama App Store'a ilk girenlerden biriydi! Bu konuşmayı yapmam için bana ilham veren birkaçını kırıncaya kadar bu uygulamanın tüm özelliklerini bilmiyordum.

Uygulamanın yenilenmesi ile geçen yıl çok zaman harcandı ve bu, projenize katılan herkes için testler, belgeler ve otomasyona sahip olmanın ne kadar önemli olduğunun farkına vardığınızda – ve sadece kendiniz için. Kimse her şeyi hatırlayamaz! Kod temeli çok gelişiyor ve yeni özelliklere tekrar daha fazla zaman ayırmayı dört gözle bekliyorum, ancak o zamana kadar tavsiye edebileceğim ve bugünlerde bana kim yardım ediyor Eski Kod ile Etkili Çalışma Michael C. Feathers tarafından, Eski Kodun Ötesinde David Scott Bernstein ve yeniden düzenleme Kent Beck ve Martin Fowler tarafından.

<! –

Sponsor Swift 4.2 ve iOS 12 için uygulamanızı güncellemekle zaten meşguldünüz, neden Instabug'un hataları bulmanıza ve düzeltmenize yardımcı olmasına izin vermiyorsunuz? Yalnızca iki kod satırı ekleyin Projenize ve dünya standartlarında bir uygulama göndermek için gereken tüm geri bildirimlerle kapsamlı raporlar alın – Daha fazlasını öğrenmek için buraya tıklayın!

->



Source link

Kategoriler: Genel

110 yorum

Sercan · 21 Mart 2019 12:35 tarihinde

Teşekkürler

Selman · 21 Mart 2019 12:35 tarihinde

Teşekkürler

Savaş · 21 Mart 2019 12:35 tarihinde

Teşekkürler

Beste · 21 Mart 2019 12:36 tarihinde

Teşekkürler

Figen · 21 Mart 2019 12:36 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 12:37 tarihinde

Teşekkürler

Latife · 21 Mart 2019 12:37 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 12:49 tarihinde

Teşekkürler

Figen · 21 Mart 2019 12:49 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 12:51 tarihinde

Teşekkürler

Selman · 21 Mart 2019 13:26 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 13:35 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 13:35 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 13:35 tarihinde

Teşekkürler

Selman · 21 Mart 2019 13:36 tarihinde

Teşekkürler

Arif · 21 Mart 2019 13:41 tarihinde

Teşekkürler

Basri · 21 Mart 2019 13:41 tarihinde

Teşekkürler

Figen · 21 Mart 2019 15:28 tarihinde

Teşekkürler

Basri · 21 Mart 2019 15:28 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Selman · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Arif · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Basri · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 15:29 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 15:46 tarihinde

Teşekkürler

Basri · 21 Mart 2019 15:52 tarihinde

Teşekkürler

Selman · 21 Mart 2019 15:53 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 15:53 tarihinde

Teşekkürler

Basri · 21 Mart 2019 15:54 tarihinde

Teşekkürler

Latife · 21 Mart 2019 15:54 tarihinde

Teşekkürler

Selman · 21 Mart 2019 15:55 tarihinde

Teşekkürler

Savaş · 21 Mart 2019 15:55 tarihinde

Teşekkürler

Beste · 21 Mart 2019 15:56 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 15:56 tarihinde

Teşekkürler

Beste · 21 Mart 2019 15:56 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 15:57 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 15:58 tarihinde

Teşekkürler

Latife · 21 Mart 2019 15:59 tarihinde

Teşekkürler

Basri · 21 Mart 2019 15:59 tarihinde

Teşekkürler

Selman · 21 Mart 2019 16:00 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 16:00 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 16:00 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 16:00 tarihinde

Teşekkürler

Selman · 21 Mart 2019 16:00 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 16:03 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 16:04 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 16:04 tarihinde

Teşekkürler

Arif · 21 Mart 2019 16:04 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 16:05 tarihinde

Teşekkürler

Figen · 21 Mart 2019 16:05 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 16:05 tarihinde

Teşekkürler

Berrin · 21 Mart 2019 16:06 tarihinde

Teşekkürler

Figen · 21 Mart 2019 16:07 tarihinde

Teşekkürler

Arif · 21 Mart 2019 16:08 tarihinde

Teşekkürler

Figen · 21 Mart 2019 16:09 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 16:52 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 16:54 tarihinde

Teşekkürler

Latife · 21 Mart 2019 16:55 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 16:57 tarihinde

Teşekkürler

Figen · 21 Mart 2019 16:57 tarihinde

Teşekkürler

Savaş · 21 Mart 2019 16:57 tarihinde

Teşekkürler

Arif · 21 Mart 2019 16:58 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 16:58 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 16:58 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 16:59 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 16:59 tarihinde

Teşekkürler

Figen · 21 Mart 2019 16:59 tarihinde

Teşekkürler

Figen · 21 Mart 2019 16:59 tarihinde

Teşekkürler

Basri · 21 Mart 2019 17:00 tarihinde

Teşekkürler

Savaş · 21 Mart 2019 17:00 tarihinde

Teşekkürler

Figen · 21 Mart 2019 17:01 tarihinde

Teşekkürler

Selman · 21 Mart 2019 17:01 tarihinde

Teşekkürler

Figen · 21 Mart 2019 17:01 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 17:01 tarihinde

Teşekkürler

Latife · 21 Mart 2019 17:02 tarihinde

Teşekkürler

Figen · 21 Mart 2019 17:03 tarihinde

Teşekkürler

Beste · 21 Mart 2019 17:03 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 17:03 tarihinde

Teşekkürler

Figen · 21 Mart 2019 17:04 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 17:04 tarihinde

Teşekkürler

Arif · 21 Mart 2019 17:04 tarihinde

Teşekkürler

Basri · 21 Mart 2019 17:04 tarihinde

Teşekkürler

Basri · 21 Mart 2019 17:04 tarihinde

Teşekkürler

Basri · 21 Mart 2019 17:04 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 17:05 tarihinde

Teşekkürler

Selman · 21 Mart 2019 17:06 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 17:06 tarihinde

Teşekkürler

Mehmet Ali · 21 Mart 2019 17:06 tarihinde

Teşekkürler

Beste · 21 Mart 2019 17:06 tarihinde

Teşekkürler

Basri · 21 Mart 2019 17:07 tarihinde

Teşekkürler

Beste · 21 Mart 2019 17:07 tarihinde

Teşekkürler

Beste · 21 Mart 2019 17:08 tarihinde

Teşekkürler

Selman · 21 Mart 2019 17:08 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 17:09 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 17:09 tarihinde

Teşekkürler

Basri · 21 Mart 2019 17:29 tarihinde

Teşekkürler

Savaş · 21 Mart 2019 17:31 tarihinde

Teşekkürler

Ahmet · 21 Mart 2019 17:34 tarihinde

Teşekkürler

Sercan · 21 Mart 2019 17:43 tarihinde

Teşekkürler

Beste · 21 Mart 2019 17:45 tarihinde

Teşekkürler

Latife · 21 Mart 2019 17:45 tarihinde

Teşekkürler

Latife · 21 Mart 2019 17:45 tarihinde

Teşekkürler

Basri · 21 Mart 2019 17:45 tarihinde

Teşekkürler

Basri · 21 Mart 2019 18:22 tarihinde

Teşekkürler

Latife · 4 Temmuz 2019 13:52 tarihinde

Teşekkürler

Savaş · 18 Ekim 2019 19:46 tarihinde

Teşekkürler

Latife · 6 Kasım 2019 09:51 tarihinde

Teşekkürler

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir