Delphi Can

Orjinalini görmek için tıklayınız: Neden Delphi ile web ?
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Merhabalar arkadaşlar, 
bugün bana gelen bir soru üzerine bu yazıyı paylaşmaya karar verdim. Söz verdiğim gibi TMS ile ilgili bir video da gelecek. Ama bu sorunun cevabını video ile veremezdim. Özetle "PHP, ASP, ASP.NET veya JSP dururken neden Delphi ile web yazıyorsunuz şaşırıyorum" demiş bir arkadaşımız. Cevap biraz uzun olacak, kusura bakmayın.

İlk web sitemi ve basit web uygulamalarımı PHP ile yapmaya başladım. Sonrasında windows sunucu kullanımının yoğun olması ve IIS gibi imkanlar neticesinde klasik ASP kullanmaya başladım. Bahsettiğim yıllar 1993-1995 arası. Klasik ASP ile geliştirilmesi 2 yıl süren çok güzel kurumsal bir uygulama yaptık, bir çok firmaya da sattık. Uzun süre de kullanıldı. Değişen teknolojilere ve isteklere ayak uydurabilmek için bazı şeyleri ActiveX (OCX) ile çözüp ASP projemizde kullandık. Fakat sürekli değişen müşteri ihtiyaçları ve talepleri bizi sürekli zorlamaya devam etti.

Tam da bu istekleri nasıl yaparız nasıl ederiz diye düşünürken çok sevgili ! Microsoft, ASP.NET'i duyurdu. Bir baktık, klasik ASP ile elimizi kolumuzu bağlayan çoğu şey ASP.NET ile mümkün hale gelmiş, OOP desteği, harici bileşen kullanabilme vb. sayısız yeni özellik bizi cezbetti ve hadi dedik ASP.NET'e geçelim. Eeee, tabi klasik bir Microsoft hali, ASP projemizi ASP.NET'e çevirme imkanı yok! neymiş efendim, teknolojisi, altyapısı farklıymış, doğrudan bir güncelleme mümkün değilmiş...

Tamam dedik, oturduk, ASP.NET 1.1 sürümü ile projemizi SIFIRDAN tekrar yazdık. İyi, hoş, beğendik, eski kodları yenisine göre çevirmek için biraz zaman harcadık, bize 4-5 aya maloldu ama ortaya ASP.NET 1.1 ile yepyeni bir sürüm çıkardık. 

Çok uzatmadan şöyle bir ayrıntıya da yer vereyim, projemizin gelişme sürecinde ASP.NET 1.1 sürümünden 3.5'e geçerken de göbeğimiz çatladı, neredeyse projeyi sıfırdan yazdık gibi oldu. Bu da şu demek; aynı teknolojinin farklı versiyonları arasında bile geçişte sorun yaşadık. Haftalarca geçiş için uğraştık.

Ama şöyle bir durum olmaya başladı, müşterilerimiz dediler ki "yahu, eski versiyon çok güzeldi, çok hızlıydı bu çok yavaş çalışıyor". Evet, ASP çok hızlıydı ama ASP.NET 'te bir o kadar hantal çalışıyordu. ViewState mekanizmaları vb. yüzünden asp.net sayfaları iş yükü yoğun sayfalarda performans sorunları yaşatıyordu. Bin pişman olduk ama bir süre de böyle idare ettik.

Çok uzatmayacağım, şöyle kısa kısa geçeyim. Sonra Microsoft ASP.NET MVC 'yi çıkardı. ASP'den ASP.NET'e geçişte "şöyle iyi, böyle iyi" dedikleri ASP.NET'e kendi ağızları ile " eski asp.net çok yavaştı, biz de hem daha düzenli geliştirme imkanı sağlayan hem de performans artışı getiren MVC'yi sunuyoruz" dediler. 

E tabi, ASP.NET projesini ASP.NET MVC'ye taşıma yine YOK ! Oturacaksın yeniden yazacaksın !

