Thunkable'da Kodunuzu Hata Ayıklama

Thunkable'da kodunuzu hata ayıklama ve hataları düzeltme ipuçlarını öğrenin

HATA AYIKLAMA NEDİR?

Hata ayıklama , kodlayıcıların kodlarının neden çalışmadığını anlamak ve ardından çalışması için düzeltmek için kullandıkları süreçtir. 

Hata ayıklama terimi, bilgisayar biliminin öncülerinden Amiral Grace Hopper tarafından ortaya atılmıştır. 1940'larda Harvard Üniversitesi'nde Mark II bilgisayar üzerinde çalışırken, bir güve bilgisayara girmiş ve bilgisayarın çalışmasını durdurmuştur.

Güveyi ortadan kaldırarak, sistemi "hata ayıklıyor" olduklarını söyledi. Programcılar artık bu terimi "kodumdaki hataları düzeltmek" anlamında kullanıyor.

Grace Hopper

KODLAMA İPUÇLARI

dog looking at computer

Hata ayıklama, genellikle kodlamanın en sinir bozucu ve zaman alıcı kısmı olabilir, bu yüzden bu iş için bolca zaman ayırmak gerçekten önemlidir!

Ve ayrıca sabırlı olmak!

KÜÇÜK PARÇALAR

Bazen programcılar, uygulamalarının tamamını tek seferde kodlayıp test etmek isterler.

Bu cazibeye kapılmayın!!!

Bir şey düzgün çalışmazsa, ki bu muhtemeldir, hatayı düzeltmek için nereden başlamanız gerektiğini bulmak zor olabilir. 

chunks of chocolate

Uygulamanızın kodlamasını küçük parçalara ayırın. 

Bir şeyi halletmeden diğerine geçme. 

Biraz kod yazın, biraz test edin, çalıştığını onaylayın, sonra biraz daha kod yazın, biraz daha test edin, vb. 

Örneğin, uygulamanızda farklı işlevlere sahip 5 düğme varsa,

  1. İlk düğme için eylemi kodlayın
  2. Ardından çalışıp çalışmadığını test edin.
  3. İkinci düğmeye geçin
  4. Tekrarla.

Kodunuzda bir hata varsa, geri dönüp 5 yerde düzeltmektense, tek bir yerde düzeltmek daha iyidir.

5 buttons in an app

VERSİYON KONTROLÜ

it began as a mistake

Diyelim ki "küçük parçalar" kuralını uyguluyorsunuz ve uygulamanızın bir kısmı oluşturulmuş ve çalışır durumda.

Yeni bir kod ekliyorsunuz ve birdenbire her şey çalışmaz hale geliyor. 

OH HAYIR!

Yeni kodu silmeye çalışıyorsunuz, ancak uygulamanız hala çalışmıyor. Neyin yanlış gittiğinden emin değilsiniz ve bir "geri al" düğmesi olmasını diliyorsunuz.

Bu tür senaryolardan kaçınmak için uygulamanızın sürümlerini kayıt edebilirsiniz. 

Böylece, bir hata yaparsanız ve nasıl düzelteceğinizi bilmiyorsanız, kaydettiğiniz son çalışan sürüme geri dönebilirsiniz.

Ayrıca, sürüm kontrolünü kullanarak, çalışan uygulamanızı bozma endişesi duymadan yeni özellikleri deneyebilirsiniz.

Thunkable'ın ücretsiz sürümünde 10 proje sınırı vardır, bu nedenle proje sınırına ulaşırsanız, yeni bir proje kaydetmeden önce en eski sürümleri silebilirsiniz. 

Projenizin bir kopyasını oluşturmak için:

  1. ekranın sağ üst köşesindeki 3 noktaya tıklayın
  2. Açılır menüden "Projeyi Çoğalt" seçeneğini seçin.
  3. Kaydedilen kopyaları takip etmek için yeniden adlandırın. v1, v2 numaralandırması iyi sonuç verir.
screenshot of thunkable duplicate project menu

ÇÖKME BLOKLARI

Blokları daraltmak, kod çalışma alanınız bloklarla dolmaya başladığında kodunuzu düzenli tutmanın bir yoludur.

Bir bloğa sağ tıklarsanız, onu daraltma seçeneği göreceksiniz.

Bloklarınızı tekrar genişletmek için, blokların üzerine sağ tıklayın ve Blok Genişlet'i seçin.

screen opens block being collapsed
expanding collapsed block

Çöken bloklar, ekranınızda bir çubuk boyutuna kadar sıkıştırılır.

Bunlar normal bloklarla aynı şekilde çalışır, sadece daha az yer kaplarlar. Artık düzenlemeniz gerekmeyen bloklarınız varsa ve ekranınızı temizlemek istiyorsanız bu özellik yararlı olabilir.

collapsed block

ENGELLEME ENGELLEME

Engellemeleri de devre dışı bırakabilirsiniz.

Ekranınızda kalırlar ancak uygulamada çalışmazlar.

