Eski yazılımlar dışında COBOL kullanımının nedenleri var mı?


11

COBOL hala finansal hesaplama için kullanılıyor (yoğun olarak?). Bu eski bir dildir ve AFAIK programcılarının çoğu COBOL'dan nefret eder veya en azından sevmez. Bu bir soru getiriyor: COBOL'un eski yazılımın hala kullanmasının tek nedeni mi yoksa diğer programlama dillerine göre gerçek bir avantajı var mı?

Sadece merak.


3
Eski başlı başına bir sebep değildir.

Hayır, ancak büyük olasılıkla modern özelliklerden yoksundur. Dil başka türlü iyi tasarlanmışsa bu o kadar önemli değildir.
Anto

Ayrıca sadece bankacılıkta değil, hükümette de yoğun olarak kullanılmaktadır.
BBlake

6
"Çoğu programcı COBOL'dan nefret eder" - eminim çoğu programcının da hiç kullanmadığından eminim. Bu "nefret edenlerin"% 5'inden fazlasının sözdizimi veya formu hakkında herhangi bir fikri varsa şaşırırdım. Sadece neler olduğunu bilmeden eski sistemlerin kötülüğünün bir örneği olarak kullanıyorlar. FORTRAN'ın sıklıkla nasıl görüldüğüne benzer.
TZHX

@TZHX: Ancak tüm alıntı "AFAIK çoğu programcının COBOL'dan nefret etmesi veya en azından sevmemesi" olmalıdır. Ben demiyorum olduğunu ben nasıl sadece, bunun gibi yorumlanır durum. Ama söylediğiniz doğru olabilir, ama kendim bir şey söylemeyi yeterince bilmiyorum, kullandığım tek şey insanların görüşlerine (tam olarak söylediklerinizden muzdarip olabilir) kişisel gözlemlerdi.
Anto

Yanıtlar:


12

Şimdi çoğunlukla miras. Birçok kritik iş sistemi, COBOL'da sadece o kadar büyük ve entegre oldukları için, yeniden yazma maliyetinin buna değmeyeceği için hala. COBOL'da yeni bir sistem yazmak muhtemelen mümkün değildir, çünkü COBOL geliştiricilerinin çoğu, uzmanlaşmış beceri için önemli miktarda para çekebilecekleri kıttır (şimdi bir Foxpro geliştiricisine benzer). Bir COBOL uygulamasını çevresinde tutmak için çok az veya hiç neden yoktur, ancak maalesef ortak neden, COBOL uygulamasının zaten yerinde, güvenilir ve değiştirilmesinin neredeyse imkansız olduğu diğer sistemlerle sıkıca bağlı olmasıdır. Bu akıl yürütme, uygulamayı çalıştıran tek donanımın 80/90'lardan Ebay parçalarından özel olarak inşa edilmesi gereken bir duruma gelmeden önce neden değiştirilmesi gerektiğidir.


"Şimdi çoğunlukla miras" demenizi sağlayan şey nedir? Ne hakkında konuştuğunu gerçekten bildiğini sanmıyorum. Şu anda milyonlarca dolarlık yeni bir COBOL projesi üzerinde çalışıyorum. Ayrıca COBOL'u ana uygulama dili olarak kullanan çok sayıda yeni geliştirme projesini de biliyorum. Dilek düşünmek sizin tarafınızdan gerçeğe dönüşmez.
NealB

1
Benden alma. O'Reilley'den yapılan araştırmalar, Cobol kitap satışlarının diğer tüm dillerle karşılaştırıldığında mevcut olmadığını söylüyor. Bunun nedeni, geliştiricilere ilgi eksikliği ya da onu kullanan yeterli geliştirici olmamasıdır. Eminim COBOL kullanarak yeni bir geliştirme bulabilirsiniz, ama hala ÇOK miras (hepsi miras değil). Sizin gibi COBOL konusunda uzmanlaşmış birinin sadece COBOL kullanan diğer insanlarla bağlantıları olacağından eminim. Tıpkı benimle olacağı gibi, sadece bir dil kullanan arkadaşlara sahip olmak azınlık olmadığım anlamına gelmez.
Ryan Hayes

Şirketimizde mevcut kodu kopyalayıp yapıştırıyoruz, ihtiyaçlarımıza göre ayarlıyoruz ve "tamam" diyoruz. Neyse ki C # / VB'deki gelişimimi yapıyorum
Wayne Werner

4

COBOL hala finansal hesaplama için kullanılıyor (yoğun olarak?).

Bu mu?