Şimdilerde ASP.NET CORE çıkardılar, MVC'den CORE'a doğrudan proje çevrimi yine YOK! kullandıiğın componentler tamamen uyumsuz, sözde platform bağımsız olduğu için çoğu özellik ve kod kullanımları ya tamamen kaldırılmış ya da kullanım şekli değişmiş. 

Yani demem o ki, Microsoft teknolojileri ile yaptığımız her işte gün geldi yarı yolda bırakıldık. Bir teknoloji sunuyorlar, oturuyorsun onunla projeler yapıyorsun, sonra bir bakmışsın "artık yok" diyorlar. Silverlight ile de proje yapıyorduk, şimdi nerede silverlight? Yerine bir alternatif de sunmadılar, Silverligt projemiz elimizde patladı.

Buraya kadar yazdıklarımın türkçe meali : Microsoft'un ipiyle kuyuya inilmez...

Delphi ile ilk web uygulamamızı IntraWEB ile yaptık. Hem form tasarımındaki özgürlükler, hem native bir exe dosyası olması, IIS gerektirmemesi vb. bir sürü güzelliği ile bir süre IntraWEB ile devam ettik. Delphi'nin güzelliği şu, Microsoft'un aksine, Delphi'nin eski sürümlerinde yaptığın bir projeyi yeni sürümlerde de sorunsuz açıp derleyebiliyorsun. IntraWEB 12 ile başladığımız yolculukta 14 sürümüne kadar sorunsuz olarak geldik. TMS'nin Intaweb bileşenleri ve CGDEVTOOLS'un JQuery kitaplıklarını kullanmamıza rağmen sıfır problemle versiyon geçişlerimiz oldu. Hala da kullanılmaya devam eden projelerimiz var.

Sonrasında UniGui'ye geçtik. Intraweb'e kıyasla görsel açıdan çok daha iyi olan unigui'yi hala kullanmaya devam ediyoruz. ilk kullanmaya başladığımız daha birinci sürüm bile çıkmamıştı. 0.9'lu sürümlerden şu anda 1.90 sürümüne kadar SIFIR PROBLEM ile geldik. Takıldığımız yerler muhakkak oldu, ama çok kısa sürelerde hallettik. 

Hem IntraWEB'te hemde UniGui'de ister IIS üzerinde DLL yayınlama isterseniz de EXE dosyası olarak dağıtma imkanı var. Bir ana bilgisayara dosyaları attıktan sonra rahatlıkla kullanabiliyorsunuz. Fakat daha ileri projelerde, mesela hosting kullanılması gereken durumlar da oluyor ve hosting şirketine IIS üzerine şu DLL'i ekleyiverin diyemiyorsunuz. Ya bir sanal sunucu kiralamanız ve dosyaları oraya atmanız ya da kendi şirketinizde bulunan sunucuya DNS servisleri kurup web sitenizi oraya yönlendirmek gerekiyor. Yani hosting üzerinde bu projeleri yayınlamak baya bir sıkıntıydı. Ta ki TMS Web Core çıkana kadar. Onlarca formdan oluşan bir proje yapıyoruz, bir sürü component kullanıyoruz, ortaya her platformda sorunsuz olarak çalışabilen HTML5+CSS3 çıkıyor. Böylece hosting sorunumuz da kalmadı. Şu anda projelerimizin %90'ını TMS ile %10'unu da unigui ile yapıyoruz. Şu anda tüm Türkiye'den yüzbinlerce kişinin üye olduğu koskoca uygulamalarımızın arkasında Delphi var.

Microsoft'un sürekli değişen, değiştikçe eskiye uyumsuz hale gelen, bazen tamamen ortadan kaldırılan teknolojileri ile uğraşmak yerine Delphi kullanmaya karar verdiğimiz günden bu yana o kadar rahat çalışıyoruz ki anlatamam. Yöneticimizin " bir deneyelim bakalım, hele sen bir proje yap görelim" dediği Delphi, şu anda şirkette çalışan herkesin bilgisayarında ve herkes Delphi ile yazıyor.

