<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>Eray Aydın</title>
    <subtitle>Scala Developer, Laravel Artisan, Free Software Fan, Archy, Linux Lover, WoW Loremaster, Junior Game Developer</subtitle>
    <link rel="self" type="application/atom+xml" href="https://era.yayd.in/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://era.yayd.in"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2024-10-21T00:00:00+00:00</updated>
    <id>https://era.yayd.in/atom.xml</id>
    <entry xml:lang="en">
        <title>2024-10-21</title>
        <published>2024-10-21T00:00:00+00:00</published>
        <updated>2024-10-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/journal/2024-10-21/"/>
        <id>https://era.yayd.in/journal/2024-10-21/</id>
        
        <content type="html" xml:base="https://era.yayd.in/journal/2024-10-21/">&lt;p&gt;Created my blog again with &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;getzola.org&quot;&gt;zola&lt;&#x2F;a&gt; and migrated old jekyll posts to the zola. I used a python script to translate them to correct format. I need to re-organize tags and categories because I use same taxonomies for tags and categories.&lt;&#x2F;p&gt;
&lt;p&gt;I’m considering using more than one language on my blog, but I’m not entirely sure because it might slow down the writing process. I can’t decide whether it should be in English or Turkish. Having some parts in English and others in Turkish makes me a bit uncomfortable. When I use only English, I feel like my productivity will decrease. Still, switching to English seems like the more logical choice.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>My PGP</title>
        <published>2024-10-21T00:00:00+00:00</published>
        <updated>2024-10-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/pgp/"/>
        <id>https://era.yayd.in/pgp/</id>
        
        <content type="html" xml:base="https://era.yayd.in/pgp/">&lt;p&gt;I primarily use &lt;abbr title=&quot;Pretty Good Privacy&quot;&gt;PGP&lt;&#x2F;abbr&gt; so others can verify the authenticity of the software I distribute. All source tarballs, Git tags and releases created by me after 21 Oct, 2024, have been signed with this key. You can also use this key to securely encrypt any sensitive emails you send to me.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;key-information&quot;&gt;Key Information&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Key Type&lt;&#x2F;strong&gt;: RSA, 4096 bits (PGPv4)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Primary User ID&lt;&#x2F;strong&gt;: Eray Aydın (&lt;a href=&quot;mailto:erayaydinn@protonmail.com&quot;&gt;erayaydinn@protonmail.com&lt;&#x2F;a&gt;)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Key Fingerprint&lt;&#x2F;strong&gt;: &lt;code&gt;B746 4249 5027 825F 59B5 2120 1ADC AE73 2A0F C5A8&lt;&#x2F;code&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Additional UIDs&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;Eray Aydın (&lt;a href=&quot;mailto:erayaydin2016@gmail.com&quot;&gt;erayaydin2016@gmail.com&lt;&#x2F;a&gt;)&lt;&#x2F;li&gt;