Bu, finansal hesaplama olarak adlandırdığınız şeye bağlıdır. Finansal kurumlar tarafından işletilen tüm kodu evet olarak adlandırırsanız, büyük olasılıkla öyle. Birçoğunun 60 ve 70'lerde iş kuralları vardır. Bunun gibi sistemlerin yeni bir ortama yükseltilmesinin riski + maliyeti buna değmez. Orada yeni COBOL kodu yazma kimse olduğundan şüpheliyim. Örneğin, .NET yığınına entegre olan COBOL derleyicileri vardır. Çoğu zaman, eski uygulamaları modern yazılım yığınlarına entegre etmek ve kullanmak için araçlar vardır, ancak bu araçlar çok niş bir pazar olduğu için bunları kullanmak zorunda olmayan kişiler tarafından bilinmemektedir.

Eğer finansal hesaplamaya nicel finans için daha benzer bir yazılım diyorsan, COBOL kullanan birini hiç duymadım. C ++, APL türevi k gibi bazı niş diller boyunca çok daha yaygındır.


kve bu soyundan gelenler qacıdır
Andrey

@Andrey Bu bir zevk meselesi. Zevk aldım.
Vitor Py

sen şanslısın. Benim için en büyük problemlerden biri normal IDE eksikliği ve işe yaramaz hata mesajları
Andrey

2
@Andrey Evet, niş geliştirme ortamından uzaklaşmak niş dilleri kullanırken en büyük sorundur. Kullanmadan önce şablon ağır C ++ kodu
Vitor Py

@Andrey, IBM'de Cobol için Eclipse tabanlı takımlar var.

4

COBOL şu anda çoğunlukla eski kullanımı görüyor. Hiçbir yeni uygulama yazılmadığından ve eskileri yavaşça, ama elbette, aşamalı olarak kaldırıldığından, kullanıcı tabanı yavaş yavaş yıpranma ile azalmaktadır.

Hızlı ve ucuz bir şekilde değiştirilebilen çoğu COBOL sistemi zaten değiştirilmiştir. Onarmayan ya da değiştiren daha pahalı olmaya devam eden, ancak daha yeni sistemlere göre daha ucuz ve daha ucuz olanları - ucuz, eski donanımlarda iyi çalışırlar ve uzun yıllar hizmet verdikten sonra hayır yeni hatalar gösteriyor. Çoğu hata ya düzeltildi ya da geçici çözümlere uygun uzun süredir devam eden geleneklere sahip. Bakım tipik olarak, sistem üzerinde uzun süre çalıştıktan sonra hayal edebileceğinizden daha yakından tanıyan bir veya iki uzman çalışana indirilmiştir.

Teknik açıdan bile, eski sistemleri çevrede tutmak için genellikle bazı sağlam nedenler vardır. Nispeten kararlıdırlar, çoğunlukla hata giderilmişlerdir ve son kullanıcı tarafından iyi bilinir / anlaşılırlar.

Yine de sistemin sonunda değiştirildiğini göreceksiniz. Tipik olarak bu hamle, işlerin iş yönünden gelir:

  • Mevcut sistemin kullanıcıları, arkaik arayüzün nasıl kullanılacağını öğrenmeye ikna edilemeyen genç kullanıcılar ile değiştirildi
  • Şirket, diğer çalışanların ücretlerine kıyasla çirkin olmayan bir maaşla sistemi korumak için kimseyi bulamıyor
  • Büyük bir bütçeye sahip biri, şirket için çekirdek bir sistemin bir dizüstü bilgisayarda bir vm ile değiştirilebilecek donanımda çalıştığını bulmak için utanıyor.
  • Kullanmaya başlamak için gerçekten ucuz olan yeni bir emtia sistemi ortaya çıkıyor
  • Eski sistemleri kullanan şirket satın alındı, iflas etti ya da gerçekten varlığını durdurdu
  • Eski sistemle etkileşim kurmak için çok önemli olan, acilen ihtiyaç duyulan işlevsellik, ucuza yapılamaz

2
Bu kadar kesin olmanız için geçmişiniz nedir?

Kesinliğinizin yanlış yerleştirildiğini kesin olarak söyleyebilirim - yeni Cobol kodu yazan (mevcut sistemleri güncelleme ve / veya kopyalama ve değiştirme) birkaç genç (20-30s) yeni işe alımımız var ve ~ 200 geliştiricimizin en az% 10'una sahibiz. kalkınma sürelerinin% 80'ini Cobol'da geçirirler. Sanırım Cobol'u kullanan birçok yer tarif ettiğinizin tam tersi.
Wayne Werner

4

