X++, Genel Bir Web Geliştirme Teknolojisi Haline Getirilmelidir!

Microsoft Dynamics 365 F&SCM/FO/AX/Axapta, orijinal olarak IBM ve Danimarka firması Damgaard Data işbirliği ile geliştirilmiş ve ilk versiyonu IBM Axapta olarak Mart 1998′de piyasaya sürülmüştü. Axapta kendi geliştirme sistemi içeriyordu MorphX ve X++ programlama dilinin bir kombinasyonu. MorphX ve X++ 2002’de Microsoft’un ürünü satınalmasından sonra önemli bir evrim geçirdi. Başlangıçta, sadece kurumsal kaynak planlama süreçlerini desteklemek amacıyla tasarlanmıştı ancak bugün Microsoft’un vizyonu ve teknolojilerinin desteğiyle birlikte, X++ güçlü bir web geliştirme platformu haline geldi ama hala sadece Dynamics 365 ERP içinde kullanılabiliyor.

X++, hızlı geliştirme yetenekleri, güçlü veri tabanı entegrasyonu, yüksek performans, nesne yönelimli programlama ve iş kurallarını etkili bir şekilde yönetme yetenekleri ile iş dünyasının karmaşıklığına hızlı ve mükemmel çözümler sunabiliyor. Şu an için X++ ile geliştirilmiş binlerce ek çözüm ERP içinde başarıyla kullanılıyor. Ancak bu çözümlerin Dynamics 365 ERP altyapısına bağımlı olması potansiyel müşteri kitlesini sınırlıyor.

Bu makalede X++‘ın genel bir web geliştirme platformu haline gelmesinin faydalarını ve bu dönüşümün iş dünyası, Microsoft ve X++ ekosistemi için yaratabileceği fırsatları keşfedeceğiz. Detaylı analizler ve örneklerle bu dönüşümün nasıl gerçekleştirilebileceğini, beraberinde getireceği sonuçları, karşılaşabileceği zorlukları değerlendireceğiz. Nihayetinde, bu dönüşümün tüm ekosistem tarafından tartışılmasını sağlayacak bir zemin oluşturmaya çalışacağız.

İyi okumalar dilerim!