Intraweb'ten TMS Web Core'a kadar Delphi ile web geliştirme yolculuğumuzda o kadar konforlu çalışıyoruz ve hızlı çözümler üretebiliyoruz ki bu deneyime hakikaten paha biçilemez. Özellikle TMS Web Core'a eklenen TMS FNC bileşen paketleri neredeyse bizim her ihtiyacımızı karşılıyor. 

Microsoft teknolojileri ile ne kadar çok sorun yaşıyorsak, Delphi ile de bir o kadar rahatız. "Rahatlık" kelimesini bütün gün kod yazan arkadaşlarımız daha iyi anlarlar. "Runtime Paketi" kurmadan bir projeyi dağıtabilmek büyük özgürlük. IIS Kur, .Net Framework kur, .config dosyaları ayarla vb. gibi dertler yok. Hatırlıyorum, bir büyük şirkette IT ekibi sunucu üzerindeki IIS üzerinde .config dosyalarına müdahale etmemize izin vermemişlerdi, yıllardır sorunsuz çalışan uygulamalarını bozmamak için. "IIS'e dokunmayın da ne yaparsanız yapın" demişlerdi.  Biz de mecburen başka bir sunucuya kurulum yapmıştık. Delphi'de böyle sorunlarımız hiç olmadı.

İşte bu yüzden web geliştirmede Delphi kullanıyoruz. Sanırım soruyu soran arkadaşımız için yeterli bir cevap olmuştur. Tabi bu .NET veya C# öğrenmeyin demek değil, öğrenin, kullanın, kendinizi geliştirin, sonuçta piyasada (maalesef) hala en aranan şeyler bunlar. Delphi'nin hala bir pazarlama sorunu çektiğini düşünüyorum, insanların aklı hala Delphi 7'de kalmış. Delphi ile yazıyorum dediğinde öcü görmüş gibi bakıyorlar. BTG'nin seminerler, toplantılar vb. yapması lazım. Bir dönem yapıyorlardı, hatta RAd Studio XE2'nin tanıtımına ben de gitmiştim bir otele. Ama o son gidişim oldu. Bir daha hiç böyle bir şey yapmadılar.

Buraya kadar okuyan herkese teşekkürlerimi sunuyorum.
Sevgiler, selamlar.
değerli deneyimleriniz çok önemli, ben şuan web sayfası geliştirme olarak hiç birşey bilmiyorum, php ile başlayayım diyorum bir türlüyü başlamadım, TMS Web Core benim için çok rahat olacağı kesin, öğrenme ve geliştirme olarak. takıldığı nokta SEO açısından eksi puna olur diye düşüyorum, her sayfa için ayrı bir proje geliştirse en azından url değişse kurtarır mı diye düşüyorum.
(13-10-2022, Saat: 09:13)nguzeller Adlı Kullanıcıdan Alıntı: [ -> ]değerli deneyimleriniz çok önemli, ben şuan web sayfası geliştirme olarak hiç birşey bilmiyorum, php ile başlayayım diyorum bir türlüyü başlamadım, TMS Web Core benim için çok rahat olacağı kesin, öğrenme ve geliştirme olarak. takıldığı nokta SEO açısından eksi puna olur diye düşüyorum, her sayfa için ayrı bir proje geliştirse en azından url değişse kurtarır mı diye düşüyorum.

TMS Web Core'un en büyük avantajı zaten SEO. Standart HTML5+CSS3+JS kütüphaneleri kullanılıyor. Asıl Intraweb, unigui vb. bileşenlerde sıkıntı SEO durumu. (Intraweb'de 17 sürümü ile artık HTML'e göz kırpıyor ). HTML5'te ne yapabiliyorsanız TMS Web Core ile onu yapabilirsiniz. TMS'nin web sitesinde BLOG kısmında webcore makalelerine bir göz atın. Neler neler, ne imkanlar var.
https://www.tmssoftware.com/site/blog.asp?post=471

