Skip to content

Commit

Permalink
convert tr site to SSG format
Browse files Browse the repository at this point in the history
  • Loading branch information
szabgab committed Nov 6, 2024
1 parent 70918ba commit 8b971eb
Show file tree
Hide file tree
Showing 14 changed files with 1,626 additions and 0 deletions.
78 changes: 78 additions & 0 deletions sites/tr/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# The URL of the site. It is used in the atom feed, the sitemap, the Open Graph meta field of each page, and the robots.txt
# No trailing slashes!
url: https://es.code-maven.com

# site_name is used in the atom feed and in the Open Graph meta field of each page
site_name: Code Maven en Español con errores gramaticales

# The source of the https://rust.code-maven.com site is in a public git repository
# using the 'main' branch.
# We wanted each page on the site to link directly to the source of that page.
# The following 3 parameters help do this.
# You can disable this feature by keeping `link_to_source` as `false`.
# You can enable this feature by putting the correct repo link and correct branch name
# and setting `link_to_source` to `true`
repo: https://github.com/szabgab/es.code-maven.com
branch: main
link_to_source: false

# Each page will have a footer as defined by the `footer` field that can contain markdown.
footer: "[Code Maven](https://code-maven.com/) en ingles"

# Each site has a /tags page generated from the tags in the individual pages.
# The following parameters set the `title` of the page and the content of the `description` meta-tag.
tags:
title: Tags
description: Articles about Foo Bar

# Each site has a /archive page generated from all the pages, except the main page (the root index.md file).
# The following parameters set the `title` of the page and the content of the `description` meta-tag.
archive:
title: Archivo
description: Archivo de este sitio

# If you have setup Google Analytics add your code here and uncomment the following field
# google_analytics: G-BLABLA


# Fields used by the email sender
# TODO: Explain the whole email sending via `sendgrid`
from:
name: Foo Bar
email: [email protected]

# On each page show the list of pages that link to the current page.
# Define the title of the section when the related pages are shown
show_related: true
related_pages_title: Otras páginas

# Each page can have an `author` field in the front-matter containing the nickname of the author.
# Here we list all the authors of the site.
# The name will be displayed on the page
# In addition there can be a folder called `authors` with makrdown files using the nicknames (so in the example it would be authors/foobar.md)
# Those file can contain information about the author that will be displayed at the bottom of each page.
# TODO: where is the image located
authors:
- name: Gabor Szabo
nickname: szabgab
picture: szabgab.png
- name: Jeffrey Thalhammer
nickname: thalhammer
picture: thalhammer.png

# The following section defines the menu. The "start" will be left-aligned the "end" will be right aligned.
# TODO: Once we implement rtl site this will probably be the other direction too
# TODO: Support also drop-down menus
navbar:
start:
- path: /
title: Casa
- path: /tags/
title: Tags
end:
- path: /archive
title: Archivo
- path: /about
title: About

# search: Resultsos de buscada
97 changes: 97 additions & 0 deletions sites/tr/pages/about.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
---
title: "About Perl Maven"
timestamp: 2013-06-02T00:10:00
published: true
translator: kbeyazli
archive: false
---

## Perl Maven sitesi kimler için?

Perl programlama dilini <b>sistem uzmanlığı</b> veya
<b>konfigürasyon yönetimi</b> amacı ile kullanan insanlar vardır.
<br />
Bazı kişiler Perl kullanarak <b>web siteleri</b> veya <b>web uygulamaları</b> geliştirirler.
Diğer bir kesim ise sadece <b>küçük scriptler</b> için Perl diline ihtiyaç duyarlar. Ya da bu şekilde olduğu söylenir.
<b>Biyoinformatik</b> veya başka
<b>bilimsel hesaplamaların</b> oluşumu için de Perl dilini kullananlar vardır.
Perl dilini <b>test otomasyonu</b> için kullananlar da bulunmaktadır.
Bu aynı zamanda benim favori ilgi alanlarimdan biri.

Perl Maven sitesi tüm bu insanlar için oluşturulmuştur. Sitenin amacı
<b>işlerinizin yapılması için size yardımcı olmaktır</b>.