Neden bu dönüşüm yapılmalı ve yapıldığında ne gibi faydaları olacak?

  • X++ ile yazılmış binlerce modül ve fonksiyon mevcut. Şu anda bunlar Dynamics 365 ERP’ye bağımlı durumda. Birçoğu ürünleştirilip tek başına satılabilir. X++ benzeri altyapısı olmayan farklı bir dil ile bu ürünleri geliştirmek çok maliyetli ve zor. Oysa ki hazır olan bu ürünler, AppSource aracılığıyla veya bağımsız bir şekilde kolayca satılabilir. Bu sayede Dynamics 365 için de birçok fırsatın ortaya çıkması mümkün olacaktır.
  • Birçok kurumsal web ürünü, X++ sayesinde hızlı ve kolay bir şekilde geliştirilebilir. Bu durum, hem X++ hem de Dynamics 365 ekosistemine birçok fırsat sunacaktır. Ayrıca, ürün ve çözüm çeşitliliği, Dynamics 365‘in rekabet içinde daha güçlü bir konuma gelmesine katkı sağlayacaktır. Diğer dillerle kıyaslandığında X++ ile ürün ortaya çıkarmak çok daha hızlı ve güvenilir olacaktır.
  • Bu dönüşüm, X++ ekosistemini genişletecektir. X++ ile çalışan farklı kaynakların etkileşimi, beklenmeyen alanlarda çözümlerin ortaya çıkmasına olanak tanıyacaktır. Ayrıca, bu büyüyen ekosistem sayesinde Dynamics 365 ERP‘nin büyümesine de olumlu etkisi olacak, bilinirliliğini arttıracaktır.
  • Bu dönüşüm, X++ için yeni kaynak eğitimini çok kolay ve çekici hale getirecektir. Kariyerinin başında olan kişiler için tercih edilebilir bir dil olma özelliğini artıracaktır. Ayrıca, eğitim vermek için sanal makineler veya uzun kurulumlara ihtiyaç olmayacak; bu sayede birçok kişi X++ ile geliştirmeyi kolayca deneyimleyebilecektir.
  • Açık kaynak kod mantığı ile projeler geliştirilebilir. Bu sayede çok daha güçlü ürünlerin ortaya çıkması sağlanabilir. Ayrıca, Microsoft vizyonuna uygun olarak X++‘ın gelişimini de hızlandıracaktır.
  • Hazır bir X++ ekosistemi olduğu için, bu yeni yapının yaygınlaştırılması ve eğitimi çok kolayca yapılabilir. Halihazırda birçok X++ eğitmeni ve içerik üreticisi mevcut; bunlara hızlıca yenileri eklenecektir.
  • Bu yeni ürünler ve ekosistem sayesinde cross-sell ve co-sell imkanları artacaktır.
  • X++ geliştirme ortamının son yapısı zaten bu dönüşüm için çok uygun. Çok karmaşık olmayan bir proje ile bu dönüşümün yapılabileceğine inanıyorum. X++ ekosisteminden gönüllülerin de katkısıyla öncelikle eğitim amaçlı bir sürüm çıkarılabilir. Bu sürümde sadece yeni nesne oluşturma imkanı olması yeterli olacaktır.
  • X++ ile üretilen bu ürünlerin Microsoft ekosistemine kolayca entegre edilebilecek olması ve maliyet avantajları sunması, tercih edilebilir olmasını sağlayacaktır.
  • X++ bir eğitim dili ve platformu haline gelebilir. Okullarda temel yazılım eğitimlerinde kullanılabilir, özellikle Nesne Yönelimli Programlama ve Veri Tabanı Yönetimi derslerinde temel dil olarak öğretilebilir. Bunu desteklemek için eğitim içerikleri hazırlanabilir.
  • X++ dili ve geliştirme frameworku çok kolay, hızlı ve güvenilir ürün geliştirmeye olanak sağlıyor. Özellikle veri tabanı ile olan işlemlerdeki kolaylık, EDT ve Enum yapısı, güvenlik yapısı, ve Event’lerin düzenlenmiş olması, kodların çok daha iyi organize olmasına ve karmaşık ihtiyaçlar için bile yalın çözümlerin üretilebilmesini sağlamaktadır. Büyük verileri barındıracak uygulamalar kolayca geliştirilebilecektir.
  • Microsoft hali hazırda Power Pages ile citizen developerlar için bir web geliştirme aracı sunuyor ancak core developerlar için böyle bir araç yok bu eksikliği X++ çok kolay ve hızlıca kapatabilir.
  • Bu dönüşüm Microsoft’un diğer ürünleri ile rekabet etmeyecek hatta Power Platfrom ve Dynamics 365 kullanımını arttıracaktır. Azure tarafında ise çok daha büyük bir etkisi olması öngörülmüştür.
  • X++ ile özellikle veri işlemenin önemli olduğu, karmaşık kod ihtiyacı olan kurumsal web çözümleri çok kolay ve hızlıca devreye alınabilir. Bu da çok tercih edilen bir araç olmasını sağlayacaktır.

X++, genel web geliştirme platformu haline nasıl getirilebilir?

  • X++‘ın genel bir yazılım geliştirme dili olma hedefine yönelik en önemli adım, C# gibi yerelde kolayca geliştirilebilen bir yapıya sahip olması ile başlar. Bu noktada, mevcut durum bu hedefe oldukça yaklaşmış durumdadır ancak sistem büyüklüğü bu dönüşümü karmaşıklaştırmaktadır. Bu karmaşıklıktan sıyrılan bir dil, bu evrimi çok daha sorunsuz bir şekilde gerçekleştirebilir.
  • X++ tek başına değil geliştirmeyi kolaylaştıran framework ile birlikte gelmelidir. Bu yüzden ben X++ derken sadece dili değil framework ile birlikte olan geliştirme yapısını kastediyorum. Bu yapı zaten asıl ulaşmak istediğimiz hedef. Dolayısıyla AOT olacak ama nerdeyse standart hiç bir nesne başlangıçta olmayacak. Standart hiç bir nesnenin kullanılmadığı yeni bir geliştirme yaptığımızda neler yapıyorsak aynısını yapabileceğimiz bir yapı hayal ediyorum. Yeni bir uygulamaya başlarken istersek faklı modulleri projemize dahil edebilmeliyiz.