bu örnekde url değiştirme gösteriyor, tam istendiği olmasada iş görebilir gibi geldi. saladığı avantajları düşündünde.


https://topic.alibabacloud.com/a/tms-web...12130.html
(13-10-2022, Saat: 08:15)rmzgenius Adlı Kullanıcıdan Alıntı: [ -> ]Merhabalar arkadaşlar, 
bugün bana gelen bir soru üzerine bu yazıyı paylaşmaya karar verdim. Söz verdiğim gibi TMS ile ilgili bir video da gelecek. Ama bu sorunun cevabını video ile veremezdim. Özetle "PHP, ASP, ASP.NET veya JSP dururken neden Delphi ile web yazıyorsunuz şaşırıyorum" demiş bir arkadaşımız. Cevap biraz uzun olacak, kusura bakmayın.

İlk web sitemi ve basit web uygulamalarımı PHP ile yapmaya başladım. Sonrasında windows sunucu kullanımının yoğun olması ve IIS gibi imkanlar neticesinde klasik ASP kullanmaya başladım. Bahsettiğim yıllar 1993-1995 arası. Klasik ASP ile geliştirilmesi 2 yıl süren çok güzel kurumsal bir uygulama yaptık, bir çok firmaya da sattık. Uzun süre de kullanıldı. Değişen teknolojilere ve isteklere ayak uydurabilmek için bazı şeyleri ActiveX (OCX) ile çözüp ASP projemizde kullandık. Fakat sürekli değişen müşteri ihtiyaçları ve talepleri bizi sürekli zorlamaya devam etti.

Tam da bu istekleri nasıl yaparız nasıl ederiz diye düşünürken çok sevgili ! Microsoft, ASP.NET'i duyurdu. Bir baktık, klasik ASP ile elimizi kolumuzu bağlayan çoğu şey ASP.NET ile mümkün hale gelmiş, OOP desteği, harici bileşen kullanabilme vb. sayısız yeni özellik bizi cezbetti ve hadi dedik ASP.NET'e geçelim. Eeee, tabi klasik bir Microsoft hali, ASP projemizi ASP.NET'e çevirme imkanı yok! neymiş efendim, teknolojisi, altyapısı farklıymış, doğrudan bir güncelleme mümkün değilmiş...

Tamam dedik, oturduk, ASP.NET 1.1 sürümü ile projemizi SIFIRDAN tekrar yazdık. İyi, hoş, beğendik, eski kodları yenisine göre çevirmek için biraz zaman harcadık, bize 4-5 aya maloldu ama ortaya ASP.NET 1.1 ile yepyeni bir sürüm çıkardık. 

Çok uzatmadan şöyle bir ayrıntıya da yer vereyim, projemizin gelişme sürecinde ASP.NET 1.1 sürümünden 3.5'e geçerken de göbeğimiz çatladı, neredeyse projeyi sıfırdan yazdık gibi oldu. Bu da şu demek; aynı teknolojinin farklı versiyonları arasında bile geçişte sorun yaşadık. Haftalarca geçiş için uğraştık.

Ama şöyle bir durum olmaya başladı, müşterilerimiz dediler ki "yahu, eski versiyon çok güzeldi, çok hızlıydı bu çok yavaş çalışıyor". Evet, ASP çok hızlıydı ama ASP.NET 'te bir o kadar hantal çalışıyordu. ViewState mekanizmaları vb. yüzünden asp.net sayfaları iş yükü yoğun sayfalarda performans sorunları yaşatıyordu. Bin pişman olduk ama bir süre de böyle idare ettik.

Çok uzatmayacağım, şöyle kısa kısa geçeyim. Sonra Microsoft ASP.NET MVC 'yi çıkardı. ASP'den ASP.NET'e geçişte "şöyle iyi, böyle iyi" dedikleri ASP.NET'e kendi ağızları ile " eski asp.net çok yavaştı, biz de hem daha düzenli geliştirme imkanı sağlayan hem de performans artışı getiren MVC'yi sunuyoruz" dediler. 