<b>Perl öğrenmek</b> eğlenceli bir iştir. Birkaç saatlik okuma ile
küçük scriptler oluşturabilir ve üretken olabilirsiniz. Diğer taraftan yıllarca Perl kullanıyor olsanız bile
hala yeni şeyler keşfedebilirsiniz. Bu keşif programa dilinde veya CPAN da olabilir.
Öğrenme eğrisi düz fakat uzundur. Çok uzun.

## Bir Perl Maven nedir?

Kaynak [Wikipedia](http://en.wikipedia.org/wiki/Maven):

<b>Maven belli alanda uzmanlaşmış, bilgisini başkalarına aktarmak için arayışta olan bilgisine güvenilir uzman kişidir.</b>

Ümidim o ki sitedeki makaleleri takip eder, kitapları okur ve video derslerini izlerseniz
Perl uzmanlığınızı sürekli artıracaksınız. Kısa zamanda <b>Perl Maven olabilirsiniz</b>.

Bu site fazlaca ücretsiz makale,
ucretli birçok [Perl kitabı](/perl-books) ve [video kursu](/perl-videos),
ve [Perl Maven Pro](/pro) bircok makaleyi kapsayan abonelik içermektedir

## Perl Versiyonları

Eminim ki hangi Perl versiyonunu kullanacağımızı merak ediyorsunuz. Şimdilik Perl 5 uzerinden gidecegiz
ve Perl 6 ile alakali makaleleri baska yerde yayinlayacağiz. Cunku su an uretimde kullanilan surum Perl 5.
Perl 5 ile pragmatik olmaya çalişacağız. Daha fazla insanın kendini geliştirdigini
ve en yeni Perl sürümlerini kullandığını görmek mükemmel olsa da, gerçekçi olmak zorundayız. Birçok firmada bu olanaksız.
Çözümlerin Perl 5.8 ailesinde çalışabildigine emin olmak için denemeler yapıyoruz, ama
gerektiğinde daha yeni Perl versiyonuna yönelebiliriz.

Yeni bir Perl versiyonu kullanmanın kodunuzu nasıl geliştirdiğini ve ayni zamanda bu Perl versiyonunu
kullanma noktasına nasıl geldiğinizi göreceksiniz.

## Yardımcı Olan İnsanlar

Perl Maven sitesinin içeriğine yardımcı olan insanlar var. Özel bir sıralama olmadan asagida birkaçı listelenmistir:

* [Darin McBride](http://ca.linkedin.com/pub/darin-mcbride/32/a53/184)
* [Smylers](http://twitter.com/Smylers2)
* [Aaron Crane](http://uk.linkedin.com/in/aaroncrane)
* [Shlomi Fish](http://www.shlomifish.org/)
* Konrad Borowski (MrGlitch)
* Alexander Karelas
* Neil Hainer

<h2 id="translations">Tercümeler</h2>

Gönüllülere teşekkür ediyoruz, site birçok dile tercüme edilmektedir.
Eğer bu tercümeler için yardımcı olmak veya başka dillere tercüme yapmak istiyorsanız,
lütfen Gabor ile iletişime geçiniz.

## Tercümanlar

[meta](https://meta.perlmaven.com/) sitesine bakınız.

<h2 id="contact">İletişim bilgisi</h2>
<p>
E-mail: [email protected]

Eğer burada yayınlanan çözümler ile ilgileniyorsanız, lütfen
[haber bültenimize ](/perl-maven-newsletter) üye olun.
Yeni bir makale yayınlandığında bilgilendirileceksiniz.

## Kurucu & Şef Editör

<div class="about">
<img src="/img/szabgab.png" alt="Gabor Szabo" />
Ben [Gabor Szabo](https://szabgab.com/),
uzun zamadır Perl geliştiricisi ve eğitmeniyim.
1995 yılından beri Perl kullanıyorum, ve 2000 yılından beri tüzel sınıflarda eğitmenlik yapıyorum.
Sınıf eğitmenliği yapmayı seviyorum, ama maalesef bu ulaşabileceğim insan sayısını kısıtlıyor.
Perl programlama dilini kullanmada size yardım etmek ve problemleri çözmek için bu siteyi oluşturdum.
[Padre, Perl IDE](http://padre.perlide.org/)'nin kurucusu,
[Perl Haftalık bülteni](http://perlweekly.com/) nin mimarı
ve Perl topluğu tarafından White Camel ödülü ile ödüllendirilen kişiyim.
</div>

168 changes: 168 additions & 0 deletions sites/tr/pages/always-use-strict-and-use-warnings.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
---
title: "Perl kodunuzda her zaman use strict ve use warnings kullanın!"
timestamp: 2015-07-05T17:00:01
tags:
- strict
- warnings
published: true
original: always-use-strict-and-use-warnings
books:
- beginner
author: szabgab
translator: kbeyazli
archive: true
---


Eğer [Perl Maven Başlangıç dersleri](/beginner-perl-maven.html)
veya sınıf derslerimden Perl dilini öğrenmiş iseniz bu konuyu çoktan öğrenmişsiniz demektir.
Maalesef hala `use strict` ve `use warnings` kullanımının öneminin
farkında olmayan Perl geliştiricileri bulunmakta.


Perl'i kendi başına veya meslektaşlarından öğrenenlerin bazıları
bu 2 kullanımın önemini kavrayamıyor veya internetten rastgele örnekler bulup
kopyala-yapıştır yaptıklarından kullanmamaya meyilli oluyor.

Kullansalar bile, bunlara neden ihtiyaç duyulduğunu anlayamayabiliyorlar.

Bunun sebebi aslında açık, birçok eski ders notu ve kitaplarda
Bu 2 onemli konudan sonlara doğru bahsediliyor.
Tonlarca koda ek olarak, şirketlerde ve webde yayınlanan programlar bu 2
önemli yapı kullanılmadan yazılmış. Daha kötüsü, bu 2 yapıyı kullanmaya savaş açmış
insanlar bulunmakta çünkü bu durumu "özgürlüğün genişlemesi" olarak görüyorlar.

Küçük ekstra maliyet ya da bu araçları kullanmanın vermiş olduğu rahatsızlık
sağladıkları değerden daha ağır basar.

Kullanımı aşağıdaki gibidir.

Kodunuzun herhangi bir bölümünde <b>her zaman use strict and warnings</b>
kullanmanız iyi olacaktır

Bu özelliği sadece çok kısıtlı alanlarda veya gerçekten ekstra güce ihtiyacınız
olduğunda kapatınız.

(Kuaföre gittiğinizde kask giymeye büyük olasılıkla ihtiyacınız yoktur, değil mi?)

Zamanla nasıl ve ne zaman bu özelliği kapatacağınızı öğreneceksiniz.
Ama bir çoğumuz için bu yapıları default kullanmak iyi bir yaklaşımdır.

## strict ve warnings nedir?

Derleyiciye Perl'i daha katı derlemesi için direktif veren derleyici işaretçileridir.

Varlık sebepleri birçok ortak program hatasından kaçınmaya yardımcı olmaktır.

Ayrı bir makalede karşılaşabileceğiniz [ortak hata mesaj ve uyarılarını](/common-warnings-and-error-messages)
görebilirsiniz.

## use warnings

`-w` işaretçisini şimdiye kadar perl derleyici tanımının yapıldığı satırda
aşağıdaki gibi görmüş olabilirsiniz:
`#!/usr/bin/perl -w`.

`use warnings`, `-w` işaretçisinin "yeni" ve gelişmiş versiyonudur.
Sayısız avantajı vardır ve her perl scriptinin `-w` kullanımından
<h>warnings` kullanımına dönüştürülmesini öneriyorum.

"new" 2000 yılında 5.6 versiyonu ile Perl diline eklenmiştir.
Bu nedenle gerçekten yeni değildir, ama maalesef hala birçok Perl
geliştiricisine yenidir.

`warnings` kullanımı potansiyel bir soruna sebep olabilecek
birçok çalışma zamanı hatasını görmemizi sağlar.

Genelde uyarıları görmek iyidir fakat son kullanıcıların uygulamada
bu uyarıları görmesini istemeyiz.
Bazı durumlarda bu uyarıları düzeltmeye çalışmak son kullanıcılar
açısından istenmeyen durumların oluşmasına sebep olabilir. Boylece
son kullanıcının ürüne olan guveni sarsılabilir.

Hiç kimse uygulamayı kullanırken etrafta uçuşan her türlü "hata mesajları"nı
gerçekten görmek istemez.

Bu nedenle bazı insanlar warnings yapısının ürün ortamında (production) kullanılmaması
gerektiği yönünde tavsiyede bulunurlar. Son kullanıcılarının Perl'den
gelen bu uyarıları görmesini istemezler. Bu anlaşılabilir bir yaklaşımdır
fakat warnings yapısının istenmeyen etkilerinden kurtulmanın başka
metotları vardır.

Bu linkten görebilirsiniz [how to capture and save warnings](/how-to-capture-and-save-warnings-in-perl).

Eğer bir uyarı çalışma boyunca sürekli tetikleniyorsa "bazı" problemlere işaret ediyordur.
Kesinlikle daha dikkatli kodlama ile uyarıları en aza indirecek birisi olabilir.
Bu nedenle kesinlikle her zaman warnings kullanımını şiddetle tavsiye ediyorum.

Kodumuzda oluşan uyarıları gidermenin birçok yolunu göreceğiz.

Görebileceğiniz bazı uyarılar aşağıdadır:

* [Use of uninitialized value](/use-of-uninitialized-value)
* [Name "main::x" used only once: possible typo at ...](/name-used-only-once-possible-typo)
* ["my" variable masks earlier declaration in same scope](/my-variable-masks-earlier-declaration-in-same-scope)
* [Argument ... isn't numeric in numeric ...](/argument-isnt-numeric-in-numeric)

## use strict

Bu yapının 3 farklı özelliği vardır. Yukarıdaki gibi kullanıldığında
3 özellik birden aktif edilmiş olur. Bu önerilen kullanım şeklidir.

Bu 3 özellikten en çok görüleni her değişkenin `my` veya `our` anahtar
sözcükleri ile tanımlanmasını zorunlu kılan kullanımdır. Sadece bu özelliği aktif etmek gerektiğinde
`use strict 'vars';` şeklinde tanımlama yapılır.

Bu özellik aktif edildiğinde eğer ki yukarıda belirtildiği gibi tanımlama
yapılmaz ise aşağıdaki hata mesajı alınır:
[Global symbol requires explicit package name](/global-symbol-requires-explicit-package-name)

`use strict 'refs';` [sembolik referans](/symbolic-reference-in-perl)
ie karşılaşıldığında çalışma zamanı hatası üretir. Başka bir bölümde sembolik
referans kavramını açıklayacağız. Perl dosyamızın en başında bu özelliği kullanmış
isek ne zaman faydalı olduğunu ne nasıl kullanılması
gerektiğine değineceğiz.

`use strict "subs"` kullanımı uygunsuz [barewords](/barewords-in-perl)
kullanımını (derleme zamanında) engeller. Aşağıdaki hata mesajını oluşturur:
[Bareword not allowed while "strict subs" in use](/barewords-in-perl).

Daha basit bir ifade ile, string değişkenlerini çift veya tek tırnak içine
almanız gerekir.

```
"Foo" # iyi
'Bar' # iyi
Baz # kötü
```

## Uyarılardan kaçınmak

Uyarılardan kaçınmanın yollarından biri kodunuzu daha kurşun geçirmez
hale getirmektir. Uyarının oluşabileceği her yerde özel koşulları kontrol eden,
varsayılan değerleri atayan ya da uyarıdan kaçınmayı sağlayacak uygun kodun
çalışmasını sağlayacak daha fazla kod yazın.

Tabi bu durumda uyarıların nerede oluşacağını bildiğinizi varsayıyoruz.
Bu iyi bir egzersiz olabilir, ama daha fazla kod ve disiplin gerektirir.

Mutlaka perl ile geliştirilen bir uygulama için gerekli değildir.

Kesinlikle var olan bir uygulamanın içinde kolaylıkla yapabileceğiniz bir şey değildir.

## splain ve diagnostics

Kodumuzdan net olmayan bir uyarı aldığımızda, [use diagnostics;](/use-diagnostics-or-splain)
ifadesini kodumuza ekleyerek daha detaylı açıklama isteyebiliriz. Veya
[splain](/use-diagnostics-or-splain) komut satırı aracını kullanarak bunu yapabiliriz.

## Ölümcül uyarılar (Fatal warnings)

Aşağıdaki kullanım tüm uyarıları hataya dönüştürür.
Bu üretim (production) kodumuzda iyi bir fikir gibi gözükmeyebilir ama
geliştirme (development) kodumuzda sizi ve takımınızı uyarıları hızlıca temizlemeye zorlar.

```perl
use warnings FATAL => 'all';
```

Loading

0 comments on commit 8b971eb

Please sign in to comment.