COBOL öğrenmek hâlâ mantıklı geliyor mu?
COBOL öğrenmek hâlâ mantıklı geliyor mu?
Yanıtlar:
Sanmıyorum ki, eğer zaten COBOL’un tutulduğu niş pazarda değilseniz.
Nooo, elbette değil. Sonuçta COBOL ölü bir dildir. Yoksa öyle mi?
Bu görüşün sorunu, bunun gibi sitelerdeki programcıların genellikle yüksek teknoloji ürünü, hızlı çalışan (ve aynı derecede hızlı yanan) şirketlerle çalışmasıdır. Onlar için COBOL ölü bir dildir - görülecek bir yer yok. Şimdilik bir süredir olmadı, doğru.
Ancak COBOL onlar için değildi. Yazılım endüstrisinde bundan daha fazlası var. Bilgisayarlar, her zaman eskileri yenileriyle değiştirmek ve yenilemek için bazı irrasyonel ihtiyaç duyan insanlar için icat edilmedi. İş amaçlı yapıldılar.
COBOL'u görmek ister misin? Bordroyu işleyen, mal taşımacılığı yapan veya nakliye yapan (gemilerdeki gibi) veya banka hesabınızı tutan bir şirkete gidin. Kullanıcılar için pratik olarak görünmeyen büyük bir görünmez kod sistemi var ve çoğu her gün bir şekilde ya da başka bir şekilde karşılaşsalar bile (ATM'ler?) Bir daha hiç düşünmüyorlar.
Hayır, ölmedi. Ama kesin "miras" mı ... yoksa öyle mi?
Yine, nasıl baktığına bağlı. Günümüzde birçok insan Java, C veya COBOL yerine başka bir şey kullanacak, sıfırdan yazacak ... devam ederken yeni böcekler ortaya çıkacak, doğal olarak. Bu COBOL'un böcek ve tuhaflıklarının olmadığı anlamına gelmez. Bir sonraki dilde olduğu gibi. Tabii ki öyle. Ancak “COBOL times” da, böcekleri normalden daha fazla ciddiye alan şirketler (sigorta, bankalar) özel hizmet gruplarıyla daha yüksek kalite kodu üretme eğilimindeydiler; Bugün zamanın ve bütçenin daima kaliteyi kazandığı son tarihler var. Ayrıca, bu sistemler başlangıçta, şimdiki değere kıyasla daha uzun süre boyunca geliştirilmiştir.
Bazı yazılımlar 30 yıldan fazla bir süredir çalışıyorsa, geçiş yapmak için teşvik nerede? Bütün şirketler işten atıldı çünkü “ kırılmazsa, düzeltmeyin” denilen eski atasözünü göz ardı ettiler. Birçoğu, şeyi yeniden yazmaya çalıştı ... sonra ilk yeniden yazma çok pahalıya mal oldu, ikincisi daha da pahalıya mal oldu ... ve yeni ve gelişmiş olanların hiçbiri yerini almayı başaramadı. Dediğim gibi, bu endüstri hızlı yanıyor ve aynı zamanda hızlı unutabiliyor.
70'lerde COBOL yakında öldü ya da ölüyordu, C / C ++ hüküm sürecekti. Sonra yine 80'li yılların başında Pascal devraldı. Sonra 90'lı yıllarda Java Dil olarak ...
Unisys Mapper'ı, dBase'i, Clipper'ı, Cold fusion'ı düşünün ... insanlar bunları bile hatırlıyor mu? Her biri COBOL için mezar kazası olacaktı.
Bunu hesaba katarak ve yüksek hacimli işlemlerin, toplu işlemlerin veya kayıt / işlem odaklı işlemlerin işlenmesinin harika olduğu gerçeği ve bunun COBOL kodu olarak 30 yıllık yazılmış bir alt yordamı derleyebildiği ve çağırabildiği ve yönetilen bir COBOL.NET den Windows ve .NET gitmek isterse, onun için uygun bir yedek bulmakta sorun yaşıyorum. (Ayrıca on yıldan fazla süren bir Microsoft teknolojisi bulmakta da güçlük çekiyorum.)
Evet, bugün yeni COBOL kodu yazılmaktadır. Birinin nereye bakacağını bilmesi gerekir.
COBOL, IMHO'ya gülmek isteyenler için, Mısır Piramitlerine gülmek gibi, 5000 yıl boyunca oradalar ve gelecek 5000 yıl içinde hala orada olacaklar, bugün 24 denetime ihtiyaç duyan “merhaba dünyası” konutu silinecek, değiştirildi, gelecek ay unutuldu.
Peki tüm bu COBOL programcıları nerede?
Ah, işte burası ovma yatıyor. Mesele şu ki, çoğunun bilgisayar bilimi arka planı yok. Birçoğu profesyonel programcı değildir (üniversitedeki CS / SE programından mezun olan). Çoğunlukla, 30'lu yaşlarının sonlarında, tüm uzmanlık alanlarından, tamamen şirket tarafından özel olarak bu iş için eğitilmiş kişilerdir. Bu yüzden onlar "COBOL programcıları" değildir - aldıkları eğitim, içerden çok fazla terfi eden şirkete özeldir. Ve bu onları hemen hemen görünmez yapıyor.
Kendinizi COBOL programcısı olarak görüyorsanız, devam edin. COBOL'da yazılmış ve bakım gerektiren milyarlarca satır hala var.
Aslında, gereksiz bilgi diye bir şey yoktur , bu nedenle sahip olduğunuz (ve) sahip olduğunuz bilgiyi ve daha geniş fırsatları genişletin.
Öğrenme mantıklı geliyor mu?
Şey, bu bir niş ve sürdürülmesi gereken ve sadece yeniden yazılamayan tonlarca eski çalışma kodu var. Bu nedenle, tüm programcıların geniş kitleleri için gerçekten bir seçenek olmamakla birlikte, bireyler için sabit bir gelir için bir bakış açısıdır.
Bununla birlikte, onlarca yıldan beri var olanları yavaşça geliştirmek yerine, yeni çözümler üretmekle ilgileniyorsanız, COBOL muhtemelen doğru dil değildir.
Pek çok Avrupalı şirket hala z / vse ve cobol programları gibi çalışan ana bilgisayarlara güveniyor. Yetenekli cobol programcılarına, kimsenin piyasanın dolduracağını düşündüğünü, bunun da maaşı arttıracağını talep ediyor.
Asıl soru, "Kobol kullanarak yeni bir şey geliştirebilecek miyim?" Olmalı. Çünkü hemen hemen her şey mevcut iş için kritik olan şeylerin bakımı veya çeşitliliğidir.
Her gün COBOL ve PL / I kodlarının yazıldığı IBM için çalışıyordum. Ayrıca, IBM’in ana bilgisayarlarına dayanan büyük şirketlerden, saniyede binlerce işlem gerektiren pek çok banka gibi bu diller hala yoğun olarak kullanılıyor.
Böyle bir yerde çalışmak istemiyorsanız (Bu yüzden 6 ay boyunca orada çalıştım) o zaman bu dilleri öğrenmeyi bile düşünmeyin.
Her gün yeni Cobol kodu yazarız ve sürekli yeni programcılar arıyoruz. Tedarik buralarda çok küçük.
COBOL programcısı olarak bir iş sahibi olmak istiyorsanız, emin olun, devam edin ve öğrenin.
Başka bir nedenle, modern programlama teknikleri konusunda size yardımcı olabilecek faydalı bir şeyler öğrenmeye çalışmak gibi, hayır, canınızı sıkmayın.
2000 yılında, bir araya getirilen diğer tüm dillerden daha fazla yazılmış COBOL satırı olduğuna dair bir istatistik okudum.
Buna ek olarak IBM, herhangi bir MVS sisteminde derlenen herhangi bir TEXT deck'in (nesne kodu) tüm MVS sistemlerinde çalıştırılabilir olduğunu ve güneş parladığı sürece COBOL programlamanın olacağına dair bir garantiniz olduğunu garanti eder.
Size nasıl "öğrendiğimi" söyleyebilirim:
onunla çalışmak için çalıştım, ne olduğu hakkında hiçbir fikrim yoktu ve bir gecede bunu öğrenmede zorluk çekmedim.
Yani, ihtiyacın olursa öğrenebilirsin. İşe yaramaz bilgilerle kendinizi aşırı yüklemeye gerek yok. Gerçekten pratik bir ihtiyaç duymadığınız sürece, onunla ya da angajmanlarıyla ilgili ilginç bir şey yoktur.
Genel cevap: kodlama prensiplerini öğren, spesifik uygulamalarını değil (diller gibi)
Bunun için zaman harcamam.
Her neyse, COBOL, 20 30 yıl önce başlayan birçok Büyük Şirket için kritik öneme sahip olan birçok eski uygulama programının yapı taşlarıdır.
Bu nedenle, COBOL'de ana işinin bir parçası olan bir şirket için işe alınmışsanız, öğrenmeye başlamanız için bir ihtimal var.
Sonuçta, işlerin nasıl yürüdüğünü (veya işe alıştığını) bilmek kötü bir şey olamazsa onu öğrenin.
Bununla birlikte, özgeçmişinizde COBOL becerilerinizi çok fazla vurgulamanızı tavsiye ederim.
Bazı yerlerde (örneğin yaşadığım Silikon Vadisi'nde) özgeçmişinizde COBOL olması bir sorumluluk olacaktır. Tabii ki, burada ve orada uzmanlığınıza ihtiyaç duyan bir yer bulabilirsiniz ve bu durumda devam edin ve yalnızca bu yerlere reklam verin . Ancak genel olarak, kendinize bir iyilik yapın ve COBOL'u bildiğinizi belirtmeyi unutmayın.
Yani evet, merak ediyorsan öğren, kimseye söyleme.
Belki bir iş piyasası perspektifinden değmez, ancak "iyi günlerde" nasıl yapıldığını hissetmek için bir göz atmak isteyebilirsiniz. ^^
Kişisel bir bakış açısıyla, önce öğrenilecek daha iyi şeyler olduğunu söyleyebilirim. Bununla birlikte, birçok büyük şirket COBOL kod tabanına, muhtemelen geride asla bırakamayacakları çok büyük yatırımlara sahiptir ve COBOL programcılarının kod tabanını koruyabilmeleri ve yeni kod yazabilmeleri için bir endüstri yaratacaktır. Çalıştığım şirket büyük bir finansal şirket ve geliştiricilere yönelik teknoloji bölümümüz kabaca% 30 COBOL,% 40 Java ve% 30 C #.
Sadece Avustralya'nın en büyük iş web sitesinde "cobol" için bir arama yaptım. 87 sonuç döndürdü ve (hızlı bir kayma ile) çoğunlukla bankalarda ve finans kurumlarında eski bakım pozisyonları gibi görünüyorlar. Muhtemelen Cobol deneyiminin azlığından dolayı, daha çok "modern" dil temelli işlerden daha iyi ödeme yapıldı.
Bu yüzden evet, 1) eski bakımları yapmayı düşünmüyorsanız Cobol'un öğrenmeye değeceği ve 2) artık iyi öğrenilen ve muhtemelen çok rekabetçi olmayan bir nişe girmek istediğinizde öğrenmeye değer olduğu görülüyor.
(Cobol pazarının çoğu Birinci Dünya ekonomisinde benzer olacağını, ancak yanlış olabileceğini farz ediyorum?)
Çalışmak istediğiniz sorunlu alan türlerini düşünün. Genellikle, bu alan adlarının genellikle amaç için kullanılan bir dizi dili vardır. COBOL buna uygunsa devam edin.
Kolona ya da 10 ayak direği ile yoğun olarak kullanan sorun alanlarına dokunmamın bir yolu yok. Hamburger çevirmeyi tercih ederim.
Ayrıca, dilin programlama yeteneğinize / konseptlerinize bir miktar bonus / iyileştirme sunup sunmadığını dikkate alın. COBOL'un daha iyi yapılmadığını veya başka bir dilde daha iyi gösterilebileceğini / uygulayabileceğini / özelliklerini yapabileceğini düşünemiyorum.
Siz ve başkaları farklı hissedebilirsiniz.
COBOL'da yazılmış çok sayıda eski sistem var. Onları korumak veya başka programlama dillerine taşımak isteyip istemediğinize rağmen, hala COBOL öğrenmeye değer.
Ne olursa olsun, çoklu programlama dillerinde bazı bilgiler bir artı olacaktır, çünkü sahip olduğunuz bilgi, farklı proje ihtiyaçları için bir programlama dili veya yaklaşım seçmenize izin verir. Bilginizi programlama dillerinde daha iyi, daha temiz ve daha verimli kodlar oluşturmak ve tuzaklardan kaçınmak için kullanabilirsiniz.