E tabi, ASP.NET projesini ASP.NET MVC'ye taşıma yine YOK ! Oturacaksın yeniden yazacaksın !

Şimdilerde ASP.NET CORE çıkardılar, MVC'den CORE'a doğrudan proje çevrimi yine YOK! kullandıiğın componentler tamamen uyumsuz, sözde platform bağımsız olduğu için çoğu özellik ve kod kullanımları ya tamamen kaldırılmış ya da kullanım şekli değişmiş. 

Yani demem o ki, Microsoft teknolojileri ile yaptığımız her işte gün geldi yarı yolda bırakıldık. Bir teknoloji sunuyorlar, oturuyorsun onunla projeler yapıyorsun, sonra bir bakmışsın "artık yok" diyorlar. Silverlight ile de proje yapıyorduk, şimdi nerede silverlight? Yerine bir alternatif de sunmadılar, Silverligt projemiz elimizde patladı.

Buraya kadar yazdıklarımın türkçe meali : Microsoft'un ipiyle kuyuya inilmez...

Delphi ile ilk web uygulamamızı IntraWEB ile yaptık. Hem form tasarımındaki özgürlükler, hem native bir exe dosyası olması, IIS gerektirmemesi vb. bir sürü güzelliği ile bir süre IntraWEB ile devam ettik. Delphi'nin güzelliği şu, Microsoft'un aksine, Delphi'nin eski sürümlerinde yaptığın bir projeyi yeni sürümlerde de sorunsuz açıp derleyebiliyorsun. IntraWEB 12 ile başladığımız yolculukta 14 sürümüne kadar sorunsuz olarak geldik. TMS'nin Intaweb bileşenleri ve CGDEVTOOLS'un JQuery kitaplıklarını kullanmamıza rağmen sıfır problemle versiyon geçişlerimiz oldu. Hala da kullanılmaya devam eden projelerimiz var.

Sonrasında UniGui'ye geçtik. Intraweb'e kıyasla görsel açıdan çok daha iyi olan unigui'yi hala kullanmaya devam ediyoruz. ilk kullanmaya başladığımız daha birinci sürüm bile çıkmamıştı. 0.9'lu sürümlerden şu anda 1.90 sürümüne kadar SIFIR PROBLEM ile geldik. Takıldığımız yerler muhakkak oldu, ama çok kısa sürelerde hallettik. 

Hem IntraWEB'te hemde UniGui'de ister IIS üzerinde DLL yayınlama isterseniz de EXE dosyası olarak dağıtma imkanı var. Bir ana bilgisayara dosyaları attıktan sonra rahatlıkla kullanabiliyorsunuz. Fakat daha ileri projelerde, mesela hosting kullanılması gereken durumlar da oluyor ve hosting şirketine IIS üzerine şu DLL'i ekleyiverin diyemiyorsunuz. Ya bir sanal sunucu kiralamanız ve dosyaları oraya atmanız ya da kendi şirketinizde bulunan sunucuya DNS servisleri kurup web sitenizi oraya yönlendirmek gerekiyor. Yani hosting üzerinde bu projeleri yayınlamak baya bir sıkıntıydı. Ta ki TMS Web Core çıkana kadar. Onlarca formdan oluşan bir proje yapıyoruz, bir sürü component kullanıyoruz, ortaya her platformda sorunsuz olarak çalışabilen HTML5+CSS3 çıkıyor. Böylece hosting sorunumuz da kalmadı. Şu anda projelerimizin %90'ını TMS ile %10'unu da unigui ile yapıyoruz. Şu anda tüm Türkiye'den yüzbinlerce kişinin üye olduğu koskoca uygulamalarımızın arkasında Delphi var.

