Kategoriler


SON YORUMLAR
Kaan çok eziksin
bsg. yazılımdan anlıyorsan bir işe gir.
İREM
Veri yapıları sınavım var..sınav süresi 30dk ve test..Veri yapılarında bilgili biri ücret karşılığında yardımcı olabilirse çok mutlu olurum..
Eray
29.8.2020 tarihli telefon numaram ile yaptığım yorum, ÖZEL DERS vermek, konu anlatımı yapmak veya freelancer olarak yazılım projelerinde yazılımcı olarak çalışmak içindir. Ödev yaptırmak, sınava girmek gibi isteklere geri dönüş yapmıyorum.
Tatar Ramazan
CLASS (Inheritance, abstract, interface, static) Kurallar: 1- Abstract ve interface classlarda new ile obje oluşturulamaz. Bu kural static sınıflar için de geçerlidir. 2- Statik metotlardan yalnızca statik değişken ve metotlar çağırılır. 3- Sınıfın tüm objeleri statik alanın aynı değerini paylaşır. 4- Sınıftan her obje oluştuğunda statik değişken değeri sıfırlanmaz kaldığı yerden devam eder. 5- Statik alana sınıftan obje oluşturmadan direk ulaşılabilir. 6- Statik değişken her zaman bir değere sahiptir. Nümerik değerler için değer atanmadıysa değeri sıfırdır. 7- Virtual metod, abstract ya da static olamaz. 8- Bir metod ya da properties override edilirken tipi değiştirilmez. 9- Türetilen sınıfta metod override edilmemişse ana sınıftaki içerik geçerli olur. 10- Bir interface uygulayan metod public olmalıdır. 11- Static metod abstract, virtual, override olamaz. 12- Properties?ler abstract ya da virtual olabilir. 13- Türetilen sınıf ana sınıftaki tüm abstract metodları uygulamazsa o da abstract olmalıdır. 14- Abstract metod içeren sınıf da abstract olmalı. 15- Abstract metod otomatikman virtual olur. 16- Türetilen sınıf abstract classtaki tüm metodları uygulamalıdır. 17- Virtual metod birden fazla türetilen sınıfta yeniden tanımlanabilir. 18- Bir sınıf birden fazla interface?i aralarına virgül konularak kullanabilir. 19- Interface tek başına hiçbir uygulama sağlamaz. 20- Abstract metod gövde içermez ve ana sınıf tarafından uygulanamaz. 21- Abstract sınıf içinde statik ya da virtual metod tanımlanabilir. 22- Bir interface metod uygulanırken public değilse başına tanımlandığı interface koyulur. 23- Protected tanımlanan field?a sadece türev sınıf içinden erişilir. 24- Fields (alanlar) virtual ya da abstract olamaz. 25- Interface?ler fields içermez. Properties içerebilir. 26- Bir constructor base ile miras alıyorsa hem aldığı mirası hem kendi içindekini uygular. İçi boşsa yalnızca kalıtım aldığını uygular. Miras alırken de derived (türetilen) classtaki parametre değerini esas alır. 27- Interface metod implemente edilirken override yazılmaz. Override virtual ya da abstract metodlar uygulanırken kullanılır.
World
Hello PIO
PIO
hello world
Tatar Ramazan
2009-10 yıllarında millet maaşını yazardı yüksek miktarlar alırlardı şimdi kimse yazmıyor zavallılar sürünüyorlar. Yanlışsam, durumunuz iyiyse çıkın yanlışlayın beni. Az bir kısmınız mutlu olacak diğerleri kıvransın dursun.
Tatar Ramazan
çok para bayılacaklar osuracaklar, sıçacaklar size zort zort zort...muhahah, puahahah...
tatminsiz
10.000 tl den aşağı çalışmam.

java ve c# ı yalayıp yuttum mssql oracle pl sql ibm db2 biliyorum. projeler yaptım kaç para alcam?
memnun
Muhasebe bölümünden bilişime geçtim 2 ay geride kaldım şimdi geri muhasebeye nakîl verdim ama bu parayı duyunca çallşmaya başladım
muhendis
Eskidendi o çok eskiden..mühendisler artık aç..4 yıllık mühendisim aldığım ücret 5000 tl...
cengiz
Ben de bilmiyorum faidesini...
orhon
ilk önce sql sonra t-sql

Bilgisayar Mühendisleri
Here is the website inspired me to use 
it as a guide when I tried to define 
myself as an engineer candidate a few 
years ago. It really helped me to work
 and study feeling in confidence with 