İsteğe bağlı olarak eklenebilecek yapılar şunlar olabilir:

  1. Standart EDT ve Enumlar.
  2. Güvenlik altyapısı
  3. Kullanıcı yönetimi
  4. İş akışı yönetimi
  5. Adres yönetimi
  6. Şirket yapısı
  7. DMF
  8. SSRS (SQL Server Reporting Services)
  9. Ofis entegrasyonu
  10. Toplu işler
  11. Web servis yapısı
  12. Power platform entegrasyonu
  13. Power BI
  14. Model paket yönetimi
  • X++ ile geliştirilen bir ürün için sunucular Azure üzerinde hazır hale getirilebilir. Bu, Azure tüketimini sağlama avantajı sunar. Ancak, bu bir zorunluluk olmamalı ve farklı alternatifler de kullanılabilir olmalıdır.
  • SQL Server‘ın farklı versiyonları ile uyumlu olmalıdır. Gelecekte çeşitli veri tabanlarıyla çalışabilme yeteneğini geliştirmek adına çalışmalar yapılabilir. Bu çeşitli veri tabanlarıyla entegrasyon imkanlarını genişletebilir bu yeni olanakları beraberinde getirebilir.
  • İlk versiyon, daha basit bir formda başlayabilir. Karmaşıklaştırabilecek yapılar başlangıçta dışarıda bırakılabilir. Örneğin Map, Extension, Table Extension vs.

Sonuç;

Bu yazı boyunca, X++ dilinin genel bir web geliştirme platformu haline getirilmesinin pek çok avantajını inceledik. X++ güçlü veri tabanı yönetimi, hızlı geliştirme yetenekleri, nesne yönelimli programlama özellikleri ve iş kurallarını etkili bir şekilde yönetme kabiliyetleri ile öne çıkan bir dil olarak bilinir. Ancak bu güçlü özelliklerin genel web geliştirme bağlamında kullanılması, daha geniş bir kullanıcı kitlesine erişme ve çeşitli projelerde etkili çözümler sunma potansiyelini ortaya çıkaracaktır.

X++‘ın genel web geliştirme platformu olarak evrimleşmesi, yeni fırsatlar yaratmanın yanı sıra mevcut projeleri de modernleştirme şansı sunar. Geliştiriciler, bu dönüşümle birlikte daha verimli, hızlı ve güçlü projeler üretebilirler. Bu, şirketlere rekabet avantajı kazandırırken, geniş bir geliştirici kitlesiyle dilin daha zengin bir ekosistem oluşturmasına olanak tanır.

Ancak, bu hedeflere ulaşmak için teknik zorlukların yanı sıra topluluk desteğine, eğitim kaynaklarına ve geliştirici işbirliğine ihtiyaç vardır. X++ genel web geliştirme platformu haline getirilirken, bu zorlukları aşmak ve dilin potansiyelini tam anlamıyla değerlendirmek, sadece geliştiricilere değil aynı zamanda iş dünyasına da büyük avantajlar sağlayabilir.

Sonuç olarak, X++‘ın genel web geliştirme platformu haline getirilmesi, dilin daha geniş bir perspektiften değerlendirilmesini sağlar. Bu dönüşüm, dilin güçlü temellerini genel web uygulamalarına taşırken, gelecekteki projelerde daha etkili ve rekabetçi çözümler sunma potansiyelini artırır. X++ topluluğu, geliştirici ekibi ve Microsoft bu yolculukta birlikte çalışarak dilin başarıya ulaşmasına katkıda bulunabilir. Gelecekteki gelişmeleri sabırsızlıkla bekliyorum.

İyi kodlamalar!

 
  • Trackback are closed
  • Comments (0)
  1. No comments yet.