Microsoft'un sürekli değişen, değiştikçe eskiye uyumsuz hale gelen, bazen tamamen ortadan kaldırılan teknolojileri ile uğraşmak yerine Delphi kullanmaya karar verdiğimiz günden bu yana o kadar rahat çalışıyoruz ki anlatamam. Yöneticimizin " bir deneyelim bakalım, hele sen bir proje yap görelim" dediği Delphi, şu anda şirkette çalışan herkesin bilgisayarında ve herkes Delphi ile yazıyor.

Intraweb'ten TMS Web Core'a kadar Delphi ile web geliştirme yolculuğumuzda o kadar konforlu çalışıyoruz ve hızlı çözümler üretebiliyoruz ki bu deneyime hakikaten paha biçilemez. Özellikle TMS Web Core'a eklenen TMS FNC bileşen paketleri neredeyse bizim her ihtiyacımızı karşılıyor. 

Microsoft teknolojileri ile ne kadar çok sorun yaşıyorsak, Delphi ile de bir o kadar rahatız. "Rahatlık" kelimesini bütün gün kod yazan arkadaşlarımız daha iyi anlarlar. "Runtime Paketi" kurmadan bir projeyi dağıtabilmek büyük özgürlük. IIS Kur, .Net Framework kur, .config dosyaları ayarla vb. gibi dertler yok. Hatırlıyorum, bir büyük şirkette IT ekibi sunucu üzerindeki IIS üzerinde .config dosyalarına müdahale etmemize izin vermemişlerdi, yıllardır sorunsuz çalışan uygulamalarını bozmamak için. "IIS'e dokunmayın da ne yaparsanız yapın" demişlerdi.  Biz de mecburen başka bir sunucuya kurulum yapmıştık. Delphi'de böyle sorunlarımız hiç olmadı.

İşte bu yüzden web geliştirmede Delphi kullanıyoruz. Sanırım soruyu soran arkadaşımız için yeterli bir cevap olmuştur. Tabi bu .NET veya C# öğrenmeyin demek değil, öğrenin, kullanın, kendinizi geliştirin, sonuçta piyasada (maalesef) hala en aranan şeyler bunlar. Delphi'nin hala bir pazarlama sorunu çektiğini düşünüyorum, insanların aklı hala Delphi 7'de kalmış. Delphi ile yazıyorum dediğinde öcü görmüş gibi bakıyorlar. BTG'nin seminerler, toplantılar vb. yapması lazım. Bir dönem yapıyorlardı, hatta RAd Studio XE2'nin tanıtımına ben de gitmiştim bir otele. Ama o son gidişim oldu. Bir daha hiç böyle bir şey yapmadılar.

Buraya kadar okuyan herkese teşekkürlerimi sunuyorum.
Sevgiler, selamlar.

Merhabalar,

Paylaşımınız için teşekkür ederim. Elinize sağlık.
Örnek bir proje Video'nuzu paylaşmanızı sabırsızlıkla bekliyoruz. Shy

Kolay gelsin.
Unigui iyi güzel de Responsive olmaması çok büyük bir eksi. ama roadmap'de gördüm sanki.
Elinize sağlık hocam. Çok güzel bir makale olmuş.
Microsoft .net uğruna neleri feda etmediki.. En başta yazılım dünyasında ki İLK'imiz olan Delphi dahil..
hocam açıklamlarınız içime su serpti
UniGui ile bir uygulama geliştirdim. şimdiden epeyi bir kullancısı oldu..
içeriği konusunda bayağı tereddütlerim var bazen anlanlandıramadğım hatalar veriyor..
projei TMS Web Core taşımak istiyorum ancak eğitim konusunda yarım alabileceğimiz bir platform varmı acaba
cekildimiş çok sayıda YouTube videolar var, blog web core fitre yapıp orada içerik var.
Aslında türkçe bir video seri olsa güzel olur. Ufak bir proje belirleyip admin paneli html template vs. tümüyle bir proje tamamlansa bir çok soru cevap bulmuş olur.