Engellenen bloklar sayesinde, belirli kod blokları olmadan uygulamanızı test edebilirsiniz. Bunları daha sonra etkinleştirebilirsiniz ve çalışacaklardır.

Ayrıca, Uyarılar gibi yalnızca test amaçlı kullandığınız engellemeleri de devre dışı bırakabilirsiniz.

disabled alert block

Blokları bir olay işleyici bloğundan sürükleyerek çıkarmak, bunları devre dışı bırakır ve çalışmasını engeller. Herhangi bir olayın parçası olmadıkları için, hiçbir şekilde çalışmayacaklardır. Gri renkte görüneceklerdir. Bunları tekrar etkinleştirmek için her zaman geri ekleyebilirsiniz.

YORUMLAR

Programcılar genellikle kodlarında ne işe yaradığını açıklamak için yorumlar bırakırlar. 

Yorumlar, takım arkadaşlarınız, mentorlarınız ve jüri üyeleri gibi diğer kişiler kodunuzu incelerken yardımcı olabilir.

Yorumlar, daha sonra kodunuza geri döndüğünüzde ve kodun hangi kısımlarının ne işe yaradığını unuttuğunuzda da yardımcı olabilir.

Yorum eklemek için bloklara sağ tıklayın ve "Yorum Ekle"yi seçin.

Bundan sonra, bloğun köşesinde bir soru işareti görünecek ve metin ekleyebileceksiniz. Soru işaretine tıklayarak yorumu görüntüleyebilirsiniz.

comment box above code block

En iyi uygulamalar: Yorumlar, programlamada en yararlı şeydir.

Bir programcı bir şey kodladıktan sonra uykuya dalmış ve ertesi sabah uyandığında önceki gece ne yaptığını hiç hatırlamadığı birçok durum olmuştur.Her zaman yorum yazın!

It’s also a great way to check your knowledge, because if your coding blocks are easy to comment on then you must understand them really well! Another thing to be aware of is that <, >, =, ≤, ≥ are hard for students for the first time (and for programmers who are years into their careers). When we set a math statement to < when it should be ≤ this is called an “off by one” error and this is a problem that happens to developers with 20 years of experience 😛 It is a very popular problem so be on the lookout for that. 

En iyi hata ayıklama yöntemi,lastik ördek hata ayıklamadır! Bu, kodunuzda gerçekten takılıp kaldığınız ve hiçbir anlam ifade etmediği durumlarda kullanılır. Bir süre zaman ayırıp başka biriyle konuşarak sorunun ne olduğunu bulmaya çalışmak istersiniz, ama ne yazık ki etrafta kimse yok! Bu durumda masanızda güvenilir bir lastik ördeğiniz varsa, sorunu ördek arkadaşınıza yüksek sesle anlatırsınız. Ancak, onun anlayabilmesi için çok basit terimler kullanmanız gerekir ve ardından sorunu kendiniz bulursunuz! Tüm iş arkadaşlarımın masalarında lastik ördekler var ve bunu sık sık yapıyorlar!

Öğrencilere sorulacak yol gösterici sorular: Deneyimli kodlayıcıların hataları gidermek için ne kadar süreye ihtiyaç duyduklarını düşünüyorsunuz? Bu konuda çok hızlı olduklarını düşünebilirsiniz, ancak her büyük sitenin hataların ne kadar süredir var olduğunu gösteren özel sayfaları vardır (örneğin Facebook) ve ayrıca sayfalarından herhangi birinin çalışmadığını/bozuk olduğunu ve şu anda hata giderme işlemi yaptıklarını da gösterirler (Facebook örneği).

Hataları nasıl buluyorsunuz? (çok çok fazla test yaparak!) Ne kadar test yapmanız gerektiğini düşünüyorsunuz? Başkalarına ne kadar test yaptırmalısınız?

Bir hata bulduğunuzu nasıl anlarsınız? Bazen bir resme sonsuza kadar tıklayıp durursunuz, ancak tıklamanız gereken düğmenin resmin altında olduğunu fark edersiniz. Bu bir hata mıdır? Bu, uygulama üreticisinin yaptığı bir tasarım seçimidir ve onlar bunu bir hata olarak görmezler, ancak siz öyle görebilirsiniz.

Mentor ipuçları AmeriCorps'un desteği ile sağlanmaktadır.

stylized A, AmeriCorps logo in navy

HATA AYIKLAMA İPUÇLARI

UYARILAR VE ETİKETLER

Test ederken bilgileri görüntülemek için Uyarılar ve Etiketler gibi bileşenleri kullanabilirsiniz. Uygulamayı tamamen test ettikten sonra bunları kaldırabilirsiniz.

Bir Bloklar penceresine eklemek için Palet'teki Uyarılar'ın yanındaki + işaretine tıklayın.

code for alerts

Uyarı Mesajını izlemek istediğiniz bilgilere ayarlayın. 

Ardından, bir olay meydana geldiğinde görüntülemek için kodunuzda Alert.Show komutunu kullanın.

Mesajlara ek olarak, bir değişkenin değeri veya bir Sprite'ın konumu gibi bilgileri de görüntüleyebilirsiniz.

