Difference Between and Netbeans Eclipse James Gosling Java’yı geliştirirken temel olarak yarattığı bu dilin açık kodlu, nesneye yönelik, zeminden bağımsız, yüksek verimli, çok işlevli, yüksek seviye, adım adım işletilebilme gibi bir çok özelliği bir arada bulundurmasını amaçlıyordu. İlk başlarda bu amacına ulaşamasada zamanla Java onun hayal ettiğinden daha büyük kitlelere hitap edip, daha geniş bir kütüphaneye sahip oldu. Sun’ın 1995’te Java’yı duyurmasından kısa bir süre sonra yazılım geliştiriciler Java’yı küçük çaplı projelerde kullanmaya başladılar. Fakat özellikle Java’nın bilgisayar mimarisine bağlı olmadan herhangi bir Java Virtual Machine(JVM)’de çalışabilme özelliği bu dili son yüzyılın gözdesi haline getirdi. Sun tarafından geliştirilen bir IDE olan NetBeans Eclipse kadar popüler olmasada Eclipse’in tahtını sallayacak kadar güçlü bir alt yapıya sahip. Profesyonel masaüstü, kurumsal, web ve mobil uygulamaları geliştirmek için gerekli tüm araçları içeriğinde barındırır. Windows, Linux, Mac OS X ve Solaris’te dahil olmak üzere birçok platformda çalışır. NetBeans’in en önemli özelliği “All in One” sloganıyla yola çıkmış olmasıdır. Yani sizi gereksiz plugin indirip kurma zahmetinden kurtarır. Ayrıca profesiyonel yazılımcıların yanı sıra amatör yazılıcımlarada hitap eder. Özellikle masaüstü uygulamalarında designer’ı ile yazılım dünyasının sınırlarını zorlar. NetBeans’in bana göre en can alıcı noktası Visual Web Pack özelliğine sahip olmasıdır. Yazılımcı için sürükle bırak teknolojisini içeriğine katan NetBeans Java Derlemek için en ideal IDE olmasına rağmen bir çok eksiğinin olduğunu söylemem gerek. Bu eksikliklerden en önemlisi konfigurasyon dosyasını kendi kendine yaratması. Ayrıca yarattığı bu konfigurasyon dosyası üzerinde değişikliğe izin vermemesi yazılımcı için ilerki evrelerde büyük sıkıntılar yaratabiliyor.Gelelim Eclipse’e. IBM’in gözdesi olan Eclipse 2001 yılında duyurulduğunda Java dünyasında yer yerinden oynamıştı.(swing yerine swt’yi kullanması büyük tartışmalara neden olmuştu). Eclipse’in NetBeans’e göre en büyük avantajı popüler olmasıdır. Yani yaygın bir kullanım ağına sahiptir. Plugin bakımından inanılmaz zengin olmasına rağmen eğer ne yapacağınızı bilmiyorsanız plugin havuzunda boğulmanıza neden olur. Bu yönüyle amatör yazılımcılara değil profesiyonel yazılımcılara hitap eder. Ayrıca Eclipse’te yazılımcı her adımı kendi tasarlamak zorundadır.Kendi konfigurasyon dosyasını yaratmalı kendi web.xml’ini oluşturumalıdır. Eclipse’in bu kadar geniş bir kitleye hitap etmesinin en büyük nedenlerinden biri de çok güçlü bir grafiksel kullanıcı arayüzü düzenleyicisine sahip olmasıdır. Anahtar Farklılıklar Eclipse, zamandan tasarruf sağlayarak otomatik olarak Java kaynakları üzerinde biçimlendirme yapabilir. Bu özellik NetBeans 7.3’te yayınlandı. Eclipse java kod biçimlendiricisi Netbeans’dan çok daha güçlü görünüyor. NetBeans, farklı dizinlerde projeler açma kabiliyetine sahiptir. NetBeans, herhangi bir Maven projesini Eclipse’e özgü bir projeye dönüştürmek zorunda kalmadan açabilir. Netbeans maven entegrasyonu, maven dışındaki bir eseri (pom.xml olmadan) yerel (ve belki de diğer) maven depolarına kurma özelliğine sahiptir. Eclipse’de bu özellik yok. Sadece geçici çözümler var. Eclipse, VCS (ör. SVN, CVS vb.) Ile yerel çalışma kopyası arasındaki farkları ağaç görünümü olarak gösteren bir “senkronize” görünümüne sahiptir. Netbeans da bir çeşit senkronizasyon görünümü vardır, ancak bilgileri bir tablo olarak görüntüler. NetBeans, Oracle tarafından desteklenmektedir. Eclipse, IBM sponsorluğundadır. NetBeans kullanıcı arabirimi Swing (Java yerli hafif araç seti) üzerine inşa edilmiştir. Eclipse kullanıcı arabirimi, SWT’ye (sistemin temel araç takımının etrafında bir Java sarmalayıcı) kurulmuştur; bu nedenle, platforma bağımlı kitaplıklara ihtiyaç duyar. derlenmiş ikili İkisi arasında platform desteği altında fark yok. Eclipse ve NetBeans, çapraz platform desteğine sahiptir. JVM (Java Virtual Machine) kurulu olduğu sürece, bu uygulamanın Windows, Mac, Linux, Solaris ve diğer platformlarda çalışmasını sağlayabilirsiniz. Her ikisi de C / C ++, Java, JavaScript ve PHP içeren geniş bir programlama dili desteği içerir. Ama nasıl bu desteği alırsınız ilginç bir parçasıdır. Eclipse, bir eklenti tabanlı IDE’dir. Onun işlevselliğinin büyük bir kısmı eklentilerden geliyor. Mobil uygulama SDK’ları, Zengin İnternet uygulamaları ve Mimari odaklı uygulamalar gibi özellikler çoğunlukla eklentiler kullanılarak geliştirilebilir. Öte yandan NetBeans birçok projeye sahiptir ve araç tabanlı bir IDE’dir. Takımlama desteğini kullanarak birçok platformu içerir. Böylece daha az dağılmış hale geliyor. Sonuç olarak eğer java programlama dilinde belli bir seviyenin üstündeyseniz ve alanda kariyer planları yapıp ün kazanma peşindeyseniz Eclipce IDE’sini kullanmanız sizin için daha iyi bir tercihtir. Fakat temelden başlayıp bu alanda kendinizi ilerletmek ve geliştirmek istiyorsanız Netbeans IDE’si sizin için daha iyi bir tercih olacaktır. Yazar: Tayyip Doğan Kaynaklar: http://www.teknolojioku.com/haber/hangisi-dogru-ide-netb eans-mi-eclips-mi-876.html https://gelecegiyazanlar.turkcell.com.tr/soru/eclipse-mi -android-studio-mu http://www.differencebtw.com/difference-between-eclipseand-netbeans/ http://www.thewindowsclub.com/difference-eclipse-netbean s Bağlanma Zamanı(Binding Time) Bir değişkenin, derleyici veya yorumlayıcı tarafından bağlanmasıdır. Buna göre değişkeni o dilde ifade eden sembolün fiziksel makine adresine(hafızadaki adrese) çevrilmesi işlemidir. Yani, int a = 4; satırında a değişkeni ifade eden semboldür. Bu değişkenin tipi, hafızada bir adresi, içinde bir değeri vs. bulunmalıdır. İşte bu kimlik bilgilerini aldığı ve sembol tablosundaki sembolün gerçekte ne olduğunun belirlendiği işlem zamanı bağlama zamanı olarak isimlendirilir. Bağlama işleminin yapıldığı zamana göre diller ikiye ayrılabilir: Erken bağlama (early binding) Geç bağlama (late binding) İkisi arasındaki fark bağlama işleminin yapıldığı zamandır. Geleneksel derleyiciler bu bağlama işlemini derleme zamanında yaparlar. Yani programın çalıştırılabilir kodu üretildiğinde değişkenlerin tipleri ve değerleri bellidir. Ancak günümüz de nesne yönelimli programlama dilleri bu bağlama işlemini çalışma zamanında yapabilmektedir. Buna göre değişkenin değer alması veya tipinin belirlenmesi veya hafızada bir adrese karşılık gelmesi işlemi çalışırken olmaktadır. Bu işlemi kolaylaştıran yapı aslında her nesne göstericisinin birer gösterici mantığı ile çalışması ve adresleme yapısının dilde tamamen dinamik olmasıdır. İşte derleme zamanında yapılan bağlamaya erken bağlam ve çalışma zamanında yapılan bağlamaya da geç bağlama isimleri verilmektedir. Yazar: Tayyip Doğan Kaynakça http://bilgisayarkavramlari.sadievrenseker.com/2008/11/1 2/baglama-zamani-binding-time/ Java’da Upcasting Downcasting ve Downcasting(Aşağı Çevrim) Üst sınıftan oluşturulmuş bir nesneyi alt sınıftan oluşturulmuş bir nesneye çevirme işine verilen addır. Örneğimizden yola çıkarsak mesela çalışan sınıfından oluşturulmuş bir nesneyi sonradan öğretmen sınıfından oluşturulmuş bir nesneye çevirmek istiyorsak buna aşağı çevrim denir. Çalışan çalışan1=new Çalışan(); //Oluşturulan nesne çalışan sınıfından. Öğretmen öğretmen1=(Öğretmen)çalışan1; // Oluşturulan nesne öğretmen sınıfına çevrildi. *Aşağı çevrimde ise üst sınıftan alt sınıfa çevrim yapılırken casting yapılması zorunludur. Öğretmen öğretmen1=(Öğretmen)çalışan1; Upcasting(Yukarı Çevrim) Eğer alt sınıftan oluşturulmuş bir nesneyi üst sınıftan oluşturulmuş bir nesneye çevirmek istiyorsak buna yukarı çevrim denir. Öğretmen öğretmen1=new Öğretmen(); sınıfından oluşturulmuş. // Nesne öğretmen Çalışan çalışan1=öğretmen1; // Nesne üst sınıftan oluşturulmuş bir nesneye dönüştürüldü. *Yukarı çevrimde alt sınıftan üst sınıfa çevrim yapılırken cast yapılmaz. Çalışan çalışan1=öğretmen1; Yazar:Tayyip Doğan Kaynakça https://adalramazan.com/java-upcasting-downcasting/