being on the right way. I suggest this 
website to whom it may direct her/his 
to find the right career path. It 
includes many articles varies from 
real life experiences to detailed 
software engineering issues. But the 
most dignified parts for me are the 
articles in general and career titles.
Son okunan makaleler:
Kurumsal Yazılım Geliştirmede C# ve Java Savaşı, IDE’lerin Önemi
Oracle - Query Optimizer
Bilgisayar Mühendisi Ne İş yapar? Program Nedir? Çeşitli Sorular?
6 adımda Patlak Mühendis olma rehberi
Dünyanın En İyi 500 üniversitesi 2007 Sıralaması Açıklandı
Dünyanın En İyi 500 üniversitesi 2007 Sıralaması Açıklandı
Dünyanın En İyi 500 üniversitesi 2007 Sıralaması Açıklandı
Dünyanın En İyi 500 üniversitesi 2007 Sıralaması Açıklandı
Bilgisayar Mühendisi olacaklara üniversite seçme rehberi?
Bilgisayar Mühendisi olacaklara üniversite seçme rehberi?
En iyi bilgisayar mühendisliği bölümüne sahip üniversiteler
En iyi bilgisayar mühendisliği bölümüne sahip üniversiteler
En iyi bilgisayar mühendisliği bölümüne sahip üniversiteler
En iyi bilgisayar mühendisliği bölümüne sahip üniversiteler
Kredi Kartı Numarası Doğrulama- Lhun algoritması
Kredi Kartı Numarası Doğrulama- Lhun algoritması
Kredi Kartı Numarası Doğrulama- Lhun algoritması
Kredi Kartı Numarası Doğrulama- Lhun algoritması
Bilgisayar Mühendisleri Kaç Para Alır?
Bilgisayar Mühendisleri Kaç Para Alır?

Bilgisayar Mühendisleri Portalı

Kurumsal Yazılım Geliştirmede C# ve Java Savaşı, IDE’lerin Önemi

Kurumsal Yazılım Geliştirmede C# ve Java Savaşı, IDE’lerin Önemi

  

Sun firmasının geliştirdiği Java’nın artık neredeyse tekelleşmeye başladığı kurumsal programlama alanına Microsoft C# ile hızlı bir dalış yaptı ve pazar payını giderek genişletiyor. Peki tam “artık çok geç kaldı” derken Microsoft’a bu hamleyi yaptıran ve başarıyı getiren faktörler neler?
 

Bu faktörlerin en başında yazılım geliştirme aracı (IDE) geliyor. Microsoft C#’ı çok kullanışlı bir IDE ile destekledi. Visual Studio .NET, Java tarafındaki IDE’lere göre daha kolay kullanımı olan ve daha çok özelliğe sahip olan bir yazılım geliştirme aracı. Java tarafındaki belli başlı geliştirme araçları ise Sun tarafından geliştirilen NetBeans (açık kod) ve SunOne Studio for Java (eski adıyla Forte for Java), Oracle tarafından geliştirilen JDeveloper, Borland tarafından geliştirilen JBuilder, IBM tarafından geliştirilen Visual Age for Java (durduruldu), Eclipse (açık kod) ve WebSphere Studio Application Developer (WSAD), vb. olarak sıralanabilir.
 
Bir tarafta C#’ı tek başına destekleyen Microsoft, diğer tarafta Java’yı destekleyen onlarca firma. Dışarıdan bakıldığında ekosistem olarak Microsoft tarafından çok daha kalabalık olan (firma olarak) Java tarafının bariz üstünlük sağlaması bekleniyor. Ama öyle olmuyor, Microsoft bir şekilde pazara giriyor ve yavaş yavaş Java’nın pazar payından çalmaya başlıyor. Çünkü kalabalık olmanın Java tarafına kazandırdıkları olduğu gibi kaybettirdikleri de var.
 
Java tarafında yazılım geliştirme aracı (IDE) bazında bir standardizasyon yok. Her firma kendi geliştirdiği IDE’yi destekliyor ve ön plana çıkarmaya çalışıyor. Java tarafı onlarca Java IDE’sini geliştirmek için bölünmüşken karşılarında Microsoft bütün enerjisini Visual Studio .NET’e harcıyor. Kaba bir hesap yapalım. Yazılım dünyasının en büyük firması Microsoft. Diyelim ki Microsoft C# IDE’si için 5.000 eleman istihdam ediyor. Karşı tarafta Oracle, IBM, Sun ve Borland firmalarının 3.000’er eleman istihdam ettiğini düşünelim. Microsoft tarafında 5.000 kişi var. Java tarafında 12.000 kişi var. Ama Microsoft tarafındaki 5.000 kişinin tamamı Visual Studio .NET’i geliştirmek için uğraşırken karşı taraftaki 12.000 kişi 4 ayrı geliştirme aracına bölünmüş oluyor. Hatta bazı firmaların (Sun, IBM) birden çok geliştirme aracı olduğunu düşünürsek bu sayı iyice parçalanıyor. Yani Java tarafı ne kadar kalabalık olursa olsun, birbirlerinden bağımsız aynı özellikleri geliştirmek için enerji harcıyorlar. Yani Java tarafındaki IDE’leri geliştiren ekiplerin toplam sayısının fazla olması Java tarafı için bir avantaj sağlamıyor.
 