"Çoğu programcı" ile ne demek istediğini merak ettim. Ben cobol programcılar, Java programcılar, .NET programcı (tekil), eski stil VB programcılar ile aynı katta büyük bir BT dükkanında çalışıyorum. Nefret ya da nefret yok. cobol, diğer programlama dilleri gibi bir dildir - kobolda programlama yapan insanlar bunu yapar, çünkü bu onlar için java'da programlama yapmak veya bir kamyon kullanmaktan farklı değildir. ABD'deki popüler anlayışın aksine, yazmaya devam eden birçok kobol var, sadece çoğu Hindistan'da her gün yeni Cobol programcılarının çalışmaya başladığı yer.

Cobol'da çok fazla net yeni sistemin yazılmamasının nedeni, kobol için uygun olan sistem türlerinin (büyük hacimli dosya işleme) zaten yazılmış olmasıdır. Bugünlerde çok az sayıda yeni büyük şirket kuruldu. Ve bunu yapanlar, bordro ve eski kobol sistemlerini çalıştıran şirketlere fayda gibi dış kaynaklardan yararlanıyor olabilir.


2

PeopleSoft'ta çekirdek kodun büyük bir kısmı COBOL'da yazılmıştır.


2004'te bir IT konferansında PeopleSoft temsilcileriyle konuşarak, Oracle onları satın almadan önce, o zamanlar hala COBOL'da olan ürünün sadece bir modülünün olduğunu anladım.
Kennah

Bu COBOL'a diğer dillere göre nasıl bir avantaj sağlıyor?
Matthieu

2

20 yıllık COBOL deneyimiyle, üç farklı ana bilgisayarda, benim düşünceme göre, gerçek COBOL programcılarının sayısı az ve bunun yerine IBM programcıları, Sperry (Unisys 2200) programcıları, Burroughs (Unisys MCP) programcıları ve Tandem (HP NonStop) var programcılar. Onlara saygı göstererek, HP 3000 programcılarının, BULL programcılarının ve DEC programcılarının varlığından da bahsetmeliyim.

COBOL çoğunlukla büyük demir kutular üzerinde çalışır. Belki de kendi standartlarına göre tek gerçek COBOL programcıları, bir UNIX kutusuna COBOL yazanlardır. Vay canına, bunu duyacağım.

Donanım merkezi bir parça olduğundan, COBOL yazan programcıların çoğu kendilerini yazdıkları kodun çalıştığı donanım ile tanımlarlar. Yıllar boyunca, diğer programcıları dinleyerek bana Sperry, Burroughs veya Tandem'in esası hakkında bilgi verdim, onları yuvarlar ve onları bir odaya bırakıp tüm COBOL için tek bir donanım platformu üzerinde anlaştı. Diğer platformlardan bahsetmedim çünkü onlar üzerinde hiç çalışmadım.

Birçok IBM programcısıyla tanıştım ve konuştum ve onlar da COBOL programcıları olarak anılacaklar. Ancak, bir kişi onları sohbete dahil ederse, hızlı bir şekilde IBM'e özgü prosedürlere ve araçlara başvurmaya başlarlar. COBOL'un donanım merkezli doğası göz önüne alındığında, bu tüm donanım platformları için çok anlaşılır bir durumdur.

COBOL genellikle çok pahalı bir donanıma bağlı olduğu için, o donanım parçası üzerinde derlenmiş COBOL programlarını çalıştırdığı sürece, göç uğruna COBOL'dan göç etmek için güçlü bir istek yoktur. Ancak, yaşlanan COBOL programcıları nüfusu ile göç kaçınılmazdır.

COBOL çalıştıran tüm büyük demir kutular da Java çalıştıracağından, Java COBOL'dan uzak doğal bir göç yoludur. Kod, özellikle şimdi aşağı ekonomide, oldukça ekonomik bir fiyata dönüştürülebilir. Bir kez COBOL yok, sadece Java, o büyük pahalı donanım parçası üzerinde, o zaman organizasyonda daha yüksek biri Java kodunu daha ucuz bir donanım parçasına taşımanın mümkün olup olmadığını merak etmeye başlayacak.

IBM, Sperry, Burroughs ve Tandem programcıları bunu biliyor, bu yüzden muhtemelen ASLA fikri sunmayacaklar. Bazıları için bir kutsallık olurdu.


+1, gerçekten çok pahalı. Ayrıca Java'nın Yeni Kobol haline geldiğine dikkat çekiyorum - kendimi gördüm ve ben sadece genç bir parayım, bu yüzden tecrübeli birinin aynı gözlemi yapması ilginç.
Wayne Werner
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.