&lt;li&gt;Eray Aydın (&lt;a href=&quot;mailto:er@yayd.in&quot;&gt;er@yayd.in&lt;&#x2F;a&gt;)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Key Expiration&lt;&#x2F;strong&gt;: January 28, 2026&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;retrieving-my-key&quot;&gt;Retrieving My Key&lt;&#x2F;h2&gt;
&lt;p&gt;You can obtain my public key using one of the following methods:&lt;&#x2F;p&gt;
&lt;h3 id=&quot;from-a-public-key-server&quot;&gt;From a Public Key Server&lt;&#x2F;h3&gt;
&lt;p&gt;You can fetch my public key from a public key server using this command:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;sh&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-sh &quot;&gt;&lt;code class=&quot;language-sh&quot; data-lang=&quot;sh&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gpg --keyserver&lt;&#x2F;span&gt;&lt;span&gt; hkp:&#x2F;&#x2F;keyserver.ubuntu.com&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --recv-key&lt;&#x2F;span&gt;&lt;span&gt; 0xB74642495027825F59B521201ADCAE732A0FC5A8
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;direct-download-from-this-site&quot;&gt;Direct Download from This Site&lt;&#x2F;h3&gt;
&lt;p&gt;Alternatively, you can &lt;a href=&quot;&#x2F;B74642495027825F59B521201ADCAE732A0FC5A8.pub.asc&quot;&gt;download&lt;&#x2F;a&gt; my public key directly from this site and import it into GPG manually:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;sh&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-sh &quot;&gt;&lt;code class=&quot;language-sh&quot; data-lang=&quot;sh&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gpg --import&lt;&#x2F;span&gt;&lt;span&gt; B74642495027825F59B521201ADCAE732A0FC5A8.pub.asc
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;using-my-key&quot;&gt;Using My Key&lt;&#x2F;h2&gt;
&lt;p&gt;Once you’ve retrieved and verified my PGP key, you can use it to check the integrity of software I’ve signed or communicate securely.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;verifying-a-tarball&quot;&gt;Verifying a Tarball&lt;&#x2F;h3&gt;
&lt;p&gt;To verify a tarball, download both the tarball and the signature file, and place them in the same directory. Run:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;sh&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-sh &quot;&gt;&lt;code class=&quot;language-sh&quot; data-lang=&quot;sh&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gpg --verify &lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;signature_file&amp;gt;.sig &amp;lt;tarball&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Check the output to ensure the signature is valid and was made with my key.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;verify-a-git-tag&quot;&gt;Verify a Git Tag&lt;&#x2F;h3&gt;
&lt;p&gt;To verify a signed Git tag, use the following command:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;sh&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-sh &quot;&gt;&lt;code class=&quot;language-sh&quot; data-lang=&quot;sh&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span&gt; tag&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -v &lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;tag&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Verify that the signature is reported as valid and corresponds to my key.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Kotlin ve jMonkeyEngine ile Oyun Geliştirme - Tanımlar</title>
        <published>2020-03-22T05:01:53+00:00</published>
        <updated>2020-03-22T05:01:53+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/kotlin-jmonkeyengine-oyun-gelistirme-tanimlar/"/>
        <id>https://era.yayd.in/blog/kotlin-jmonkeyengine-oyun-gelistirme-tanimlar/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/kotlin-jmonkeyengine-oyun-gelistirme-tanimlar/">&lt;h1 id=&quot;kotlin-ve-jmonkeyengine-ile-oyun-gelistirme-tanimlar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kotlin-ve-jmonkeyengine-ile-oyun-gelistirme-tanimlar&quot; aria-label=&quot;Anchor link for: kotlin-ve-jmonkeyengine-ile-oyun-gelistirme-tanimlar&quot;&gt;#&lt;&#x2F;a&gt;
Kotlin ve jMonkeyEngine ile Oyun Geliştirme - Tanımlar&lt;&#x2F;h1&gt;
&lt;p&gt;Merhaba,
Bu yazı serisi içerisinde &lt;strong&gt;Kotlin&lt;&#x2F;strong&gt; ve &lt;strong&gt;jMonkeyEngine&lt;&#x2F;strong&gt; ile oyun geliştirme yöntemine bakacağız. Seri içerisinde sorunuz olursa sormaktan çekinmeyin. Sorularınızı issue olarak Github üzerinden açabilirsiniz.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Not: &lt;strong&gt;Kotlin&lt;&#x2F;strong&gt; tecrübem hiç denecek kadar azdır, bu sebeple hata yaptığım noktalar olursa şimdiden özür dilerim. Hataları Git reposunda düzelterek PR oluşturabilirsiniz :)&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Şimdi &lt;strong&gt;kısaca&lt;&#x2F;strong&gt; jMonkeyEngine, Kotlin, Gradle, Graphic Pipeline ve Scene Graph kavramlarına bakacağız.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;kotlin-nedir&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kotlin-nedir&quot; aria-label=&quot;Anchor link for: kotlin-nedir&quot;&gt;##&lt;&#x2F;a&gt;
Kotlin Nedir?&lt;&#x2F;h2&gt;
&lt;p&gt;Kotlin; statik, nesneye yönelimli özgür bir fonksiyonel programlama dilidir. Java ile birlikte çalışacak şekilde geliştirilmiştir lakin çok daha “hoş” bir syntax yapısı ile geliştirme yapmanıza olanak sağlamakta. Konsept olarak JVM için kullanılmakta olsa da artık LLVM ile mobil native ve JS için de geliştirmede kullanılmakta. Birden çok platformu desteklemesine rağmen jMonkeyEngine ile oyun geliştirirken bu seride Kotlin JVM’i kullanarak ilerleyeceğiz bu sebeple Kotlin ile gelen cross-platform özelliğini kullanmayacağız. JVM ile çalıştırdığımız için JVM’in cross-platform özelliği seri içerisinde devam etmekte.&lt;&#x2F;p&gt;
&lt;p&gt;Yararlanabileceğiniz kaynaklar:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;kotlinlang.org&#x2F;&quot;&gt;Kotlin Website&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;kotlinlang.org&#x2F;docs&#x2F;tutorials&#x2F;kotlin-for-py&#x2F;introduction.html&quot;&gt;Python tecrübesi olanlar için resmi Kotlin dersleri&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;medium.com&#x2F;@halilozel1903&#x2F;kotlin-nedir-43e312d2dca6&quot;&gt;Halil Özel’den Kotlin Nedir?&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.mobilhanem.com&#x2F;kotlin-egitimleri&#x2F;&quot;&gt;Mobil Hanem - Kotlin Eğitimi&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;jmonkeyengine-nedir&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#jmonkeyengine-nedir&quot; aria-label=&quot;Anchor link for: jmonkeyengine-nedir&quot;&gt;##&lt;&#x2F;a&gt;
jMonkeyEngine Nedir?&lt;&#x2F;h2&gt;
&lt;p&gt;jMonkeyEngine, Java ile yazılmış bir modern 3D geliştirme sağlayan bir oyun motorudur. Varsayılan olarak &lt;em&gt;LWJGL(Lightweight Java Game Library)&lt;&#x2F;em&gt; renderer paketini kullanmaktadır. Elbetteki kendi renderer paketinizi veya birbaşka 3. parti renderer paketini de kolayca enjekte edebilirsiniz. &lt;em&gt;LWJGL&lt;&#x2F;em&gt; ile OpenGL2+ sürümleri desteklenmektedir. Bu da oldukça geniş bir yelpaze demek. Alt başlıklar halinde; &lt;em&gt;jMonkeyEngineSDK&lt;&#x2F;em&gt;,  &lt;em&gt;LWJGL&lt;&#x2F;em&gt;, &lt;em&gt;Bullet Physics&lt;&#x2F;em&gt;, &lt;em&gt;NiftyGUI&lt;&#x2F;em&gt; parçalarını inceleyeceğiz.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;jMonkeyEngine&#x2F;jmonkeyengine&#x2F;releases&quot;&gt;jMonkeyEngine sürümleri ve indirme&lt;&#x2F;a&gt; (İndirme yapmanıza gerek yok, jMonkeyEngine 3 SDK ile devam edecekseniz zaten kurulu gelecektir. Bir sonraki yazıda Gradle ile inşa mekanizmasını hazırlarken de jMonkeyEngine paketini indirteceğiz.)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Yararlanabileceğiniz kaynaklar:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;jmonkeyengine.org&#x2F;&quot;&gt;jMonkeyEngine Website&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;wiki.jmonkeyengine.org&#x2F;&quot;&gt;jMonkeyEngine Wiki&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;javadoc.jmonkeyengine.org&#x2F;v3.x&#x2F;index.html&quot;&gt;JavaDoc&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;hub.jmonkeyengine.org&#x2F;&quot;&gt;Forum&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;jmonkeyengine-3-sdk-jmonkeyplatform&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#jmonkeyengine-3-sdk-jmonkeyplatform&quot; aria-label=&quot;Anchor link for: jmonkeyengine-3-sdk-jmonkeyplatform&quot;&gt;###&lt;&#x2F;a&gt;
jMonkeyEngine 3 SDK (jMonkeyPlatform)&lt;&#x2F;h3&gt;
&lt;p&gt;jMonkeyEngine 3 sürümü ile gelen &lt;code&gt;jMonkeyEngine 3 SDK&lt;&#x2F;code&gt;, Netbeans tabanlı olan bu geliştirme ortamı eklenti desteği ve grafiksel geliştirme sağlamaktadır. İçerisinde, Sahne Editörü (Scene Editor), Materyal Editörü (Material Editor), Filtreleme Editörü (Filter Editor), dahili Blender ve dahili JDK bulunmaktadır.&lt;&#x2F;p&gt;
&lt;p&gt;Seri içerisinde olabildiğince &lt;code&gt;Intellij IDEA&lt;&#x2F;code&gt; ve &lt;code&gt;jMonkeyEngine 3 SDK&lt;&#x2F;code&gt; için anlatım yapmaya çalışacağım lakin sorun oluşturabilecek noktalarda &lt;code&gt;Intellij IDEA&lt;&#x2F;code&gt; üzerinden geliştirmeye devam edeceğim. Bu seri içerisindeki anlatımları bu IDE’lerden birinden veya beğendiğiniz başka bir IDE veya metin editörü ile uygulayabilirsiniz.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;jMonkeyEngine&#x2F;sdk&#x2F;releases&#x2F;&quot;&gt;SDK Versiyonları ve İndirme (GNU&#x2F;Linux, Windows, OSX ve Kaynak&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;lwjgl-lightweight-java-game-library&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#lwjgl-lightweight-java-game-library&quot; aria-label=&quot;Anchor link for: lwjgl-lightweight-java-game-library&quot;&gt;###&lt;&#x2F;a&gt;
LWJGL (Lightweight Java Game Library)&lt;&#x2F;h3&gt;
&lt;p&gt;LWJGL, Java ile yazılmış bir oyun kütüphanesidir. Cross-platform olarak grafik (OpenGL, Vulkan), ses(OpenAL) ve paralel hesaplama(OpenCL) uygulamaları geliştirmenize yardımcı olmaktadır.&lt;&#x2F;p&gt;
&lt;p&gt;Dilerseniz geliştirmenizi LWJGL ve 3. parti yardımcı olacak paketlerle (GUI, Physic paketleri, Networking paketleri vs) yaparak daha low-level devam edebilirsiniz. Bu seri içerisindeki anlatımlar jMonkeyEngine odaklı olacağı için pek faydası olmayacaktır lakin göz atıp fikir almak da faydalı olur elbette :)&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.lwjgl.org&#x2F;&quot;&gt;Website&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.lwjgl.org&#x2F;guide&quot;&gt;Guide&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;LWJGL&#x2F;lwjgl3&#x2F;tree&#x2F;master&#x2F;modules&#x2F;samples&#x2F;src&#x2F;test&#x2F;java&#x2F;org&#x2F;lwjgl&#x2F;demo&quot;&gt;Örnekler&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;bullet-physics&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bullet-physics&quot; aria-label=&quot;Anchor link for: bullet-physics&quot;&gt;###&lt;&#x2F;a&gt;
Bullet Physics&lt;&#x2F;h3&gt;
&lt;p&gt;Bullet, C&amp;amp;C++ ile geliştirilmiş bir fizik motorudur. Çarpışma hesaplama (collision detection), hareket ve diğer fizik işlemlerini sağlayan bir pakettir.&lt;&#x2F;p&gt;
&lt;p&gt;jMonkeyEngine, jBullet (Bullet’in Java’ya göre yazılmış hali) kullanarak fizik mekaniği sağlamaktadır.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;bulletphysics&#x2F;bullet3&quot;&gt;Bullet Physics SDK&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;jbullet.advel.cz&#x2F;&quot;&gt;jBullet&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;nifty-gui&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#nifty-gui&quot; aria-label=&quot;Anchor link for: nifty-gui&quot;&gt;###&lt;&#x2F;a&gt;
Nifty GUI&lt;&#x2F;h3&gt;
&lt;p&gt;Nifty GUI, Java ile yazılmış bir GUI geliştirme paketidir. Çizim kısmında OpenGL kullanmaktadır lakin elbette bu render kısmına müdahale edip başka bir renderer wrapper yazarak injekte edebilirsiniz.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;nifty-gui&#x2F;nifty-gui&quot;&gt;Git Depo&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;gradle&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#gradle&quot; aria-label=&quot;Anchor link for: gradle&quot;&gt;##&lt;&#x2F;a&gt;
Gradle&lt;&#x2F;h2&gt;
&lt;p&gt;Java, Groovy ve Kotlin ile yazılmış bir build mekanizmasıdır. Maven’deki gibi XML yazım biçimi yerine Groovy tarzında build otomasyonu oluşturmanızı sağlar. Paketlerimizi Gradle ile belirleyip, inşa mekanizmasını kullanacağız.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;gradle.org&#x2F;&quot;&gt;Website&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;gradle&#x2F;gradle&quot;&gt;Git Depo&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;graphic-pipeline&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#graphic-pipeline&quot; aria-label=&quot;Anchor link for: graphic-pipeline&quot;&gt;##&lt;&#x2F;a&gt;
Graphic Pipeline&lt;&#x2F;h2&gt;
&lt;p&gt;3 Boyutlu bir ortamın, 2 boyutlu ekrana getirilmesindeki süreci özetleyen kavrama “Graphic Pipeline” denmektedir. Oyunumuzu 3 boyutlu ortamda geliştireceğimiz için, grafiğin hazırlanma süreci hakkında bilgi sahibi olmak da önemlidir. Özellikle daha düşük seviyeli ortamlarda (LWJGL veya direk bir grafik API kullanarak) geliştirme yapanların muhakkak bilgi sahibi olması gereken bir kavramdır. Hem yazılımsal hem de donanımsal bir süreç gerektiren bu yolculuk için herkes tarafından benimsenmiş bir yol bulunmamaktadır. Lakin, Direct3D ve OpenGL gibi grafik kütüphaneleri, donanım hızlandırması sağlamak amaçlı bu süreçlerdeki benzer adımları ortaklaştırmıştır. Yani, geliştiricinin grafik hızlandırmayı kullanması için donanıma direk müdahalesi yerine bunu soyutlayarak kullanmasını amaçlamaktadır.&lt;&#x2F;p&gt;
&lt;p&gt;Bu konuda, şu videoyu izlemenizi tavsiye ederim: &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=bgckX62f4EA&quot;&gt;thebennybox - Intro to Modern OpenGL Tutorial: Graphics Pipeline&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;h3 id=&quot;genel-yapi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#genel-yapi&quot; aria-label=&quot;Anchor link for: genel-yapi&quot;&gt;###&lt;&#x2F;a&gt;
Genel Yapı&lt;&#x2F;h3&gt;
&lt;p&gt;Genel yapıda çizimin oluşması ve ekrana gelmesi için 3 adım bulunmaktadır:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Application (Uygulama)&lt;&#x2F;li&gt;
&lt;li&gt;Geometry (Geometri)&lt;&#x2F;li&gt;
&lt;li&gt;Rasterization (Pikselleştirme)&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;h4 id=&quot;1-application-uygulama&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#1-application-uygulama&quot; aria-label=&quot;Anchor link for: 1-application-uygulama&quot;&gt;####&lt;&#x2F;a&gt;
1. Application (Uygulama)&lt;&#x2F;h4&gt;
&lt;p&gt;Uygulama tarafından hesaplanan çizimin (bütün collision hesaplaması, çizilecek nesnelerin noktası, üçgenleri vs) belirlenip pipeline’da bir sonraki adıma iletilmesidir.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;2-geometry-geometri&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#2-geometry-geometri&quot; aria-label=&quot;Anchor link for: 2-geometry-geometri&quot;&gt;####&lt;&#x2F;a&gt;
2. Geometry (Geometri)&lt;&#x2F;h4&gt;
&lt;p&gt;Geometri adımında, Model &amp;amp; Camera’nin yerleştirilmesi, ışıklandırmanın hesaplanması, projeksiyonun hesaplanması, clipping (uzak&#x2F;yakın) ve pencereye göre konumlandırılması adımları yer almaktadır.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;3-rasterization-piksellestirme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#3-rasterization-piksellestirme&quot; aria-label=&quot;Anchor link for: 3-rasterization-piksellestirme&quot;&gt;####&lt;&#x2F;a&gt;
3. Rasterization (Pikselleştirme)&lt;&#x2F;h4&gt;
&lt;p&gt;Piksel içerisindeki rengi belirleyen adımdır. Çizilecek nesnenin her bir noktası için bu pikselleştirme yapılmaktadır (eğer varsa; Fragment Shader bu adım içerisinde devreye alınmaktadır).&lt;&#x2F;p&gt;
&lt;h4 id=&quot;opengl-rendering-pipeline&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#opengl-rendering-pipeline&quot; aria-label=&quot;Anchor link for: opengl-rendering-pipeline&quot;&gt;####&lt;&#x2F;a&gt;
OpenGL Rendering Pipeline&lt;&#x2F;h4&gt;
&lt;p&gt;Örnek olarak, OpenGL’in Rendering Pipeline’ı açıklamak gerekirse;&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Vertex Spec (OpenGL)&lt;&#x2F;li&gt;
&lt;li&gt;Vertex Shader (Programcı tarafından müdahale edilebilir)&lt;&#x2F;li&gt;
&lt;li&gt;Tessellation (Opsiyonel olarak, programcı tarafından müdahale edilebilir)&lt;&#x2F;li&gt;
&lt;li&gt;Geometry Shader (Opsiyonel olarak, programcı tarafından müdahale edilebilir)&lt;&#x2F;li&gt;
&lt;li&gt;Vertex Post-Processing (OpenGL)&lt;&#x2F;li&gt;
&lt;li&gt;Primitive Assembly (OpenGL)&lt;&#x2F;li&gt;
&lt;li&gt;Rasterization (OpenGL)&lt;&#x2F;li&gt;
&lt;li&gt;Fragment Shader (Opsiyonel olarak, programcı tarafından müdahale edilebilir)&lt;&#x2F;li&gt;
&lt;li&gt;Per-Sample Ops (OpenGL)&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;Burada programcının çizimin donanımsal hızlandırma kullanması için müdahale etmesini sağlamaktadır. Vertex Shader, Geometry Shader ve Fragment Shader’ı GLSL dili ile yazarak donanıma yapması gereken işlevi söyleme işidir.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Bu konuda, şu videoyu izlemenizi tavsiye ederim: &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=bgckX62f4EA&quot;&gt;thebennybox - Intro to Modern OpenGL Tutorial: Graphics Pipeline&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;scene-graph&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#scene-graph&quot; aria-label=&quot;Anchor link for: scene-graph&quot;&gt;##&lt;&#x2F;a&gt;
Scene Graph&lt;&#x2F;h2&gt;
&lt;p&gt;jMonkeyEngine ile oyun geliştirirken bu kavramı sıkça duyacağız.  Oyunumuzu geliştirirken kurguladığımız sanal ortama &lt;strong&gt;scene graph&lt;&#x2F;strong&gt; denmektedir. Bu sanal sahnemizdeki her bir objemize de &lt;strong&gt;Spatial&lt;&#x2F;strong&gt; diyeceğiz. Bu &lt;em&gt;spatial&lt;&#x2F;em&gt; nesnelerimizin her birinde de &lt;strong&gt;translation&lt;&#x2F;strong&gt;(konum), &lt;strong&gt;rotation&lt;&#x2F;strong&gt;(baktığı yön) ve &lt;strong&gt;scale&lt;&#x2F;strong&gt;(büyüklük) bilgisi bulunacaktır. Buradaki &lt;strong&gt;translation&lt;&#x2F;strong&gt; konum, 3 boyuttan aşina olduğumuz X,Y ve Z kavramları ile belirtilmektedir.&lt;&#x2F;p&gt;
&lt;p&gt;Bu sahnemizi kurgularken farklı obje türüne ihtiyacımız olacaktır. Tahmin edebileceğiniz gibi, sahnemiz içerisinde görünmesini istediğimiz objeler olacağı gibi görünmesini istemediğimiz ve konum&#x2F;baktığı yön&#x2F;büyüklük gibi değerlerini kullanacağımız objeler de yer alacaktır. Varsayılan olarak oluşturduğumuz bi &lt;strong&gt;spatial&lt;&#x2F;strong&gt; nesneler görünmez durumdadır ve sadece bu bahsettiğim bilgileri tutmaktadır. Lakin &lt;strong&gt;Geometry&lt;&#x2F;strong&gt; türünde olan &lt;strong&gt;spatial&lt;&#x2F;strong&gt; nesneler ise, şekli olan ve görülebilir nesnelerdir. Şekillerini &lt;strong&gt;mesh&lt;&#x2F;strong&gt; ler belirtmekte ve &lt;strong&gt;material&lt;&#x2F;strong&gt; ler ile de görüntüsünü almaktadır.&lt;&#x2F;p&gt;
&lt;p&gt;Bir diğer husus da &lt;strong&gt;spatial&lt;&#x2F;strong&gt; nesnelerin yönetimi. Kurgu hazırladığımız için bir süre sonra bu nesnelerin yönetiminde zorlanabiliriz. Bu sebeple, &lt;strong&gt;node&lt;&#x2F;strong&gt; türündeki &lt;strong&gt;spatial&lt;&#x2F;strong&gt; ları kullanacağız. Hatırlarsanız, &lt;strong&gt;spatial&lt;&#x2F;strong&gt; ların belirli bir konumu oluyordu, diğer nesnelerimizi bu &lt;strong&gt;node&lt;&#x2F;strong&gt; lara yerleştireceğiz. &lt;strong&gt;node&lt;&#x2F;strong&gt; spatial’ları nested özelliğine sahip yani &lt;strong&gt;parent&lt;&#x2F;strong&gt; ve &lt;strong&gt;child&lt;&#x2F;strong&gt; node lar tanımlayabilirsiniz. Varsayılan olarak bu kurgumuzda &lt;strong&gt;base node&lt;&#x2F;strong&gt; üzerine diğer node ları ve spatial ları ekleyeceğiz.&lt;&#x2F;p&gt;
&lt;p&gt;Örnek vermek gerekirse;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;rootNode
&lt;ul&gt;
&lt;li&gt;playerNode
&lt;ul&gt;
&lt;li&gt;aimNode&lt;&#x2F;li&gt;
&lt;li&gt;armNode&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;envNode
&lt;ul&gt;
&lt;li&gt;houseNode&lt;&#x2F;li&gt;
&lt;li&gt;marketNode&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Bu konuda hazırlanan şu slayt da oldukça bilgi verici: &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;wiki.jmonkeyengine.org&#x2F;tutorials&#x2F;scenegraph&#x2F;assets&#x2F;fallback&#x2F;index.html&quot;&gt;3D Scene Graph for Dummies&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Büyük Ölçekli Projelerde Laravel Uygulaması</title>
        <published>2018-02-09T11:00:00+00:00</published>
        <updated>2018-02-09T11:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/buyuk-olcekli-projelerde-laravel-uygulamasi/"/>
        <id>https://era.yayd.in/blog/buyuk-olcekli-projelerde-laravel-uygulamasi/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/buyuk-olcekli-projelerde-laravel-uygulamasi/">&lt;p&gt;Laravel Framework ile birçok proje geliştiriyoruz. Lakin büyük çaplı yani
kalabalık projelerde Laravel üzerine geliştirmeler yapılması oldukça zor.&lt;&#x2F;p&gt;
&lt;p&gt;Birçok kesimden şu sözü duymuşsunuzdur: “&lt;strong&gt;Laravel kendi yapınızı uygulamanıza
imkan vermiyor&lt;&#x2F;strong&gt;”. Lakin durum o şekilde değil. Tasarım desenleri ile
profesyonel bir sistem geliştirdiğinizde &lt;strong&gt;Laravel&lt;&#x2F;strong&gt;’in aksine daha büyük
imkan sağladığını görüyorsunuz. Diğer bir şekilde ifade etmek gerekirse,
&lt;strong&gt;spagetti&lt;&#x2F;strong&gt; kodlamayla zaten &lt;strong&gt;tasarım desenlerine sahip&lt;&#x2F;strong&gt; bir yapı üzerine
kendi yapınızı inşa etmek mümkün değil.&lt;&#x2F;p&gt;
&lt;p&gt;Lafı daha fazla uzatmadan konuya geçmek istiyorum yalnız şu hatırlatmayı
yapmamda yarar var. Burada bahsedilen &lt;strong&gt;büyük ölçek&lt;&#x2F;strong&gt; 60-70’ten fazla &lt;em&gt;model&lt;&#x2F;em&gt;
sınıflarının olması ve yapının bir çok küçük parçadan oluşmasıdır. Yaptığınız
proje eğer &lt;strong&gt;küçük&lt;&#x2F;strong&gt; veya &lt;strong&gt;orta&lt;&#x2F;strong&gt; ölçekli ise Laravel’in kendi yapısının
üzerine çıkmanıza gerek yok. Bu sizin &lt;strong&gt;üretkenliğinizi&lt;&#x2F;strong&gt; oldukça düşürecektir.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;laravel-in-kendi-yapisi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#laravel-in-kendi-yapisi&quot; aria-label=&quot;Anchor link for: laravel-in-kendi-yapisi&quot;&gt;#&lt;&#x2F;a&gt;
Laravel’in Kendi Yapısı&lt;&#x2F;h1&gt;
&lt;p&gt;Büyük ölçekli yapıda kullanabileceğimiz desenlere geçmeden önce Laravel’in
kendi yapısını tekrar gözden geçirelim. Aşağıdaki yapı &lt;strong&gt;Laravel 5.6&lt;&#x2F;strong&gt;
sürümünden. Bu yapı hakkında kafanıza takılan bir kısım yoksa diğer konu
başlığına hızlıca geçiş yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; app
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Broadcasting
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Console
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Events
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Exceptions
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Http
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Jobs
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Listeners
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Mail
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Notifications
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Policies
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Providers
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Rules
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── User.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; bootstrap
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── app.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── cache
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; config
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; database
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── factories
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── migrations
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── seeds
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; public
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; resources
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── assets
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── lang
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── views
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; routes
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── api.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── channels.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── console.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── web.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; storage
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; vendor 
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;└──&lt;&#x2F;span&gt;&lt;span&gt; tests
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Burada belirtilen &lt;code&gt;app&lt;&#x2F;code&gt; klasörü uygulama kodlarımızın bulunduğu dizindir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;bootstrap Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Çatımızın asıl başlangıç noktasıdır. Laravel Framework’ün kendi yapısını
başlattığı ve &lt;em&gt;cache&lt;&#x2F;em&gt; klasörünü oluşturduğu kısımdır.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;config Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;İsminden de anlaşıldığı gibi ayarların tutulduğu dizindir. Ayar bilgileri bu
dizindeki dosyalardan elde edilmektedir. Gizli(Secret) bilgileri de &lt;code&gt;dotenv&lt;&#x2F;code&gt;
aracılığıyla burada sisteme dahil edilmektedir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;database Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Veritabanı yapısı ile ilgili işlemlerin tutulduğu dizindir. &lt;strong&gt;migrations&lt;&#x2F;strong&gt;,
&lt;strong&gt;factories&lt;&#x2F;strong&gt; ve &lt;strong&gt;seeds&lt;&#x2F;strong&gt; burada bulunmaktadır.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;public Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Dış isteklerin yapıldığı başlangıç noktasıdır. Ek olarak isteklerde servis
edilecek &lt;strong&gt;asset&lt;&#x2F;strong&gt; dosyaları (hazırlanmış &lt;em&gt;css&lt;&#x2F;em&gt;, &lt;em&gt;js&lt;&#x2F;em&gt;, &lt;em&gt;resim&lt;&#x2F;em&gt; dosyaları gibi)
burada tutuyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;resources Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;resources&lt;&#x2F;code&gt; dizini &lt;strong&gt;presentation&lt;&#x2F;strong&gt; yani ön tarafta kullanıcıya göstereceğimiz
verileri hazırladığımız kısımdır. &lt;strong&gt;views&lt;&#x2F;strong&gt;, &lt;strong&gt;derlenecek asset dosyaları&lt;&#x2F;strong&gt; ve
dil dosyaları örneğin burada tutulur.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;routes Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;routes&lt;&#x2F;code&gt; dizini içerisinde herhangi bir ortamdan gelen isteğin nerede
karşılık bulunduracağını belirtiriz. Burada ortamdan kasıt, &lt;strong&gt;web&lt;&#x2F;strong&gt; isteği
olabildiği gibi &lt;strong&gt;websocket&lt;&#x2F;strong&gt; istekleri de olabilir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;storage Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;storage&lt;&#x2F;code&gt; dizini içerisinde isminden de anlaşılabildiği gibi saklamak
istediğimiz dosyaları tutmaktayız. Bunların içerisinde &lt;strong&gt;framework&lt;&#x2F;strong&gt; tarafından
hazırlanan dosyalar(örneğin &lt;em&gt;log&lt;&#x2F;em&gt;) olduğu gibi kendimizin de tutmak istediği
dosyalar(örneğin bir müzik sitesi için &lt;em&gt;müzik dosyaları&lt;&#x2F;em&gt;) da olabilir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;tests Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;PHPUnit ile çalıştırmak istediğimiz testleri bu dizin içerisinde oluşturuyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;vendor Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Composer bağımlılıklarımızın tutulduğu dizin.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Broadcasting Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Örneğin &lt;strong&gt;Websocket&lt;&#x2F;strong&gt; üzerinden yaptığımız gerçek zamanlı istekler&#x2F;etkinlikler
burada kontrol altında tutulmaktadır.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Console Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Artisan için oluşturduğunuz komutların tutulduğu dizindir. Bu komutlar tek
seferlik işlemlerde kullanılabileceği gibi &lt;strong&gt;schedule&lt;&#x2F;strong&gt; hazırladığınız zamanlı
görevler de olabilir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Events Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Herhangi bir olay durumunda yaptırmak istediğiniz işlemleri tanımladığınız
sınıfları tutan dizindir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Exceptions Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Uygulamaya özel oluşturduğunuz hata sınıflarını oluşturduğunuz dizindir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Http Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;HTTP istekleriyle ilgili yapılması gerekenleri tutan dizindir. &lt;strong&gt;Controller&lt;&#x2F;strong&gt;,
&lt;strong&gt;Middleware&lt;&#x2F;strong&gt; ve &lt;strong&gt;Requests&lt;&#x2F;strong&gt; burada tutulur.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Jobs Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Senkron veya Asenkron olarak tanımladığımız &lt;strong&gt;iş&lt;&#x2F;strong&gt;leri burada tutmaktayız.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Listeners Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Oluşturduğunuz &lt;strong&gt;Event&lt;&#x2F;strong&gt;ler sonucunda yapılması gereken işlemleri burada
tanımlamaktasınız. Örneğin &lt;code&gt;UserLicenseFinished&lt;&#x2F;code&gt; etkinliği(event) sonucunda
&lt;code&gt;TerminateUser&lt;&#x2F;code&gt; ve &lt;code&gt;SendTerminatedUserEmail&lt;&#x2F;code&gt; listenerlarını burada
oluşturabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Mail Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Uygulama tarafından gönderilecek e-postaları inşa edecek sınıfları bu dizinde
tutmaktayız.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Notifications Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Çeşitli bildirim gönderme ortamları(SMS, E-Posta ve Slack gibi) için
bildirimleri inşa ettiğimiz sınıfları oluşturduğumuz dizindir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Policies Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Herhangi bir işlem için (Örneğin giriş veya api isteği) izin kontrol
sınıflarını oluşturduğunuz dizindir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Providers Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;ServiceProvider&lt;&#x2F;strong&gt;ları tanımladığınız dizindir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;app&#x2F;Rules Dizini&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Validate etmek istediğiniz veriler için oluşturduğunuz sınıfları tutan
dizindir.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;biraz-daha-serbest&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#biraz-daha-serbest&quot; aria-label=&quot;Anchor link for: biraz-daha-serbest&quot;&gt;#&lt;&#x2F;a&gt;
Biraz Daha Serbest&lt;&#x2F;h1&gt;
&lt;p&gt;Orta ölçekli bir projede bu yapının üzerine ufak değişiklikler elbetteki
yapıyoruz. Örneğin &lt;strong&gt;Models&lt;&#x2F;strong&gt; isminde bir &lt;strong&gt;namespace&lt;&#x2F;strong&gt; üzerinde model
sınıfları ayrı bir şekilde tutuyoruz. Ek olarak &lt;strong&gt;Repositories&lt;&#x2F;strong&gt; ve
&lt;strong&gt;Services&lt;&#x2F;strong&gt; de ekliyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Repository Pattern&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Repository desenini tek bir makalede incelemek haksızlık olacaktır. Temel
anlamda &lt;strong&gt;veri üzerinde işlem yapan kısım&lt;&#x2F;strong&gt; ile &lt;strong&gt;veriye erişen kısmın&lt;&#x2F;strong&gt;
ayrılması diyebiliriz.&lt;&#x2F;p&gt;
&lt;p&gt;Buradaki &lt;strong&gt;Services&lt;&#x2F;strong&gt; kısmı ise &lt;strong&gt;Repository&lt;&#x2F;strong&gt; ile haberleşen kısmın da
&lt;strong&gt;uygulama katmanından&lt;&#x2F;strong&gt; ayıran kısımdır. Bir örnek ile ilerlemek daha iyi
olacaktır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;namespace App&#x2F;Repositories;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;interface UserInterface {
&lt;&#x2F;span&gt;&lt;span&gt;  public function getUserById($userId);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;  public function getUserByUsername($username);
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;namespace App&#x2F;Repositories;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;class UserRepository implements UserInterface {
&lt;&#x2F;span&gt;&lt;span&gt;  protected $model;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;  public function __construct(Model $model) {
&lt;&#x2F;span&gt;&lt;span&gt;    $this-&amp;gt;model = $model;
&lt;&#x2F;span&gt;&lt;span&gt;  }
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;  public function getUserById($userId) {
&lt;&#x2F;span&gt;&lt;span&gt;    return $this-&amp;gt;model-&amp;gt;find($userId);
&lt;&#x2F;span&gt;&lt;span&gt;  }
&lt;&#x2F;span&gt;&lt;span&gt;  
&lt;&#x2F;span&gt;&lt;span&gt;  public function getUserByUsername($username) {
&lt;&#x2F;span&gt;&lt;span&gt;    return $this-&amp;gt;model-&amp;gt;where(&amp;#39;username&amp;#39;, strtolower($username))-&amp;gt;first();
&lt;&#x2F;span&gt;&lt;span&gt;  }
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;namespace App&#x2F;Services;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;class UserService {
&lt;&#x2F;span&gt;&lt;span&gt;  protected $repository;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;  public function __construct(UserInterface $repository){
&lt;&#x2F;span&gt;&lt;span&gt;    $this-&amp;gt;repository = $repository;
&lt;&#x2F;span&gt;&lt;span&gt;  }
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;  public function getUser($user) {
&lt;&#x2F;span&gt;&lt;span&gt;    if(is_numeric($user))
&lt;&#x2F;span&gt;&lt;span&gt;       return $this-&amp;gt;repository-&amp;gt;getUserById($user);
&lt;&#x2F;span&gt;&lt;span&gt;    else
&lt;&#x2F;span&gt;&lt;span&gt;       return $this-&amp;gt;repository-&amp;gt;getUserByUsername($user); 
&lt;&#x2F;span&gt;&lt;span&gt;  }
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu örnek yapıda &lt;strong&gt;Service&lt;&#x2F;strong&gt; ve &lt;strong&gt;Repository&lt;&#x2F;strong&gt; kullanmış olduk. (Yapının
çalışması için iki yapı için de &lt;strong&gt;ServiceProvider&lt;&#x2F;strong&gt; sınıflarını hazırlamanız
gerekmektedir.)&lt;&#x2F;p&gt;
&lt;p&gt;Bu yapıda hiçbir sorun yok. Oldukça organize ve güzel bir yapı çıkmış oluyor.
Lakin belirttiğim gibi &lt;strong&gt;orta&lt;&#x2F;strong&gt; ölçekli proje için uygun olacaktır. &lt;strong&gt;Büyük&lt;&#x2F;strong&gt;
ölçekli projede bu yapı hayat kurtarmayacaktır.&lt;&#x2F;p&gt;
&lt;p&gt;Örneğin bu yapının sonunda &lt;strong&gt;Models&lt;&#x2F;strong&gt; dizinimize bakalım:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; AklimaBaskaModelGelmedi.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; AnotherAnotherModel.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; AnotherModel.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; Comment.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; Gallery.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; Like.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; Note.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; Photo.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; Profile.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; Transaction.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;└──&lt;&#x2F;span&gt;&lt;span&gt; User.php
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Uygulamamız üzerine eklediğimiz modüllerle bu Models dizini oldukça
büyüyecektir. Bir alternatif olarak bu modülleri ayrı &lt;strong&gt;namespace&lt;&#x2F;strong&gt; üzerinde
tutabilirsiniz. Lakin bir süre sonra bu da kurtarmayacaktır.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;aklima-bir-seyler-geliyor-ama&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#aklima-bir-seyler-geliyor-ama&quot; aria-label=&quot;Anchor link for: aklima-bir-seyler-geliyor-ama&quot;&gt;#&lt;&#x2F;a&gt;
Aklıma Bir Şeyler Geliyor Ama?&lt;&#x2F;h1&gt;
&lt;p&gt;Bu aşamada aklınıza gelen yol büyük ihtimal, “&lt;strong&gt;Hadi o zaman projeyi
microservislere ayıralım&lt;&#x2F;strong&gt;” olacaktır. Lakin bu iş o kadar kolay değil.
Oluşturduğumuz büyük ölçekli yapıyı küçük küçük parçalara ayırmak oldukça
zahmetli olacaktır. Temel olarak uygulayacağınız yol şu olur büyük ihtimal;
Bir parçayı al ufak bir mikroservis uygulaması haline getir (apayrı bir proje
olmuş oldu) ve uygulama üzerindeki projede gelen isteği bu mikroservise
yönlendir. Bütün bu uğraş sonucunda da kazandığınız (!) sorunlar:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Herhangi bir değişiklikte hata yapmanız muhtemel&lt;&#x2F;li&gt;
&lt;li&gt;Yeni bir geliştirici anlamakta çok fazla zorlanacak ve ayrı ayrı parçalara
bakmak zorunda kalacak.&lt;&#x2F;li&gt;
&lt;li&gt;Çok fazla dosya&lt;&#x2F;li&gt;
&lt;li&gt;Yeniden bir çözüm arayışı&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h1 id=&quot;bir-secenek-daha-var-o-da-domain-driven-design-mi-dersin&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bir-secenek-daha-var-o-da-domain-driven-design-mi-dersin&quot; aria-label=&quot;Anchor link for: bir-secenek-daha-var-o-da-domain-driven-design-mi-dersin&quot;&gt;#&lt;&#x2F;a&gt;
Bir Seçenek Daha Var O da “Domain Driven Design” Mı Dersin?&lt;&#x2F;h1&gt;
&lt;p&gt;Elbette tek bir çözüm yolu yok. Yukarda bahsettiğim yapıları daha da
geliştirebilir veya &lt;strong&gt;HMVC&lt;&#x2F;strong&gt; yapısına geçiş yapabilirsiniz. Her desenin
&lt;strong&gt;+&lt;&#x2F;strong&gt; ve &lt;strong&gt;-&lt;&#x2F;strong&gt; leri var.&lt;&#x2F;p&gt;
&lt;p&gt;DDD’yi özetlemek gerekirse:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Application&lt;&#x2F;strong&gt; yani uygulama: Controller, Middleware, Route&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Domain&lt;&#x2F;strong&gt; yani ana işi yapan işlev: Model, Repository, Policy vs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Infrastructure&lt;&#x2F;strong&gt; yani servisler: Email, Notification, Logging vs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Interface&lt;&#x2F;strong&gt; yani görünüş, gözüken kısım: Views, Lang, Assets nam-ı diğer
Resources&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Peki bu yapıda örnek Laravel dizini nasıl olabilir:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; app 
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Account (Domain)
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── AccessControlLists.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Auth.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Console
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Jobs
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Listeners
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Repositories
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Models
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   └── Validators
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Http (Application)
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Infrastructure
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Events
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   └── Exceptions
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Gallery (Domain)
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── Post (Domain)
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; bootstrap
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── app.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── cache
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; config
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; database
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── factories
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── migrations
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── seeds
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; public
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; resources (Interface) 
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── assets
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── lang
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── views
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; routes
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── api.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── channels.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── console.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── web.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; storage
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; vendor 
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;└──&lt;&#x2F;span&gt;&lt;span&gt; tests
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Fark edebileceğiniz üzere DDD’de sadece &lt;strong&gt;namespace&lt;&#x2F;strong&gt; eklemekten başka bir
durum yok.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;sen-pala-vere-birak-sonuc-goster&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sen-pala-vere-birak-sonuc-goster&quot; aria-label=&quot;Anchor link for: sen-pala-vere-birak-sonuc-goster&quot;&gt;#&lt;&#x2F;a&gt;
Sen Pala Vere Bırak Sonuç Göster&lt;&#x2F;h1&gt;
&lt;p&gt;Sonuç yapıyı göstermek istersek şöyle bir yapı uygun olacaktır:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; app
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Account
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── AccessControlLists.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Auth.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Console
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Events
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Exceptions
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Jobs
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Listeners
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Models
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Repositories
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   └── Validators
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Gallery
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Http
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Controllers
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   └── Middleware
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Post
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── Providers
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; bootstrap
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── app.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── cache
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; config
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; database
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── factories
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── migrations
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── seeds
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; public
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; resources
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── assets
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── lang
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── views
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; routes
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── api.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── channels.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── console.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── web.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; storage
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; vendor 
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;└──&lt;&#x2F;span&gt;&lt;span&gt; tests
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Elbette çok büyük ölçekte bir Laravel Uygulamasında bu yapı da yeterli
olmayacaktır.&lt;&#x2F;p&gt;
&lt;p&gt;Şimdi bir senaryo kuralım. Projemizde &lt;strong&gt;Authentication&lt;&#x2F;strong&gt; kısmı &lt;em&gt;mikroservis&lt;&#x2F;em&gt;
yapılması gerektiği ile ilgili bir karar alındı. Bu durumda bu yapıdaki bir
projede tek yapılması gereken &lt;code&gt;Account&lt;&#x2F;code&gt; (domain) dizininin mikroservis olarak
ayrılması. Komple bir değişiklik yapmaya gerek kalmadan sadece o modülü
mikroservis çok rahat yapabiliriz. Çünkü domain dışındaki diğer tüm sınıflar
&lt;code&gt;AccessControlLists&lt;&#x2F;code&gt; ve &lt;code&gt;Auth&lt;&#x2F;code&gt; sınıflarını biliyor ve kullanıyor. Bunları
tutmak yeterli olacaktır. Mikroservisi hazırladıktan sonra ana projemizdeki
dizin yapısı şu şekilde olacaktır:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; app
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Account
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── AccessControlLists.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   └── Auth.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Gallery
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Http
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   ├── Controllers
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   │   └── Middleware
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── Post
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── Providers
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; bootstrap
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── app.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── cache
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; config
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; database
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── factories
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── migrations
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── seeds
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; public
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; resources
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── assets
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── lang
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── views
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; routes
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── api.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── channels.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   ├── console.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;│&lt;&#x2F;span&gt;&lt;span&gt;   └── web.php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; storage
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├──&lt;&#x2F;span&gt;&lt;span&gt; vendor 
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;└──&lt;&#x2F;span&gt;&lt;span&gt; tests
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Gördüğünüz gibi &lt;strong&gt;uygulama kodlarımız&lt;&#x2F;strong&gt; içerisinde bir değişiklik yapmadan
modül olarak ayırmış ve mikroservis haline getirmiş olduk. Buradaki
&lt;code&gt;AccessControlLists&lt;&#x2F;code&gt; ve &lt;code&gt;Auth&lt;&#x2F;code&gt; mikroservisimizle haberleşecektir.&lt;&#x2F;p&gt;
&lt;p&gt;Dikkat edilmesi gereken kısım ise, bu gibi senaryolara sahip olabileceğimiz
için &lt;strong&gt;Domain&lt;&#x2F;strong&gt; içerisindeki haberleşen &lt;code&gt;Service&lt;&#x2F;code&gt; sınıflarımızın temel veri
türlerini kullanması gerektiğidir. Örneğin, &lt;code&gt;array&lt;&#x2F;code&gt;, &lt;code&gt;string&lt;&#x2F;code&gt;, &lt;code&gt;int&lt;&#x2F;code&gt; ve
&lt;code&gt;boolean&lt;&#x2F;code&gt; gibi. Herhangi bir sınıf belirtmeniz ayırma işlemi sonucunda sorun
çıkartacaktır. Çünkü o sınıfı tanımıyor ve bilmiyor olacaktır.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;bitis&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bitis&quot; aria-label=&quot;Anchor link for: bitis&quot;&gt;#&lt;&#x2F;a&gt;
Bitiş&lt;&#x2F;h1&gt;
&lt;p&gt;Yazı içerisinde elbetteki yanlışlarım olmuş olabilir. Yazıyı düzenleyerek
hataları gidererek daha iyi bir makale haline getirebiliriz. Eklenmesini
istediğiniz kısımları da yine aynı şekilde düzenleyerek &lt;strong&gt;pull request&lt;&#x2F;strong&gt;
atabilirsiniz.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Pass ile Kendinize Özel Parola Yöneticinizi Yapın</title>
        <published>2018-02-09T09:00:00+00:00</published>
        <updated>2018-02-09T09:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/pass-kendinize-ozel-parola-yoneticisi/"/>
        <id>https://era.yayd.in/blog/pass-kendinize-ozel-parola-yoneticisi/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/pass-kendinize-ozel-parola-yoneticisi/">&lt;h1 id=&quot;pass-nedir&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#pass-nedir&quot; aria-label=&quot;Anchor link for: pass-nedir&quot;&gt;#&lt;&#x2F;a&gt;
Pass Nedir?&lt;&#x2F;h1&gt;
&lt;p&gt;&lt;code&gt;pass&lt;&#x2F;code&gt; yazılımı komut arayüzünde çalışan basit bir parola yöneticisidir. &lt;code&gt;git&lt;&#x2F;code&gt;
ve &lt;code&gt;tree&lt;&#x2F;code&gt; araçlarını kullanarak yazılmış bir &lt;code&gt;shell&lt;&#x2F;code&gt; kodlamasıdır. Bu sebeple
kullanımı ve geliştirilmesi oldukça kolaydır.&lt;&#x2F;p&gt;
&lt;p&gt;Bu yazı içerisinde &lt;strong&gt;Arch Linux&lt;&#x2F;strong&gt;, &lt;strong&gt;Android&lt;&#x2F;strong&gt; ve &lt;strong&gt;Windows&lt;&#x2F;strong&gt; ortamlarında
nasıl kurulumu yapıldığını ek olarak &lt;strong&gt;Chromium&lt;&#x2F;strong&gt;, &lt;strong&gt;Chrome&lt;&#x2F;strong&gt; ve &lt;strong&gt;Firefox&lt;&#x2F;strong&gt;
üzerinde nasıl entegrasyonu yapılabileceğini örnekledim.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;arch-linux-uzerinde-pass-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#arch-linux-uzerinde-pass-kurulumu&quot; aria-label=&quot;Anchor link for: arch-linux-uzerinde-pass-kurulumu&quot;&gt;#&lt;&#x2F;a&gt;
Arch Linux Üzerinde Pass Kurulumu&lt;&#x2F;h1&gt;
&lt;p&gt;Arch Linux üzerinde kurulumu yapmak için &lt;code&gt;pass&lt;&#x2F;code&gt; paketini yüklemeniz yeterlidir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pacman&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -Sy&lt;&#x2F;span&gt;&lt;span&gt; pass
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ek olarak, grafik arayüzü istiyorsanız &lt;code&gt;qtpass&lt;&#x2F;code&gt; paketini de yükleyebilirsiniz.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;kullanimi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kullanimi&quot; aria-label=&quot;Anchor link for: kullanimi&quot;&gt;#&lt;&#x2F;a&gt;
Kullanımı&lt;&#x2F;h1&gt;
&lt;p&gt;Bir parola yöneticisi kullanacağımız için güvenliğinin sağlanması gerekiyor. Bu
sebeple &lt;strong&gt;GnuPG&lt;&#x2F;strong&gt; ile kendinize bir anahtar dizisi oluşturmanız gerekli.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;gnupg-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#gnupg-kurulumu&quot; aria-label=&quot;Anchor link for: gnupg-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
GnuPG Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Arch Linux üzerinde &lt;code&gt;gnupg&lt;&#x2F;code&gt; paketini yüklemeniz gereklidir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pacman&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -Sy&lt;&#x2F;span&gt;&lt;span&gt; gnupg
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından kendinize bir anahtar dizisi oluşturmalısınız.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; gpg&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --full-gen-key
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;password-store-olusturulmasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#password-store-olusturulmasi&quot; aria-label=&quot;Anchor link for: password-store-olusturulmasi&quot;&gt;##&lt;&#x2F;a&gt;
Password Store Oluşturulması&lt;&#x2F;h2&gt;
&lt;p&gt;Arch Linux üzerinde &lt;code&gt;pass&lt;&#x2F;code&gt; kullanarak kendimize ait bir dizin oluşturacağız.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass init &amp;lt;gpg-id&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Artık &lt;code&gt;pass&lt;&#x2F;code&gt; üzerinde parolalarımızı tutabiliriz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;yeni-bir-parola-kayit-etme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#yeni-bir-parola-kayit-etme&quot; aria-label=&quot;Anchor link for: yeni-bir-parola-kayit-etme&quot;&gt;##&lt;&#x2F;a&gt;
Yeni Bir Parola Kayıt Etme&lt;&#x2F;h2&gt;
&lt;p&gt;Burada hali hazırda olan bir parolayı kayıt olarak eklemek için kullanıyoruz.
Yani program otomatik olarak parola üretmek yerine sizden parola girişi
bekleyecektir.&lt;&#x2F;p&gt;
&lt;p&gt;Bir kayıt girerken hiyerarşik olarak isimlendirme yapmalısınız. Örneğin
gmail.com üzerinde pass@gmail.com isimli bir kayıt oluşturacaksınız. Bu kayıtın
ismi &lt;code&gt;gmail.com&#x2F;pass@gmail.com&lt;&#x2F;code&gt; olmalıdır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass insert gmail.com&#x2F;pass@gmail.com
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;yeni-bir-parola-olusturma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#yeni-bir-parola-olusturma&quot; aria-label=&quot;Anchor link for: yeni-bir-parola-olusturma&quot;&gt;##&lt;&#x2F;a&gt;
Yeni Bir Parola Oluşturma&lt;&#x2F;h2&gt;
&lt;p&gt;Burada ise parola &lt;code&gt;pass&lt;&#x2F;code&gt; tarafından otomatik oluşturulacaktır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass generate gmail.com&#x2F;pass2@gmail.com
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;The&lt;&#x2F;span&gt;&lt;span&gt; generated password for pass2@gmail.com is:
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;0iV1!?{4u&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;8I#F&amp;amp;8=34!JS{S]
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Otomatik parola oluştururken dilerseniz uzunluk da verebilirsiniz. Bunun için
kayıt isminden sonra sayıyı girmeniz yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass generate gmail.com&#x2F;pass3@gmail.com 6
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;The&lt;&#x2F;span&gt;&lt;span&gt; generated password for gmail.com&#x2F;pass3@gmail.com is:
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;D0&#x2F;+qh
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ek olarak, bazı website ve yazılımlarda semboller kabul edilmemekte. Bu
sebeple oluştururken dilerseniz sembol kullanmamasını isteyebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass generate&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --no-symbols&lt;&#x2F;span&gt;&lt;span&gt; gmail.com&#x2F;pass4@gmail.com
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;The&lt;&#x2F;span&gt;&lt;span&gt; generated password for gmail.com&#x2F;pass4@gmail.com is:
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;zyT0XpJkmA0k7KfmdN4gVorY5
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;kayitli-parola-listesini-goruntuleme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kayitli-parola-listesini-goruntuleme&quot; aria-label=&quot;Anchor link for: kayitli-parola-listesini-goruntuleme&quot;&gt;##&lt;&#x2F;a&gt;
Kayıtlı Parola Listesini Görüntüleme&lt;&#x2F;h2&gt;
&lt;p&gt;Kayıtlı parolarınızı görüntülemek için &lt;strong&gt;GPG&lt;&#x2F;strong&gt; anahtarınızı girmenize gerek
yoktur. Lakin bu kayıttaki parolayı görmek için bu anahtara ihtiyacımız olacak.
Bu konu bir sonraki başlıkta.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Password&lt;&#x2F;span&gt;&lt;span&gt; Store
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;└──&lt;&#x2F;span&gt;&lt;span&gt; gmail.com
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;└──&lt;&#x2F;span&gt;&lt;span&gt; pass@gmail.com
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;bir-kayittaki-parolayi-alma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bir-kayittaki-parolayi-alma&quot; aria-label=&quot;Anchor link for: bir-kayittaki-parolayi-alma&quot;&gt;##&lt;&#x2F;a&gt;
Bir Kayıttaki Parolayı Alma&lt;&#x2F;h2&gt;
&lt;p&gt;Kayıttaki parolayı almak için kayıt ismini girmeniz yeterli. Komut sonrası
sizden &lt;strong&gt;GnuPG&lt;&#x2F;strong&gt; parola isteyecektir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass gmail.com&#x2F;pass@gmail.com
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;0iV1!?{4u&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;8I#F&amp;amp;8=34!JS{S]
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu parolayı komut kısmından almak yerine &lt;code&gt;xclip&lt;&#x2F;code&gt; yüklüyse direk kopyalanmış
olarak alabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -c&lt;&#x2F;span&gt;&lt;span&gt; gmail.com&#x2F;pass@gmail.com
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Copied&lt;&#x2F;span&gt;&lt;span&gt; gmail.com&#x2F;pass@gmail.com to clipboard. Will clear in 45 seconds.
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;kayit-menusu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kayit-menusu&quot; aria-label=&quot;Anchor link for: kayit-menusu&quot;&gt;##&lt;&#x2F;a&gt;
Kayıt Menüsü&lt;&#x2F;h2&gt;
&lt;p&gt;Sisteminizde &lt;code&gt;dmenu&lt;&#x2F;code&gt; kuruluysa kayıtlara ekranda menü aracılığıyla da
ulaşabilirsiniz. Bunun için &lt;code&gt;passmenu&lt;&#x2F;code&gt; çalıştırmanız yeterlidir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; passmenu
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;git-entegrasyonu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#git-entegrasyonu&quot; aria-label=&quot;Anchor link for: git-entegrasyonu&quot;&gt;##&lt;&#x2F;a&gt;
Git Entegrasyonu&lt;&#x2F;h2&gt;
&lt;p&gt;Parola kayıtlarınızı diğer cihazlarınızla paylaşmak için ve versiyon kontrolü
ile güvenli bir şekilde tutmak için &lt;strong&gt;git&lt;&#x2F;strong&gt; kullanabilirsiniz. &lt;code&gt;pass git&lt;&#x2F;code&gt;
komutundan sonra verdiğiniz tüm komutlar &lt;code&gt;git&lt;&#x2F;code&gt; ile &lt;code&gt;pass&lt;&#x2F;code&gt; ın bulunduğu dizinde
gerçekleşecektir.&lt;&#x2F;p&gt;
&lt;p&gt;Öncelike depoyu oluşturalım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass git init
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından oluşturduğumuz bir &lt;code&gt;git&lt;&#x2F;code&gt; deposunu origin olarak ekleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; pass git remote add origin &amp;lt;git-adres&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Sistemdeki değişiklikleri iletmek istediğinizde de &lt;code&gt;push&lt;&#x2F;code&gt; yapmanız yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; git push&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -u --all
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Başka bir sistemde yaptığınız ve gönderdiğiniz değişiklikleri &lt;code&gt;pull&lt;&#x2F;code&gt; ile
alabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; git pull
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h1 id=&quot;android-cihazinizda-kayitlara-erisin&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#android-cihazinizda-kayitlara-erisin&quot; aria-label=&quot;Anchor link for: android-cihazinizda-kayitlara-erisin&quot;&gt;#&lt;&#x2F;a&gt;
Android Cihazınızda Kayıtlara Erişin&lt;&#x2F;h1&gt;
&lt;h2 id=&quot;openkeychain&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#openkeychain&quot; aria-label=&quot;Anchor link for: openkeychain&quot;&gt;##&lt;&#x2F;a&gt;
OpenKeychain&lt;&#x2F;h2&gt;
&lt;p&gt;Android cihazınızda parolalara erişmek için öncelikle &lt;strong&gt;GnuPG&lt;&#x2F;strong&gt; anahtarınızı
kullanabiliyor olmanız gerekiyor. Bunun için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;play.google.com&#x2F;store&#x2F;apps&#x2F;details?id=org.sufficientlysecure.keychain&amp;amp;hl=en&quot;&gt;&lt;strong&gt;OpenKeychain&lt;&#x2F;strong&gt;&lt;&#x2F;a&gt; isimli Android
programını kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;OpenKeychain&lt;&#x2F;strong&gt; uygulamasına ekleyeceğiniz &lt;strong&gt;GPG&lt;&#x2F;strong&gt; anahtarını aşağıdaki komut
ile kurulumu yaptığınız sistem üzerinde alabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;$ gpg --export-secret-key &amp;lt;gpg-id&amp;gt; &amp;gt; keys.asc
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından bu dosyayı &lt;strong&gt;android&lt;&#x2F;strong&gt; cihazınıza taşıyarak &lt;strong&gt;OpenKeychain&lt;&#x2F;strong&gt; üzerinde
ekleyin.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;password-store&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#password-store&quot; aria-label=&quot;Anchor link for: password-store&quot;&gt;##&lt;&#x2F;a&gt;
Password Store&lt;&#x2F;h2&gt;
&lt;p&gt;Password Store android uygulamasına dilerseniz &lt;em&gt;play store&lt;&#x2F;em&gt; üzerinden
erişebilirsiniz lakin &lt;strong&gt;F-Droid&lt;&#x2F;strong&gt; üzerinden kurulum daha sağlıklı ve güncel
olacaktır.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;f-droid.org&#x2F;FDroid.apk&quot;&gt;F-Droid&lt;&#x2F;a&gt; apk dosyasını android cihazınıza
yükleyin. Ardından &lt;strong&gt;F-Droid&lt;&#x2F;strong&gt; üzerinden &lt;strong&gt;Password Store&lt;&#x2F;strong&gt; uygulamasını
yükleyin.&lt;&#x2F;p&gt;
&lt;p&gt;Dilerseniz &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;f-droid.org&#x2F;repo&#x2F;com.zeapo.pwdstore_93.apk&quot;&gt;buradan&lt;&#x2F;a&gt; da
direk Password Store apk dosyasını indirebilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Password Store uygulamasında ayarlar kısmında &lt;strong&gt;Select OpenPGP Provider&lt;&#x2F;strong&gt; bölümünde &lt;strong&gt;OpenKeychain&lt;&#x2F;strong&gt;’in seçili olduğundan emin olun.&lt;&#x2F;p&gt;
&lt;p&gt;Password Store uygulamasındaki ayarlar kısmından öncelike &lt;strong&gt;Generate SSH key pair&lt;&#x2F;strong&gt; ile bir SSH anahtarı üretmeniz gerekmekte. Ardından yine aynı menüde bulunan &lt;strong&gt;View generated public SSH key&lt;&#x2F;strong&gt; ile oluşturduğunuz anahtarın public anahtarını alın. Bu anahtarı &lt;strong&gt;git&lt;&#x2F;strong&gt; sunucunuzda yetki vermek için kullanmalısınız.&lt;&#x2F;p&gt;
&lt;p&gt;Son olarak &lt;strong&gt;git server settings&lt;&#x2F;strong&gt; kısmından git sunucunuzu tanımlayın ve senkronizasyon işlemi yapın.&lt;&#x2F;p&gt;
&lt;p&gt;Artık uygulama üzerinde &lt;code&gt;pull&lt;&#x2F;code&gt; ve &lt;code&gt;push&lt;&#x2F;code&gt; yapabilirsiniz. Yani iki ortamda da
kayıtlara erişebilir ve yeni kayıt ekleyebilirsiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;firefox-uzerinde-pass&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#firefox-uzerinde-pass&quot; aria-label=&quot;Anchor link for: firefox-uzerinde-pass&quot;&gt;##&lt;&#x2F;a&gt;
Firefox Üzerinde Pass&lt;&#x2F;h2&gt;
&lt;p&gt;Firefox tarayıcısını kullanmadığım için detaylı bilgim yok. İşlemi yapan arkadaşlar yazıyı &lt;strong&gt;github&lt;&#x2F;strong&gt; üzerinde düzenleyerek &lt;strong&gt;pull request&lt;&#x2F;strong&gt; gönderirse sevinirim.&lt;&#x2F;p&gt;
&lt;p&gt;Kullanılması gereken &lt;strong&gt;extension&lt;&#x2F;strong&gt; &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;jvenant&#x2F;passff#readme&quot;&gt;burada&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;chrome-chromium&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#chrome-chromium&quot; aria-label=&quot;Anchor link for: chrome-chromium&quot;&gt;##&lt;&#x2F;a&gt;
Chrome &#x2F; Chromium&lt;&#x2F;h2&gt;
&lt;p&gt;Chromium üzerinde parolanıza erişmek için &lt;code&gt;browserpass&lt;&#x2F;code&gt; eklentisini kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Arch Linux üzerinde kurulumu için aşağıdaki komutu kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; yaourt&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -Sy&lt;&#x2F;span&gt;&lt;span&gt; browserpass
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;OSX,Linux ve Windows ortamları için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;dannyvankooten&#x2F;browserpass&#x2F;releases&quot;&gt;buradan&lt;&#x2F;a&gt; indirebilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Chrome eklentisine &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;chrome.google.com&#x2F;webstore&#x2F;detail&#x2F;browserpass&#x2F;naepdomgkenhinolocfifgehidddafch&quot;&gt;buradan&lt;&#x2F;a&gt; ulaşabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Bulunduğunuz sitede otomatik doldurmasını istediğinizde &lt;code&gt;Ctrl+Shift+L&lt;&#x2F;code&gt; yapabilirsiniz yada tarayıcıda eklenen kilit ikonunu kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;windows&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#windows&quot; aria-label=&quot;Anchor link for: windows&quot;&gt;##&lt;&#x2F;a&gt;
Windows&lt;&#x2F;h2&gt;
&lt;p&gt;Windows ortamında kurulumunu yapmadım. Yapan arkadaşlar anlatımını yapıp bu yazıyı düzenlerse sevinirim.&lt;&#x2F;p&gt;
&lt;p&gt;Kullanılabilecek programa &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;mbos&#x2F;Pass4Win#readme&quot;&gt;buradan&lt;&#x2F;a&gt; ulaşabilirsiniz.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;contributors&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#contributors&quot; aria-label=&quot;Anchor link for: contributors&quot;&gt;#&lt;&#x2F;a&gt;
Contributors&lt;&#x2F;h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;erayaydin.github.io&quot;&gt;Eray Aydın&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Django Kurulumu</title>
        <published>2017-10-20T20:33:00+00:00</published>
        <updated>2017-10-20T20:33:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/python-django-kurulumu/"/>
        <id>https://era.yayd.in/blog/python-django-kurulumu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/python-django-kurulumu/">&lt;h1 id=&quot;django-kurulum&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#django-kurulum&quot; aria-label=&quot;Anchor link for: django-kurulum&quot;&gt;#&lt;&#x2F;a&gt;
Django Kurulum&lt;&#x2F;h1&gt;
&lt;p&gt;Bu makale, &lt;code&gt;Django&lt;&#x2F;code&gt; kurulumu ve çalıştırılmasını kapsar.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;python-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#python-kurulumu&quot; aria-label=&quot;Anchor link for: python-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Python Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Django’nun bir &lt;strong&gt;Python Web Framework&lt;&#x2F;strong&gt; olmasından dolayı; Django, Python’un kurulu olmasını ister. Bildiğiniz gibi Python’un bir çok versiyonu var. Aktif olarak
hem &lt;strong&gt;Python 2&lt;&#x2F;strong&gt; hem de &lt;strong&gt;Python 3&lt;&#x2F;strong&gt; kullanılıyor.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;hangi-python-versiyonu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#hangi-python-versiyonu&quot; aria-label=&quot;Anchor link for: hangi-python-versiyonu&quot;&gt;###&lt;&#x2F;a&gt;
Hangi Python Versiyonu?&lt;&#x2F;h3&gt;
&lt;p&gt;Her Django versiyonu her sürümü desteklemiyor. Bu sebeple, kullanacağınız &lt;strong&gt;Python&lt;&#x2F;strong&gt; ve &lt;strong&gt;Django&lt;&#x2F;strong&gt; sürümüne göre aşağıdaki tablodan karar verebilirsiniz.&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Django Versiyon&lt;&#x2F;th&gt;&lt;th&gt;Python Versiyon&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;1.8&lt;&#x2F;td&gt;&lt;td&gt;2.7, 3.3, 3.4, 3.5&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;1.9, 1.10&lt;&#x2F;td&gt;&lt;td&gt;2.7, 3.4, 3.5&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;1.11&lt;&#x2F;td&gt;&lt;td&gt;2.7, 3.4, 3.5, 3.6&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;2.0&lt;&#x2F;td&gt;&lt;td&gt;3.4, 3.5, 3.6&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;2.1&lt;&#x2F;td&gt;&lt;td&gt;3.5, 3.6, 3.7&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;python-in-kurulmasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#python-in-kurulmasi&quot; aria-label=&quot;Anchor link for: python-in-kurulmasi&quot;&gt;###&lt;&#x2F;a&gt;
Python’ın Kurulması&lt;&#x2F;h3&gt;
&lt;p&gt;Kurulacak &lt;strong&gt;Python&lt;&#x2F;strong&gt; sürümünü belirledikten sonra artık python kurulumuna geçelim.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;windows&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#windows&quot; aria-label=&quot;Anchor link for: windows&quot;&gt;####&lt;&#x2F;a&gt;
Windows&lt;&#x2F;h4&gt;
&lt;p&gt;Windows :( ortamı için kurulum gerçekleştireceksiniz &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.python.org&#x2F;downloads&#x2F;windows&#x2F;&quot;&gt;Python Releases for Windows&lt;&#x2F;a&gt; sayfasından kurmak istediğiniz Python sürümüne göre kurulum sihirbazını indirebilirsiniz.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;linux-unix&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#linux-unix&quot; aria-label=&quot;Anchor link for: linux-unix&quot;&gt;####&lt;&#x2F;a&gt;
Linux&#x2F;UNIX&lt;&#x2F;h4&gt;
&lt;h5 id=&quot;arch-linux&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#arch-linux&quot; aria-label=&quot;Anchor link for: arch-linux&quot;&gt;#####&lt;&#x2F;a&gt;
Arch Linux&lt;&#x2F;h5&gt;
&lt;p&gt;Arch Linux dağıtımında kurulum işlemini &lt;code&gt;pacman&lt;&#x2F;code&gt; paket yöneticisi ile yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Python 3 son sürümü kurmak için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -Sy&lt;&#x2F;span&gt;&lt;span&gt; python
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Python 2 son sürümü kurmak için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -Sy&lt;&#x2F;span&gt;&lt;span&gt; python2
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eski sürümleri kullanacaksanız &lt;strong&gt;AUR&lt;&#x2F;strong&gt; kullanarak aşağıdaki sürümler için kurulum yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Python Versiyon&lt;&#x2F;th&gt;&lt;th&gt;AUR Paket Adı&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Python 3.5&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python35&#x2F;&quot;&gt;python35&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python 3.4&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python34&#x2F;&quot;&gt;python34&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python 3.3&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python33&#x2F;&quot;&gt;python33&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python 3.2&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python32&#x2F;&quot;&gt;python32&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python 3.0&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python30&#x2F;&quot;&gt;python30&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python 2.6&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python26&#x2F;&quot;&gt;python26&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python 2.5&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python25&#x2F;&quot;&gt;python25&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python 1.5&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;python15&#x2F;&quot;&gt;python15&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yaourt -Sy&lt;&#x2F;span&gt;&lt;span&gt; python35
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h5 id=&quot;ubuntu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ubuntu&quot; aria-label=&quot;Anchor link for: ubuntu&quot;&gt;#####&lt;&#x2F;a&gt;
Ubuntu&lt;&#x2F;h5&gt;
&lt;p&gt;Ubuntu 16.04 ile Python 3 ve Python 2 kurulu olarak gelmektedir.&lt;&#x2F;p&gt;
&lt;p&gt;Eski versiyonları yüklemek için &lt;em&gt;deadsnakes&lt;&#x2F;em&gt;’ isimli PPA depoyu aktif edip eski versiyonları yükleyebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;add-apt-repository&lt;&#x2F;span&gt;&lt;span&gt; ppa:fkrull&#x2F;deadsnakes
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;apt-get&lt;&#x2F;span&gt;&lt;span&gt; update
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Kurulum işlemi için de aşağıdaki gibi versiyon adını yazarak yükleyebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;apt-get&lt;&#x2F;span&gt;&lt;span&gt; install python2.6 python3.3
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h5 id=&quot;fedora&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#fedora&quot; aria-label=&quot;Anchor link for: fedora&quot;&gt;#####&lt;&#x2F;a&gt;
Fedora&lt;&#x2F;h5&gt;
&lt;p&gt;Fedora ile Python 3 ve Python 2 kurulu olarak gelmektedir.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;python-kurulumunun-test-edilmesi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#python-kurulumunun-test-edilmesi&quot; aria-label=&quot;Anchor link for: python-kurulumunun-test-edilmesi&quot;&gt;###&lt;&#x2F;a&gt;
Python Kurulumunun Test Edilmesi&lt;&#x2F;h3&gt;
&lt;p&gt;Python’ın kurulumunu test etmek ve kurulu olan versiyon sürümünü öğrenmek için &lt;code&gt;python&lt;&#x2F;code&gt; çalıştırabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;python --version
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;pip-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#pip-kurulumu&quot; aria-label=&quot;Anchor link for: pip-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Pip Kurulumu&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;ubuntu-1&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ubuntu-1&quot; aria-label=&quot;Anchor link for: ubuntu-1&quot;&gt;###&lt;&#x2F;a&gt;
Ubuntu&lt;&#x2F;h3&gt;
&lt;p&gt;Python 2 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;apt-get&lt;&#x2F;span&gt;&lt;span&gt; install python-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Python 3 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;apt-get&lt;&#x2F;span&gt;&lt;span&gt; install python3-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;centos-ve-rhel&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#centos-ve-rhel&quot; aria-label=&quot;Anchor link for: centos-ve-rhel&quot;&gt;###&lt;&#x2F;a&gt;
CentOS ve RHEL&lt;&#x2F;h3&gt;
&lt;p&gt;CentOS ve Red Hat Enterprise Linux için pip kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yum&lt;&#x2F;span&gt;&lt;span&gt; install epel-release
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yum&lt;&#x2F;span&gt;&lt;span&gt; install python-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;fedora-1&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#fedora-1&quot; aria-label=&quot;Anchor link for: fedora-1&quot;&gt;###&lt;&#x2F;a&gt;
Fedora&lt;&#x2F;h3&gt;
&lt;p&gt;Python 2 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;dnf&lt;&#x2F;span&gt;&lt;span&gt; install python-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Python 3 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;dnf&lt;&#x2F;span&gt;&lt;span&gt; install python3-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;arch-linux-1&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#arch-linux-1&quot; aria-label=&quot;Anchor link for: arch-linux-1&quot;&gt;###&lt;&#x2F;a&gt;
Arch Linux&lt;&#x2F;h3&gt;
&lt;p&gt;Python 2 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; python2-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Python 3 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; python-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;opensuse&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#opensuse&quot; aria-label=&quot;Anchor link for: opensuse&quot;&gt;###&lt;&#x2F;a&gt;
openSUSE&lt;&#x2F;h3&gt;
&lt;p&gt;Python 2 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;zypper&lt;&#x2F;span&gt;&lt;span&gt; install python-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Python 3 için &lt;strong&gt;pip&lt;&#x2F;strong&gt; kurulumu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;zypper&lt;&#x2F;span&gt;&lt;span&gt; install python3-pip
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;kurulumun-test-edilmesi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kurulumun-test-edilmesi&quot; aria-label=&quot;Anchor link for: kurulumun-test-edilmesi&quot;&gt;###&lt;&#x2F;a&gt;
Kurulumun Test Edilmesi&lt;&#x2F;h3&gt;
&lt;p&gt;Pip kurulumunu test etmek ve versiyonu öğrenmek için aşağıdaki komutu çalıştırabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pip --version
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;django-nun-pip-yardimiyla-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#django-nun-pip-yardimiyla-kurulumu&quot; aria-label=&quot;Anchor link for: django-nun-pip-yardimiyla-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Django’nun Pip Yardımıyla Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Pip yardımıyla Django paketini artık sisteme kurabiliriz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pip&lt;&#x2F;span&gt;&lt;span&gt; install Django
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eski sürüm bir Django kurulumu için de şunu kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pip&lt;&#x2F;span&gt;&lt;span&gt; install Django==1.0.4
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;kurulumun-test-edilmesi-1&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kurulumun-test-edilmesi-1&quot; aria-label=&quot;Anchor link for: kurulumun-test-edilmesi-1&quot;&gt;##&lt;&#x2F;a&gt;
Kurulumun Test Edilmesi&lt;&#x2F;h2&gt;
&lt;p&gt;Django’nun başarılı bir şekilde kurulup kurulmadığını test etmek için Python’un interaktif kabuğunu kullanabiliriz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; python
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Python&lt;&#x2F;span&gt;&lt;span&gt; 3.6.2 (default, Jul 20 2017, 03:52:27) 
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;[GCC&lt;&#x2F;span&gt;&lt;span&gt; 7.1.1 20170630] on linux
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Type &lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;help&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;, &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;copyright&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;, &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;credits&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot; or &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;license&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot; for more information.
&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;&amp;gt;&amp;gt; 
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;İnteraktif kabukta öncelikle django paketinin olup olmadığını deneyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span&gt;&amp;gt;&amp;gt;&amp;gt; import &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;django
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eğer sonucunda şu şekilde bir çıktı aldıysanız, sistemde django paketi bulunmuyor demektir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span&gt;&amp;gt;&amp;gt;&amp;gt; import &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;django
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Traceback&lt;&#x2F;span&gt;&lt;span&gt; (most recent call last)&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;:
&lt;&#x2F;span&gt;&lt;span&gt;  &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;File &lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;&amp;lt;stdin&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;, line 1, in &amp;lt;module&amp;gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;ModuleNotFoundError:&lt;&#x2F;span&gt;&lt;span&gt; No module named &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;django&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eğer herhangi bir çıktı vermediyse django paketi bulunmuş ve içe aktarılmış demektir. Şimdi kurulu olan django versiyonunu öğrenelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span&gt;&amp;gt;&amp;gt;&amp;gt; import &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;django
&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;&amp;gt;&amp;gt; print(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;django.get_version&lt;&#x2F;span&gt;&lt;span&gt;())
&lt;&#x2F;span&gt;&lt;span&gt;1.11.6
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu adımları da tamamladıktan sonra sistemimize Django kurulumu yapmış oluyoruz. Bir sonraki makalede &lt;code&gt;virtualenv&lt;&#x2F;code&gt; ile daha sağlıklı bir geliştirme ortamı hazırlamak için gerekli adımları yazmayı düşünüyorum.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Arch Linux ve i3 için Backlight Ayarlaması</title>
        <published>2017-07-01T04:30:00+00:00</published>
        <updated>2017-07-01T04:30:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/arch-backlight-i3/"/>
        <id>https://era.yayd.in/blog/arch-backlight-i3/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/arch-backlight-i3/">&lt;h2 id=&quot;acpi-test&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#acpi-test&quot; aria-label=&quot;Anchor link for: acpi-test&quot;&gt;##&lt;&#x2F;a&gt;
ACPI Test&lt;&#x2F;h2&gt;
&lt;p&gt;Backlight ayarlamasından önce backlightı kontrol eden driverı öğrenmeliyiz. Bunun için &lt;code&gt;&#x2F;sys&#x2F;class&#x2F;backlight&lt;&#x2F;code&gt; klasöründen yararlanacağız.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; ls &#x2F;sys&#x2F;class&#x2F;backlight
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;intel_backlight
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Benim çıktıda görüldüğü üzere &lt;code&gt;intel_backlight&lt;&#x2F;code&gt; tarafından kullanılıyormuş. Bu klasörün içerisindekileri kontrol edelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; ls &#x2F;sys&#x2F;class&#x2F;backlight&#x2F;intel_backlight
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;actual_brightness
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;brightness
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;max_brightness
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;subsystem
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;uevent
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;bl_power
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;device
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;power
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;type
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Burada yer alan dosyaları ve klasörleri açıklayalım.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;actual_brightness&lt;&#x2F;strong&gt; - Donanımsal olarak gerçek aydınlatma miktarını alır.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;brightness&lt;&#x2F;strong&gt; - Aydınlatma miktarını belirler. 0 ile &lt;strong&gt;maksimum aydınlık&lt;&#x2F;strong&gt; miktarı arasında bir değer alır. Driver tarafındaki aydınlatma miktarını da gösterir. (Donanımsal olarak gerçek aydınlatma miktarı olmayabilir, actual_brightness bu yüzden var)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;max_brightness&lt;&#x2F;strong&gt; - Maksimum tanımlanabilecek aydınlatma miktarıdır.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;subsystem&lt;&#x2F;strong&gt; - Hangi sisteme ait olduğunu gösterir.  (&lt;code&gt;&#x2F;sys&#x2F;class&#x2F;backlight&lt;&#x2F;code&gt;)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;uevent&lt;&#x2F;strong&gt; - Her sistem dosyasında (&lt;code&gt;&#x2F;sys&#x2F;devices&lt;&#x2F;code&gt;) bulunan bir dosyadır.&lt;code&gt;udev&lt;&#x2F;code&gt; için tanımlanacak &lt;em&gt;ekleme&lt;&#x2F;em&gt;, &lt;em&gt;silme&lt;&#x2F;em&gt; veya diğer işlemleri tanımlamanızı sağlar.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;bl_power&lt;&#x2F;strong&gt; - Aydınlatma gücünü kontrol etmenizi sağlar. &lt;em&gt;FB_BLANK_UNBLANK&lt;&#x2F;em&gt; veya &lt;em&gt;FB_BLANK_POWERDOWN&lt;&#x2F;em&gt; değerlerinden birini alır. İlki gücü açar, ikincisi gücü kapatır(karanlık).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;device&lt;&#x2F;strong&gt; - Genellikle geriye dönük uyum için kullanılmakta. Cihazın hangi karta ait olduğunu gösterir.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;power&lt;&#x2F;strong&gt; - Her cihaz için güç tüketimi ile ilgili ayarların bulunduğu klasördür.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;type&lt;&#x2F;strong&gt; - Arka ışığın hangi arayüz türü ile kontrol edildiğini belirler. &lt;em&gt;firmware&lt;&#x2F;em&gt; (standart arayüz kütüphanesi), &lt;em&gt;platform&lt;&#x2F;em&gt; (platform tarafından belirli arayüz) ve &lt;em&gt;raw&lt;&#x2F;em&gt; (direk donanımsal kayıtları kullanarak) değerlerini alabilir.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Yukarda açıkladığımız dosyalardan &lt;strong&gt;max_brightness&lt;&#x2F;strong&gt;’ı inceleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; cat max_brightness
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;937
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Gördüğümüz gibi maksimum verebileceğimiz ışık değeri &lt;strong&gt;937&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Bir de tanımlanan ışık değerini &lt;strong&gt;brightness&lt;&#x2F;strong&gt; dosyası ile inceleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; cat brightness
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;700
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu dosyayı değiştirerek parlaklığı da değiştirebiliriz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;$&lt;&#x2F;span&gt;&lt;span&gt; echo 600 &amp;gt; brightness
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Tabi ki parlaklığı ayarlamak için sürekli bu dosyayı değiştirmekle uğraşmayacağız.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;xbacklight&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#xbacklight&quot; aria-label=&quot;Anchor link for: xbacklight&quot;&gt;##&lt;&#x2F;a&gt;
XBacklight&lt;&#x2F;h2&gt;
&lt;p&gt;Xorg tarafından hazırlanan &lt;code&gt;xbacklight&lt;&#x2F;code&gt; ile parlaklığı ayarlayabiliriz.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Not:&lt;&#x2F;strong&gt; Xbacklight sadece &lt;code&gt;intel&lt;&#x2F;code&gt; ile çalışmaktadır ve &lt;strong&gt;modesetting&lt;&#x2F;strong&gt; sürücüsü ile çalışmamaktadır. Yani Xorg’unuz &lt;strong&gt;modesetting&lt;&#x2F;strong&gt; driverını kullanıyorsa &lt;code&gt;xbacklight&lt;&#x2F;code&gt; çalışmayacaktır.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Pacman ile xbacklight kurulumu&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; xorg-xbacklight
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Belirli bir % değeri ile parlaklığı belirlemek için&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# %50 tanımlamak için
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;xbacklight -set&lt;&#x2F;span&gt;&lt;span&gt; 50
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Belirli bir % değeri ile parlaklığı arttırmak için&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# %10 arttırmak için
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;xbacklight -inc&lt;&#x2F;span&gt;&lt;span&gt; 10
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Belirli bir % değeri ile parlaklığı kısmak için&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# %10 azaltmak için
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;xbacklight -dec&lt;&#x2F;span&gt;&lt;span&gt; 10
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;light&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#light&quot; aria-label=&quot;Anchor link for: light&quot;&gt;##&lt;&#x2F;a&gt;
Light&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;code&gt;xbacklight&lt;&#x2F;code&gt; yazılımının çalışmaması durumlarında kullanabileceğiniz bir başka yardımcı yazılım. &lt;em&gt;LightScript&lt;&#x2F;em&gt;’in C ile yazılmış hali. Malesef resmi depoda bulunmuyor bu sebeple AUR üzerinden kurmanız gerekiyor.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yaourt -S --noconfirm&lt;&#x2F;span&gt;&lt;span&gt; light
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Şuanki parlaklığı almak için&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;light -G
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Belirli bir % değeri ile parlaklığı tanımlamak için&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# Parlaklığı %50 yap
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;light -S&lt;&#x2F;span&gt;&lt;span&gt; 50
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Belirli bir % değeri ile parlaklığı arttırmak için&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# %5 arttırmak için
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;light -A&lt;&#x2F;span&gt;&lt;span&gt; 5
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Belirli bir % değeri ile parlaklığı azaltmak için&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# % 5 azaltmak için
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;light -U&lt;&#x2F;span&gt;&lt;span&gt; 5
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;i3-klavye-kisayol&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#i3-klavye-kisayol&quot; aria-label=&quot;Anchor link for: i3-klavye-kisayol&quot;&gt;##&lt;&#x2F;a&gt;
i3 Klavye Kısayol&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;code&gt;i3&lt;&#x2F;code&gt; üzerinde klavye kısayol belirlemek için &lt;code&gt;~&#x2F;.config&#x2F;i3&#x2F;config&lt;&#x2F;code&gt; dosyasına aşağıdaki kısayolu ekleyeceğiz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;bindsym&lt;&#x2F;span&gt;&lt;span&gt; XF86MonBrightnessDown exec light&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -U&lt;&#x2F;span&gt;&lt;span&gt; 5
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;bindsym&lt;&#x2F;span&gt;&lt;span&gt; XF86MonBrightnessUp exec light&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -A&lt;&#x2F;span&gt;&lt;span&gt; 5
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;tabi ki dilerseniz buradaki &lt;strong&gt;XF86MonBrightnessDown&lt;&#x2F;strong&gt; ve &lt;strong&gt;XF86MonBrightnessUp&lt;&#x2F;strong&gt; değerini değiştirerek başka bir kısayol atayabilirsiniz.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Bu işlemi kullandığınız DE&#x2F;WM’deki kısayol ayarlamasını uygulayarak da tanımlayabilirsiniz.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Arch Linux - LAMP Kurulumu</title>
        <published>2017-07-01T01:00:00+00:00</published>
        <updated>2017-07-01T01:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/arch-linux-lamp-kurulumu/"/>
        <id>https://era.yayd.in/blog/arch-linux-lamp-kurulumu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/arch-linux-lamp-kurulumu/">&lt;h2 id=&quot;apache-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#apache-kurulumu&quot; aria-label=&quot;Anchor link for: apache-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Apache Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Öncelikle paket yöneticisi yardımı ile &lt;code&gt;apache&lt;&#x2F;code&gt; paketinin kurulumunu
gerçekleştirelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; apache
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;apache-konfigurasyonu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#apache-konfigurasyonu&quot; aria-label=&quot;Anchor link for: apache-konfigurasyonu&quot;&gt;###&lt;&#x2F;a&gt;
Apache Konfigürasyonu&lt;&#x2F;h3&gt;
&lt;p&gt;Gerekli apache ayarlaması yapmak için konfigürasyon dosyasında değişiklik yapacağız. Apache konfigürasyonu &lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; dosyasında yer alıyor.&lt;&#x2F;p&gt;
&lt;p&gt;Ben profesyonel bir web sunucusunda çalışmadığım, geliştirme ortamında
çalıştığım için Apache’nin kullandığı &lt;code&gt;user&lt;&#x2F;code&gt; olarak kendimi belirtiyorum.
İsterseniz siz de bu şekilde belirtip daha rahat çalışabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;User&lt;&#x2F;span&gt;&lt;span&gt; eray
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eğer &lt;code&gt;80&lt;&#x2F;code&gt; portunu başka bir yazılımda kullanıyorsanız dilerseniz Apache’nin
portunu değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Listen&lt;&#x2F;span&gt;&lt;span&gt; 80
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Dışardan sizin web sunucunuza erişim olmamasını istiyorsanız &lt;code&gt;Listen&lt;&#x2F;code&gt;
parametresini &lt;code&gt;Listen 127.0.0.1:80&lt;&#x2F;code&gt; olarak değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Varsayılan olarak &lt;code&gt;&#x2F;srv&#x2F;http&lt;&#x2F;code&gt; klasörü &lt;code&gt;DocumentRoot&lt;&#x2F;code&gt; olarak tanımlı.
Belirttiğiniz klasör web olarak servis edilmekte. Dilerseniz bu klasörü
değiştirebilirsiniz. Fakat değiştirdikten sonra &lt;code&gt;&amp;lt;Directory &quot;&#x2F;srv&#x2F;http&quot;&amp;gt;&lt;&#x2F;code&gt;
kısmını da değiştirmeyi unutmayın. Aksi takdirde &lt;strong&gt;403 Hatası&lt;&#x2F;strong&gt; alırsınız.&lt;&#x2F;p&gt;
&lt;p&gt;Ek olarak &lt;code&gt;DocumentRoot&lt;&#x2F;code&gt; klasörü olarak belirtiğiniz klasör ve üst
klasörleri &lt;strong&gt;executable&lt;&#x2F;strong&gt; yani çalıştırılabilir olmalıdır.&lt;&#x2F;p&gt;
&lt;p&gt;Klasörleriniz içerisinde &lt;code&gt;.htaccess&lt;&#x2F;code&gt; ile Apache üzerinde klasör bazlı ayar
yapmak istiyorsanız &lt;strong&gt;AllowOverride&lt;&#x2F;strong&gt; değerini &lt;strong&gt;All&lt;&#x2F;strong&gt; olarak
değiştirebilirsiniz. Ek olarak bunun çalışması için aşağıdaki satırı bulup
önündeki yorum satırını kaldırın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#LoadModule rewrite_module modules&#x2F;mod_rewrite.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span&gt;&amp;lt;Directory &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;&#x2F;srv&#x2F;http&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;...
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;AllowOverride&lt;&#x2F;span&gt;&lt;span&gt; All
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;...
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;Directory&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Varsayılan olarak Apache, kullanıcı klasörlerini destekliyor
(&lt;code&gt;http:&#x2F;&#x2F;localhost&#x2F;~eray&lt;&#x2F;code&gt;). Bu klasörü değiştirmek istiyorsanız
&lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;extra&#x2F;httpd-userdir.conf&lt;&#x2F;code&gt; dosyasından değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# Settings for user home directories
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# Required module: mod_authz_core, mod_authz_host, mod_userdir
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# UserDir: The name of the directory that is appended onto a user&amp;#39;s home
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# directory if a ~user request is received.  Note that you must also set
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# the default access control for these directories, as in the example below.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;UserDir&lt;&#x2F;span&gt;&lt;span&gt; Webserver
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# Control access to UserDir directories.  The following is an example
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# for a site where these directories are restricted to read-only.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;Directory &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;&#x2F;home&#x2F;*&#x2F;Webserver&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;AllowOverride&lt;&#x2F;span&gt;&lt;span&gt; FileInfo AuthConfig Limit Indexes
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Options&lt;&#x2F;span&gt;&lt;span&gt; MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Require&lt;&#x2F;span&gt;&lt;span&gt; method GET POST OPTIONS
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;Directory&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Yukarda da belirttiğim gibi klasörünüzün ve üst klasörlerin
çalıştırılabilir olması gerekiyor. Bunun için çalıştırma izni vermelisiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;chmod&lt;&#x2F;span&gt;&lt;span&gt; o+x &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;chmod -R&lt;&#x2F;span&gt;&lt;span&gt; o+x &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;Webserver
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Değişikliklerin geçerli olması için servisi yeniden başlatalım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;systemctl&lt;&#x2F;span&gt;&lt;span&gt; restart httpd
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;otomatik-sanal-sunucu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#otomatik-sanal-sunucu&quot; aria-label=&quot;Anchor link for: otomatik-sanal-sunucu&quot;&gt;###&lt;&#x2F;a&gt;
Otomatik Sanal Sunucu&lt;&#x2F;h3&gt;
&lt;p&gt;Daha önceden yazdığım &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;erayaydin.github.io&#x2F;linux&#x2F;apache&#x2F;otomatik-apache-sanal-sunucu&#x2F;&quot;&gt;Otomatik Apache Sanal Sunucu&lt;&#x2F;a&gt; adımlarını takip ederek klasör klasör sanal sunucu oluşturabilirsiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;php-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-kurulumu&quot; aria-label=&quot;Anchor link for: php-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
PHP Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Paket yöneticisi yardımı ile &lt;code&gt;php&lt;&#x2F;code&gt; ve &lt;code&gt;php-apache&lt;&#x2F;code&gt; paketlerini sisteme
yükleyeceğiz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; php php-apache
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Apache tarafında &lt;code&gt;mpm_event&lt;&#x2F;code&gt; modülü yerine &lt;code&gt;mpm_prefork&lt;&#x2F;code&gt; modülünü
aktifleştirmemiz gerekiyor. Bu sebeple &lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt;
dosyasındaki &lt;strong&gt;mpm_event&lt;&#x2F;strong&gt; modülünü yorum satırı yapıyoruz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#LoadModule mpm_event_module modules&#x2F;mod_mpm_event.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından &lt;strong&gt;mpm_prefork&lt;&#x2F;strong&gt; modülünün yorum satırını kaldırıyoruz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;LoadModule&lt;&#x2F;span&gt;&lt;span&gt; mpm_prefork_module modules&#x2F;mod_mpm_prefork.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Dilerseniz &lt;code&gt;mpm_prefork&lt;&#x2F;code&gt; yerine de &lt;code&gt;proxy_fcgi&lt;&#x2F;code&gt; kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;PHP’yi aktif etmek için &lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; içerisindeki
&lt;code&gt;LoadModule&lt;&#x2F;code&gt; listesinin sonuna aşağıdakini ekliyoruz.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;php-7&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-7&quot; aria-label=&quot;Anchor link for: php-7&quot;&gt;###&lt;&#x2F;a&gt;
PHP 7&lt;&#x2F;h3&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;LoadModule&lt;&#x2F;span&gt;&lt;span&gt; php7_module modules&#x2F;libphp7.so
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;AddHandler&lt;&#x2F;span&gt;&lt;span&gt; php7-script php
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Aynı şekilde &lt;code&gt;Include&lt;&#x2F;code&gt; listesinin sonuna da aşağıdakini ekliyoruz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Include&lt;&#x2F;span&gt;&lt;span&gt; conf&#x2F;extra&#x2F;php7_module.conf
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;php-8&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-8&quot; aria-label=&quot;Anchor link for: php-8&quot;&gt;###&lt;&#x2F;a&gt;
PHP 8&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;LoadModule&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span&gt;  &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;LoadModule&lt;&#x2F;span&gt;&lt;span&gt; php_module modules&#x2F;libphp.so
&lt;&#x2F;span&gt;&lt;span&gt;  &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;AddHandler&lt;&#x2F;span&gt;&lt;span&gt; php-script .php
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;Include&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span&gt;  &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Include&lt;&#x2F;span&gt;&lt;span&gt; conf&#x2F;extra&#x2F;php_module.conf
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Servisi yeniden başlatıyoruz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;systemctl&lt;&#x2F;span&gt;&lt;span&gt; restart httpd
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;PHP kurulumunu test etmek için aşağıdaki gibi &lt;code&gt;test.php&lt;&#x2F;code&gt; isminde bir dosya
oluşturabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;&amp;lt;?php &lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;phpinfo&lt;&#x2F;span&gt;&lt;span&gt;();
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;php-konfigurasyonu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-konfigurasyonu&quot; aria-label=&quot;Anchor link for: php-konfigurasyonu&quot;&gt;###&lt;&#x2F;a&gt;
PHP Konfigürasyonu&lt;&#x2F;h3&gt;
&lt;p&gt;PHP ile ilgili ayarlamaları &lt;code&gt;&#x2F;etc&#x2F;php&#x2F;php.ini&lt;&#x2F;code&gt; dosyası üzerinden yapacağız.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;maksimum-calistirma-suresi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#maksimum-calistirma-suresi&quot; aria-label=&quot;Anchor link for: maksimum-calistirma-suresi&quot;&gt;####&lt;&#x2F;a&gt;
Maksimum Çalıştırma Süresi&lt;&#x2F;h4&gt;
&lt;p&gt;Her scriptin saniye olarak belirli bir &lt;strong&gt;timeout&lt;&#x2F;strong&gt; yani zaman aşımı süresi
vardır. Dilerseniz bunu değiştirebilir hatta limitsiz yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;; CLI kullanımlarında 0 değeri otomatik olarak verilmektedir. Yani zaman aşımı yoktur
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;max_execution_time &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;60
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;hafiza-limiti&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#hafiza-limiti&quot; aria-label=&quot;Anchor link for: hafiza-limiti&quot;&gt;####&lt;&#x2F;a&gt;
Hafıza Limiti&lt;&#x2F;h4&gt;
&lt;p&gt;Bir scriptin çalıştırılmasında harcanabilecek maksimum hafıza
miktarıdır. Varsayılan olarak 128MB seçili bunu dilerseniz
arttırabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;memory_limit &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;1024M
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;hatalari-gosterme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#hatalari-gosterme&quot; aria-label=&quot;Anchor link for: hatalari-gosterme&quot;&gt;####&lt;&#x2F;a&gt;
Hataları Gösterme&lt;&#x2F;h4&gt;
&lt;p&gt;Geliştirme ortamında çalışanlar için hataları görmek önemlidir. Bu sebeple
&lt;code&gt;error_reporting&lt;&#x2F;code&gt; değerini belirttiğiniz hata türlerine göre
değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;error_reporting &lt;&#x2F;span&gt;&lt;span&gt;= E_ALL
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ek olarak, hata mesajlarını ekrana yazdırmak için de &lt;code&gt;display_errors&lt;&#x2F;code&gt;
değerini kullanabilirsiniz. Geliştirme ortamında bu değeri &lt;code&gt;On&lt;&#x2F;code&gt; yapmanız
yararlı olacaktır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;display_errors &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;On
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;acilis-hata-mesajlari&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#acilis-hata-mesajlari&quot; aria-label=&quot;Anchor link for: acilis-hata-mesajlari&quot;&gt;####&lt;&#x2F;a&gt;
Açılış Hata Mesajları&lt;&#x2F;h4&gt;
&lt;p&gt;PHP’nin kendisini çalıştırmaya başladığınızda çıkan sorunlardır. Genellikle
konfigürasyonla ilgili hatalar olduğunda çıkar. Bunların bastırılmaması ve
ekranda gözükmesi için &lt;code&gt;On&lt;&#x2F;code&gt; değerini verebilirsiniz. Tabi ki sadece
geliştirme ortamında kullanmanız gerekiyor.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;display_startup_errors &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;On
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;hatalari-izleme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#hatalari-izleme&quot; aria-label=&quot;Anchor link for: hatalari-izleme&quot;&gt;####&lt;&#x2F;a&gt;
Hataları İzleme&lt;&#x2F;h4&gt;
&lt;p&gt;&lt;code&gt;track_errors&lt;&#x2F;code&gt; değerini aktif hale getirerek script içerisinde
&lt;code&gt;$php_errormsg&lt;&#x2F;code&gt; değişkeni ile son hata mesajını alabilirsiniz.
Kullandığınız çalışma ortamında gerekli olabilir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;track_errors &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;On
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;maksimum-post-buyuklugu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#maksimum-post-buyuklugu&quot; aria-label=&quot;Anchor link for: maksimum-post-buyuklugu&quot;&gt;####&lt;&#x2F;a&gt;
Maksimum POST Büyüklüğü&lt;&#x2F;h4&gt;
&lt;p&gt;PHP’nin kabul edeceği maksimum POST veri büyüklüğüdür. Dilerseniz &lt;strong&gt;0&lt;&#x2F;strong&gt;
değeri vererek limiti kaldırabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;post_max_size &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;50M
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;maksimum-dosya-buyuklugu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#maksimum-dosya-buyuklugu&quot; aria-label=&quot;Anchor link for: maksimum-dosya-buyuklugu&quot;&gt;####&lt;&#x2F;a&gt;
Maksimum Dosya Büyüklüğü&lt;&#x2F;h4&gt;
&lt;p&gt;Yüklenebilecek dosyalar için maksimum dosya boyutudur. Varsayılan olarak
&lt;code&gt;2M&lt;&#x2F;code&gt; yer alıyor.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;upload_max_filesize &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;200M
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;maksimum-dosya-adeti&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#maksimum-dosya-adeti&quot; aria-label=&quot;Anchor link for: maksimum-dosya-adeti&quot;&gt;####&lt;&#x2F;a&gt;
Maksimum Dosya Adeti&lt;&#x2F;h4&gt;
&lt;p&gt;Bir request içerisinde yüklenebilecek maksimum dosya adetidir. Varsayılan
olarak &lt;code&gt;20&lt;&#x2F;code&gt; yer alıyor.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;max_file_uploads &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;200
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;timezone&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#timezone&quot; aria-label=&quot;Anchor link for: timezone&quot;&gt;####&lt;&#x2F;a&gt;
Timezone&lt;&#x2F;h4&gt;
&lt;p&gt;Geçerli bölgenizi ayarlamak için &lt;code&gt;date.timezone&lt;&#x2F;code&gt; değerini
değiştirebilirsiniz. Önündeki yorum satırını kaldırmayı unutmayınız.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;date&lt;&#x2F;span&gt;&lt;span&gt;.timezone = Europe&#x2F;Istanbul
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;php-modulleri&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-modulleri&quot; aria-label=&quot;Anchor link for: php-modulleri&quot;&gt;###&lt;&#x2F;a&gt;
PHP Modülleri&lt;&#x2F;h3&gt;
&lt;p&gt;Çeşitli php eklentilerini aktif etmek için öncelikle paket yöneticisi
yardımı ile eklentiyi yüklemeli ardından &lt;code&gt;php.ini&lt;&#x2F;code&gt; dosyasında yüklediğiniz
eklentiyi aktif hale getirmelisiniz. Bunun için basşındaki yorum satırını
kaldırabilirsiniz.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;bz2-bzip2&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bz2-bzip2&quot; aria-label=&quot;Anchor link for: bz2-bzip2&quot;&gt;####&lt;&#x2F;a&gt;
BZ2 (Bzip2)&lt;&#x2F;h4&gt;
&lt;p&gt;Script içerisinde Bzip fonksiyonlarını(bzclose, bzcompress, bzdecompress,
bzopen, bzread, bzwrite vs.) kullanmak için aktif edebilirsiniz. Aktif hale
getirmek için &lt;code&gt;php.ini&lt;&#x2F;code&gt; dosyasında ilgili satırın başındaki noktalı virgülü
kaldırmanız yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=bz2.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;ftp&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ftp&quot; aria-label=&quot;Anchor link for: ftp&quot;&gt;####&lt;&#x2F;a&gt;
FTP&lt;&#x2F;h4&gt;
&lt;p&gt;Script içerisinde FTP işlemleri yapmak için bu modülü aktif hale
getirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=ftp.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;gd-kutuphanesi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#gd-kutuphanesi&quot; aria-label=&quot;Anchor link for: gd-kutuphanesi&quot;&gt;####&lt;&#x2F;a&gt;
GD Kütüphanesi&lt;&#x2F;h4&gt;
&lt;p&gt;Resim işleme ve oluşturma yapıyorsanız bu modülü aktif hale
getirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=gd.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ek olarak paketi kurmayı unutmayın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; gd php-gd
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;gettext&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#gettext&quot; aria-label=&quot;Anchor link for: gettext&quot;&gt;####&lt;&#x2F;a&gt;
Gettext&lt;&#x2F;h4&gt;
&lt;p&gt;Genellikle dil desteği amaçlı kullanılan gettext kütüphanesini aktif
edebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=gettext.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;imap-pop3-ve-nntp&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#imap-pop3-ve-nntp&quot; aria-label=&quot;Anchor link for: imap-pop3-ve-nntp&quot;&gt;####&lt;&#x2F;a&gt;
IMAP, POP3 ve NNTP&lt;&#x2F;h4&gt;
&lt;p&gt;Imap fonksiyonlarını kullanmak için aktif hale getirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=imap.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ek olarak paketi kurmayı unutmayın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; php-imap
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;mcrypt&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#mcrypt&quot; aria-label=&quot;Anchor link for: mcrypt&quot;&gt;####&lt;&#x2F;a&gt;
MCrypt&lt;&#x2F;h4&gt;
&lt;p&gt;Çeşitli kütüphaneler tarafından da kullanılan &lt;strong&gt;mcrypt_&lt;&#x2F;strong&gt; fonksiyonlarına
erişmek için aktif hale getirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=mcrypt.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ek olarak paketini de kurun.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; php-mcrypt
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;mysqli&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#mysqli&quot; aria-label=&quot;Anchor link for: mysqli&quot;&gt;####&lt;&#x2F;a&gt;
MySQLi&lt;&#x2F;h4&gt;
&lt;p&gt;MySQLi fonksiyonlarını kullanmak istiyorsanız aktif hale getirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=mysqli.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;pdo-mysql-odbc-dblib-postgresql-sqlite&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#pdo-mysql-odbc-dblib-postgresql-sqlite&quot; aria-label=&quot;Anchor link for: pdo-mysql-odbc-dblib-postgresql-sqlite&quot;&gt;####&lt;&#x2F;a&gt;
PDO MySQL, ODBC, DBLib, PostgreSQL, SQLite&lt;&#x2F;h4&gt;
&lt;p&gt;PDO ile belirtilen veritabanı yönetim sistemlerini kullanmak için eklentiyi
aktif hale getirebilirsiniz. Seçtiğiniz veritabanı sistemini de
bilgisayarınıza kurmayı unutmayın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=pdo_dblib.so
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=pdo_mysql.so
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=php_odbc.so
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=php_pgsql.so
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;=php_sqlite.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h4 id=&quot;imagemagick&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#imagemagick&quot; aria-label=&quot;Anchor link for: imagemagick&quot;&gt;####&lt;&#x2F;a&gt;
Imagemagick&lt;&#x2F;h4&gt;
&lt;p&gt;Resim işleme için kullanabileceğiniz bir paket.  AUR deposundan
indirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yaourt -S&lt;&#x2F;span&gt;&lt;span&gt; php-imagick
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;&#x2F;etc&#x2F;php&#x2F;conf.d&#x2F;&lt;&#x2F;code&gt; klasörü içerisine kendisi dosya attığı için otomatik
olarak aktif hale geliyor. &lt;code&gt;php.ini&lt;&#x2F;code&gt; üzerinde değişiklik yapmanıza gerek
yok.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;modul-kontrolu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#modul-kontrolu&quot; aria-label=&quot;Anchor link for: modul-kontrolu&quot;&gt;####&lt;&#x2F;a&gt;
Modül Kontrolü&lt;&#x2F;h4&gt;
&lt;p&gt;Kurduğunuz PHP modüllerini test etmek için aşağıdaki komutu
kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;php -m
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Sonuç olarak size eklenen modülleri döndürecektir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;[PHP&lt;&#x2F;span&gt;&lt;span&gt; Modules]
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;bz2
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Core
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;ctype
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;curl
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;date
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;dom
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;fileinfo
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;filter
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;ftp
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gd
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gettext
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;hash
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;imap
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;json
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;libxml
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mbstring
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mcrypt
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mysqli
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mysqlnd
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;openssl
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pcntl
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pcre
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;PDO
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pdo_mysql
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pdo_sqlite
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Phar
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;posix
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;readline
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Reflection
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;session
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;SimpleXML
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;SPL
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;standard
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;tokenizer
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;xml
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;xmlreader
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;xmlwriter
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;zip
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;zlib
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;composer&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#composer&quot; aria-label=&quot;Anchor link for: composer&quot;&gt;###&lt;&#x2F;a&gt;
Composer&lt;&#x2F;h3&gt;
&lt;p&gt;PHP’nin bağımlılık yöneticisi olarak kullanılan &lt;strong&gt;Composer&lt;&#x2F;strong&gt;’ı yüklemek
için paket yöneticisini kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; composer
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Kurulumu test etmek için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;composer --version
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;mysql-mariadb-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#mysql-mariadb-kurulumu&quot; aria-label=&quot;Anchor link for: mysql-mariadb-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
MySQL (MariaDB) Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;MariaDB, Arch Linux’un varsayılan MySQL implementasyonudur. Oracle
firmasının MySQL’ini kullanmak için AUR’u kullanabilirsiniz fakat
MariaDB’yi öneririm.&lt;&#x2F;p&gt;
&lt;p&gt;Paket yöneticisinden &lt;code&gt;mariadb&lt;&#x2F;code&gt; paketini yükleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; mariadb
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;MariaDB servisini başlatmadan önce birkaç ayarlama yapacak olan
&lt;code&gt;mysql_install_db&lt;&#x2F;code&gt;’yi çalıştırıyoruz. Kurulum yerini dilerseniz
değiştirebilirsiniz fakat &lt;code&gt;&#x2F;home&lt;&#x2F;code&gt; &lt;code&gt;&#x2F;root&lt;&#x2F;code&gt; ve &lt;code&gt;&#x2F;run&#x2F;user&lt;&#x2F;code&gt; klasörlerini
tercih etmeyin. Çünkü &lt;code&gt;ProtectHome=true&lt;&#x2F;code&gt; değeri bulunduğu için bu
klasörlere MariaDB tarafından erişim sağlanamıyor. Ek olarak &lt;code&gt;datadir&lt;&#x2F;code&gt;
klasör değişimini &lt;code&gt;&#x2F;etc&#x2F;mysql&#x2F;my.cnf&lt;&#x2F;code&gt; içerisinde de yapmalısınız.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mysql_install_db --user&lt;&#x2F;span&gt;&lt;span&gt;=mysql&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --basedir&lt;&#x2F;span&gt;&lt;span&gt;=&#x2F;usr&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --datadir&lt;&#x2F;span&gt;&lt;span&gt;=&#x2F;var&#x2F;lib&#x2F;mysql
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Artık servisi başlatabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;systemctl&lt;&#x2F;span&gt;&lt;span&gt; start mysqld
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;guvenlik-ayarlamasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#guvenlik-ayarlamasi&quot; aria-label=&quot;Anchor link for: guvenlik-ayarlamasi&quot;&gt;###&lt;&#x2F;a&gt;
Güvenlik Ayarlaması&lt;&#x2F;h3&gt;
&lt;p&gt;Veritabanı katmanında birkaç güvenlik önlemi almak ve &lt;code&gt;root&lt;&#x2F;code&gt; parolasını da
değiştirmek için aşağıdaki scripti çalıştırabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mysql_secure_installation
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Çalıştırma sırasında sorulan sorular şu şekilde:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Set root password?&lt;&#x2F;strong&gt; &lt;code&gt;root&lt;&#x2F;code&gt; parolasını değiştirmek istiyorsanız &lt;code&gt;Y&lt;&#x2F;code&gt;
seçeneğini seçin.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Remove anonymous users?&lt;&#x2F;strong&gt; Genellikle test amaçlı olarak gizli
kullanıcılara izin veriliyor Dilerseniz bunları silebilirsiniz.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Disallow root login remotely?&lt;&#x2F;strong&gt; &lt;code&gt;root&lt;&#x2F;code&gt; kullanıcısına &lt;code&gt;localhost&lt;&#x2F;code&gt;
haricinde erğişimi kapatmak için &lt;code&gt;Y&lt;&#x2F;code&gt; seçeneğini seçebilirsiniz.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Remove test database and access to it?&lt;&#x2F;strong&gt; Test veritabanını ve ona
erişimi kaldırmak istiyorsanız &lt;code&gt;Y&lt;&#x2F;code&gt; seçeneğini seçebilirsiniz.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Reload privilege tables now?&lt;&#x2F;strong&gt; Değişikliklerin hemen geçerli olmasını
istiyorsanız &lt;code&gt;Y&lt;&#x2F;code&gt; seçebilirsiniz.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;disardan-erisimi-iptal-etmek&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#disardan-erisimi-iptal-etmek&quot; aria-label=&quot;Anchor link for: disardan-erisimi-iptal-etmek&quot;&gt;###&lt;&#x2F;a&gt;
Dışardan Erişimi İptal Etmek&lt;&#x2F;h3&gt;
&lt;p&gt;Varsayılan olarak MySQL dışardan erişime açıktır. Dışardan erişimleri
engellemek için &lt;code&gt;&#x2F;etc&#x2F;mysql&#x2F;my.cnf&lt;&#x2F;code&gt; dosyasındaki aşağıdaki satırın
başındaki yorum simgesini kaldırmanız yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;skip-networking
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Dışardan erişim kapatılsa dahi &lt;strong&gt;localhost&lt;&#x2F;strong&gt; üzerinden giriş
yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;utf8mb4-kullanimi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#utf8mb4-kullanimi&quot; aria-label=&quot;Anchor link for: utf8mb4-kullanimi&quot;&gt;###&lt;&#x2F;a&gt;
UTF8MB4 Kullanımı&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;strong&gt;UTF-8&lt;&#x2F;strong&gt; yerine &lt;strong&gt;UTF8MB4&lt;&#x2F;strong&gt; kullanmanızı tavsiye ederim. Tam anlamıyla
Unicode desteği sağlamış olursunuz. Bunun için &lt;code&gt;&#x2F;etc&#x2F;mysql&#x2F;my.cnf&lt;&#x2F;code&gt;
içerisine aşağıdaki satırları eklemeniz yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;ini&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-ini &quot;&gt;&lt;code class=&quot;language-ini&quot; data-lang=&quot;ini&quot;&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;[client]
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;default-character-set &lt;&#x2F;span&gt;&lt;span&gt;= utf8mb4
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;[mysqld]
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;collation_server &lt;&#x2F;span&gt;&lt;span&gt;= utf8mb4_unicode_ci
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;character_set_client &lt;&#x2F;span&gt;&lt;span&gt;= utf8mb4
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;character_set_server &lt;&#x2F;span&gt;&lt;span&gt;= utf8mb4
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;skip-character-set-client-handshake
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;[mysql]
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;default-character-set &lt;&#x2F;span&gt;&lt;span&gt;= utf8mb4
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;phpmyadmin-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#phpmyadmin-kurulumu&quot; aria-label=&quot;Anchor link for: phpmyadmin-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
PHPMyAdmin Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Web tabanlı olarak MySQL veritabanlarını yönetmek için kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Öncelikle &lt;code&gt;phpmyadmin&lt;&#x2F;code&gt; paketini sistemimize kuralım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; phpmyadmin
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;PHP tarafında &lt;code&gt;mysqli&lt;&#x2F;code&gt; modülünü aktif etmemiz gerekiyor, bunu PHP kısmında
anlattık.&lt;&#x2F;p&gt;
&lt;p&gt;Ek olarak &lt;code&gt;bz2&lt;&#x2F;code&gt; ve &lt;code&gt;zip&lt;&#x2F;code&gt; modüllerini de aktif hale getirerek sıkıştırılmış
dosya desteği de ekleyebilirsiniz.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;phpmyadmin-apache-ayarlamasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#phpmyadmin-apache-ayarlamasi&quot; aria-label=&quot;Anchor link for: phpmyadmin-apache-ayarlamasi&quot;&gt;###&lt;&#x2F;a&gt;
PHPMyAdmin-Apache Ayarlaması&lt;&#x2F;h3&gt;
&lt;p&gt;Apache tarafında &lt;code&gt;...&#x2F;phpmyadmin&lt;&#x2F;code&gt; olarak girildiğinde PHPMyAdmin gözükmesi
için birkaç ayarlama yapmamız gerekiyor. Bunun için
&lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;extra&#x2F;phpmyadmin.conf&lt;&#x2F;code&gt; dosyası oluşturup içerisine
aşağıdakileri ekleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Alias&lt;&#x2F;span&gt;&lt;span&gt; &#x2F;phpmyadmin &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;&#x2F;usr&#x2F;share&#x2F;webapps&#x2F;phpMyAdmin&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;Directory &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;&#x2F;usr&#x2F;share&#x2F;webapps&#x2F;phpMyAdmin&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;DirectoryIndex&lt;&#x2F;span&gt;&lt;span&gt; index.php
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;AllowOverride&lt;&#x2F;span&gt;&lt;span&gt; All
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Options&lt;&#x2F;span&gt;&lt;span&gt; FollowSymlinks
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Require&lt;&#x2F;span&gt;&lt;span&gt; all granted
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;Directory&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından bunu &lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; dosyası içerisinde dahil edelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# PHPMyAdmin
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Include&lt;&#x2F;span&gt;&lt;span&gt; conf&#x2F;extra&#x2F;phpmyadmin.conf
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;phpmyadmin-disardan-erisimi-kapatma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#phpmyadmin-disardan-erisimi-kapatma&quot; aria-label=&quot;Anchor link for: phpmyadmin-disardan-erisimi-kapatma&quot;&gt;###&lt;&#x2F;a&gt;
PHPMyAdmin Dışardan Erişimi Kapatma&lt;&#x2F;h3&gt;
&lt;p&gt;Varsayılan olarak web servis dosyalarımızı görebilen herkes PHPMyAdmin
arayüzüne de erişebilmekte. Bunu devredışı bırakmak için
&lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;extra&#x2F;phpmyadmin.conf&lt;&#x2F;code&gt; dosyasında yer alan &lt;code&gt;Require all  granted&lt;&#x2F;code&gt; parametresini &lt;code&gt;Require local&lt;&#x2F;code&gt; olarak değiştirmemiz yeterli.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;otomatik-giris&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#otomatik-giris&quot; aria-label=&quot;Anchor link for: otomatik-giris&quot;&gt;###&lt;&#x2F;a&gt;
Otomatik Giriş&lt;&#x2F;h3&gt;
&lt;p&gt;PHPMyAdmin kısmında veritabanı kullanıcı bilgilerini girmenize gerek
kalmadan otomatik olarak giriş yapmak için
&lt;code&gt;&#x2F;etc&#x2F;webapps&#x2F;phpmyadmin&#x2F;config.inc.php&lt;&#x2F;code&gt;
dosyasındaki &lt;code&gt;auth_type&lt;&#x2F;code&gt; değerini &lt;code&gt;config&lt;&#x2F;code&gt; olarak değiştirin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;$cfg[&amp;#39;Servers&amp;#39;][$i][&amp;#39;auth_type&amp;#39;] = &amp;#39;config&amp;#39;;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından alt satıra aşağıdaki eklemeleri yapın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;$cfg[&amp;#39;Servers&amp;#39;][$i][&amp;#39;user&amp;#39;] = &amp;#39;root&amp;#39;;
&lt;&#x2F;span&gt;&lt;span&gt;$cfg[&amp;#39;Servers&amp;#39;][$i][&amp;#39;password&amp;#39;] = &amp;#39;mysql_parolasi&amp;#39;; 
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;sorun-cozme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sorun-cozme&quot; aria-label=&quot;Anchor link for: sorun-cozme&quot;&gt;##&lt;&#x2F;a&gt;
Sorun Çözme&lt;&#x2F;h2&gt;
&lt;p&gt;Apache, MySQL, PHP ve PHPMyAdmin ile ilgili karşılaşabileceğiniz sorunlara
ait çözümler.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;turkce-karakter-donusumu-sorunu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#turkce-karakter-donusumu-sorunu&quot; aria-label=&quot;Anchor link for: turkce-karakter-donusumu-sorunu&quot;&gt;###&lt;&#x2F;a&gt;
Türkçe Karakter Dönüşümü Sorunu&lt;&#x2F;h3&gt;
&lt;p&gt;Laravel, Symfony veya diğer kütüphanelerde olduğu gibi kendi
sisteminizde de oluşabilecek bir sorun. PHP
karakterin büyük harf, küçük harf dönüşümü için sistem dilini kullanmakta.
Bu sebeple Arch Linux sisteminize öncelikle &lt;code&gt;en_US.UTF-8&lt;&#x2F;code&gt; dilini
eklemelisiniz. Bunun için &lt;code&gt;&#x2F;etc&#x2F;locale.gen&lt;&#x2F;code&gt; dosyasında yer alan aşağıdaki
satırın yorum simgesini(#) kaldırın.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;en_US.UTF-8 UTF-8
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından bu dil dosyalarının oluşturulmasını sağlayın.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;locale-gen
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Son olarak &lt;code&gt;LC_CTYPE&lt;&#x2F;code&gt; yani PHP’nin dönüşüm için kullandığı dili
değiştirmeliyiz. Bunun için de &lt;code&gt;&#x2F;etc&#x2F;locale.conf&lt;&#x2F;code&gt; içerisine aşağıdaki
satırı ekleyin.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;LC_CTYPE=en_US.UTF-8
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu sorunun farkedilmesi ve çözümü ile ilgili yardımlarından dolayı Burak
Karahan’a (&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;twitter.com&#x2F;mburakkarahan&quot;&gt;@mburakkarahan&lt;&#x2F;a&gt;) teşekkür
ederim.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;bitis&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bitis&quot; aria-label=&quot;Anchor link for: bitis&quot;&gt;##&lt;&#x2F;a&gt;
Bitiş&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;LAMP Stack&lt;&#x2F;strong&gt; kurulumunu tamamladık. Dilerseniz geliştirme ortamınızı daha
da iyi hale getirebilirsiniz. Makalede hata veya eksik varsa özür dilerim,
bunları bana iletirseniz gerekli eklemeleri yapacağım. Teşekkürler.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;contributors&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#contributors&quot; aria-label=&quot;Anchor link for: contributors&quot;&gt;#&lt;&#x2F;a&gt;
Contributors&lt;&#x2F;h1&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Github&lt;&#x2F;th&gt;&lt;th&gt;Email&lt;&#x2F;th&gt;&lt;th&gt;Website&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;ahmetbarut&quot;&gt;ahmetbarut&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;td&gt;ahmetbarut588@gmail.com&lt;&#x2F;td&gt;&lt;td&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;ahmetbarut.net&quot;&gt;ahmetbarut.net&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Laravel - Elixir</title>
        <published>2016-05-21T19:22:00+00:00</published>
        <updated>2016-05-21T19:22:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/laravel-elixir/"/>
        <id>https://era.yayd.in/blog/laravel-elixir/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/laravel-elixir/">&lt;p&gt;Laravel &lt;strong&gt;Elixir&lt;&#x2F;strong&gt;, Gulp görevlerinizi kolay bir şekilde yönetmenizi sağlar. CSS ve Javascript derleyicileriyle birlikte test araçlarını da kullanmanıza imkan verir. Eğer daha önce Gulp ve asset yönetimi yaptıysanız Elixir işinize çok yarayacaktır.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;kurulum&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kurulum&quot; aria-label=&quot;Anchor link for: kurulum&quot;&gt;##&lt;&#x2F;a&gt;
Kurulum&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;node-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#node-kurulumu&quot; aria-label=&quot;Anchor link for: node-kurulumu&quot;&gt;###&lt;&#x2F;a&gt;
Node Kurulumu&lt;&#x2F;h3&gt;
&lt;p&gt;Elixir’i kullanmak için geliştirme yaptığınız sistemde &lt;strong&gt;Node.js&lt;&#x2F;strong&gt;’nin kurulu olması gerekmektedir.&lt;&#x2F;p&gt;
&lt;p&gt;Node.js’nin kurulu olup olmadığını görmek için aşağıdaki komutla versiyon kontrolü yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;node -v
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Windows ve OS X için Node.js kurulumunu &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;nodejs.org&#x2F;en&#x2F;download&#x2F;&quot;&gt;nodejs.org&lt;&#x2F;a&gt; adresinden yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Arch Linux kullanıcıları da &lt;code&gt;pacman -S nodejs&lt;&#x2F;code&gt; ile kurulum yapabilir.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;gulp&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#gulp&quot; aria-label=&quot;Anchor link for: gulp&quot;&gt;###&lt;&#x2F;a&gt;
Gulp&lt;&#x2F;h3&gt;
&lt;p&gt;NodeJS kurulumundan sonra &lt;strong&gt;Gulp&lt;&#x2F;strong&gt; kurulumu yapmamız gerekiyor.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;npm&lt;&#x2F;span&gt;&lt;span&gt; install&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -g&lt;&#x2F;span&gt;&lt;span&gt; gulp
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;laravel-elixir&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#laravel-elixir&quot; aria-label=&quot;Anchor link for: laravel-elixir&quot;&gt;###&lt;&#x2F;a&gt;
Laravel Elixir&lt;&#x2F;h3&gt;
&lt;p&gt;Gulp ve NodeJS kurulumundan sonra geriye kalan Elixir kurulumunu yapmak. Bunun için Laravel projenizin olduğu klasöre ulaşıp &lt;code&gt;package.json&lt;&#x2F;code&gt; dosyasındaki NPM paketlerini kurmanız gerekiyor.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;npm&lt;&#x2F;span&gt;&lt;span&gt; install
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;calistirma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#calistirma&quot; aria-label=&quot;Anchor link for: calistirma&quot;&gt;##&lt;&#x2F;a&gt;
Çalıştırma&lt;&#x2F;h2&gt;
&lt;p&gt;Elixir’i çalıştırmak için özel bir komuta ihtiyacınız yok. Normal bir şekilde &lt;code&gt;gulp&lt;&#x2F;code&gt; çalıştırmanız yeterli. &lt;strong&gt;Production&lt;&#x2F;strong&gt; ortamında &lt;code&gt;--production&lt;&#x2F;code&gt; parametresi ekleyerek Elixir’in CSS ve JS dosyalarını küçültmesini isteyebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# Tüm gulp görevlerini çalıştır
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gulp
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;# Tüm gulp görevlerini çalıştır ve CSS&#x2F;JS dosyalarını küçült
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gulp --production
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Dosya Değişimlerini Kontrol Etmek&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Her değişiklikten sonra &lt;code&gt;gulp&lt;&#x2F;code&gt; komutunu çalıştırmak zor olacaktır. Bu nedenle dosya değişikliğinde otomatik olarak &lt;code&gt;gulp&lt;&#x2F;code&gt; çalışmasını istiyorsanız &lt;code&gt;watch&lt;&#x2F;code&gt; görevini çalıştırabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gulp&lt;&#x2F;span&gt;&lt;span&gt; watch
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;stil-dosyalariyla-calismak&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#stil-dosyalariyla-calismak&quot; aria-label=&quot;Anchor link for: stil-dosyalariyla-calismak&quot;&gt;##&lt;&#x2F;a&gt;
Stil Dosyalarıyla Çalışmak&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;code&gt;gulpfile.js&lt;&#x2F;code&gt; dosyası yazdığınız tüm Elixir görevlerini barındırmaktadır. Bu dosya üzerinden elixir işlemlerini belirteceğiz.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;less&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#less&quot; aria-label=&quot;Anchor link for: less&quot;&gt;###&lt;&#x2F;a&gt;
Less&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;lesscss.org&#x2F;&quot;&gt;Less&lt;&#x2F;a&gt; dosyalarını CSS olarak derlemek için &lt;code&gt;less&lt;&#x2F;code&gt; metodunu kullanacağız. &lt;code&gt;less&lt;&#x2F;code&gt; metodu parametre olarak derlemek istediğiniz less dosyasının yerini istemektedir. Varsayılan olarak, derlenen CSS &lt;code&gt;public&#x2F;css&#x2F;app.css&lt;&#x2F;code&gt; olarak çıktı verecektir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;less&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.less&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Dilerseniz birden çok Less dosyasını tek bir CSS dosyası da yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;less&lt;&#x2F;span&gt;&lt;span&gt;([
&lt;&#x2F;span&gt;&lt;span&gt;    	&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.less&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;,
&lt;&#x2F;span&gt;&lt;span&gt;        &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;arayuz.less&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;span&gt;    ]);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eğer &lt;code&gt;public&#x2F;css&#x2F;app.css&lt;&#x2F;code&gt; yerine farklı bir dizine farklı dosya adı ile kaydetmek istiyorsanız ikinci parametre olarak verebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;less&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.less&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;, &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;public&#x2F;stylesheets&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;); &lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; public&#x2F;stylesheets&#x2F;app.css çıktısı verecektir
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;less&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.less&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;, &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;public&#x2F;stylesheets&#x2F;style.css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;); &lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; public&#x2F;stylesheets&#x2F;style.css çıktısı verecektir
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;sass&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sass&quot; aria-label=&quot;Anchor link for: sass&quot;&gt;###&lt;&#x2F;a&gt;
Sass&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;sass&lt;&#x2F;code&gt; metodu ile &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;sass-lang.com&#x2F;&quot;&gt;Sass&lt;&#x2F;a&gt; dosyalarınızı CSS’e derleyebilirsiniz. Sass dosyaları &lt;code&gt;resources&#x2F;assets&#x2F;sass&lt;&#x2F;code&gt; klasöründe yer almalıdır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;sass&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.scss&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;less&lt;&#x2F;code&gt; metoduna benzer olarak birden çok Sass dosyasını tek bir CSS dosyası yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;sass&lt;&#x2F;span&gt;&lt;span&gt;([
&lt;&#x2F;span&gt;&lt;span&gt;    	&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.scss&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;,
&lt;&#x2F;span&gt;&lt;span&gt;        &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;arayuz.scss&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;span&gt;    ], &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;public&#x2F;assets&#x2F;css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;duz-css&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#duz-css&quot; aria-label=&quot;Anchor link for: duz-css&quot;&gt;###&lt;&#x2F;a&gt;
Düz CSS&lt;&#x2F;h3&gt;
&lt;p&gt;Birden çok CSS dosyasını tek bir CSS dosyası yapmak istiyorsanız &lt;code&gt;styles&lt;&#x2F;code&gt; metodunu kullanabilirsiniz. Belirttiğiniz CSS dosyası isimleri &lt;code&gt;resources&#x2F;assets&#x2F;css&lt;&#x2F;code&gt; klasöründe aranacaktır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;styles&lt;&#x2F;span&gt;&lt;span&gt;([
&lt;&#x2F;span&gt;&lt;span&gt;    	&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;normalize.css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;,
&lt;&#x2F;span&gt;&lt;span&gt;        &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;main.css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;span&gt;    ]);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Sass ve Less’te olduğu gibi çıktı dizinini ikinci parametre ile değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;kaynak-haritasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kaynak-haritasi&quot; aria-label=&quot;Anchor link for: kaynak-haritasi&quot;&gt;###&lt;&#x2F;a&gt;
Kaynak Haritası&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;strong&gt;Source Map&lt;&#x2F;strong&gt; dosyaları derleme işlemi hakkında bilgileri saklamaktadır. Tarayıcılar bu sayede debugta hangi satırın nerede olduğunu gösterebilmektedir.&lt;&#x2F;p&gt;
&lt;p&gt;Eğer &lt;strong&gt;source maps&lt;&#x2F;strong&gt; dosyalarının derlenmesini istemiyorsanız bunu Elixir’e belirtebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;config&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sourcemaps &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;false&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;sass&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.scss&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;script-dosyalariyla-calismak&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#script-dosyalariyla-calismak&quot; aria-label=&quot;Anchor link for: script-dosyalariyla-calismak&quot;&gt;##&lt;&#x2F;a&gt;
Script Dosyalarıyla Çalışmak&lt;&#x2F;h2&gt;
&lt;p&gt;Elixir ayrıca Javascript çalışmalarınız için de birçok fonksiyon sağlamakta. ECMAScript 6 derlemesi, Coffeescript, Browserify, küçültme(minify) ve basit concat işlemi yapmak gibi.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;coffeescript&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#coffeescript&quot; aria-label=&quot;Anchor link for: coffeescript&quot;&gt;###&lt;&#x2F;a&gt;
CoffeeScript&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;coffee&lt;&#x2F;code&gt; metodu ile &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;coffeescript.org&#x2F;&quot;&gt;CoffeeScript&lt;&#x2F;a&gt; dosyalarınızı JS’ye derleyebilirsiniz. &lt;code&gt;coffee&lt;&#x2F;code&gt; metodu ilk parametre olarak CoffeeScript dosyalarının  yollarını alır. Çıktıyı &lt;code&gt;app.js&lt;&#x2F;code&gt; olarak &lt;code&gt;public&#x2F;js&lt;&#x2F;code&gt; klasörüne oluşturur.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;coffee&lt;&#x2F;span&gt;&lt;span&gt;([&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.coffee&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;, &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;arayuz.coffee&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;]);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;browserify&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#browserify&quot; aria-label=&quot;Anchor link for: browserify&quot;&gt;###&lt;&#x2F;a&gt;
Browserify&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;browserify&lt;&#x2F;code&gt; metodu ile &lt;strong&gt;require&lt;&#x2F;strong&gt; işlemi, &lt;strong&gt;JSX&lt;&#x2F;strong&gt; ve &lt;strong&gt;ECMAScript 6&lt;&#x2F;strong&gt; kullanımı  gibi özellikler sağlar.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;browserify&lt;&#x2F;code&gt;’da script dosyaları &lt;code&gt;resources&#x2F;assets&#x2F;js&lt;&#x2F;code&gt; içerisinde aranır ve çıktı olarak &lt;code&gt;public&#x2F;js&#x2F;main.js&lt;&#x2F;code&gt; çıktısı verir. Dilerseniz ikinci parametre ile çıktı dizinini değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;browserify&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;main.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;browserify&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;main.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;, &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;public&#x2F;javascripts&#x2F;main.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;babel&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#babel&quot; aria-label=&quot;Anchor link for: babel&quot;&gt;###&lt;&#x2F;a&gt;
Babel&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;babel&lt;&#x2F;code&gt; metodu Javascript’te &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;babeljs.io&#x2F;docs&#x2F;learn-es2015&#x2F;&quot;&gt;ECMAScript 6 ve 7&lt;&#x2F;a&gt; ve &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;facebook.github.io&#x2F;react&#x2F;docs&#x2F;jsx-in-depth.html&quot;&gt;JSX&lt;&#x2F;a&gt; kullanmanızı sağlar. İlk parametre olarak &lt;code&gt;resources&#x2F;assets&#x2F;js&lt;&#x2F;code&gt; klasöründe yer alan dosya listesini ister ve çıktı olarak &lt;code&gt;public&#x2F;js&#x2F;all.js&lt;&#x2F;code&gt; çıktısı verir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;babel&lt;&#x2F;span&gt;&lt;span&gt;([
&lt;&#x2F;span&gt;&lt;span&gt;    	&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;odeme.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;,
&lt;&#x2F;span&gt;&lt;span&gt;        &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;urun.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;,
&lt;&#x2F;span&gt;&lt;span&gt;        &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;react-component.jsx&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;span&gt;    ]);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Çıktı dizinini ve dosya ismini değiştirmek için ikinci parametre ile belirtmeniz yeterlidir.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;scriptler&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#scriptler&quot; aria-label=&quot;Anchor link for: scriptler&quot;&gt;###&lt;&#x2F;a&gt;
Scriptler&lt;&#x2F;h3&gt;
&lt;p&gt;Birden çok JS dosyanız var ve bunları tek bir JS dosyası yapmak istiyorsanız &lt;code&gt;scripts&lt;&#x2F;code&gt; metodunu kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;scripts&lt;&#x2F;code&gt; metodu ilk parametre olarak &lt;code&gt;resources&#x2F;assets&#x2F;js&lt;&#x2F;code&gt; içerisindeki dosya isimlerini alır, çıktı olarak &lt;code&gt;public&#x2F;js&#x2F;all.js&lt;&#x2F;code&gt; verir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;scripts&lt;&#x2F;span&gt;&lt;span&gt;([
&lt;&#x2F;span&gt;&lt;span&gt;        &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;jquery.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;,
&lt;&#x2F;span&gt;&lt;span&gt;        &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;app.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;span&gt;    ]);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eğer bir klasör içerisindeki tüm JS dosyaları için bu işlemi yapmak istiyorsanız &lt;code&gt;scriptsIn&lt;&#x2F;code&gt; metodunu kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;scriptsIn&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;public&#x2F;js&#x2F;klasor&#x2F;yolu&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;dosyalari-klasorleri-kopyalama&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#dosyalari-klasorleri-kopyalama&quot; aria-label=&quot;Anchor link for: dosyalari-klasorleri-kopyalama&quot;&gt;##&lt;&#x2F;a&gt;
Dosyaları &amp;amp; Klasörleri Kopyalama&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;code&gt;copy&lt;&#x2F;code&gt; metodu ile belirli dosya ve klasörleri istediğiniz yere kopyalayabilirsiniz. Bu metotda verdiğiniz yollar projenin ana dizinine göre çalışır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;copy&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;vendor&#x2F;foo&#x2F;bar.css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;, &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;public&#x2F;css&#x2F;bar.css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;copy&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;bower_components&#x2F;font-awesome&#x2F;icons&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;, &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;public&#x2F;icons&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;versiyonlama&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#versiyonlama&quot; aria-label=&quot;Anchor link for: versiyonlama&quot;&gt;##&lt;&#x2F;a&gt;
Versiyonlama&lt;&#x2F;h2&gt;
&lt;p&gt;Birçok geliştirici derlediği assetlerin tarayıcıda önbelleğe takılmaması için benzersiz bir kodla veya tarih ile asset dosyalarını çağırır. Bu işlemi Elixir &lt;code&gt;version&lt;&#x2F;code&gt; metodu ile yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;version&lt;&#x2F;code&gt; metodu ilk parametre olarak &lt;code&gt;public&lt;&#x2F;code&gt; içerisindeki dosyanın ismini alır. Sonuna benzersiz bir kod koyarak versiyonlama yapmanızı sağlar. Örneğin &lt;code&gt;all-16d570a7.css&lt;&#x2F;code&gt; gibi.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;version&lt;&#x2F;span&gt;&lt;span&gt;(&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;css&#x2F;all.css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Versiyonlamadan sonra bu CSS dosyasını ön tarafta çağırmanız için PHP &lt;code&gt;elixir&lt;&#x2F;code&gt; yardımcı fonksiyonunu kullanmanız gerekiyor. &lt;code&gt;elixir&lt;&#x2F;code&gt; fonksiyonu otomatik olarak kodlu dosyanın ismini getirecektir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;html&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-html &quot;&gt;&lt;code class=&quot;language-html&quot; data-lang=&quot;html&quot;&gt;&lt;span&gt;{% raw %}
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;link &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;rel&lt;&#x2F;span&gt;&lt;span&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;stylesheet&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;href&lt;&#x2F;span&gt;&lt;span&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;{{ elixir(&amp;#39;css&#x2F;all.css&amp;#39;) }}&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;{% endraw %}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Dilerseniz elixir’e dizi olarak değer gönderip çoklu dosya versiyonlaması yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;version&lt;&#x2F;span&gt;&lt;span&gt;([&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;css&#x2F;all.css&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;, &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;js&#x2F;app.js&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;]);
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;browsersync&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#browsersync&quot; aria-label=&quot;Anchor link for: browsersync&quot;&gt;##&lt;&#x2F;a&gt;
BrowserSync&lt;&#x2F;h2&gt;
&lt;p&gt;BrowserSync, frontenddeki yaptığınız değişikliklerde web tarayıcısının otomatik yenilenmesini sağlar. &lt;code&gt;browserSync&lt;&#x2F;code&gt; metodu ile &lt;strong&gt;BrowserSync&lt;&#x2F;strong&gt; sunucusu çalıştırabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;browserSync&lt;&#x2F;span&gt;&lt;span&gt;();
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;gulp watch&lt;&#x2F;code&gt; komutu çalıştırdığınızda &lt;strong&gt;3000&lt;&#x2F;strong&gt; portu üzerinden web uygulamanıza bağlantıyı sağlayabilirsiniz. [http:&#x2F;&#x2F;homestead.app:3000] adresinden BrowserSync’e ulaşabileceksiniz. Fakat &lt;strong&gt;homestead.app&lt;&#x2F;strong&gt; dışında bir domain üzerinden geliştirme yapıyorsanız bunu da değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;js&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-js &quot;&gt;&lt;code class=&quot;language-js&quot; data-lang=&quot;js&quot;&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;elixir&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;) {
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mix&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;browserSync&lt;&#x2F;span&gt;&lt;span&gt;({
&lt;&#x2F;span&gt;&lt;span&gt;        proxy: &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;proje.app&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;span&gt;    });
&lt;&#x2F;span&gt;&lt;span&gt;});
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Geliştirme Ortamım</title>
        <published>2016-05-21T19:22:00+00:00</published>
        <updated>2016-05-21T19:22:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/linux-gelistirme-ortamim/"/>
        <id>https://era.yayd.in/blog/linux-gelistirme-ortamim/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/linux-gelistirme-ortamim/">&lt;p&gt;Bu yazıda hazırladığım geliştirme ortamını araçlar ve dağıtımla birlikte anlattım.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;post-images&#x2F;arch-linux-empty-screen.jpg&quot; alt=&quot;Empty Screen&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;tl-dr&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#tl-dr&quot; aria-label=&quot;Anchor link for: tl-dr&quot;&gt;##&lt;&#x2F;a&gt;
TL;DR&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;post-images&#x2F;arch-linux-ranger-irssi-mutt.jpg&quot; alt=&quot;ranger-irssi-mutt&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Eğer bütün yazıyı okumaya üşendiyseniz aşağıda özetlenmiş bir tablosu bulunmakta.&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Dağıtım&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Arch Linux&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Dosya Yöneticisi&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;ranger&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Window Manager&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;i3&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Bar&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;polybar&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Metin Editörü&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;vim&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;IRC İstemcisi&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;irssi&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;E-Posta İstemcisi&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;mutt&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Tarayıcı&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;elinks&lt;&#x2F;strong&gt;, &lt;strong&gt;chromium&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Video Oynatıcı&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;vlc&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;CD&#x2F;DVD Aracı&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;brasero&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Disk Kullanım Analizi&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;baobab&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Disk Temizleme Aracı&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;bleachbit&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Sistem Kullanımı Aracı&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;htop&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Ofis Araçları&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;LibreOffice&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Terminal&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;urxvt&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Sanallaştırma&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;virtualbox&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Markdown Editör&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;remarkable&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Torrent İstemcisi&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;transmission&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Yayın&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;OBS&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Resim Görüntüleyici&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;feh&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Müzik Oynatıcı&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;cmus&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Ekran Yönetimi&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;arandr&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;FTP GUI&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;filezilla&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Webserver&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;LAMP Stack&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;API Test Aracı&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;postman&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;PHP IDE&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;PHPStorm&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;C&#x2F;C++ IDE&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;CLion&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Python IDE&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;PyCharm&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h2 id=&quot;isletim-sistemi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#isletim-sistemi&quot; aria-label=&quot;Anchor link for: isletim-sistemi&quot;&gt;##&lt;&#x2F;a&gt;
İşletim Sistemi&lt;&#x2F;h2&gt;
&lt;p&gt;Geliştirme ortamımda işletim sistemi olarak &lt;strong&gt;GNU&#x2F;Linux&lt;&#x2F;strong&gt; ve &lt;strong&gt;Arch Linux&lt;&#x2F;strong&gt; dağıtımını kullandım. Arch Linux dağıtımını
seçmemdeki sebepler şu şekilde.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lightweight&lt;&#x2F;strong&gt; - Olabildiğince hafifletilmiş bir halde. Gereksiz paket ve program bolluğu yok.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Topluluk ve Wiki&lt;&#x2F;strong&gt; - Her türlü sorunda kolayca çözüm bulabileceğiniz bir wikiye sahip ve IRC&#x2F;Mailing ile diğer
geliştiricilere ulaşıp sorununuzun çözümü hakkında yardım alabiliyorsunuz.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AUR&lt;&#x2F;strong&gt; - Resmi depolarda paket bulunmadığı zaman diğer kullanıcıların oluşturduğu &lt;em&gt;PKGBUILD&lt;&#x2F;em&gt; üzerinden programların
kurulumunu sağlayabiliyorsunuz. NPM veya Pip gibi paketleri de içerisinde bulundurduğu için tek sistem üzerinden tüm
paketlerinizi güncelleyebiliyorsunuz.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Trusted User&lt;&#x2F;strong&gt; - &lt;em&gt;AUR&lt;&#x2F;em&gt; üzerinden sizin açtığınız paketler yeterli kullanıma ulaştığında resmi depolara da
ulaşabiliyor ve dağıtımın geliştirilmesine katkı sağlayabiliyorsunuz. Bu da yükselme imkanı demek oluyor.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Rolling Release&lt;&#x2F;strong&gt; - Full Rolling olarak dağıtımını gerçekleştiren &lt;em&gt;Arch Linux&lt;&#x2F;em&gt;, paketlerin dağıtımını ikiye
ayırmadan ufak düzenlemeler dahi olsa sürekli güncel tutmanızı sağlıyor.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;grafiksel-arayuz&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#grafiksel-arayuz&quot; aria-label=&quot;Anchor link for: grafiksel-arayuz&quot;&gt;##&lt;&#x2F;a&gt;
Grafiksel Arayüz&lt;&#x2F;h2&gt;
&lt;p&gt;İstenilen masaüstü veya pencere yönetim sistemi kullanılabiliyor. Benim tercihim &lt;strong&gt;Window Manager&lt;&#x2F;strong&gt; oldu. Tamamen klavye
ile yönetilebilir olması ve kat kat &lt;strong&gt;lightweight&lt;&#x2F;strong&gt; olması işlerimi kolaylaştırıyor.&lt;&#x2F;p&gt;
&lt;p&gt;Window Manager olarak &lt;em&gt;2bwm&lt;&#x2F;em&gt;, &lt;em&gt;openbox&lt;&#x2F;em&gt;, &lt;em&gt;awesome&lt;&#x2F;em&gt; ve &lt;em&gt;i3&lt;&#x2F;em&gt; kullandım. Bunlardan &lt;strong&gt;i3&lt;&#x2F;strong&gt; benim daha çok hoşuma
gitti. Ayarlamaların tamamen kullanıcı tarafından olması ve ayar dosyasının olabildiğince yalın olması bu tercihe itti.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;bar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bar&quot; aria-label=&quot;Anchor link for: bar&quot;&gt;###&lt;&#x2F;a&gt;
Bar&lt;&#x2F;h3&gt;
&lt;p&gt;Çalışma ortamlarını, sistem değerlerini ve &lt;em&gt;tray&lt;&#x2F;em&gt; ikonları görmek için bir bar yazılımı seçmem gerekti. Daha önce
&lt;em&gt;xfce4 bar&lt;&#x2F;em&gt;, &lt;em&gt;polybar&lt;&#x2F;em&gt;, &lt;em&gt;i3bar&lt;&#x2F;em&gt; ve &lt;em&gt;i3blocks&lt;&#x2F;em&gt; kullanmıştım. Tercihim ilk başta i3bar olmuştu fakat yeterli
gelmediği için daha sonra &lt;strong&gt;polybar&lt;&#x2F;strong&gt; kullanımına geçtim. Olabildiğince renkli ve özelleştirilebilir bir yapısı var.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;ag&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ag&quot; aria-label=&quot;Anchor link for: ag&quot;&gt;###&lt;&#x2F;a&gt;
Ağ&lt;&#x2F;h3&gt;
&lt;p&gt;Komut satırından ağa bağlanmayı sevmediğim için &lt;strong&gt;Network Manager&lt;&#x2F;strong&gt; tercih ettim. Polybar üzerinden erişebilmek için
kendi &lt;em&gt;applet&lt;&#x2F;em&gt; ini kullanıyorum.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;araclar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#araclar&quot; aria-label=&quot;Anchor link for: araclar&quot;&gt;##&lt;&#x2F;a&gt;
Araçlar&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;dosya-yoneticisi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#dosya-yoneticisi&quot; aria-label=&quot;Anchor link for: dosya-yoneticisi&quot;&gt;###&lt;&#x2F;a&gt;
Dosya Yöneticisi&lt;&#x2F;h3&gt;
&lt;p&gt;Dosya yöneticisi olarak &lt;strong&gt;ranger&lt;&#x2F;strong&gt; kullanıyorum. Kullanımı &lt;em&gt;vim&lt;&#x2F;em&gt; benzeri olduğu için işlem yapmak ve gezinmek oldukça
kolay.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;metin-editoru&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#metin-editoru&quot; aria-label=&quot;Anchor link for: metin-editoru&quot;&gt;###&lt;&#x2F;a&gt;
Metin Editörü&lt;&#x2F;h3&gt;
&lt;p&gt;Konsoldan yapacağım işler için &lt;strong&gt;vim&lt;&#x2F;strong&gt; kullanıyorum. Eğer yapacağım iş çoklu dosyalarda hakimiyet istiyorsa
&lt;strong&gt;sublime text&lt;&#x2F;strong&gt; tercih ediyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;irc-client&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#irc-client&quot; aria-label=&quot;Anchor link for: irc-client&quot;&gt;###&lt;&#x2F;a&gt;
IRC Client&lt;&#x2F;h3&gt;
&lt;p&gt;IRC sunucularına ve odalarına bağlanmak için &lt;strong&gt;irssi&lt;&#x2F;strong&gt; kullanıyorum. Hafiflik konusunda gerçekten çok iyi.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;mail-client&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#mail-client&quot; aria-label=&quot;Anchor link for: mail-client&quot;&gt;###&lt;&#x2F;a&gt;
Mail Client&lt;&#x2F;h3&gt;
&lt;p&gt;E-Postalarımı kontrol etmek için &lt;strong&gt;mutt&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;tarayici&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#tarayici&quot; aria-label=&quot;Anchor link for: tarayici&quot;&gt;###&lt;&#x2F;a&gt;
Tarayıcı&lt;&#x2F;h3&gt;
&lt;p&gt;Bu konuda malesef lightweight tercihi yapamıyorum. İş gereği webkit bir tarayıcı kullanmam gerekiyor. Bu sebeple
&lt;strong&gt;chromium&lt;&#x2F;strong&gt; kullanıyorum. Fakat terminalden webe erişmek istediğim durumlar için &lt;strong&gt;elinks&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;video-oynatici&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#video-oynatici&quot; aria-label=&quot;Anchor link for: video-oynatici&quot;&gt;###&lt;&#x2F;a&gt;
Video Oynatıcı&lt;&#x2F;h3&gt;
&lt;p&gt;Bu konuda da lightweight tercih yapılmasının saçma olduğunu düşünüyorum. Bu sebeple &lt;strong&gt;vlc&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;dvd-cd-araci&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#dvd-cd-araci&quot; aria-label=&quot;Anchor link for: dvd-cd-araci&quot;&gt;###&lt;&#x2F;a&gt;
DVD&#x2F;CD Aracı&lt;&#x2F;h3&gt;
&lt;p&gt;Disk işlemleri için &lt;strong&gt;Brasero&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;disk-kullanim-analizi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#disk-kullanim-analizi&quot; aria-label=&quot;Anchor link for: disk-kullanim-analizi&quot;&gt;###&lt;&#x2F;a&gt;
Disk Kullanım Analizi&lt;&#x2F;h3&gt;
&lt;p&gt;Disk kullanımının analizini yapmak için &lt;strong&gt;baobab&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;sistem-kullanimi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sistem-kullanimi&quot; aria-label=&quot;Anchor link for: sistem-kullanimi&quot;&gt;###&lt;&#x2F;a&gt;
Sistem Kullanımı&lt;&#x2F;h3&gt;
&lt;p&gt;Sistem kullanımının analizi için &lt;strong&gt;htop&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;ofis-araclari&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ofis-araclari&quot; aria-label=&quot;Anchor link for: ofis-araclari&quot;&gt;###&lt;&#x2F;a&gt;
Ofis Araçları&lt;&#x2F;h3&gt;
&lt;p&gt;Döküman ve tablolar için &lt;strong&gt;LibreOffice&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;sanallastirma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sanallastirma&quot; aria-label=&quot;Anchor link for: sanallastirma&quot;&gt;###&lt;&#x2F;a&gt;
Sanallaştırma&lt;&#x2F;h3&gt;
&lt;p&gt;Aktif olarak kullandığım bir başka sanal makine yok fakat gerektiğinde kullanmak için &lt;strong&gt;VirtualBox&lt;&#x2F;strong&gt; tercih ediyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;yayin&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#yayin&quot; aria-label=&quot;Anchor link for: yayin&quot;&gt;###&lt;&#x2F;a&gt;
Yayın&lt;&#x2F;h3&gt;
&lt;p&gt;Broadcast işlemi için &lt;strong&gt;OBS&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;markdown-editor&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#markdown-editor&quot; aria-label=&quot;Anchor link for: markdown-editor&quot;&gt;###&lt;&#x2F;a&gt;
Markdown Editor&lt;&#x2F;h3&gt;
&lt;p&gt;Markdown yazıları için &lt;strong&gt;Remarkable&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;terminal&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#terminal&quot; aria-label=&quot;Anchor link for: terminal&quot;&gt;###&lt;&#x2F;a&gt;
Terminal&lt;&#x2F;h3&gt;
&lt;p&gt;Terminal aracı olarak &lt;strong&gt;terminator&lt;&#x2F;strong&gt; kullanıyorum. Program içerisinde pencere ayırma fonksiyonu oldukça işime yarıyor.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;torrent-istemci&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#torrent-istemci&quot; aria-label=&quot;Anchor link for: torrent-istemci&quot;&gt;###&lt;&#x2F;a&gt;
Torrent İstemci&lt;&#x2F;h3&gt;
&lt;p&gt;Torrent client olarak &lt;strong&gt;Transmission&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;resim-goruntuleyici&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#resim-goruntuleyici&quot; aria-label=&quot;Anchor link for: resim-goruntuleyici&quot;&gt;###&lt;&#x2F;a&gt;
Resim Görüntüleyici&lt;&#x2F;h3&gt;
&lt;p&gt;Resim görüntüleyici olarak &lt;strong&gt;feh&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;muzik-oynatici&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#muzik-oynatici&quot; aria-label=&quot;Anchor link for: muzik-oynatici&quot;&gt;###&lt;&#x2F;a&gt;
Müzik Oynatıcı&lt;&#x2F;h3&gt;
&lt;p&gt;Müzik oynatıcı olarak &lt;strong&gt;cmus&lt;&#x2F;strong&gt; kullanıyorum. vim benzeri bir kullanımı olması rahatlık veriyor.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;diger-araclar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#diger-araclar&quot; aria-label=&quot;Anchor link for: diger-araclar&quot;&gt;###&lt;&#x2F;a&gt;
Diğer Araçlar&lt;&#x2F;h3&gt;
&lt;p&gt;Ekstra ekranların yönetimi için &lt;strong&gt;arandr&lt;&#x2F;strong&gt;, gereksiz dosyaların temizleme işlemini otomatikleştirmek için &lt;strong&gt;bleachbit&lt;&#x2F;strong&gt;,&lt;&#x2F;p&gt;
&lt;h2 id=&quot;gelistirici-araclari&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#gelistirici-araclari&quot; aria-label=&quot;Anchor link for: gelistirici-araclari&quot;&gt;##&lt;&#x2F;a&gt;
Geliştirici Araçları&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;php-ide&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-ide&quot; aria-label=&quot;Anchor link for: php-ide&quot;&gt;###&lt;&#x2F;a&gt;
PHP IDE&lt;&#x2F;h3&gt;
&lt;p&gt;PHP IDE olarak &lt;strong&gt;PHPStorm&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;c-c-ide&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#c-c-ide&quot; aria-label=&quot;Anchor link for: c-c-ide&quot;&gt;###&lt;&#x2F;a&gt;
C&#x2F;C++ IDE&lt;&#x2F;h3&gt;
&lt;p&gt;C ve C++ geliştirmeleri için &lt;strong&gt;CLion&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;python-ide&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#python-ide&quot; aria-label=&quot;Anchor link for: python-ide&quot;&gt;###&lt;&#x2F;a&gt;
Python IDE&lt;&#x2F;h3&gt;
&lt;p&gt;Python geliştirmeleri için &lt;strong&gt;PyCharm&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;ftp&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ftp&quot; aria-label=&quot;Anchor link for: ftp&quot;&gt;###&lt;&#x2F;a&gt;
FTP&lt;&#x2F;h3&gt;
&lt;p&gt;FTP için &lt;strong&gt;Filezilla&lt;&#x2F;strong&gt; kullanıyorum. Yakın bir zamanda daha lightweight bir araç tercih edeceğim.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;webserver&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#webserver&quot; aria-label=&quot;Anchor link for: webserver&quot;&gt;###&lt;&#x2F;a&gt;
Webserver&lt;&#x2F;h3&gt;
&lt;p&gt;Web server olarak &lt;strong&gt;LAMP Stack&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;api&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#api&quot; aria-label=&quot;Anchor link for: api&quot;&gt;###&lt;&#x2F;a&gt;
API&lt;&#x2F;h3&gt;
&lt;p&gt;API’leri test etmek için &lt;strong&gt;postman&lt;&#x2F;strong&gt; kullanıyorum.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Laravel - Hataları Viewde Gösterme</title>
        <published>2016-04-12T19:20:00+00:00</published>
        <updated>2016-04-12T19:20:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/laravel-hatalari-viewde-gosterme/"/>
        <id>https://era.yayd.in/blog/laravel-hatalari-viewde-gosterme/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/laravel-hatalari-viewde-gosterme/">&lt;p&gt;Laravel’de &lt;code&gt;withError()&lt;&#x2F;code&gt; ile veya &lt;em&gt;Request Validation&lt;&#x2F;em&gt; sonucu döndürdüğünüz hataları göstermek için aşağıdaki kodu kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;{% raw %}
&lt;&#x2F;span&gt;&lt;span&gt;@if($errors-&amp;gt;has())
&lt;&#x2F;span&gt;&lt;span&gt;	@foreach ($errors-&amp;gt;all() as $error)
&lt;&#x2F;span&gt;&lt;span&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;{{ $error }}&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@endforeach
&lt;&#x2F;span&gt;&lt;span&gt;@endif
&lt;&#x2F;span&gt;&lt;span&gt;{% endraw %}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Bootstrap Framework&lt;&#x2F;strong&gt; kullanıyorsanız aşağıdaki &lt;em&gt;snippet&lt;&#x2F;em&gt;’i kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;{% raw %}
&lt;&#x2F;span&gt;&lt;span&gt;@if($errors-&amp;gt;has())
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;class&lt;&#x2F;span&gt;&lt;span&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;alert alert-danger&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@foreach ($errors-&amp;gt;all() as $error)
&lt;&#x2F;span&gt;&lt;span&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;{{ $error }}&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@endforeach
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;@endif
&lt;&#x2F;span&gt;&lt;span&gt;{% endraw %}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Zurb Foundation Framework&lt;&#x2F;strong&gt; kullanıyorsanız aşağıdaki &lt;em&gt;snippet&lt;&#x2F;em&gt;’i kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;{% raw %}
&lt;&#x2F;span&gt;&lt;span&gt;@if($errors-&amp;gt;has())
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;class&lt;&#x2F;span&gt;&lt;span&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;callout alert&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@foreach ($errors-&amp;gt;all() as $error)
&lt;&#x2F;span&gt;&lt;span&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;{{ $error }}&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@endforeach
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;@endif
&lt;&#x2F;span&gt;&lt;span&gt;{% endraw %}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Semantic UI&lt;&#x2F;strong&gt; kullanıyorsanız aşağıdaki &lt;em&gt;snippet&lt;&#x2F;em&gt;’i kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;{% raw %}
&lt;&#x2F;span&gt;&lt;span&gt;@if($errors-&amp;gt;has())
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;class&lt;&#x2F;span&gt;&lt;span&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;ui negative message&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@foreach ($errors-&amp;gt;all() as $error)
&lt;&#x2F;span&gt;&lt;span&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;{{ $error }}&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@endforeach
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;@endif
&lt;&#x2F;span&gt;&lt;span&gt;{% endraw %}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;UIKit&lt;&#x2F;strong&gt; kullanıyorsanız aşağıdaki &lt;em&gt;snippet&lt;&#x2F;em&gt;’i kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span&gt;{% raw %}
&lt;&#x2F;span&gt;&lt;span&gt;@if($errors-&amp;gt;has())
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;class&lt;&#x2F;span&gt;&lt;span&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;uk-alert uk-alert-danger&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@foreach ($errors-&amp;gt;all() as $error)
&lt;&#x2F;span&gt;&lt;span&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;{{ $error }}&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	@endforeach
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;div&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;@endif
&lt;&#x2F;span&gt;&lt;span&gt;{% endraw %}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Yukarıdaki snippetleri olduğu gibi kullanabilirsiniz.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Linux - Screenfetch Kurulumu</title>
        <published>2016-01-28T16:04:00+00:00</published>
        <updated>2016-01-28T16:04:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/linux-screenfetch-kurulumu/"/>
        <id>https://era.yayd.in/blog/linux-screenfetch-kurulumu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/linux-screenfetch-kurulumu/">&lt;p&gt;Screenfetch’i indirin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;wget -O&lt;&#x2F;span&gt;&lt;span&gt; screenfetch &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;https:&#x2F;&#x2F;raw.github.com&#x2F;KittyKatt&#x2F;screenFetch&#x2F;master&#x2F;screenfetch-dev&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Çalıştırılabilir dosya olarak belirtin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;chmod&lt;&#x2F;span&gt;&lt;span&gt; +x screenfetch
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Genel kullanım için &lt;code&gt;&#x2F;usr&#x2F;bin&lt;&#x2F;code&gt;’e taşıyın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span&gt; mv screenfetch &#x2F;usr&#x2F;bin&#x2F;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Terminal açılınca otomatik çalıştırmak için &lt;code&gt;~&#x2F;.bashrc&lt;&#x2F;code&gt; dosyasını açın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;nano ~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;.bashrc
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Dosyaya &lt;code&gt;screenfetch&lt;&#x2F;code&gt; programını ekleyin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;screenfetch
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Linux Mint - Ruby 2 Kurulumu</title>
        <published>2016-01-14T02:26:00+00:00</published>
        <updated>2016-01-14T02:26:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/linux-mint-ruby-2-kurulum/"/>
        <id>https://era.yayd.in/blog/linux-mint-ruby-2-kurulum/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/linux-mint-ruby-2-kurulum/">&lt;blockquote&gt;
&lt;p&gt;Kurulumdan önce, sisteminizdeki ruby paketini kaldırın.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Öncelikle Ruby için gerekli bağımlılıkları kuralım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span&gt; apt-get update
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span&gt; apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ardından &lt;code&gt;rbenv&lt;&#x2F;code&gt; ve &lt;code&gt;ruby-build&lt;&#x2F;code&gt; kurulumlarını yapalım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;cd
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span&gt; clone git:&#x2F;&#x2F;github.com&#x2F;sstephenson&#x2F;rbenv.git .rbenv
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;echo &lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;export PATH=&amp;quot;$HOME&#x2F;.rbenv&#x2F;bin:$PATH&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39; &amp;gt;&amp;gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;.bashrc
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;echo &lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;eval &amp;quot;$(rbenv init -)&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39; &amp;gt;&amp;gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;.bashrc
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;exec &lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;SHELL
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span&gt; clone git:&#x2F;&#x2F;github.com&#x2F;sstephenson&#x2F;ruby-build.git &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;.rbenv&#x2F;plugins&#x2F;ruby-build
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;echo &lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;export PATH=&amp;quot;$HOME&#x2F;.rbenv&#x2F;plugins&#x2F;ruby-build&#x2F;bin:$PATH&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39; &amp;gt;&amp;gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;.bashrc
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;exec &lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;SHELL
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span&gt; clone https:&#x2F;&#x2F;github.com&#x2F;sstephenson&#x2F;rbenv-gem-rehash.git &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;.rbenv&#x2F;plugins&#x2F;rbenv-gem-rehash
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;rbenv&lt;&#x2F;span&gt;&lt;span&gt; install 2.2.3
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;rbenv&lt;&#x2F;span&gt;&lt;span&gt; global 2.2.3
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;ruby -v
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eğer &lt;code&gt;rbenv install 2.2.3&lt;&#x2F;code&gt; sırasında hata alıyorsanız, ilgili log dosyasını kontrol edin.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;SSLv3_method undeclared&lt;&#x2F;strong&gt; hatası için aşağıdaki şekilde rbenv install kurulumu yapın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;curl -fsSL&lt;&#x2F;span&gt;&lt;span&gt; https:&#x2F;&#x2F;gist.github.com&#x2F;mislav&#x2F;055441129184a1512bb5.txt | &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;rbenv&lt;&#x2F;span&gt;&lt;span&gt; install&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --patch&lt;&#x2F;span&gt;&lt;span&gt; 2.2.3
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;RubyGems’e dökümanları indirmemesi gerektiğini söyleyip, &lt;code&gt;Bundler&lt;&#x2F;code&gt; kurulumu yapalım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;echo &lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;gem: --no-ri --no-rdoc&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot; &amp;gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;~&lt;&#x2F;span&gt;&lt;span&gt;&#x2F;.gemrc
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; install bundler
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Sudo Ayarları</title>
        <published>2015-12-13T16:46:00+00:00</published>
        <updated>2015-12-13T16:46:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/sudo-ayarlari/"/>
        <id>https://era.yayd.in/blog/sudo-ayarlari/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/sudo-ayarlari/">&lt;p&gt;Sudo, yani “kullanıcı yerine yapmak”, belirli kullanıcı veya gruplara
root yetkisiyle komut gerçekleştirmesini sağlar.&lt;&#x2F;p&gt;
&lt;p&gt;Sudo, &lt;code&gt;su&lt;&#x2F;code&gt; nun alternatifi olarak kullanılıyor. &lt;code&gt;su&lt;&#x2F;code&gt; dan farklı olarak,
&lt;code&gt;root shell&lt;&#x2F;code&gt; açmak yerine tek komutluk &lt;code&gt;root&lt;&#x2F;code&gt; yetkisi sağlamaktadır.
Sadece gerektiğinde &lt;code&gt;root&lt;&#x2F;code&gt; yetkisi kullanmanızı sağlar.&lt;&#x2F;p&gt;
&lt;p&gt;Sudo ayrıca diğer kullanıcılar gibi komut yazmanıza da olanak sağlar. Ek
olarak kullanılan komutları ve başarısız girişleri kayıt altına
alır(loglar).&lt;&#x2F;p&gt;
&lt;h2 id=&quot;kurulum&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kurulum&quot; aria-label=&quot;Anchor link for: kurulum&quot;&gt;##&lt;&#x2F;a&gt;
Kurulum&lt;&#x2F;h2&gt;
&lt;p&gt;Pacman üzerinden kurulum için &lt;code&gt;sudo&lt;&#x2F;code&gt; paketini kurmanız yeterli.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;kullanim&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kullanim&quot; aria-label=&quot;Anchor link for: kullanim&quot;&gt;##&lt;&#x2F;a&gt;
Kullanım&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;code&gt;sudo&lt;&#x2F;code&gt; yu kullanmak için öncelikle ayarlamaları yapmalısınız. Aşağıda
ayarlamaları detaylı bir şekilde anlattım.&lt;&#x2F;p&gt;
&lt;p&gt;Örnek olarak, pacman i kullanmak için:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span&gt; pacman&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; -Syu
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Detaylı kullanımı öğrenmek için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;man&lt;&#x2F;span&gt;&lt;span&gt; sudo
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;ayarlamalar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ayarlamalar&quot; aria-label=&quot;Anchor link for: ayarlamalar&quot;&gt;##&lt;&#x2F;a&gt;
Ayarlamalar&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;ayarlari-goruntuleme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ayarlari-goruntuleme&quot; aria-label=&quot;Anchor link for: ayarlari-goruntuleme&quot;&gt;###&lt;&#x2F;a&gt;
Ayarları Görüntüleme&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;sudo -ll&lt;&#x2F;code&gt; komutu ile şuanki ayarlamaları görebilirsiniz. Bir kullanıcı
için ayarlamaları görmek istiyorsanız komutun sonuna kullanıcı adını
eklemeniz yeterli.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;visudo-kullanimi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#visudo-kullanimi&quot; aria-label=&quot;Anchor link for: visudo-kullanimi&quot;&gt;###&lt;&#x2F;a&gt;
Visudo Kullanımı&lt;&#x2F;h3&gt;
&lt;p&gt;Sudo için ayarlamaları tutan dosya: &lt;code&gt;&#x2F;etc&#x2F;sudoers&lt;&#x2F;code&gt;. &lt;strong&gt;her zaman&lt;&#x2F;strong&gt;
&lt;code&gt;visudo&lt;&#x2F;code&gt; komutu ile bu dosyayı düzenlemeniz gerekiyor. &lt;code&gt;visudo&lt;&#x2F;code&gt; komutu
&lt;code&gt;sudoers&lt;&#x2F;code&gt; dosyasını kilitleyip, geçici bir dosyaya kaydedip, ayar
dosyasının uygun düzende olup olmadığını kontrol edip &lt;code&gt;&#x2F;etc&#x2F;sudoers&lt;&#x2F;code&gt;
dosyasına kopyalar.&lt;&#x2F;p&gt;
&lt;p&gt;Visudo için varsayılan editor &lt;code&gt;vi&lt;&#x2F;code&gt;dir. Nano ile &lt;code&gt;visudo&lt;&#x2F;code&gt; kullanmak
istiyorsanız EDITOR ortam değişkenini güncellemelisiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;EDITOR&lt;&#x2F;span&gt;&lt;span&gt;=&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;nano &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;visudo
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;ornek-ayarlar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ornek-ayarlar&quot; aria-label=&quot;Anchor link for: ornek-ayarlar&quot;&gt;###&lt;&#x2F;a&gt;
Örnek Ayarlar&lt;&#x2F;h3&gt;
&lt;p&gt;Bir kullanıcının &lt;code&gt;sudo&lt;&#x2F;code&gt; komutu ile &lt;code&gt;root&lt;&#x2F;code&gt; yetkisine sahip olmasına izin
vermek için şu satırı eklemelisiniz:&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;KULLANICI_ADI ALL=(ALL) ALL
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;wheel&lt;&#x2F;code&gt; grubundaki tüm kullanıcıların &lt;code&gt;sudo&lt;&#x2F;code&gt; erişimi olması için:&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;%whell ALL=(ALL) ALL
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;sudo&lt;&#x2F;code&gt; komutu kullanılırken şifre sormasını istemiyorsanız:&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;Defaults:KULLANICI_ADI !authenticate
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Kullanıcının belli başlı komutları kullanabilmesi için:&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;KULLANICI_ADI ALL=&#x2F;usr&#x2F;bin&#x2F;halt,&#x2F;usr&#x2F;bin&#x2F;pacman -Syu
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;sudoers-varsayilan-dosya-izinleri&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sudoers-varsayilan-dosya-izinleri&quot; aria-label=&quot;Anchor link for: sudoers-varsayilan-dosya-izinleri&quot;&gt;###&lt;&#x2F;a&gt;
Sudoers Varsayılan Dosya İzinleri&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;sudoers&lt;&#x2F;code&gt; dosyasının sahibi ve grubu 0 olarak tanımlanmalıdır. Dosya
izinleri 0440 olarak belirtilmelidir. Bu izinler varsayılan olarak
ayarlanır. Eğer bir durumdan dolayı bu izinleri değiştirirseniz,
tekrardan eski haline döndürmelisiniz. Aksi takdirde &lt;code&gt;sudo&lt;&#x2F;code&gt;
çalışmayacaktır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;chown -c&lt;&#x2F;span&gt;&lt;span&gt; root:root &#x2F;etc&#x2F;sudoers
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;chmod -c&lt;&#x2F;span&gt;&lt;span&gt; 0440 &#x2F;etc&#x2F;sudoers
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;bazi-ortam-degiskenleri-tutmak&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bazi-ortam-degiskenleri-tutmak&quot; aria-label=&quot;Anchor link for: bazi-ortam-degiskenleri-tutmak&quot;&gt;###&lt;&#x2F;a&gt;
Bazı Ortam Değişkenleri Tutmak&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;code&gt;sudo&lt;&#x2F;code&gt; komutu kullanılırken bazı ortam değişkenlerini tutmak
isteyebilirsiniz. Bunun için &lt;code&gt;sudoers&lt;&#x2F;code&gt; dosyasında:&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;Defaults env_keep += &amp;quot;ftp_proxy http_proxy https_proxy no_proxy&amp;quot;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu ayarlama ile &lt;code&gt;ftp_proxy&lt;&#x2F;code&gt; &lt;code&gt;http_proxy&lt;&#x2F;code&gt; &lt;code&gt;https_proxy&lt;&#x2F;code&gt; &lt;code&gt;no_proxy&lt;&#x2F;code&gt; ortam değişkenleri
duracaktır.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Arch Linux - Yaourt Kurulumu</title>
        <published>2015-10-08T16:46:00+00:00</published>
        <updated>2015-10-08T16:46:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/arch-linux-yaourt-kurulumu/"/>
        <id>https://era.yayd.in/blog/arch-linux-yaourt-kurulumu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/arch-linux-yaourt-kurulumu/">&lt;p&gt;Arch User Repository-diğer adıyla AUR- binlerce paketi barındırmaktadır (Steam da
dahil). AUR’dan paket kurulumu oldukça basit. Yaourt ile çok daha kolay paket kurulumu
yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;pacman.conf&lt;&#x2F;strong&gt; dosyasını açın&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;nano&lt;&#x2F;span&gt;&lt;span&gt; &#x2F;etc&#x2F;pacman.conf
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;En alt satıra alttaki depoyu ekleyin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;[archlinuxfr]
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;SigLevel&lt;&#x2F;span&gt;&lt;span&gt; = Never
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Server&lt;&#x2F;span&gt;&lt;span&gt; = http:&#x2F;&#x2F;repo.archlinux.fr&#x2F;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;arch
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Depoları güncelleyin ve yaourt paketini kurun.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -Sy
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; yaourt
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Yaourt kurulumunu kontrol edin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yaourt --version
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Basit Bir SDL Projesi Oluşturma</title>
        <published>2015-09-25T17:52:00+00:00</published>
        <updated>2015-09-25T17:52:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/basit-bir-sdl-projesi-olusturma/"/>
        <id>https://era.yayd.in/blog/basit-bir-sdl-projesi-olusturma/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/basit-bir-sdl-projesi-olusturma/">&lt;p&gt;Öncelikle C++ ile basit bir SDL kodu yazmamız gerekiyor.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;c++&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-c++ &quot;&gt;&lt;code class=&quot;language-c++&quot; data-lang=&quot;c++&quot;&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;#include &lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;SDL2&#x2F;SDL.h&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;#include &lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;stdio.h&lt;&#x2F;span&gt;&lt;span&gt;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;int &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;main&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;int &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;argc&lt;&#x2F;span&gt;&lt;span&gt;, &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;char&lt;&#x2F;span&gt;&lt;span&gt;* &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;args&lt;&#x2F;span&gt;&lt;span&gt;[])
&lt;&#x2F;span&gt;&lt;span&gt;{
&lt;&#x2F;span&gt;&lt;span&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;if&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;SDL_Init&lt;&#x2F;span&gt;&lt;span&gt;(SDL_INIT_VIDEO) &amp;lt; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0&lt;&#x2F;span&gt;&lt;span&gt;){
&lt;&#x2F;span&gt;&lt;span&gt;		&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;printf&lt;&#x2F;span&gt;&lt;span&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;SDL baslatilamadi! SDL Hatasi: &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;%s&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;\n&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;, &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;SDL_GetError&lt;&#x2F;span&gt;&lt;span&gt;());
&lt;&#x2F;span&gt;&lt;span&gt;	} &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;else &lt;&#x2F;span&gt;&lt;span&gt;{
&lt;&#x2F;span&gt;&lt;span&gt;		&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;printf&lt;&#x2F;span&gt;&lt;span&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;SDL baslatildi!&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;\n&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;);
&lt;&#x2F;span&gt;&lt;span&gt;	}
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Projemizi derlemede  kullanacağım bir &lt;code&gt;Makefile&lt;&#x2F;code&gt; dosyası oluşturalım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;make&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-make &quot;&gt;&lt;code class=&quot;language-make&quot; data-lang=&quot;make&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#OBJS derlenecek dosyalar
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;OBJS &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;main.cpp
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#CC kullanacağımız derleyici
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;CC &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;g++
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#CFLAGS derleyiciye özel değerlerimiz, -w = Uyarıları gizle
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;CFLAGS &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;-w -Wall
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#LFLAGS kütüphane linkleyicileri
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;LFLAGS &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;-lSDL2
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#OBJ çalıştırılabilir dosyamızın adı olacak
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;OBJ &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;main
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;#sadece `make` kullanıldığında çalışacak olan komutumuz
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;all &lt;&#x2F;span&gt;&lt;span&gt;: &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;$(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;OBJS&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;)
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;$(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;CC&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;) $(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;OBJS&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;) $(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;CFLAGS&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;) $(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;LFLAGS&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;) &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;-o &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;$(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;OBJ&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;)
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Projemizi &lt;code&gt;Make&lt;&#x2F;code&gt; ile derleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;make
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Projemizi çalıştıralım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;.&#x2F;main
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Arch Linux - Ruby ve Jekyll Kurulumu</title>
        <published>2015-09-24T01:58:00+00:00</published>
        <updated>2015-09-24T01:58:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/arch-linux-ruby-jekyll-kurulumu/"/>
        <id>https://era.yayd.in/blog/arch-linux-ruby-jekyll-kurulumu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/arch-linux-ruby-jekyll-kurulumu/">&lt;h2 id=&quot;ruby-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ruby-kurulumu&quot; aria-label=&quot;Anchor link for: ruby-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Ruby Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Ruby ile birlikte artık RubyGems de kuruluyor. O yüzden ayrıca bir RubyGems kurulumu
yapmayacağız.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; ruby
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;rubygems-ayarlamasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#rubygems-ayarlamasi&quot; aria-label=&quot;Anchor link for: rubygems-ayarlamasi&quot;&gt;##&lt;&#x2F;a&gt;
RubyGems Ayarlaması&lt;&#x2F;h2&gt;
&lt;p&gt;RubyGems kurulu fakat gemlerin içerisindeki çalıştırılabilir dosyaları direk
çalıştıramıyoruz. Tam yol belirtmemiz gerekiyor. Bu sorunu çözmek için PATH dizinine
RubyGems yolunu ekleyeceğiz. &lt;code&gt;~&#x2F;.bashrc&lt;&#x2F;code&gt; dosyasına şu eklemeyi yapalım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;PATH&lt;&#x2F;span&gt;&lt;span&gt;=&amp;quot;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;ruby -e &lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;print Gem.user_dir&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;)&#x2F;bin:&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;PATH&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Kurulu gemleri göster&lt;&#x2F;strong&gt;mek için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; list
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Bir gem ile ilgili bilgi al&lt;&#x2F;strong&gt;mak için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; spec gem_adi
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Şu ana kadar yaptığımız komutların hepsi &lt;code&gt;--local&lt;&#x2F;code&gt; değeri ile çalışıyor. Yani bizim
sistemimizdeki &lt;strong&gt;gem&lt;&#x2F;strong&gt;leri tarıyor&#x2F;inceliyor. Eğer uzak sunucudaki gemleri incelemek
istiyorsak &lt;code&gt;--remote&lt;&#x2F;code&gt; değeri eklememiz yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; spec mysql&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --remote
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;MySQL &lt;strong&gt;gem&lt;&#x2F;strong&gt;i yüklü olmasada uzak sunucudan bilgisini getirecektir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Gem yükle&lt;&#x2F;strong&gt;mek için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; install mysql
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu komutla beraber &lt;strong&gt;mysql&lt;&#x2F;strong&gt; gem yüklenecektir fakat dökümantasyonları da indirecek.
Eğer &lt;strong&gt;production&lt;&#x2F;strong&gt; ortamında kurulum yapıyorsanız dökümantasyona ihtiyacınız
olmayabilir. Dökümantasyon olmadan kurulum yapmak için &lt;code&gt;--no-document&lt;&#x2F;code&gt; yapmanız
yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; install mysql&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt; --no-document
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Yüklü gemleri güncelleştir&lt;&#x2F;strong&gt;mek için&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; update
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;bundler-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#bundler-kurulumu&quot; aria-label=&quot;Anchor link for: bundler-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Bundler Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Bundler&lt;&#x2F;strong&gt;, &lt;strong&gt;Ruby&lt;&#x2F;strong&gt;’nin paket yönetim amaçlı oluşturulmuş bir &lt;strong&gt;gem&lt;&#x2F;strong&gt;idir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; install bundler
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;jekyll-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#jekyll-kurulumu&quot; aria-label=&quot;Anchor link for: jekyll-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Jekyll Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Ruby&lt;&#x2F;strong&gt; ve &lt;strong&gt;RubyGems&lt;&#x2F;strong&gt; kurulumu yaptığımıza göre &lt;strong&gt;Jekyll&lt;&#x2F;strong&gt; kurulumu yapabiliriz.&lt;&#x2F;p&gt;
&lt;p&gt;Kurulumdan önce &lt;strong&gt;gem&lt;&#x2F;strong&gt;leri güncelleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; update
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;jekyll&lt;&#x2F;code&gt; &lt;strong&gt;gem&lt;&#x2F;strong&gt;i kuralım.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; install jekyll
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;jekyll-baslangic-projesi-olusturma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#jekyll-baslangic-projesi-olusturma&quot; aria-label=&quot;Anchor link for: jekyll-baslangic-projesi-olusturma&quot;&gt;##&lt;&#x2F;a&gt;
Jekyll Başlangıç Projesi Oluşturma&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;code&gt;jekyll&lt;&#x2F;code&gt; &lt;strong&gt;gem&lt;&#x2F;strong&gt;i ile birlikte  &lt;code&gt;jekyll&lt;&#x2F;code&gt;  komutumuz geliyor. Örnek bir proje oluşturmak
için şu komutu kullanmamız yeterli.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;jekyll&lt;&#x2F;span&gt;&lt;span&gt; new proje_ismi
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;jekyll-projesini-calistirma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#jekyll-projesini-calistirma&quot; aria-label=&quot;Anchor link for: jekyll-projesini-calistirma&quot;&gt;##&lt;&#x2F;a&gt;
Jekyll Projesini Çalıştırma&lt;&#x2F;h2&gt;
&lt;p&gt;Oluşturduğumuz projenin dizinine ulaşarak şu komutla jekyll’i çalıştırabiliriz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;jekyll&lt;&#x2F;span&gt;&lt;span&gt; serve
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;http:&#x2F;&#x2F;127.0.0.1:4000&lt;&#x2F;code&gt; adresinden Jekyll projemizi inceleyebiliriz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;github-pages-gemlerini-yukleme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#github-pages-gemlerini-yukleme&quot; aria-label=&quot;Anchor link for: github-pages-gemlerini-yukleme&quot;&gt;##&lt;&#x2F;a&gt;
Github Pages Gemlerini Yükleme&lt;&#x2F;h2&gt;
&lt;p&gt;Jekyll projemizi Github Pages’e göre yapmamız için Github Pages’ın kullandığı
&lt;strong&gt;gem&lt;&#x2F;strong&gt;leri kullanmamız gerekiyor. (Tabi ki localde oluşturup _site klasörünü
yükleyebiliriz fakat saçma olmaz mı?)&lt;&#x2F;p&gt;
&lt;p&gt;Projenin ana dizininde &lt;code&gt;Gemfile&lt;&#x2F;code&gt; isminde bir dosya oluşturun ve içeriğini şu şekilde
düzenleyin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;source &lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;https:&#x2F;&#x2F;rubygems.org&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem &lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;github-pages&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;code&gt;bundle install&lt;&#x2F;code&gt; komutu ile gerekli gemlerin yüklenmesini sağlayın.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ekstra-safe-yaml-psych-sorunu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ekstra-safe-yaml-psych-sorunu&quot; aria-label=&quot;Anchor link for: ekstra-safe-yaml-psych-sorunu&quot;&gt;##&lt;&#x2F;a&gt;
Ekstra: safe_yaml Psych sorunu&lt;&#x2F;h2&gt;
&lt;p&gt;Eğer &lt;code&gt;uninitialized constant Psych::Nodes (NameError)&lt;&#x2F;code&gt; şeklinde bir hata alıyorsanız
bunun sebebi Github-Pages’in belirli bir Psych versiyonu ile çalışmasından
kaynaklanıyor. Eski bir psych versiyonunu kullanmanız gerekiyor.&lt;&#x2F;p&gt;
&lt;p&gt;Github Pages projenizi şu komut ile çalıştırırsanız bir sorun oluşmayacaktır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;gem&lt;&#x2F;span&gt;&lt;span&gt; cleanup
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;bundle&lt;&#x2F;span&gt;&lt;span&gt; exec jekyll serve
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Linux - SDL2 Kurulumu</title>
        <published>2015-09-24T01:00:00+00:00</published>
        <updated>2015-09-24T01:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/linux-sdl2-kurulumu/"/>
        <id>https://era.yayd.in/blog/linux-sdl2-kurulumu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/linux-sdl2-kurulumu/">&lt;h3 id=&quot;yum-paket-yoneticisi-ile-kurulum&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#yum-paket-yoneticisi-ile-kurulum&quot; aria-label=&quot;Anchor link for: yum-paket-yoneticisi-ile-kurulum&quot;&gt;###&lt;&#x2F;a&gt;
Yum Paket Yöneticisi ile Kurulum&lt;&#x2F;h3&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yum&lt;&#x2F;span&gt;&lt;span&gt; install SDL2-devel
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;apt-paket-yoneticisi-ile-kurulum&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#apt-paket-yoneticisi-ile-kurulum&quot; aria-label=&quot;Anchor link for: apt-paket-yoneticisi-ile-kurulum&quot;&gt;###&lt;&#x2F;a&gt;
Apt Paket Yöneticisi ile Kurulum&lt;&#x2F;h3&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;apt-get&lt;&#x2F;span&gt;&lt;span&gt; install libsdl2-dev
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;pacman-paket-yoneticisi-ile-kurulum&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#pacman-paket-yoneticisi-ile-kurulum&quot; aria-label=&quot;Anchor link for: pacman-paket-yoneticisi-ile-kurulum&quot;&gt;###&lt;&#x2F;a&gt;
Pacman Paket Yöneticisi ile Kurulum&lt;&#x2F;h3&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;pacman -S&lt;&#x2F;span&gt;&lt;span&gt; sdl2
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;kaynaktan-derleme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kaynaktan-derleme&quot; aria-label=&quot;Anchor link for: kaynaktan-derleme&quot;&gt;###&lt;&#x2F;a&gt;
Kaynaktan Derleme&lt;&#x2F;h3&gt;
&lt;blockquote&gt;
&lt;p&gt;Kaynaktan derlemek için &lt;code&gt;base-devel&lt;&#x2F;code&gt; paketinin yüklü olduğundan emin olunuz.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Kaynak kodu tar.gz olarak &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.libsdl.org&#x2F;download-2.0.php&quot;&gt;buradan&lt;&#x2F;a&gt; indirin.&lt;&#x2F;p&gt;
&lt;p&gt;İndirdiğiniz tar.gz dosyasını açın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;tar -xf&lt;&#x2F;span&gt;&lt;span&gt; SDL2-X.x.x.tar.gz
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Açılan klasörün içeriğine gidelim. (&lt;code&gt;cd SDL2-X.x.x&lt;&#x2F;code&gt;)&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;.&#x2F;configure
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;make
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;make&lt;&#x2F;span&gt;&lt;span&gt; install
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Windows için Virtual Host Alias Modülü</title>
        <published>2015-05-29T16:34:00+00:00</published>
        <updated>2015-05-29T16:34:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/windows-virtual-host-alias/"/>
        <id>https://era.yayd.in/blog/windows-virtual-host-alias/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/windows-virtual-host-alias/">&lt;p&gt;Daha önce paylaştığımız mod_vhost_alias’ın Windows ile ilgili ayarlaması.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Windows 8.1 üzerinde test edilmiştir.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Öncelikle modülü aktifleştirmek için &lt;code&gt;C:&#x2F;Localhost&#x2F;Apache&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; dosyasını düzenliyoruz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;#LoadModule vhost_alias_module modules&#x2F;mod_vhost_alias.so
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;satırındaki &lt;code&gt;#&lt;&#x2F;code&gt; işaretini kaldırarak modülü aktifleştiriyoruz.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;Modülü aktifleştirdiğimize göre ayarlamasını yapabiliriz. Bunun için &lt;code&gt;c:&#x2F;Localhost&#x2F;Apache&#x2F;conf&#x2F;alias.conf&lt;&#x2F;code&gt; dosyası oluşturup düzenliyoruz. İçerisine aşağıdaki kod bloğunu giriyoruz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;&amp;lt;Virtualhost *:80&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;    VirtualDocumentRoot &amp;quot;c:&#x2F;Webserver&#x2F;%-2+&#x2F;public&amp;quot;
&lt;&#x2F;span&gt;&lt;span&gt;    ServerName vhosts.dev
&lt;&#x2F;span&gt;&lt;span&gt;    ServerAlias *.dev
&lt;&#x2F;span&gt;&lt;span&gt;    UseCanonicalName Off
&lt;&#x2F;span&gt;&lt;span&gt;    LogFormat &amp;quot;%V %h %l %u %t &amp;#39;%r&amp;#39; %s %b&amp;quot; common
&lt;&#x2F;span&gt;&lt;span&gt;    ErrorLog &amp;quot;c:&#x2F;Webserver&#x2F;vhosts-error_log&amp;quot;
&lt;&#x2F;span&gt;&lt;span&gt;    &amp;lt;Directory &amp;quot;c:&#x2F;Webserver&#x2F;*&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;        Options Indexes FollowSymLinks MultiViews
&lt;&#x2F;span&gt;&lt;span&gt;        AllowOverride All
&lt;&#x2F;span&gt;&lt;span&gt;        Order allow,deny
&lt;&#x2F;span&gt;&lt;span&gt;        Allow from all
&lt;&#x2F;span&gt;&lt;span&gt;    &amp;lt;&#x2F;Directory&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;Virtualhost&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu ayar dosyamızın çalışması için &lt;code&gt;httpd.conf&lt;&#x2F;code&gt; dosyasının en altına&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;# vHost Alias
&lt;&#x2F;span&gt;&lt;span&gt;Include conf&#x2F;alias.conf
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;ekliyoruz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;test&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#test&quot; aria-label=&quot;Anchor link for: test&quot;&gt;##&lt;&#x2F;a&gt;
Test&lt;&#x2F;h2&gt;
&lt;p&gt;Test etmek için &lt;code&gt;c:&#x2F;Webserver&lt;&#x2F;code&gt; içerisine &lt;code&gt;deneme&lt;&#x2F;code&gt; ve &lt;code&gt;deneme&#x2F;public&lt;&#x2F;code&gt; klasörlerini oluşturuyoruz. Henüz Windows’a gerekli ayarı yapmadığımız için &lt;code&gt;deneme.dev&lt;&#x2F;code&gt; bağlantısını &lt;code&gt;127.0.0.1&lt;&#x2F;code&gt; adresine yönlendirmemiz gerekiyor. Bunun için de &lt;code&gt;%windir%&#x2F;system32&#x2F;drivers&#x2F;etc&#x2F;hosts&lt;&#x2F;code&gt; dosyasını düzenliyoruz ve en alt satıra aşağıdakini ekliyoruz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;127.0.0.1 deneme.dev
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Test etmek için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;deneme.dev&quot;&gt;http:&#x2F;&#x2F;deneme.dev&lt;&#x2F;a&gt; adresini kullanacağız.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;dns-server&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#dns-server&quot; aria-label=&quot;Anchor link for: dns-server&quot;&gt;##&lt;&#x2F;a&gt;
DNS Server&lt;&#x2F;h2&gt;
&lt;p&gt;Linux ve Mac için aslında bu işlem oldukça kolay ve rahat.&lt;&#x2F;p&gt;
&lt;p&gt;Local DNS Server olarak &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;sourceforge.net&#x2F;projects&#x2F;acrylic&#x2F;&quot;&gt;Acrylic&lt;&#x2F;a&gt; programını kullanacağız. Kurulumu yaptıktan sonra &lt;code&gt;AcrylicHosts.txt&lt;&#x2F;code&gt; dosyasını düzenlememiz gerekiyor. Dosyayı &lt;code&gt;C:\Program Files (x86)\Acrylic DNS Proxy&lt;&#x2F;code&gt; dizininde bulabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;En alt satıra&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;127.0.0.1 *.dev
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;ekliyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Denetim Masası&lt;&#x2F;strong&gt; &amp;gt; &lt;strong&gt;Ağ Ve İnternet&lt;&#x2F;strong&gt; &amp;gt; &lt;strong&gt;Ağ Bağlantıları&lt;&#x2F;strong&gt; kısmından bağdaştırıcınıza sağ tıklayın ve &lt;strong&gt;Özellikler&lt;&#x2F;strong&gt; kısmına girin. &lt;strong&gt;Internet Protokolü sürüm 4(TCP&#x2F;IPv4)&lt;&#x2F;strong&gt;’e tıklayın ve &lt;strong&gt;Özellikler&lt;&#x2F;strong&gt; deyin.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Aşağıdaki DNS sunucu adreslerini kullan&lt;&#x2F;strong&gt; kısmına &lt;code&gt;127.0.0.1&lt;&#x2F;code&gt; adresini girin.&lt;&#x2F;p&gt;
&lt;p&gt;Artık local bir DNS Proxy sunucunuz oluştu.&lt;&#x2F;p&gt;
&lt;p&gt;Size önerim &lt;code&gt;Acrylic&lt;&#x2F;code&gt; hizmetini sadece geliştirme yaparken açmanız. Diğer zamanlarda DNS cache yüzünden sorunlar yaşayabilirsiniz.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Windows&#x27;a Apache, Mysql, PHP ve PHPMyAdmin Kurulumu</title>
        <published>2015-05-29T16:30:00+00:00</published>
        <updated>2015-05-29T16:30:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/windows-apache-mysql-php-phpmyadmin-kurulumu/"/>
        <id>https://era.yayd.in/blog/windows-apache-mysql-php-phpmyadmin-kurulumu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/windows-apache-mysql-php-phpmyadmin-kurulumu/">&lt;p&gt;Apache, Mysql ve PHP’yi manuel olarak kurmak için bu makaleyi inceleyebilirsiniz.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Windows 8.1 üzerinde test edilmiştir.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;apache-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#apache-kurulumu&quot; aria-label=&quot;Anchor link for: apache-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
Apache Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Apache kurulumu için, Windows XP ve 2003 kullanıcıları &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.microsoft.com&#x2F;download&#x2F;en&#x2F;details.aspx?id=13523&quot;&gt;VC10_x64&lt;&#x2F;a&gt;&#x2F;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.microsoft.com&#x2F;download&#x2F;en&#x2F;details.aspx?id=8328&quot;&gt;VC10_x86&lt;&#x2F;a&gt;  kurmalı, diğer versiyonlar için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.microsoft.com&#x2F;en-us&#x2F;download&#x2F;details.aspx?id=30679&quot;&gt;VC11&lt;&#x2F;a&gt; kurulmalıdır.&lt;&#x2F;p&gt;
&lt;p&gt;Apache kurulumu için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.apachelounge.com&#x2F;&quot;&gt;Apache Lounge&lt;&#x2F;a&gt; sitesini kullanacağız.&lt;&#x2F;p&gt;
&lt;p&gt;Visual C++ Redistributable for Visual Studio 2012 kurulumunu yaptıysanız  &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.apachelounge.com&#x2F;download&#x2F;&quot;&gt;Download&lt;&#x2F;a&gt; kısmından bize uygun olan versiyon ve sistemi indirin.&lt;&#x2F;p&gt;
&lt;p&gt;x64 bir sistem kullandığım için &lt;code&gt;httpd-2.4.12-win64-VC11.zip&lt;&#x2F;code&gt; dosyasını indireceğim.&lt;&#x2F;p&gt;
&lt;p&gt;İndirdiğimiz &lt;strong&gt;zip&lt;&#x2F;strong&gt; dosyasını &lt;code&gt;C:&#x2F;Localhost&#x2F;Apache&lt;&#x2F;code&gt; klasörüne çıkartın.&lt;&#x2F;p&gt;
&lt;p&gt;Artık tek yapmamız gereken ayar dosyasını düzenlemek. Bunun için &lt;code&gt;C:&#x2F;Localhost&#x2F;Apache&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; dosyasını editör ile açıyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;ServerRoot&lt;&#x2F;strong&gt; parametresine &lt;strong&gt;c:&#x2F;Localhost&#x2F;Apache&lt;&#x2F;strong&gt; değerini veriyoruz. Port olarak &lt;strong&gt;80&lt;&#x2F;strong&gt; kullanacağımız için &lt;strong&gt;Listen&lt;&#x2F;strong&gt; parametresini değiştirmemize gerek yok. Eğer başka bir porttan kullanmak istiyorsanız bu parametreyi değiştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;LoadModule&lt;&#x2F;strong&gt; listesinde yer alan &lt;code&gt;LoadModule rewrite_module modules&#x2F;mod_rewrite.so&lt;&#x2F;code&gt; satırının başındaki &lt;code&gt;#&lt;&#x2F;code&gt; yorum satırını kaldırıyoruz. Bu sayede .htaccess ile apache’ye yeniden yazım işlemi tanımlayabileceğiz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;DocumentRoot&lt;&#x2F;strong&gt; parametresine de sunucu dosyalarımızı tutacağımız dizini tanımlayacağız. Çalışma amaçlı ben &lt;code&gt;C:&#x2F;Webserver&lt;&#x2F;code&gt; dizinini kullanacağım. Aynı şekilde &lt;strong&gt;&amp;lt;Directory “”&amp;gt;&lt;&#x2F;strong&gt; parametresini de düzenliyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;Dosyayı kaydedip, konfigürasyon dosyamızı test etmek için &lt;code&gt;C:&#x2F;Localhost&#x2F;Apache&#x2F;bin&#x2F;httpd.exe&lt;&#x2F;code&gt; dosyasını &lt;strong&gt;cmd.exe&lt;&#x2F;strong&gt; ile açıyoruz. Eğer herhangi bir hata alıp &lt;strong&gt;httpd.exe&lt;&#x2F;strong&gt; kapatılmamışsa sorunumuz yok demektir. Ctrl+C ile httpd.exe’yi sonlandırabilirsiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;php-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-kurulumu&quot; aria-label=&quot;Anchor link for: php-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
PHP Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;PHP kurulumu için de &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;windows.php.net&quot;&gt;PHP Windows&lt;&#x2F;a&gt; sitesini kullanacağız. &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;windows.php.net&#x2F;download&#x2F;&quot;&gt;Download&lt;&#x2F;a&gt; kısmından VC ve sistemimize uygun PHP’yi indiriyoruz. VC11 ve x64 kullandığım için &lt;strong&gt;VC11 x64 Thread Safe&lt;&#x2F;strong&gt; seçtim. Apache modulü olarak kurulum yapacağımız için &lt;strong&gt;Thread Safe&lt;&#x2F;strong&gt; olanları indirmeniz gerekiyor.&lt;&#x2F;p&gt;
&lt;p&gt;İndirdiğiniz php &lt;strong&gt;zip&lt;&#x2F;strong&gt; dosyasını &lt;code&gt;C:&#x2F;PHP&#x2F;&lt;&#x2F;code&gt; içerisine çıkartıyoruz. Ayarlamaları yapmak için de &lt;code&gt;php.ini-development&lt;&#x2F;code&gt; dosyasını &lt;code&gt;php.ini&lt;&#x2F;code&gt; olarak değiştirip açıyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;max_execution_time&lt;&#x2F;strong&gt; parametresini isteğinize göre arttırın. PHP dosyalarınızın maksimum çalıştırma süresini bu sayede arttırabilirsiniz. Ben 30’dan 60 saniyeye arttırdım.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;memory_limit&lt;&#x2F;strong&gt; parametresini de sahip olduğunuz RAM’e göre arttırabilirsiniz. Varsayılan olarak &lt;strong&gt;128MB&lt;&#x2F;strong&gt; seçilidir. &lt;strong&gt;512&lt;&#x2F;strong&gt;’nin ideal olacağını düşünüyorum.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;post_max_size&lt;&#x2F;strong&gt; parametresini de &lt;strong&gt;0&lt;&#x2F;strong&gt; olarak değiştirebilirsiniz. Bu sayede POST değerlerinin maksimum büyüklüğünü kaldırabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Yorum halinde bulunan &lt;strong&gt;extension_dir&lt;&#x2F;strong&gt; parametresine de &lt;code&gt;C:&#x2F;Localhost&#x2F;PHP&#x2F;ext&lt;&#x2F;code&gt; yolunu veriyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;upload_max_filesize&lt;&#x2F;strong&gt; parametresini de &lt;strong&gt;2M&lt;&#x2F;strong&gt;’den &lt;strong&gt;20M&lt;&#x2F;strong&gt;’a çıkartabiliriz. Bu sayede daha büyük boyutlu dosyaları yükleyebiliriz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Dynamic Extensions&lt;&#x2F;strong&gt; bölümünde aşağıda yer alan modüllerin başlarındaki yorum satırlarını kaldırarak aktif edebilirsiniz.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;php_bz2&lt;&#x2F;li&gt;
&lt;li&gt;php_curl&lt;&#x2F;li&gt;
&lt;li&gt;php_fileinfo&lt;&#x2F;li&gt;
&lt;li&gt;php_gd2&lt;&#x2F;li&gt;
&lt;li&gt;php_gettext&lt;&#x2F;li&gt;
&lt;li&gt;php_imap&lt;&#x2F;li&gt;
&lt;li&gt;php_mbstring&lt;&#x2F;li&gt;
&lt;li&gt;php_mysql&lt;&#x2F;li&gt;
&lt;li&gt;php_mysqli&lt;&#x2F;li&gt;
&lt;li&gt;php_pdo_mysql&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Gerekli düzenlemeleri yaptığımıza göre kaydedebiliriz. Test etmek amaçlı &lt;code&gt;C:&#x2F;Localhost&#x2F;PHP&lt;&#x2F;code&gt; dizininde &lt;code&gt;php.exe -i&lt;&#x2F;code&gt; komutunu çalıştırabilirsiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;apache-php-entegresi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#apache-php-entegresi&quot; aria-label=&quot;Anchor link for: apache-php-entegresi&quot;&gt;##&lt;&#x2F;a&gt;
Apache - PHP Entegresi&lt;&#x2F;h2&gt;
&lt;p&gt;Apache’ye modül olarak PHP eklemek için birkaç ayar yapmamız gerekiyor. &lt;code&gt;C:&#x2F;Localhost&#x2F;Apache&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; dosyasını düzenlemek için açıyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;En alt satıra aşağıdaki kodları giriyoruz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;#PHP5
&lt;&#x2F;span&gt;&lt;span&gt;LoadModule php5_module &amp;quot;C:&#x2F;Localhost&#x2F;PHP&#x2F;php5apache2_4.dll&amp;quot;
&lt;&#x2F;span&gt;&lt;span&gt;PHPIniDir &amp;quot;C:&#x2F;Localhost&#x2F;PHP&amp;quot;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;php5apache2_4.dll&lt;&#x2F;strong&gt; dosyasının olup olmadığını kontrol etmekte yarar var.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;&lt;code&gt;&amp;lt;IfModule mime_module&amp;gt;&lt;&#x2F;code&gt; kısmının içinde yer alan &lt;strong&gt;AddType&lt;&#x2F;strong&gt; listesine aşağıdaki eklemeleri yapıyoruz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;AddType application&#x2F;x-httpd-php .php
&lt;&#x2F;span&gt;&lt;span&gt;AddType application&#x2F;x-httpd-php-source .phps
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Dizinde şuan &lt;strong&gt;index.html&lt;&#x2F;strong&gt; dosyası ilk olarak açılıyor. Buna ayrıca &lt;strong&gt;index.php&lt;&#x2F;strong&gt; eklemek için, &lt;strong&gt;DirectoryIndex&lt;&#x2F;strong&gt; parametresine &lt;code&gt;index.php&lt;&#x2F;code&gt; ekliyoruz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;apache-nin-servis-olarak-eklenmesi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#apache-nin-servis-olarak-eklenmesi&quot; aria-label=&quot;Anchor link for: apache-nin-servis-olarak-eklenmesi&quot;&gt;##&lt;&#x2F;a&gt;
Apache’nin Servis Olarak Eklenmesi&lt;&#x2F;h2&gt;
&lt;p&gt;Windows başlatıldığında ayrıca Apache de başlatılması için &lt;strong&gt;Apache&lt;&#x2F;strong&gt;’yi hizmet olarak eklememiz gerekiyor. &lt;code&gt;cmd.exe&lt;&#x2F;code&gt;’yi yönetici haklarıyla çalıştırın. &lt;code&gt;C:&#x2F;Localhost&#x2F;Apache&#x2F;bin&lt;&#x2F;code&gt; klasörüne ulaşarak ``httpd.exe -k install` komutunu gerçekleştirin.&lt;&#x2F;p&gt;
&lt;p&gt;Görev Yöneticisini açarak Hizmetler kısmından Apache’yi çalıştırın.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;php-test&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-test&quot; aria-label=&quot;Anchor link for: php-test&quot;&gt;##&lt;&#x2F;a&gt;
PHP Test&lt;&#x2F;h2&gt;
&lt;p&gt;PHP’yi test etmek için &lt;code&gt;C:&#x2F;Webserver&#x2F;phpinfo.php&lt;&#x2F;code&gt; dosyası oluşturun ve içerisine &lt;code&gt;&amp;lt;?php phpinfo();&lt;&#x2F;code&gt; ekleyin. Denemek için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;localhost&#x2F;phpinfo.php&quot;&gt;http:&#x2F;&#x2F;localhost&#x2F;phpinfo.php&lt;&#x2F;a&gt; bağlantısını kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;mysql-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#mysql-kurulumu&quot; aria-label=&quot;Anchor link for: mysql-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
MySQL Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;MySQL kurulum işlemi için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;dev.mysql.com&#x2F;downloads&#x2F;installer&#x2F;&quot;&gt;Mysql Installer&lt;&#x2F;a&gt; kullanacağız. Daha hızlı bir kurulum için &lt;strong&gt;web installer&lt;&#x2F;strong&gt;(mysql-installer-web-community-X.Y.Z.T.msi) indirebilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Sözleşme kurallarını kabul ettikten sonra kurulum türünü seçmemiz gerekiyor. Sadece &lt;strong&gt;Server&lt;&#x2F;strong&gt; bizim için yeterli. &lt;strong&gt;Server Only&lt;&#x2F;strong&gt; seçerek devam ediyoruz. İndirme işleminden sonraki ayar kısmında &lt;strong&gt;Development Machine&lt;&#x2F;strong&gt; seçimiyle geliştirme ortamını seçmiş oluyoruz. &lt;strong&gt;Show Advanced Options&lt;&#x2F;strong&gt; kısmını seçiyoruz ve ilerliyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;MySQL Root Password&lt;&#x2F;strong&gt; kısmında mysql için kullanacağımız şifreyi tanımlıyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;Diğer kısımları varsayılan bırakıp son aşamaya geçiyoruz ve ayarları uyguluyoruz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;phpmyadmin-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#phpmyadmin-kurulumu&quot; aria-label=&quot;Anchor link for: phpmyadmin-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
PHPMyAdmin Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;PHPMyAdmin kurulumda varsayılandan farklı olarak &lt;strong&gt;Alias&lt;&#x2F;strong&gt; kurulumu yapacağız. Bu sayede ileride oluşturacağımız &lt;strong&gt;sanal sunucularda&lt;&#x2F;strong&gt; da rahatlıkla PHPMyAdmin kullanabileceğiniz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.phpmyadmin.net&#x2F;home_page&#x2F;index.php&quot;&gt;PHPMyAdmin&lt;&#x2F;a&gt; sitesinden son versiyonu indiriyoruz ve &lt;code&gt;c:&#x2F;Localhost&#x2F;PHPMyAdmin&lt;&#x2F;code&gt; içerisine çıkartıyoruz.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;config.sample.inc.php&lt;&#x2F;code&gt; dosyasının ismini &lt;code&gt;config.inc.php&lt;&#x2F;code&gt; olarak değiştirip açıyoruz. İçindekileri silip aşağıdaki kodu kullanabilir veya gerekli düzenlemeleri teker teker yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;&amp;lt;?php
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;*
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;* First server
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;*&#x2F;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;++;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;* Authentication type *&#x2F;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;auth_type&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;config&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;* Server parameters *&#x2F;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;host&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;localhost&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;port&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;3306&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;connect_type&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;tcp&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;compress&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;false&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;* Select mysqli if your server has it *&#x2F;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;extension&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;mysqli&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;* User for advanced features *&#x2F;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;user&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;root&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;;
&lt;&#x2F;span&gt;&lt;span&gt;$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cfg&lt;&#x2F;span&gt;&lt;span&gt;[&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;Servers&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;][$&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;i&lt;&#x2F;span&gt;&lt;span&gt;][&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;password&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;] = &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;MYSQLSIFRE&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;?&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Buradaki &lt;strong&gt;MYSQLSIFRE&lt;&#x2F;strong&gt; alanına MySQL kurulumu yaparken girdiğiniz şifreyi girmeniz gerekiyor.&lt;&#x2F;p&gt;
&lt;p&gt;PHPMyAdmin için gerekli ayarlamaları yaptık. Dosyayı kaydedip &lt;code&gt;c:&#x2F;Localhost&#x2F;Apache&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; dosyasına geçiyoruz. En alt satıra aşağıdaki kodları giriyoruz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;#PHPMyAdmin
&lt;&#x2F;span&gt;&lt;span&gt;Alias &#x2F;phpmyadmin &amp;quot;c:&#x2F;Localhost&#x2F;PHPMyAdmin&amp;quot;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;Directory &amp;quot;c:&#x2F;Localhost&#x2F;PHPMyAdmin&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;    Options Indexes FollowSymLinks
&lt;&#x2F;span&gt;&lt;span&gt;    AllowOverride All
&lt;&#x2F;span&gt;&lt;span&gt;    Require all granted
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;Directory&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Hangi sunucu olursa olsun sonuna &lt;code&gt;&#x2F;phpmyadmin&lt;&#x2F;code&gt; eklendiğinde &lt;code&gt;c:&#x2F;Localhost&#x2F;PHPMyAdmin&lt;&#x2F;code&gt; çalışacak şekilde ayarladık.&lt;&#x2F;p&gt;
&lt;p&gt;PHPMyAdmin ve MySQL testi için &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;localhost&#x2F;phpmyadmin&quot;&gt;http:&#x2F;&#x2F;localhost&#x2F;phpmyadmin&lt;&#x2F;a&gt; deneyebilirsiniz.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Otomatik Apache Sanal Sunucu</title>
        <published>2015-05-16T03:47:00+00:00</published>
        <updated>2015-05-16T03:47:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/otomatik-apache-sanal-sunucu/"/>
        <id>https://era.yayd.in/blog/otomatik-apache-sanal-sunucu/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/otomatik-apache-sanal-sunucu/">&lt;p&gt;LAMP ortamında çalışırken sizin vaktinizi çalan en büyük şeylerden biri sanal sunucular. Hatta sırf bu işlemden kurtulmak için yazdığım scriptler de bulunmakta fakat dağıtımdan dağıtıma scripti düzenlemem gerekiyordu. Bu sorundan kurtulmak için ufak bir araştırma yaptım ve &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;akrabat.com&#x2F;automatic-apache-vhosts&#x2F;&quot;&gt;şöyle&lt;&#x2F;a&gt; bir yararlı döküman buldum. Dökümanda Apache’nin  &lt;code&gt;mod_vhost_alias&lt;&#x2F;code&gt; modülünden bahsediliyor.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Dökümanda işlemleri &lt;code&gt;Arch Linux&lt;&#x2F;code&gt;’a göre yaptım. Gerekli değişiklikleri kendi dağıtımınıza göre yapmalısınız.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;vhost-alias-modulunun-aktiflestirilmesi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#vhost-alias-modulunun-aktiflestirilmesi&quot; aria-label=&quot;Anchor link for: vhost-alias-modulunun-aktiflestirilmesi&quot;&gt;##&lt;&#x2F;a&gt;
Vhost Alias Modülünün Aktifleştirilmesi&lt;&#x2F;h2&gt;
&lt;p&gt;Vhost alias modülünü aktifleştirmek için Apache’nin konfigürasyon dosyasında değişiklik yapmamız gerekiyor. Bunun için &lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;httpd.conf&lt;&#x2F;code&gt; dosyasını düzenliyoruz. Dosya içerisinde yer alan &lt;code&gt;mod_vhost_alias&lt;&#x2F;code&gt; modülünün satırını bulup başındaki yorum satırı(&lt;strong&gt;#&lt;&#x2F;strong&gt;) işaretini kaldırıyoruz. Artık Apache başlangıçta modülü aktifleştirecektir.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;modul-ayarlamalari&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#modul-ayarlamalari&quot; aria-label=&quot;Anchor link for: modul-ayarlamalari&quot;&gt;##&lt;&#x2F;a&gt;
Modül Ayarlamaları&lt;&#x2F;h2&gt;
&lt;p&gt;Modülü aktifleştirdik fakat henüz ayarlamalarını yapmadık. Bunun için &lt;code&gt;&#x2F;etc&#x2F;httpd&#x2F;conf&#x2F;mod_vhost_alias.conf&lt;&#x2F;code&gt; isminde bir dosya oluşturun. Dosya içeriğini aşağıdan bulabilirsiniz. İsteğinize göre yolları düzenleyebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;&amp;lt;Virtualhost *:80&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;    VirtualDocumentRoot &amp;quot;&#x2F;srv&#x2F;http&#x2F;%-2+&#x2F;public&amp;quot;
&lt;&#x2F;span&gt;&lt;span&gt;    ServerName vhosts.dev
&lt;&#x2F;span&gt;&lt;span&gt;    ServerAlias *.dev
&lt;&#x2F;span&gt;&lt;span&gt;    UseCanonicalName Off
&lt;&#x2F;span&gt;&lt;span&gt;    ErrorLog &amp;quot;&#x2F;srv&#x2F;http&#x2F;vhosts-error_log&amp;quot;
&lt;&#x2F;span&gt;&lt;span&gt;    &amp;lt;Directory &amp;quot;&#x2F;srv&#x2F;http&#x2F;*&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;        Options Indexes FollowSymLinks MultiViews
&lt;&#x2F;span&gt;&lt;span&gt;        AllowOverride All
&lt;&#x2F;span&gt;&lt;span&gt;        Order allow,deny
&lt;&#x2F;span&gt;&lt;span&gt;        Allow from all
&lt;&#x2F;span&gt;&lt;span&gt;    &amp;lt;&#x2F;Directory&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;Virtualhost&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bu dosyanın Apache tarafından kullanılması için &lt;code&gt;httpd.conf&lt;&#x2F;code&gt; dosyasının en alt satırına aşağıdaki metni girebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;# Dynamic Virtual Hosts
&lt;&#x2F;span&gt;&lt;span&gt;Include conf&#x2F;mod_vhost_alias.conf
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;Artık &lt;code&gt;&#x2F;srv&#x2F;http&lt;&#x2F;code&gt; klasörü içerisindeki her açtığımız klasör bir sanal sunucu olmuş olacak. Denemek amaçlı &lt;code&gt;&#x2F;srv&#x2F;http&#x2F;deneme&lt;&#x2F;code&gt; ve &lt;code&gt;&#x2F;srv&#x2F;http&#x2F;deneme&#x2F;public&lt;&#x2F;code&gt; klasörlerini oluşturalım.&lt;&#x2F;p&gt;
&lt;p&gt;Tarayıcınızdan &lt;code&gt;deneme.dev&lt;&#x2F;code&gt; şeklinde girdiğinizde istediğiniz şekilde sonuçlanmadığını göreceksiniz. Bunun sebebi henüz makinemiz sonu &lt;strong&gt;.dev&lt;&#x2F;strong&gt; ile biten domainleri &lt;strong&gt;127.0.0.1&lt;&#x2F;strong&gt; adresine yönlendirmemesi.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;yerel-makineye-yonlendirme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#yerel-makineye-yonlendirme&quot; aria-label=&quot;Anchor link for: yerel-makineye-yonlendirme&quot;&gt;##&lt;&#x2F;a&gt;
Yerel Makineye Yönlendirme&lt;&#x2F;h2&gt;
&lt;p&gt;Bu yönlendirme işlemi için 2 seçeneğimiz var.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Yerel DNS Server&lt;&#x2F;li&gt;
&lt;li&gt;PAC dosyası&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Bu dökümanda Yerel DNS Server yöntemi ile yerel makineye yönlendirme yapacağız.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Eğer yerel DNS server yüklemek istemiyor veya PAC dosyası ile de uğraşmak istemiyorsanız &lt;code&gt;etc&#x2F;hosts&lt;&#x2F;code&gt; dosyasını her sanal sunucu için düzenleyerek kullanadabilirsiniz fakat bu da yorucu olacak ve tam bir otomatiklik söz konusu olmayacaktır.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Yerel DNS server için &lt;code&gt;dnsmasq&lt;&#x2F;code&gt; programını kullanacağız. Paket yönetim sisteminden kurulumunu gerçekleştirebilirsiniz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;yaourt -S&lt;&#x2F;span&gt;&lt;span&gt; dnsmasq
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Kurulumdan sonra &lt;code&gt;etc&#x2F;dnsmasq.conf&lt;&#x2F;code&gt; dosyasını düzenleyin ve en alt satıra aşağıdaki metni girin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;listen-address&lt;&#x2F;span&gt;&lt;span&gt;=&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;127.0.0.1
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;address&lt;&#x2F;span&gt;&lt;span&gt;=&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;&#x2F;.dev&#x2F;127.0.0.1
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Son olarak makinenizin sizin DNS sunucunuzu kullanması için DNS ayarlarınızı 127.0.0.1 adresine yollamanız gerekiyor.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;test&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#test&quot; aria-label=&quot;Anchor link for: test&quot;&gt;##&lt;&#x2F;a&gt;
Test&lt;&#x2F;h2&gt;
&lt;p&gt;Öncelikle DNS sunucunuzun doğru çalışıp çalışmadığını deneyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;host&lt;&#x2F;span&gt;&lt;span&gt; deneme.dev
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Eğer sonuç 127.0.x.x şeklinde geliyorsa DNS sunucumuz çalışıyor demektir.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Apache&lt;&#x2F;code&gt;’yi yeniden başlatıp oluşturduğumuz &lt;code&gt;deneme.dev&lt;&#x2F;code&gt; adresine tarayıcınızdan ulaşmayı deneyin.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>C++ 2D Game Frameworks</title>
        <published>2015-04-20T12:00:00+00:00</published>
        <updated>2015-04-20T12:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/cpp-2d-game-frameworks/"/>
        <id>https://era.yayd.in/blog/cpp-2d-game-frameworks/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/cpp-2d-game-frameworks/">&lt;p&gt;Bu yazıda C++ 2D oyun kütüphaneleri hakkında bilgiler vereceğim. Avantajlarını ve eksikliklerini, artı ve eksi yönlerini öğrenebilirsiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;oxygine&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#oxygine&quot; aria-label=&quot;Anchor link for: oxygine&quot;&gt;##&lt;&#x2F;a&gt;
Oxygine&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Açık kaynak&lt;&#x2F;li&gt;
&lt;li&gt;Çoklu-platform (MacOSX, iOS, Android, Windows, Linux, HTML5-Web-WebGL)&lt;&#x2F;li&gt;
&lt;li&gt;Saf C++ (Basit API desteği ile yazımı çok rahat, jQuery sloganı gibi &lt;code&gt;do more with less code&lt;&#x2F;code&gt;)&lt;&#x2F;li&gt;
&lt;li&gt;Hata ayıklama modu, FPS ve performans kontrolü&lt;&#x2F;li&gt;
&lt;li&gt;SDL2 (Çok rahat olduğunu söyleyebilirim)&lt;&#x2F;li&gt;
&lt;li&gt;Yetersiz döküman, sadece API bilgisi&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;angel2d&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#angel2d&quot; aria-label=&quot;Anchor link for: angel2d&quot;&gt;##&lt;&#x2F;a&gt;
Angel2D&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Açık kaynak&lt;&#x2F;li&gt;
&lt;li&gt;Çoklu-platform (Mac, iOS, Windows, Linux)&lt;&#x2F;li&gt;
&lt;li&gt;Oxygine’e göre daha zorlu bir yazımı var API desteği çok yeterli değil fakat öğrendikten sonra sistemleri hazırlamak daha kolay. (low-level)&lt;&#x2F;li&gt;
&lt;li&gt;OpenGL (SDL2’ye göre biraz daha zor elbette)&lt;&#x2F;li&gt;
&lt;li&gt;Yetersiz döküman, sadece API bilgisi&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;torque-2d&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#torque-2d&quot; aria-label=&quot;Anchor link for: torque-2d&quot;&gt;##&lt;&#x2F;a&gt;
Torque 2D&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Açık kaynak&lt;&#x2F;li&gt;
&lt;li&gt;Çoklu-platform (Mac, Windows, iOS, Linux, Android)&lt;&#x2F;li&gt;
&lt;li&gt;OOP’a yatkın olanlar için çok iyi bir yazımı var.&lt;&#x2F;li&gt;
&lt;li&gt;End-user tarzı bir kütüphane&lt;&#x2F;li&gt;
&lt;li&gt;OpenGL (Angel2D’de belirttiğim gibi…)&lt;&#x2F;li&gt;
&lt;li&gt;Büyük döküman kaynağı&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;poly-code&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#poly-code&quot; aria-label=&quot;Anchor link for: poly-code&quot;&gt;##&lt;&#x2F;a&gt;
Poly Code&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Açık kaynak&lt;&#x2F;li&gt;
&lt;li&gt;Saf C++&lt;&#x2F;li&gt;
&lt;li&gt;LUA desteği (çok büyük bir artı)&lt;&#x2F;li&gt;
&lt;li&gt;Sloganı Oxygine ile aynı &lt;code&gt;do more with less code&lt;&#x2F;code&gt;&lt;&#x2F;li&gt;
&lt;li&gt;IDE desteği var (end-user)&lt;&#x2F;li&gt;
&lt;li&gt;Kolay yayınlama (GUI ile platformlara çıkış)&lt;&#x2F;li&gt;
&lt;li&gt;2D&#x2F;3D desteği&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;sonuc&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sonuc&quot; aria-label=&quot;Anchor link for: sonuc&quot;&gt;##&lt;&#x2F;a&gt;
Sonuç&lt;&#x2F;h2&gt;
&lt;p&gt;Eğer mobil merkezli bir oyun yapmayı düşünüyorsanız hiç durmayın &lt;code&gt;Oxygine&lt;&#x2F;code&gt; kullanın.&lt;&#x2F;p&gt;
&lt;p&gt;Eğer platform bağımsız ve işi tabandan almak istiyorsanız &lt;code&gt;Torque2D&lt;&#x2F;code&gt; kullanın.&lt;&#x2F;p&gt;
&lt;p&gt;Eğer kolay ve hızlı bir şekilde bir projeyi çıkarmak, rahat olmak istiyorsanız &lt;code&gt;Poly Code&lt;&#x2F;code&gt; kullanın.&lt;&#x2F;p&gt;
&lt;p&gt;Angel2D ve Oxygine kullandım ve pek yeterli bulduğumu söyleyemem. &lt;strong&gt;Poly Code&lt;&#x2F;strong&gt; ile şansımızı deneyelim :)&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>PSR-1 Standartları</title>
        <published>2015-04-19T12:00:00+00:00</published>
        <updated>2015-04-19T12:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/psr-1-standartlari/"/>
        <id>https://era.yayd.in/blog/psr-1-standartlari/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/psr-1-standartlari/">&lt;p&gt;Bu bölümde standart kodlama elementlerinin kullanımı sırasında yapmanız gerekenleri öğreneceksiniz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ozet&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ozet&quot; aria-label=&quot;Anchor link for: ozet&quot;&gt;##&lt;&#x2F;a&gt;
ÖZET&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;PHP dosyalarınızda sadece &lt;code&gt;&amp;lt;?php&lt;&#x2F;code&gt; ve &lt;code&gt;&amp;lt;?=&lt;&#x2F;code&gt; etiketlerini kullanabilirsiniz.&lt;&#x2F;li&gt;
&lt;li&gt;Dosyanız kodlaması UTF-8 BOM’suz olmalıdır.&lt;&#x2F;li&gt;
&lt;li&gt;Dosyalarınız ya sadece deklare etmeli (sınıflar, fonksiyonlar, sabitler, vs.) yada yan-işlem yapmalıdır.(çıktı verme, .ini&#x2F;.xml güncelleme vs.). Kesinlikle iki işlem için de kullanmayın.&lt;&#x2F;li&gt;
&lt;li&gt;Namespace ve sınıflar, PSR’ninautoloading(otomatik yükleme) sistemine uymalıdır. [PSR-0, PSR-4]&lt;&#x2F;li&gt;
&lt;li&gt;Sınıf isimleri baş harfi büyük olmalıdır. (Örn; BlogController, SystemLog)&lt;&#x2F;li&gt;
&lt;li&gt;Sınıf sabitleri tamamı büyük olmalı ve alt çizgi ile ayırılmalıdır. (Örn; DIRECTORY_SEPARATOR, DEBUG&lt;&#x2F;li&gt;
&lt;li&gt;Metot isimleri, ilk harf hariç kelime başları büyük olmalıdır. (Örn; showIndex, editPost)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;dosyalar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#dosyalar&quot; aria-label=&quot;Anchor link for: dosyalar&quot;&gt;##&lt;&#x2F;a&gt;
Dosyalar&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;php-etiketleri&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#php-etiketleri&quot; aria-label=&quot;Anchor link for: php-etiketleri&quot;&gt;###&lt;&#x2F;a&gt;
PHP Etiketleri&lt;&#x2F;h3&gt;
&lt;p&gt;PHP kodunuz &lt;code&gt;&amp;lt;?php ... ?&amp;gt;&lt;&#x2F;code&gt; veya &lt;code&gt;&amp;lt;?= ... ?&amp;gt;&lt;&#x2F;code&gt; etiketlerini kullanmalıdır.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;karakter-kodlamasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#karakter-kodlamasi&quot; aria-label=&quot;Anchor link for: karakter-kodlamasi&quot;&gt;###&lt;&#x2F;a&gt;
Karakter Kodlaması&lt;&#x2F;h3&gt;
&lt;p&gt;PHP dosyanızın kodlaması UTF-8 BOM’suz olmalıdır.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;yan-islem&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#yan-islem&quot; aria-label=&quot;Anchor link for: yan-islem&quot;&gt;###&lt;&#x2F;a&gt;
Yan-İşlem&lt;&#x2F;h3&gt;
&lt;p&gt;Bir dosyanız ya sadece deklare yada yan-işlem yapmalıdır.&lt;&#x2F;p&gt;
&lt;p&gt;“Yan-işlem” derken bahsetmek istediğim, bir yapı oluştururken hem sınıf, metot, sabit deklare edip hem de kullanılmamalıdır. Dosya include yapılmalıdır.&lt;&#x2F;p&gt;
&lt;p&gt;“Yan-işlem” sadece çıktı vermek değildir, ayrıca servise bağlanmak, include&#x2F;require yapmak, .ini&#x2F;.xml düzenlemek, exceptionlar, global ve statik değer düzenleme, dosyadan okuma veya dosyaya yazmak gibi işlemlerdir.&lt;&#x2F;p&gt;
&lt;p&gt;Aşağıdaki örnek, hem deklare eden hem de yan-işlem yapan bir kod örneği.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;&amp;lt;?php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; yan-işlem: ini ayarlarını düzenleme
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;ini_set&lt;&#x2F;span&gt;&lt;span&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;error_reporting&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;, E_ALL);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; yan-işlem: dosya include etme
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;include &lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;file.php&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; yan-işlem: çıktı verme
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;echo &lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;&amp;lt;html&amp;gt;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;\n&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; deklarasyon
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;foo&lt;&#x2F;span&gt;&lt;span&gt;()
&lt;&#x2F;span&gt;&lt;span&gt;{
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; ...
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Aşağıdaki örnek de yan-işlem yapmayan ve deklarasyon yapan bir dosyadır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;&amp;lt;?php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; deklarasyon
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;foo&lt;&#x2F;span&gt;&lt;span&gt;()
&lt;&#x2F;span&gt;&lt;span&gt;{
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; ...
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; koşula bağlı deklarasyon, yan-işlem **değildir**.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;if &lt;&#x2F;span&gt;&lt;span&gt;( ! &lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;function_exists&lt;&#x2F;span&gt;&lt;span&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;bar&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;)) {
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;bar&lt;&#x2F;span&gt;&lt;span&gt;()
&lt;&#x2F;span&gt;&lt;span&gt;    {
&lt;&#x2F;span&gt;&lt;span&gt;    	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; ...
&lt;&#x2F;span&gt;&lt;span&gt;    }
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;namespace-ve-sinif-isimleri&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#namespace-ve-sinif-isimleri&quot; aria-label=&quot;Anchor link for: namespace-ve-sinif-isimleri&quot;&gt;##&lt;&#x2F;a&gt;
Namespace ve Sınıf İsimleri&lt;&#x2F;h2&gt;
&lt;p&gt;Namespaceler ve sınıflar, PSR’nin otomatik yükleme kurallarına uymalıdır. [PSR-0, PSR-4]&lt;&#x2F;p&gt;
&lt;p&gt;Bu demek oluyor ki, her sınıf kendi dosyasının içinde ve en az 1 namespace altında olmalıdır.&lt;&#x2F;p&gt;
&lt;p&gt;Sınıf isimleri baş harfleri büyük tanımlanmalıdır. (Örn; StockController)&lt;&#x2F;p&gt;
&lt;p&gt;PHP 5.3 ve sonrasını kullananlar normal namespace kullanabilir. Örnek olarak;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;&amp;lt;?php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; PHP 5.3 ve sonrası:
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;namespace &lt;&#x2F;span&gt;&lt;span&gt;Vendor\Controller;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;class &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ebcb8b;&quot;&gt;Foo
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;{
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;PHP 5.2.x ve öncesini kullananlar şu şekilde kullanabilir:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;&amp;lt;?php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; PHP 5.2.x ve öncesi:
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;class &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ebcb8b;&quot;&gt;Vendor_Controller_Foo
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;{
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;sinif-sabitleri-ayarlar-ve-metotlar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sinif-sabitleri-ayarlar-ve-metotlar&quot; aria-label=&quot;Anchor link for: sinif-sabitleri-ayarlar-ve-metotlar&quot;&gt;##&lt;&#x2F;a&gt;
Sınıf Sabitleri, Ayarlar ve Metotlar&lt;&#x2F;h2&gt;
&lt;p&gt;Buradaki “sınıf“tan kastım, tüm sınıflardır.(class, interface, trait)&lt;&#x2F;p&gt;
&lt;h3 id=&quot;sabitler&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sabitler&quot; aria-label=&quot;Anchor link for: sabitler&quot;&gt;###&lt;&#x2F;a&gt;
Sabitler&lt;&#x2F;h3&gt;
&lt;p&gt;Sınıf sabitleri tamamen büyük olmalıdır ve alt çizgi ile kelimeler ayrılmalıdır. Örnek olarak:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;php&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-php &quot;&gt;&lt;code class=&quot;language-php&quot; data-lang=&quot;php&quot;&gt;&lt;span style=&quot;color:#ab7967;&quot;&gt;&amp;lt;?php
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;namespace &lt;&#x2F;span&gt;&lt;span&gt;Vendor\Controller;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;class &lt;&#x2F;span&gt;&lt;span style=&quot;color:#ebcb8b;&quot;&gt;Foo
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;{
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;const &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;VERSION       &lt;&#x2F;span&gt;&lt;span&gt;= &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;1.0&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;    &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;const &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;DATE_APPROVED &lt;&#x2F;span&gt;&lt;span&gt;= &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;2014-12-12&lt;&#x2F;span&gt;&lt;span&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#eff1f5;&quot;&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;ayarlar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ayarlar&quot; aria-label=&quot;Anchor link for: ayarlar&quot;&gt;###&lt;&#x2F;a&gt;
Ayarlar&lt;&#x2F;h3&gt;
&lt;p&gt;Şuan için belirlenmiş bir sabit yok. $BasHarfleriBuyuk, $ilkHarfiKucuk, veya $alt_cizgi isimlerini istediğiniz gibi kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;p&gt;Fakat unutulmamalıdır ki, adlandırma kuralları makul olmalıdır. Anlaşılır bir isim seçilmelidir.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;metotlar&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#metotlar&quot; aria-label=&quot;Anchor link for: metotlar&quot;&gt;###&lt;&#x2F;a&gt;
Metotlar&lt;&#x2F;h3&gt;
&lt;p&gt;Metot isimleri ilk harfi küçük ve diğer kelime başları büyük olmalıdır. (Örn; showIndex, editPost)&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Linux Oxygine C++ Game Framework Kurulumu</title>
        <published>2015-04-08T12:00:00+00:00</published>
        <updated>2015-04-08T12:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/oxygine-framework/"/>
        <id>https://era.yayd.in/blog/oxygine-framework/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/oxygine-framework/">&lt;p&gt;Linux ortamı için Oxygine C++ Game Framework’un kurulumu ile ilgili bir makaledir. Kurulum adımlarını takip ederek bir geliştirme ortamına
sahip olacağız.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;proje-dizinini-olusturma&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#proje-dizinini-olusturma&quot; aria-label=&quot;Anchor link for: proje-dizinini-olusturma&quot;&gt;##&lt;&#x2F;a&gt;
Proje Dizinini Oluşturma&lt;&#x2F;h2&gt;
&lt;p&gt;Öncelikle kendimize bir çalışma ortamı oluşturmamız gerekiyor. İstediğiniz bir dizinde uygulama klasörü açın. Makalede bu oluşturduğunuz dizine
&lt;code&gt;root&lt;&#x2F;code&gt; diyeceğiz.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;oxygine-framework-indirme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#oxygine-framework-indirme&quot; aria-label=&quot;Anchor link for: oxygine-framework-indirme&quot;&gt;##&lt;&#x2F;a&gt;
Oxygine Framework İndirme&lt;&#x2F;h2&gt;
&lt;p&gt;C++ ile 2D oyun geliştirirken kullanacağımız Oxygine Framework’u &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;oxygine.org&#x2F;download.php&quot;&gt;buradan&lt;&#x2F;a&gt; indirebilirsiniz.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Sayfada bize lazım olacak link &lt;code&gt;Download stable snaphot. Oxygine framework only.&lt;&#x2F;code&gt; kısmıdır. Yani sadece framework’u indirseniz yeterli. Diğer
linklerde önceden derlenmiş &lt;code&gt;binary&lt;&#x2F;code&gt; dosyaları bulunur. Bunlara ihtiyacımız yok.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;İndirdiğiniz sıkıştırılmış dosyayı açın. &lt;code&gt;oxygine-framework&lt;&#x2F;code&gt; klasörünü &lt;code&gt;root&lt;&#x2F;code&gt; klasörü içerisine yapıştırın.&lt;&#x2F;p&gt;
&lt;p&gt;Yeni klasör yapımız şu şekilde oldu.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├─root
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├─└&lt;&#x2F;span&gt;&lt;span&gt; oxygine-framework
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├───└&lt;&#x2F;span&gt;&lt;span&gt; 3rdPartyTools
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├───└&lt;&#x2F;span&gt;&lt;span&gt; cmake
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├───└&lt;&#x2F;span&gt;&lt;span&gt; libs
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;├───└&lt;&#x2F;span&gt;&lt;span&gt; ...
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;sdl-kurulumu&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sdl-kurulumu&quot; aria-label=&quot;Anchor link for: sdl-kurulumu&quot;&gt;##&lt;&#x2F;a&gt;
SDL Kurulumu&lt;&#x2F;h2&gt;
&lt;p&gt;Oxygine, &lt;strong&gt;SDL&lt;&#x2F;strong&gt; kütüphanesini kullandığı için mecburen onu da yüklememiz gerekiyor.&lt;&#x2F;p&gt;
&lt;p&gt;SDL’in &lt;a rel=&quot;noopener&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;libsdl.org&#x2F;hg.php&quot;&gt;yükleme sayfasında&lt;&#x2F;a&gt; en alt kısmında bulunan &lt;code&gt;.tar.gz&lt;&#x2F;code&gt; uzantılı sıkıştırılmış dosya işimize yarayacaktır.&lt;&#x2F;p&gt;
&lt;p&gt;İndirdiğiniz sıkıştırılmış dosyayı açın ve &lt;code&gt;SDL-X.X.X-XXXX&lt;&#x2F;code&gt; isimli klasörü &lt;code&gt;root&lt;&#x2F;code&gt; klasörü içerisine yapıştırın. Klasör ismini &lt;code&gt;SDL&lt;&#x2F;code&gt; olarak
değiştirin.&lt;&#x2F;p&gt;
&lt;p&gt;Terminal ile &lt;code&gt;root&#x2F;SDL&lt;&#x2F;code&gt; klasörüne erişin ve şu komutları gerçekleştirin.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;.&#x2F;configure
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;mkdir&lt;&#x2F;span&gt;&lt;span&gt; build
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;cd&lt;&#x2F;span&gt;&lt;span&gt; build
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cmake&lt;&#x2F;span&gt;&lt;span&gt; ..&#x2F;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;make
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span&gt; make install
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;oxygine-framework-a-sdl-entegre-etme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#oxygine-framework-a-sdl-entegre-etme&quot; aria-label=&quot;Anchor link for: oxygine-framework-a-sdl-entegre-etme&quot;&gt;##&lt;&#x2F;a&gt;
Oxygine Framework’a SDL Entegre Etme&lt;&#x2F;h2&gt;
&lt;p&gt;Oxygine Framework’un SDL’i kullanabilmesi için kütüphane dosyalarını Oxygine Framework içerisine yerleştirmemiz gerekiyor.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;root&#x2F;SDL&#x2F;build&lt;&#x2F;code&gt; içerisindeki&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;libSDL2-2.0.so&lt;&#x2F;li&gt;
&lt;li&gt;libSDL2-2.0.so.0&lt;&#x2F;li&gt;
&lt;li&gt;libSDL2-2.0.so.0.4.0&lt;&#x2F;li&gt;
&lt;li&gt;libSDL2.so&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;dosyalarını &lt;code&gt;root&#x2F;oxygine-framework&#x2F;libs&lt;&#x2F;code&gt; klasörüne taşıyın&#x2F;kopyalayın.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;kurulum-testi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#kurulum-testi&quot; aria-label=&quot;Anchor link for: kurulum-testi&quot;&gt;##&lt;&#x2F;a&gt;
Kurulum Testi&lt;&#x2F;h2&gt;
&lt;p&gt;Kurulumu başarıyla yapıp yapmadığımızı kontrol etmek için &lt;code&gt;root&#x2F;oxygine-framework&#x2F;examples&#x2F;Demo&#x2F;proj.cmake&#x2F;&lt;&#x2F;code&gt; klasörüne gelin ve şu komutu
çalıştırın.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span&gt; chmod +x run.sh
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span&gt; .&#x2F;run.sh
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Pixi.js - Başlangıç</title>
        <published>2015-04-06T12:00:00+00:00</published>
        <updated>2015-04-06T12:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://era.yayd.in/blog/pixi-js-baslangic/"/>
        <id>https://era.yayd.in/blog/pixi-js-baslangic/</id>
        
        <content type="html" xml:base="https://era.yayd.in/blog/pixi-js-baslangic/">&lt;p&gt;Bu makale serisinde Pixi.js ile ilgili anlatımlar yer alacaktır.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ortamin-hazirlanmasi&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#ortamin-hazirlanmasi&quot; aria-label=&quot;Anchor link for: ortamin-hazirlanmasi&quot;&gt;##&lt;&#x2F;a&gt;
Ortamın Hazırlanması&lt;&#x2F;h2&gt;
&lt;p&gt;Öncelikle Pixi.js’yi indirmemiz gerekiyor. Bunun için github’ı kullanacağız. &lt;code&gt;git&lt;&#x2F;code&gt; kurulumunuzu yaptığınızı varsayarak devam ediyorum.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-bash &quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span&gt; clone https:&#x2F;&#x2F;github.com&#x2F;GoodBoyDigital&#x2F;pixi.js.git
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Bize aslında gereken &lt;code&gt;bin&lt;&#x2F;code&gt; klasörü içerisindeki &lt;code&gt;pixi.js&lt;&#x2F;code&gt; dosyası fakat kaynak kodlarını da indirmemiz avantajımıza olacaktır.&lt;&#x2F;p&gt;
&lt;p&gt;Hemen bir index.html dosyası oluşturalım ve bu &lt;code&gt;pixi.js&lt;&#x2F;code&gt; kütüphanemizi dosyaya ekleyelim.&lt;&#x2F;p&gt;
&lt;p&gt;Daha sonra karışma olmaması için &lt;code&gt;uygulama&lt;&#x2F;code&gt; isminde bir klasör oluşturuyoruz ve içerisine bu &lt;code&gt;index.html&lt;&#x2F;code&gt; dosyamızı oluşturalım.&lt;&#x2F;p&gt;
&lt;pre style=&quot;background-color:#2b303b;color:#c0c5ce;&quot;&gt;&lt;code&gt;&lt;span&gt;&amp;lt;!doctype html&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;html lang=&amp;quot;en&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;head&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;meta charset=&amp;quot;utf-8&amp;quot;&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;title&amp;gt;Pixi.js&amp;lt;&#x2F;title&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;!--[if lt IE 9]&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;script src=&amp;quot;http:&#x2F;&#x2F;html5shiv.googlecode.com&#x2F;svn&#x2F;trunk&#x2F;html5.js&amp;quot;&amp;gt;&amp;lt;&#x2F;script&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;	&amp;lt;![endif]--&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;head&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;body&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;!-- Pixi.js --&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;script src=&amp;quot;..&#x2F;bin&#x2F;pixi.js&amp;quot;&amp;gt;&amp;lt;&#x2F;script&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;body&amp;gt;
&lt;&#x2F;span&gt;&lt;span&gt;&amp;lt;&#x2F;html&amp;gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;stage&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#stage&quot; aria-label=&quot;Anchor link for: stage&quot;&gt;##&lt;&#x2F;a&gt;
Stage&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Stage&lt;&#x2F;strong&gt;, görünümün ana kısmıdır. Her nesne &lt;strong&gt;stage&lt;&#x2F;strong&gt;’e bağlanmakta ve görüntülenmektedir. Yani nesnelerimizi, sahnemizi ve bütün ortamı
&lt;strong&gt;stage&lt;&#x2F;strong&gt; kullanarak yerleştireceğiz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; PIXI.Stage(backgroundColor);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.Stage(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0xFFFFFF&lt;&#x2F;span&gt;&lt;span&gt;); &lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; Beyaz arkaplan
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;renderer&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#renderer&quot; aria-label=&quot;Anchor link for: renderer&quot;&gt;##&lt;&#x2F;a&gt;
Renderer&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Renderer&lt;&#x2F;strong&gt;, Stage’i ve stage içerisindeki tüm nesneleri ekrana çizer. WebGL ve Canvas seçiminize göre bu çizim işlemi yapılır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;*
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * Canvas Renderer
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * PIXI.CanvasRenderer(uzunluk=800], [yukseklik=600], [ozellikler]);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; *&#x2F;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;canvasRenderer &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.CanvasRenderer(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;800&lt;&#x2F;span&gt;&lt;span&gt;, &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;600&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;*
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * WebGL Renderer
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * PIXI.WebGLRenderer([uzunluk=0], [yukseklik=0], [ozellikler]);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; *
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; *&#x2F;
&lt;&#x2F;span&gt;&lt;span&gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;webGLRenderer &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.WebGLRenderer(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;800&lt;&#x2F;span&gt;&lt;span&gt;, &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;600&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;*
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * Auto Detect Renderer
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * Otomatik olarak uygun olan render seçimini yapar.
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * PIXI.autoDetectRenderer([uzunluk=0], [yukseklik=0], [ozellikler]);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; *&#x2F;
&lt;&#x2F;span&gt;&lt;span&gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;autoDetectRenderer &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.autoDetectRenderer(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;800&lt;&#x2F;span&gt;&lt;span&gt;, &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;600&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Auto Detect Renderer&lt;&#x2F;strong&gt; kullanmak daha iyi olacaktır. Eğer tarayıcı WebGL çalıştırıyorsa WebGL, çalıştırmıyorsa Canvas kullanacaktır.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;frame&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#frame&quot; aria-label=&quot;Anchor link for: frame&quot;&gt;##&lt;&#x2F;a&gt;
Frame&lt;&#x2F;h2&gt;
&lt;p&gt;Çizimin her karede yapılması gerekiyor, öbür türlü ilk frameden sonra bir çizim gerçekleşmeyecektir. Bunun için bir döngü oluşturacağız ve
sürekli çizim yapılmasını sağlayacağız.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span&gt;document.body.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;appendChild&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;view&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;requestAnimFrame&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;() {
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;requestAnimFrame&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;render&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Farkettiyseniz bizim &lt;strong&gt;renderer&lt;&#x2F;strong&gt; isminde bir değişkenimiz yok. Bu değişkeni seçtiğiniz &lt;strong&gt;renderer&lt;&#x2F;strong&gt;’a göre ayarlamanız gerekiyor.&lt;&#x2F;p&gt;
&lt;p&gt;Şimdi sonuç olarak oluşturduğumuz script:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.Stage(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0xFFFFFF&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.autoDetectRenderer(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;400&lt;&#x2F;span&gt;&lt;span&gt;, &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;300&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;document.body.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;appendChild&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;view&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;requestAnimFrame&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;() {
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;requestAnimFrame&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;render&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Çalışıp çalışmadığını kontrol etmek isterseniz isterseniz arkaplanı kırmızı yapabilirsiniz.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;0xFF0303&lt;&#x2F;code&gt; renk kodunu kullanabilirsiniz.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;texture&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#texture&quot; aria-label=&quot;Anchor link for: texture&quot;&gt;##&lt;&#x2F;a&gt;
Texture&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Texture&lt;&#x2F;strong&gt; ile resim dosyalarını hafızada tutacağız. Bu sayede &lt;strong&gt;sprite&lt;&#x2F;strong&gt;’da resim kullanmamız gerektiğinde bu &lt;strong&gt;texture&lt;&#x2F;strong&gt; nesnesini
kullanacağız. Bu sayede resimler tekrar ve tekrar yüklenmeyecek, sadece 1 defa çekilecektir.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; PIXI.Texture.fromImage(dosyaYolu, orjin, olcek);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;texture &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;PIXI&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Texture&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;fromImage&lt;&#x2F;span&gt;&lt;span&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;resim.png&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;);
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;sprite&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sprite&quot; aria-label=&quot;Anchor link for: sprite&quot;&gt;##&lt;&#x2F;a&gt;
Sprite&lt;&#x2F;h2&gt;
&lt;p&gt;Sprite’lar sahnemizdeki nesnelerimiz olacaktır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;&#x2F; PIXI.Sprite(PIXI.Texture texture);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.Sprite(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;texture&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;anchor&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#anchor&quot; aria-label=&quot;Anchor link for: anchor&quot;&gt;###&lt;&#x2F;a&gt;
Anchor&lt;&#x2F;h3&gt;
&lt;p&gt;Nesnelerimizin orjin noktası olacaktır. Texture resmi de orjin noktasına göre çizilecektir. Bu sayede objenin tam olarak orta noktasının
neresi olacağını belirliyoruz.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#65737e;&quot;&gt;&#x2F;* 0-0     =&amp;gt; Sol Üst
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * 0.5-0.5 =&amp;gt; Ortala
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; * 1-1     =&amp;gt; Sağ Alt
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#65737e;&quot;&gt; *&#x2F;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;anchor&lt;&#x2F;span&gt;&lt;span&gt;.x = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0.5&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;anchor&lt;&#x2F;span&gt;&lt;span&gt;.y = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0.5&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;position&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#position&quot; aria-label=&quot;Anchor link for: position&quot;&gt;###&lt;&#x2F;a&gt;
Position&lt;&#x2F;h3&gt;
&lt;p&gt;Sprite nesnesinin sahnede bulunacağı koordinatlardır.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;position&lt;&#x2F;span&gt;&lt;span&gt;.x = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;200&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;position&lt;&#x2F;span&gt;&lt;span&gt;.y = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;150&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;rotation&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#rotation&quot; aria-label=&quot;Anchor link for: rotation&quot;&gt;###&lt;&#x2F;a&gt;
Rotation&lt;&#x2F;h3&gt;
&lt;p&gt;Sprite nesnesini orjin etrafında döndürmenizi sağlar.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;rotation &lt;&#x2F;span&gt;&lt;span&gt;+= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0.1&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;blockquote&gt;
&lt;p&gt;Döndürme kodunu çizim döngüsü dışında yaparsanız sadece 1 seferlik +0.1 artış yapacaktır. Sürekli dönmesi için döngü içerisinde bu kodu
kullanmanız gerekiyor.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h3 id=&quot;sahneye-ekleme&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#sahneye-ekleme&quot; aria-label=&quot;Anchor link for: sahneye-ekleme&quot;&gt;###&lt;&#x2F;a&gt;
Sahneye Ekleme&lt;&#x2F;h3&gt;
&lt;p&gt;Sprite nesnemizi artık sahneye ekleyelim.&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;addChild&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;tum-kaynak&quot;&gt;&lt;a class=&quot;no-style&quot; href=&quot;#tum-kaynak&quot; aria-label=&quot;Anchor link for: tum-kaynak&quot;&gt;##&lt;&#x2F;a&gt;
Tüm Kaynak&lt;&#x2F;h2&gt;
&lt;p&gt;Ders içerisindeki bilgilerle yapılan tüm script kodu&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;javascript&quot; style=&quot;background-color:#2b303b;color:#c0c5ce;&quot; class=&quot;language-javascript &quot;&gt;&lt;code class=&quot;language-javascript&quot; data-lang=&quot;javascript&quot;&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.Stage(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0xFFFFFF&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.autoDetectRenderer(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;400&lt;&#x2F;span&gt;&lt;span&gt;, &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;300&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;texture &lt;&#x2F;span&gt;&lt;span&gt;= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;PIXI&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;Texture&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;fromImage&lt;&#x2F;span&gt;&lt;span&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color:#a3be8c;&quot;&gt;resim.png&lt;&#x2F;span&gt;&lt;span&gt;&amp;quot;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;var &lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite  &lt;&#x2F;span&gt;&lt;span&gt;= new PIXI.Sprite(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;texture&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;anchor&lt;&#x2F;span&gt;&lt;span&gt;.x = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0.5&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;anchor&lt;&#x2F;span&gt;&lt;span&gt;.y = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0.5&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;position&lt;&#x2F;span&gt;&lt;span&gt;.x = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;200&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;position&lt;&#x2F;span&gt;&lt;span&gt;.y = &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;150&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;addChild&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;document.body.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#96b5b4;&quot;&gt;appendChild&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;view&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;requestAnimFrame&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span style=&quot;color:#b48ead;&quot;&gt;function &lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;() {
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;requestAnimFrame&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;cizimYap&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;sprite&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;rotation &lt;&#x2F;span&gt;&lt;span&gt;+= &lt;&#x2F;span&gt;&lt;span style=&quot;color:#d08770;&quot;&gt;0.1&lt;&#x2F;span&gt;&lt;span&gt;;
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;span&gt;	&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;renderer&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color:#8fa1b3;&quot;&gt;render&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color:#bf616a;&quot;&gt;stage&lt;&#x2F;span&gt;&lt;span&gt;);
&lt;&#x2F;span&gt;&lt;span&gt;}
&lt;&#x2F;span&gt;&lt;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
</content>
        
    </entry>
</feed>