Bir de yazılım geliştiriciler gözünden bakalım. Java tarafındakiler neredeyse her projede ayrı bir geliştirme aracıyla çalışmak zorunda kalıyorlar. Örnek olarak, bir projede Oracle JDeveloper ile çalışırken, başka bir projede müşterinin IBM ürünleriyle çalışmayı tercih etmesi nedeniyle Eclipse ya da WSAD öğrenip yazılım geliştirmeyi onunla yapmak zorunda kalabiliyor. Veya proje değil de şirket değiştiriyor, tamamıyla farklı Java geliştirme araçlarını öğrenmek zorunda kalıyor. Microsoft tarafındakilere ise sadece Visual Studio .NET’i öğrenmek yetiyor. Bütün .NET projelerinde aynı aracı kullanıyorlar. Java tarafındaki kurumsal yazılım geliştiricilerin, belli sürelerde değiştiği için, çalıştıkları IDE’lerde uzmanlaşma şansı olmuyor. Microsoft tarafındakiler ise Visual Studio .NET’in her projede ayrı bir özelliğini öğrene öğrene üzerine ekleyerek gidiyorlar ve kullandıkları geliştirme aracında uzmanlaşma şansları Java tarafındakilere göre daha fazla oluyor.
Java tarafının bir avantajı Java ile geliştirilen programların her platform üzerinde (Windows, Linux, Unix, MacOS, vs.) çalışabilmesi. Bilindiği gibi C# ile geliştirilen yazılımlar sadece Windows platformlarında çalışabiliyor. Gerçi .NET tarafında .NET’in Linux üzerinde çalışabilmesi için Mono projesi yürütülüyor ama bu Microsoft’un kendisi tarafından yürütülen bir proje değil. Bu projenin çok fazla başarıya ulaşması beklenmiyor, en azından Microsoft bunu istemiyor. Çünkü eğer Linux üzerinde Visual Studio .NET ile C# programları geliştirebileceksek neden Windows işletim sistemi satın alalım? Bunun Microsoft’un kurumsal stratejisiyle bağdaştığını sanmıyorum. Microsoft’un bugüne kadar izlediği ve muhtemelen bundan sonra da izleyeceği politika müşterilerini tamamen Microsoft ürünlerine bağlamaktır.
 