Ayrıca şunları da ekleyebilirsiniz Etiketler ekleyerek uygulamanızda güncel bilgileri görüntüleyebilirsiniz. 

Örneğin, uygulama çalışırken belirli olaylar meydana geldiğinde bir değişkenin değerini bilmek isteyebilirsiniz. 

Label.Text'i bilmek istediğiniz herhangi bir değere ayarlayabilirsiniz ve bu değer uygulamanızda görüntülenecektir. 

Hatayı giderdikten sonra, etiketi görünmez hale getirebilir veya uygulamanızdan tamamen silebilirsiniz.

TEST VERİLERİNİ KULLANIN

Uygulamanızda kullanacağınız çok fazla bilgi varsa, test verilerini kullanmak faydalı olabilir. Test verileri, uygulamanızın doğru çalıştığından emin olmak için kullanabileceğiniz daha basit ve daha küçük bir veri kümesidir.

Diyelim ki, yakınınızdaki restoranları gösteren bir uygulama yapıyorsunuz. Restoran bilgilerini saklamak için Google Sheets kullanıyorsunuz.

Sadece bir veya iki test restoranıyla başlayabilir ve uygulamanızın çalıştığından emin olmak için test edebilirsiniz.

Test edip çalıştığından emin olduktan sonra, restoran verilerinin tamamını Google e-tablosuna ekleyebilirsiniz.

ÖZELLİKLERİ DEĞİŞTİR

Uygulamanızı canlı olarak test ediyorsanız, uygulamayı çalıştırırken Tasarımcı'da bir özellik değerini değiştirebilir ve bunun etkilerini görebilirsiniz.

Bazen bu, bir sorunu ortaya çıkarmaya yardımcı olabilir.

Örneğin, bir oyun kodluyorsunuz. Sprite'ın konumu, telefonunuzda çalışırken size doğru görünmüyor.

Canlı test sırasında şunları yapabilirsiniz:

  1. Tasarımcıya git
  2. Sprite'ın X ve Y değerlerini değiştirin
  3. Çalışan uygulamada Sprite'ın ekrandaki konumu değişecektir. 

Bunu, ekranınızdaki koordinatları test etmek ve anlamak için kullanın.

game with sprites

AKTİVİTE 1: HATAYI DÜZELTİN

Tahmini süre: 20 dakika

Zamanlayıcı uygulamasındaki hataları düzeltin

Bu Zamanlayıcı Uygulaması içinde birkaç hata var.

  1. Projeyi kopyalayın.
  2. Uygulamayı çalıştırmak için önizleme yapın.
  3. Metin kutusuna hiçbir şey yazmadan Başlat düğmesine basmayı deneyin. Ne olur?
  4. Saniye sayısı için 0 veya negatif bir sayı girmeyi deneyin. Ne olur?
  5. Koşullu blokları kullanarak hataları düzeltin!

Bu, hataya yönelik olası bir çözümdür.

thunkable timer app solution blocks

ETKİNLİK 2: YORUM EKLE

Tahmini süre: 10 dakika

Thunkable projenize yorum ekleyin

Technovation için son uygulamanızı başlattıysanız, bu etkinlik için o uygulamayı kullanın. Aksi takdirde, Etkinlik 1'deki Zamanlayıcı Uygulamasını kullanın.

Uygulamanıza, bir grup bloğun ne işe yaradığını açıklayan en az bir yorum ekleyin. Anlaşılması en zor olduğunu düşündüğünüz bir grup bloğu seçin, çünkü bu bloklar muhtemelen bir ekip üyesi gibi başka birinin anlaması en zor olan bloklardır.

YANSIMA

Bu ipuçları, Technovation projeniz için mobil uygulamanızı kodlamaya başlarken size yardımcı olabilir.

Ama unutmayın…

Fotoğraf DKJS Franziska Schmitt'in izniyle kullanılmıştır.
Kodlama kolay değildir.
Uygulamanızın başlangıçta mükemmel şekilde çalışmayacağı ihtimali yüksektir!
Küçük parçalar halinde kodlayın.
Uygulamanızın küçük bir kısmı çalışmaya başladığında bunu kutlayın.
Ara verin! Bazen bilgisayarınızdan birkaç dakika uzaklaşmak bile size ihtiyacınız olan yeni bir bakış açısı kazandırabilir.

ANAHTAR TERİMLERİN GÖZDEN GEÇİRİLMESİ

  • Hata ayıklama – kodlayıcıların kodlarının neden çalışmadığını anlamak ve düzeltmek için kullandıkları süreç
  • Sürüm Kontrolü ilerleme kaydederken uygulamanızın çalışma sürümlerini kaydetme
  • Test verileri – uygulamanızın doğru çalıştığından emin olmak için kullanabileceğiniz daha basit bir veri kümesi
  • Yorumlar kodun ne işe yaradığını açıklamak için koda eklenen metin

EK KAYNAKLAR

İşte Thunkable hata ayıklama kaynaklarından bazıları.