Rehber Programlamada oluşan hata nasıl çözülür?

Ali998

Centipat
Katılım
27 Ağustos 2020
Mesajlar
2.455
Çözümler
23
Daha fazla  
Cinsiyet
Erkek
Yakın zamanda bir arkadaş muhtemelen çok incelemeden Python kodlamaya çalıştı ve başarısız oldu. Yardım etmeye çalıştığımızda biraz hazırcılık yapıp attığımız kodları incelemektense direk hatasını sordu(isim vermiyorum).
Bu olaydan dolayı bu gün sizlerle nasıl kodlama yaparken aldığınız hataları düzeltebileceğinizi namı diğer "debugging"i nasıl yapabileceğinizi göstereceğim.
Karşımızda bir örnek olması hep iyidir o yüzden bilinçli bir hata yapıp sizlerle paylaşıyorum:
Python:
a=0
if (a==0)
        print("her şey yolunda")
Yukarıdaki kodun hata çıktısı:
Kod:
  File "/home/ali/a.py", line 2
    if (a==0)
             ^
SyntaxError: invalid syntax
İlk önce hatamızı anlayalım, syntax error diyor acaba bu nedir diye bir araştırma yapalım:
Bakın araştırırken ne buldum, bunu incelersek if yapılarından sonra ":" gelmesi gerektiğini anladım ve yeniden test ettim:
[CODE title="Çıktı"]her şey yolunda
[/CODE]
Gayet iyi, şimdi arama motorlarını nasıl kullanacağınızı anlatacağım:
Olabildiğince basit anlatmaya çalışın, anlamsız cümleler kurmaktan kaçmayın.
Şu iyi bir örnek olabilir mesela:
<Kodlama dili> <Hata> <Nerede çıktığı (mesela while döngüsü içinde)> <Opsiyonel: Ne yapmaya çalıştığınız>
Bu örnek için şöyle bir aratma yapabiliriz:
python SyntaxError: invalid syntax if
Böylece karşımıza bunun ile ilgili sorun yaşayan ve çözen insanlar çıkabilir.
Diyelim ki karşınıza bir şey çıkmadı veya hiçbir şey anlamadınız. O zaman yardım edebilecek forumlarda(kizlarsoruyor'da falan açmayın konuyu 😀) nazik bir dil ile sorununuzu beyan edebilirsiniz. Daha çok cevap almak için, öğlen saat 2 ve akşam saat 8 arasından sorarsanız tatmin edici sonuçlar almanız daha muhtemel. Bu sorun için geçerli olan dil şu olabilir:
-----
Başlık: Python SyntaxError: invalid syntax
Merhaba, bugün python kodlarken karşıma bu hata çıktı ancak ne yapacağımı anlayamadım. İnternete de baktım ancak en azından benim anladığım bir şey bulamadım.
[CODE lang="python" title="Yazdığım Kod"]a=0
if (a==0):
print("her şey yolunda")
[/CODE]

[CODE title="Çıkan hata"] File "/home/ali/a.py", line 2
if (a==0)
^
SyntaxError: invalid syntax
[/CODE]
Bu hatayı nasıl çözebilirim?
-----

Bu dille anlatır ve herkesin görüşüne önem verirseniz insanlar yardım etmek için yarışa girecektir. Yeter ki tembellik etmeyin ve bütün kodları değerlendirin.
Diyelim ki her yerde konu açtınız ama bir kere bile cevap alamadınız. O zaman karşınızda 3 seçenek var, ya bu özelliği kaldıracaksınız(tavsiye etmem) ya uğraşıp kendiniz teker teker her şeyi deneyip çözeceksiniz ya da 1-2 ay sonra tekrar bakacaksınız. Son 2 seçeneği öneririm çünkü 2. seçenek sizi zora alıştırır, meyvesini sonra verir. 3. seçenek ise hem ilerlemenizi görmenize hem de sorunu daha bilgili bir halinizle çözmenize yardımcı olur.
Son olarak mantık hataları vardır, bu hatalar programlama dili doğru yazıldığı halde sıra veya mantığın yanlış olduğu örneklerdir. Bunları bulması zordur çünkü size herhangi bir hata vermez. Bunları engellemek için yazmaya başlamadan elimize kağıt kalem alıp kodun taslağını çıkarmamız lazım.
Umarım yardımcı olmuşumdur, okuyan herkese teşekkürlerimi iletiyorum.
Sağlıcakla kalın.
 
Son düzenleme:
Yakın zamanda bir arkadaş muhtemelen çok incelemeden Python kodlamaya çalıştı ve başarısız oldu. Yardım etmeye çalıştığımızda biraz hazırcılık yapıp attığımız kodları incelemektense direk hatasını sordu(isim vermiyorum).
Bu olaydan dolayı bu gün sizlerle nasıl kodlama yaparken aldığınız hataları düzeltebileceğinizi namı diğer "debugging"i nasıl yapabileceğinizi göstereceğim.
Karşımızda bir örnek olması hep iyidir o yüzden bilinçli bir hata yapıp sizlerle paylaşıyorum:
Python:
a=0
if (a==0)
print("her şey yolunda")
Yukarıdaki kodun hata çıktısı:
Kod:
 File "/home/ali/a.py", line 2
if (a==0)
^
SyntaxError: invalid syntax.
İlk önce hatamızı anlayalım, syntax error diyor acaba bu nedir diye bir araştırma yapalım:
Bakın araştırırken ne buldum, bunu incelersek if yapılarından sonra ":" gelmesi gerektiğini anladım ve yeniden test ettim:
[CODE title="Çıktı"]her şey yolunda.
[/CODE]
Gayet iyi, şimdi arama motorlarını nasıl kullanacağınızı anlatacağım:
Olabildiğince basit anlatmaya çalışın, anlamsız cümleler kurmaktan kaçmayın.
Şu iyi bir örnek olabilir mesela:
<Kodlama dili> <hata> <nerede çıktığı (mesela while döngüsü içinde)> <opsiyonel: Ne yapmaya çalıştığınız>
Bu örnek için şöyle bir aratma yapabiliriz:
Python syntaxerror: İnvalid syntax if.
Böylece karşımıza bunun ile ilgili sorun yaşayan ve çözen insanlar çıkabilir.
Diyelim ki karşınıza bir şey çıkmadı veya hiçbir şey anlamadınız. O zaman yardım edebilecek forumlarda(kizlarsoruyor'da falan açmayın konuyu 😀) nazik bir dil ile sorununuzu beyan edebilirsiniz. Daha çok cevap almak için, öğlen saat 2 ve akşam saat 8 arasından sorarsanız tatmin edici sonuçlar almanız daha muhtemel. Bu sorun için geçerli olan dil şu olabilir:
-----
Başlık: Python syntaxerror: İnvalid syntax.
Merhaba, bugün Python kodlarken karşıma bu hata çıktı ancak ne yapacağımı anlayamadım. İnternete de baktım ancak en azından benim anladığım bir şey bulamadım.
[CODE lang="python" title="Yazdığım Kod"]a=0
if (a==0):
print("her şey yolunda")
[/CODE]

[CODE title="Çıkan hata"] File "/home/ali/a.py", line 2
if (a==0)
^
SyntaxError: invalid syntax.
[/CODE]
Bu hatayı nasıl çözebilirim?
-----

Bu dille anlatır ve herkesin görüşüne önem verirseniz insanlar yardım etmek için yarışa girecektir. Yeter ki tembellik etmeyin ve bütün kodları değerlendirin.
Diyelim ki her yerde konu açtınız ama bir kere bile cevap alamadınız. O zaman karşınızda 3 seçenek var, ya bu özelliği kaldıracaksınız(tavsiye etmem) ya uğraşıp kendiniz teker teker her şeyi deneyip çözeceksiniz ya da 1-2 ay sonra tekrar bakacaksınız. Son 2 seçeneği öneririm çünkü 2. seçenek sizi zora alıştırır, meyvesini sonra verir. 3. seçenek ise hem ilerlemenizi görmenize hem de sorunu daha bilgili bir halinizle çözmenize yardımcı olur.
Umarım yardımcı olmuşumdur, okuyan herkese teşekkürlerimi iletiyorum.
Sağlıcakla kalın.

Yazılıma hangi dilden başlayayım? Mantık kapıları transistörler vb. şeyleri azıcık öğrendim internette.
 
Yazılıma hangi dilden başlayayım? Mantık kapıları transistörler vb. şeyleri azıcık öğrendim internette.
Yeni konu açın, konuyu okumadığınız internette araştırmadığınızdan belli. Herkes "Python!!!" diye bağırıyor(Bazen de C#).
 
İlk önce okuduğumuzu anlamamız gerekli.

Ben mantık hatası olarak girdim konuya, mesela tanımlanmamış, ya da yanlış tipte tanımlanmış bir veriyi yanlış işleme söküp hata almayı falan sandım.

Türkçe pek kaynak yok bu programlamada. Ama Stackoverflow'da neredeyse her şeyin çözümü var.
 

Yeni konular

Geri
Yukarı