Ama bu çok platformda çalışma Java’ya neler kazandırıyor? Türk kamu ve özel sektöründe işletim sistemlerinin çoğunlukla Windows olduğunu biliyoruz. İşletim sistemleri Linux olduğu zaman Java rakipsiz oluyor ama Windows olduğunda Java’nın bu çoklu platform avantajının çok anlamı kalmıyor. Aslında yazılımlarda 3 katman kavramı ortaya çıktıktan sonra işletim sistemine bağımlılık azaldı. Yazılımlar web tabanlı çalışabiliyorsa siz bu yazılımı Windows ya da Linux istemciler ile (herhangi bir tarayıcı vasıtasıyla Internet'e bağlanabilen her sistem ile) kullanabilirsiniz.
Java tarafında da IDE’lerin giderek standartlardan uzaklaşmaya başlaması sonucu bir JAVA IDE’si ile geliştirilen Java yazılımının başka bir Java IDE’si ile açılıp üzerinde çalışılamaması sorunu var. Her IDE kendisine göre uzantılar ekliyor. Eclipse Java Community Process’i (JCP – Java dilinin standartlarını belirleyen, çeşitli firma ve kişilerin oluşturduğu grup) atlayarak SWT teknolojisini ekledi. Oracle JDeveloper, Oracle veritabanına bağlayıcı BC4J teknolojisini öne çıkarıyor. Bu gelişmeler de bir IDE ile geliştirilen yazılımın üzerinde başka bir IDE ile işlem yapılamaması dezavantajını doğuruyor.
 
Peki Java tarafının yapması gerekenler neler? Mutlaka C# tarafındaki Visual Studio .NET kadar güçlü bir IDE geliştirilmesi gerekiyor. Sun firması “Project Rave” olarak adlandırdığı yeni bir IDE projesi yürüttüğünü açıkladı. Programlamaya yeni başlayanların Visual Basic gibi kolay kullanılan araçları seçtiği ve Java ile yazılım geliştirmenin yeni başlayanlar için Visual Basic’e göre daha zor olduğu Sun tarafından vurgulandı. Sun bu amaçla kullanımı en az Visual Basic kadar kolay olan yeni bir IDE geliştirmek için “Project Rave” projesini yürütmeye devam ediyor (Proje tamamlanınca ürünün adı değişecek, Project Rave kalmayacak). 2003 yılının sonunda birinci versiyonunu, 2004’ün ilk çeyreğinde de 2. versiyonunu çıkarmayı planlıyorlar. Böylece JavaOne konferansında ortaya atılan 10 milyon Java geliştiricisi hedeflerine (şu anda 3 milyon kişiymiş) ulaşmak istiyorlar. Oracle da ADF teknolojisini kullandığı yeni JDeveloper 10G’nin preview sürümünü piyasaya sürdü. Oracle da JDeveloper’ı daha önce çok başarılı olan ürünü Form Builder kadar kolay kullanılan (kod yazmayı minimuma indirerek) bir ürün haline getirmeye çalışıyor. IBM’in de WSAD üzerinde çalışmaları devam ediyor. Açık kaynak kodlu olarak yürütülen Eclipse IDE’si temelli WSAD ürününe uygulama sunucusu ve Visual Age for Java’nın güzel özelliklerini entegre ederek Java IDE pazarında payını genişletmeye çalışıyor.
 
Kurumsal yazılım geliştiricilerin istediği yazılımlarını hızlı geliştirmek. Bu nedenle sürükle-bırak araçlarını saf (pure) kod yazmaya tercih ediyorlar. Yazılımlarını geliştirmek için veritabanıyla ayrı, uygulama sunucusuyla ayrı, IDE ile ayrı uğraşmak istemiyorlar. Hepsinin tek bir ürün olmasını istiyorlar. Yani bilgisayarına yazılım geliştirme ortamını kurduğu zaman veritabanının, uygulama sunucusunun da IDE ile birlikte kurulmuş ve çalışmaya hazır halde olmasını istiyorlar. Daha sonra performans için veritabanı ve uygulama sunucusunun ayrılıp başka bilgisayarlarda çalıştırılması işini sistemcilere devretmek istiyorlar. Yazılım geliştirirken de kod yazmayı minimuma indirmek, mümkün olduğunca çok sihirbaz desteği kullanmak istiyorlar. Bunu uzun vadede ilk gerçekleştirebilen taraf avantaj kazanacak. Bu Microsoft Visual Studio .NET de olabilir, veya Java tarafındaki IDE’lerden birisi de olabilir. Gerçek olan, dilin yaygınlaşmasında IDE’nin çok büyük katkısı olduğu ve geliştiricilerin artık üzerlerindeki kod yazma yükünü ve entegrasyonla uğraşmayı azaltmak istedikleridir.
 
İyi çalışmalar,
Bu makaleyi beğendin mi? Yorumunu Yaz!







Sizden Gelen Yorumlar:

Yorum Yazın

gürkan ş.(17.6.2011 14:58:52)
Makale bilmediğim yeni şeyler öğrenmemi sağladı mesela hangi ide hangi şirkete ait, fazla java geliştiricisi olmasının dezavantajları, pure kod kavramı gibi şeyler. bunları yeni öğrendim yararlı oldu o açıdan.
%33 %22 %44
Katılıyorum Çekimserim Katılmıyorum



mehmet erdemsoy(5.1.2011 15:13:19)
Bu makalede sadece yazilimci perspektifinden bakilmis. Is dunyasinda siz Java bilmez seniz bileni bulurlar dolayisiyla burada iddia edilenler bence cok gecerli degil.
Microsoft genellikle kucuk/orta olcekli sirketlerde kullanilan bir teknoloji. Microsoft u kullanir saniz diger componentlerinizin de Microsot olmasi gerekir veya oldukca kapsamli integrasyon projelerine ihtiyaciniz olur. Eger Oracle ya da db2 database kullaniyor saniz Microsoft ile calismak cok da mantikli olmaz.
Ote yandan Java size bir serkete bagimli olmamayi saglar. C# ile sadece Microsoft u kullanabilirsiniz Java ile bir cok platformu secebilirsiniz.
Acik kod kaynagi olarak da Javanin cok buyuk artilari var.
Microsoftún en onemli artisi daha az bilgi derinligiyle yazilim yapmaya olanakli olmasi tabi bi da Microsoft yazilimcilarinin Java yazilimcilarina gore daha sig bilgiye sahip oldugu genellemesini doguruyor.
Turkiyede neden Microsoft un cok fazla kullanildigini bir turlu anlayabilmis degilim ama zannim orta buyuklukteki serketlerin coklugu ve bilgisayar muhendislerinin kolayi secme egilimi.
%52 %22 %26
Katılıyorum Çekimserim Katılmıyorum



pohaha(9.12.2010 02:05:23)
"2003 yılının sonunda birinci versiyonunu, 2004?ün ilk çeyreğinde de 2. versiyonunu çıkarmayı planlıyorlar. "

pohaha hacı c# mı kaldı bu yazı en az 7 8 yıllık yahu nereden bulup koydunuz allah sizi netmesin emi akşam akşam güldürdünüz beni ozaman bilgisayar muhendisliği bile yoktu zuhaha
%23 %0 %77
Katılıyorum Çekimserim Katılmıyorum



Bir yazılımcı(8.12.2010 10:34:18)
.NET ile Java arasındaki IDE kıyaslamasını b kadar yüzeysel ve komik olarak yapıldığı gerçeği göz önüne alındığında ülkemizden yazılım adına bir başarı hikayesinin pek çıkmaması şaşırtıcı gelmemeli.
%56 %11 %33
Katılıyorum Çekimserim Katılmıyorum



Zühtü(22.6.2010 01:04:05)
Makale olsun haber olsun mutlaka yayın tarihi olmalı! Yorumlara bakkıp 1 yıllık yazı diye okumaya başladım nerdeyse 10 yıllık olduğunu fark ettim. İnsanlar güncel zannedip yanlış anlayabilir, yanlış tercih yapabilirler. Mesala ben 4 yıldır .net ile uğraşıyorum ve java ya geçmeyi düşünüyorum
%85 %0 %15
Katılıyorum Çekimserim Katılmıyorum



(15.8.2009 23:01:00)
ne kadar acı türkiyede bilgisayar mühendisinin düşürüldüğü duruma bakın teknoloji üretecekken butun enerjimizi java mı c# mı diye harcayıp ömür bitiyor
%56 %11 %33
Katılıyorum Çekimserim Katılmıyorum



Cem(15.8.2009 16:39:11)
Burada yazılanlara katılmakla birlikte sunlari da belirtmekte fayda var. Evet programcılığa adım atanların cogu visual basic ile basliyor olabilirler. Bu Ms teknolojilerini yayginlastiriyor ama is sadece ide ile bitmiyor. Kurumsal buyuk firmalarin milyarlarca kayittan olusan veritabanlarini kullanmak ve yonetmek icin guclu veritabani araclarina ihtiyaclari var. Ve bu ihtiyaci da kapatan buyuk oranda Oracle ve IBM. Cunku bu firmalar on yillardir bu alanda guvenilirligi sagladilar. Oysa MS urunleri kullanim acisindan ne kadar kolay olsalar da cok hassas konularda yeterince tutarli ve guvenilir olamamakla da un kazandilar. IBM ve Oracle firmalarinin bu urunleri buyuk oranda Java'yi tavsiye etmesinden kaynakli olarak buyuk firmalarin yazilim gel. departmanlarina bakildiginda ezici bir cogunlukla C# programcisi degil Java programcisi calistirdiklari gorulur.
Ote yandan sunu da belirtmek gerekir. Her 2 ide'yi kullanmis olan birisi olarak Eclipse'in MS Visual Studio'dan asagi kaldigini pek soyleyemem. Ozellikle plug in durumu cok iyi bir ozellik. Bazi eksileri oldugu gibi VS 'da goremedigim bazi pratik artilari da var. Dolayisiyla Eclipse bence en az VS kadar iyi bir ide. Hatta daha bile iyi..
Ama onemli olan su. Bir yanda MS bir yanda IBM, Oracle gibi firmalarin her zaman olmasi bizim icin cok iyi. Bir cok alternatif oluyor bizim icin. Hem parali hem bedava secenekler oluyor. Birinin digerini satin almasini acikcasi ben istemem. Cesitlilik kotu birsey degildir cogu zaman...
%71 %7 %21
Katılıyorum Çekimserim Katılmıyorum






Copyright© 2001-2023. Bilgisayar Mühendisleri Portalı | Bütün hakları saklıdır.