28 Eylül 2014 Pazar

Domain Specific Language(DSL) Nedir?

Domain Specific Language(DSL) belli bir sorun alanı, belli bir sorunu sunuş tekniği, ve/veya belli bir çözüm tekniği için belirlenmiş bir programlama dili ya da belirtim dilidir.


http://en.wikipedia.org/wiki/Domain-specific_language

Why Choice Gradle? / Neden Seçim Gradle?

Figure 1: Gradle combines the best features from other build tools.











If you're a developer, automating your project is part of your day-to-day business. Don't you want to treat your build code like any other piece of software that can be extended, tested, and maintained? Let's put software engineering back into the build. Gradle build scripts are declarative, readable, and clearly express their intention. Writing code in Groovy instead of XML, sprinkled with Gradle's build-by-convention philosophy, significantly cuts down the size of a build script and is far more readable (see Figure 2).

Figure 2: Comparing build script size and readability between Maven and Gradle.



















It's impressive to see how much less code you need to write in Gradle to achieve the same goal. With Gradle you don't have to make compromises. Where other build tools like Maven propose project layouts that are "my way or the highway," Gradle's DSL allows for flexibility by adapting to nonconventional project structures.
Never change a running system, you say? Your team already spent a lot of time on establishing your project's build code infrastructure. Gradle doesn't force you to fully migrate all of your existing build logic. Good integration with other tools like Ant and Maven is at the top of Gradle's priority list.
The market seems to be taking notice of Gradle. Popular open source projects like Groovy and Hibernate completely switched to Gradle as the backbone for their builds. Every Android project ships with Gradle as the default build system. Gradle also had an impact on the commercial market. Companies like Orbitz, EADS, and Software AG embraced Gradle as well, to name just a few. VMware, the company behind Spring and Grails, made significant investments in choosing Gradle. Many of their software products, such as the Spring framework and Grails, are literally built on the trust that Gradle can deliver.

Gradle's Compelling Feature Set 

 

Let's take a closer look at what sets Gradle apart from its competitors: its compelling feature set (see Figure 3). To summarize, Gradle is an enterprise-ready build system, powered by a declarative and expressive Groovy DSL. It combines flexibility and effortless extendibility with the idea of convention over configuration and support for traditional dependency management. Backed by a professional services company (Gradleware) and strong community involvement, Gradle is becoming the number-one choice build solution for many open source projects and enterprises.

Figure 3: Gradle's compelling feature set.















http://www.drdobbs.com/jvm/why-build-your-java-projects-with-gradle/240168608

Grade Nedir, Özellikleri Nelerdir?

Gradle geliştirilmiş bir kurma/inşa etme otomasyonudur. Gradle inşa etme, test etme, yayınlama, dağıtım ve yazılım paketlerinin daha fazlasını ya da projelerin diğer tiplerini(üretilmiş durağan websiteler ve dokümantasyonlar gibi) otomatikleştirebilir.

Gradle daha etkili bir şekilde inşa etmek için, Ant'nin gücü ve esnekliği ile bağımlılık yönetimi ve Maven sözleşmelerini birleştirir. Gradle, birçok açık kaynak projelerini, süregelen kenar işletmeleri ve eski otomasyon zorluklarına karşın hızlı bir şekilde inşa eden sistem tercihi olarak geliyor.

Devrimci Yeni Gradle Özellikleri(2014)

Konfigürasyon Görevleri                                      Başladı
Sürdürülebilir Yapı Konfigürasyonu                       Başladı
Gelişmiş C/C++ Desteği                                       Başladı
Bağımlılık Yönetiminde Çeşitli Farkındalık             Başladı
Zengin Genişletilebilirlik                                        Başladı
Daha İyi Keşfedebilirlik ve Hata Raporlama          Başladı

Gelişmiş Araçlama ve IDE Desteği                       Başlamadı
Paralel Görev Yürütme                                        Başlamadı
Daemon İçin İzleyici Modu                                  Başlamadı
Evrensel Önbellek                                               Başlamadı



http://www.gradle.org/


Apache Maven Nedir?

Maven(Apache Maven), bir yazılım proje yönetimi ve anlama aracıdır. Bir proje nesne modeli(POM) tabanlıdır. Maven, bilginin merkezi bir parçasından bir projenin inşasını, raporlamasını ve dokümantasyonunu yönetebilir.
http://maven.apache.org/

Apache Ant Nedir?

Apache Ant, yazılım inşası süreçlerini otomatikleştirmeye yarayan bir araçtır. Make'e benzeyen uygulama, Java ile geliştirilmiş olup Java platformunu gerektirmekte ve Java projelerinde sıkça kullanılmaktadır.
Ant ve make arasındaki en belirgin fark, Ant'in inşa süreci ve bağımlılık tanımları için XML kullanmasıdır. Make ise kendine özgü dosya biçimi olan Makefile'ı kullanır. XML dosyasının öntanımlı adı build.xml'dir.
Bir Apache projesi olan Ant, açık kaynak kodlu bir yazılımdır. Ant, Apache Yazılım Lisansı'nı kullanmaktadır.


 http://tr.wikipedia.org/wiki/Apache_Ant

Groovy Nedir?

Groovy, Java platformu (JVM) üzerinde çalışan bir programlama dilidir. Groovy, imperative, nesne odaklı (object oriented), dinamik tipli diller sınıfındadır.

Groovy'nin en önemli özelliği, Java üzerinde çalışan dinamik diller arasında en yüksek ve kolay entegrasyona sahip dil olmasıdır. Groovy içinden herhangi bir Java nesnesini bir Groovy nesnesi gibi çağırabilirsiniz. Aynı şekilde Java içinden de Groovy nesnelerini, diğer Java nesneleriyle aynı şekilde çağırırsınız.

Groovy, Java dilinden farklı olarak şu özelliklere sahiptir:
  •  Statik tipler ve dinamik tipler
  •  List, map, array, regular expression, range tipleri için yerel sentaks desteği
  •  Closurelar


http://tr.wikipedia.org/wiki/Groovy


21 Eylül 2014 Pazar

Bilim Nedir? Ne İşe Yarar?

"Magnet 4" by Peter nussbaumer - German Wikipedia, original upload 11:59, 20. Nov 2005 by Peter nussbaumer. Licensed under Creative Commons Attribution-Share Alike 3.0 via Wikimedia Commons - http://commons.wikimedia.org/wiki/File:Magnet_4.jpg#mediaviewer/File:Magnet_4.jpg



Bilim Nedir? Evet, bilimi çok kısa olarak ifade etmek gerekirse diyebilirm ki bilim, evreni anlamamıza yarayan bir araçtır. Bunula birlikte evreni anlamaya çalışırken bazı yöntemler(gözlem, deney vb.) kullanmalıyız, sistemli bir şekilde ilerlemeliyiz ki bunun adına bilim diyebilelim.

Bilim bize evrenin, doğanın kurallarını öğrenmemize yardım eder. Evreni anlamak demek, hayatı, yaradılışı anlamak demektir. Biz nasıl bu günlere geldik, teknolojiyi nasıl bu kadar geliştirdik? Hepsi bilim sayesinde olmuştur. Bilim geliştikçe, ilerledikçe hayatımızı da bir o kadar kolaylaştırmıştır.