"Programlama dili savaşını" bitirmek için mükemmel bir dil var mı?

Planlama Tina

Düzenle InfoQ Editoryal Departmanı

Şu anda popüler olan diller için, InfoQ tarafından düzenlenen "Programlama Dilleri" başlığında aşağıdaki makaleler sizin için seçilmiştir!

Herkes "PHP en iyi dildir" ifadesini duymuş olabilir.

Pek çok programlama dili vardır ve var olduklarından her birinin nedenleri vardır. Aslında hangi dilin iyi, hangi dilin iyi olmadığı konusunda yorum yapmaya gerek yok. Her programlama dilinin kendisi zor olmadığı için, bir dili öğrendiğiniz sürece diğerleri birbirine bağlıdır. Zor, iyi veya kötü, anlamak, ezberlemek, aşina olmak ve her dil tarafından sağlanan temel kitaplıkları ve uzantı kitaplıklarını, yani LIB'ler veya API'ler veya SDK veya Çerçeveler'i akıcı bir şekilde kullanmaktır.

En basit küme söz konusu olduğunda, programlama dilinin kendisi bir grup ayrılmış anahtar kelime ve bir grup gramerdir.Herkes, biraz baktıktan sonra tasarım fikirlerinin yanı sıra bunu anlayacaktır. Tıpkı bir yabancı dil öğrenmek gibi, biraz kelime bilgisi artı birleştirilebilen biraz gramer. Bu programlama dili özellikleri genellikle şunları içerir: deyim oluşturma, değişken tanımları, aritmetik işlemler, döngü deyimleri, işlev tanımları ve çağrılar, nesne yönelimli, işaretçi işlemleri, çöp toplama, giriş ve çıkış vb. Temel şeyler, eğer bir dili veya başka bir yeni dili öğrendiyseniz veya kullandıysanız, bir veya iki dakika içinde bir merhaba dünyaya giriş programı yazabilir ve temelde bir veya iki saat içinde anlayabilirsiniz.

Öyleyse, iyi ve kötü, zor kısım aslında bu temel kütüphaneler ve çeşitli uzantı kütüphaneleridir. Bu kütüphaneler aşina olmalı ve pratikte adım adım hakim olmalıdır. Sık kullanmazsanız, modern programlama ortamlarında çeşitli akıllı yardımlar olsa da unutmak kolaydır. Bir dile aşina değilseniz, büyük ölçüde bu dilin sürekli kullanımı ve anlaşılması olabilir mi? Bu nedenle, birden fazla proje veya yıllarca pratik yapmadan dil ustası olmak zordur.

Örneğin, ağ işlemleri için bazı diller basit, üst düzey, kullanımı kolay ve kapsamlı kitaplıklar halinde paketlenmiştir ve bazı diller ilkeldir. Dolayısıyla, gelişmiş paketleme kitaplıklarına sahip diller için herkes kendini iyi hissedecek, dilin kullanımı kolay, geliştirme verimliliği yüksek ve istediğiniz her şeye sahip olacaksınız, soket, tcp / ip, http, async / sync, select, event ve hatta sever, istemci, tarayıcı vb. Nispeten düşük seviyeli paketleme olan diller için herkes, geliştirme verimliliğinin düşük olduğunu ve seçme ve soket gibi kullanımının zor olduğunu öğrenmiştir. Muhtemelen durum bu değil mi?

Programlama dilinin temellerini öğrendikten sonra, genellikle temel kitaplığı ve uzantı kitaplığını anlamak ve öğrenmek için çok zaman harcarsınız. Bu gerçek acı ve zorluktur. Öğrenmek zorunda değilseniz unutmak kolaydır. Kullanırken bu kitaplığa sahip olmayı düşünmelisiniz. . Daha sonra, çeşitli dillere uygulanabilen bir dizi API veya kütüphane işlevi tanımları varsa, yeni bir dil öğrenme ve kullanma verimliliği büyük ölçüde artacaktır. Şu anda hangi dilin en iyi olduğu artık sorun değil.

Protobuf, Thrift, COM, RPC vb. Hepsi bunu denedi.Bir gün, hangi programlama dilini kullanırsanız kullanın, sadece bir dizi arayüz işlevini hatırlamanız gerekir, harika olurdu. Şu anda, PHP'nin en iyi dil olup olmadığı konusunda kimsenin tartışmayacağı tahmin ediliyor.

"Mimar Özel Sayısı: programlama dili", önsöz, yazar: Chen Liren

Toutiao Go'nun yüz milyarlarca mikro hizmet oluşturma uygulaması

Go, Google tarafından geliştirilmiş çöp toplama işlevine sahip paralel bir programlama dilidir. Go dili orijinal olarak Robert Griesemer, Rob Pike ve Ken Thompson tarafından 2007 yılının sonunda tasarlanmış ve uygulanmıştır. Resmi olarak Kasım 2009'da piyasaya sürülmüş ve açık kaynaklı olmuştur. Tamamen açık kaynaklı olduğunda, yılın dilini kazandı.

Diğer dillerle karşılaştırıldığında, Go dilinin birçok doğal avantajı vardır:

  • Dilbilgisi basit ve hızlıdır.

  • Yüksek performans, hızlı derleme ve geliştirme verimliliği düşük değildir.

  • Eşzamanlılık yerel olarak desteklenir. Coroutine modeli mükemmel bir sunucu tarafı modelidir ve ayrıca ağ aramaları için de uygundur.

  • Dağıtımı kolay, derlenmiş küçük paket, neredeyse hiç bağımlılık yok.

  • Go şunlar için uygundur: 1. Geçmişte genellikle C veya C ++ kullanan sunucu programlaması, işlem günlükleri, veri paketleme, sanal makine işleme, dosya sistemi vb. Gibi Go kullanmak çok uygundur. 2. Dağıtılmış sistemler, veritabanı aracıları vb. 3. Ağ programlama. 4. Bellek içi veritabanı. 5. Bulut platformu.

    Go dili Çin'de de çok iyi gelişmiştir. Toutiao şu anda Go tarafından oluşturulan hizmetlerdeki arka uç hizmet trafiğinin% 80'inden fazlasını oluşturmaktadır. Mikro hizmet sayısı 100'ü, en yüksek QPS değeri 7 milyonu ve günlük işleme talebi hacmi 300 milyarı aşıyor. Bu, sektörün en büyük Go uygulamasıdır.

    2015'ten önce, Toutiao'daki ana programlama dilleri Python ve biraz C ++ idi. İş ve trafiğin hızlı büyümesiyle birlikte sunucu tarafındaki baskı artmakta ve sık sık sorunlar ortaya çıkmaktadır. Python'un yorumlanmış dil özellikleri ve geriye dönük çok süreçli hizmet modeli büyük ölçüde zorlandı.

    Haziran 2015'te Toutiao, arka uç feed akışı hizmetini yeniden yapılandırmak için Go dilini kullanmaya başladı. Haziran 2016'da neredeyse tüm arka uç feed akışı hizmetleri Go'ya taşındı.

    Metnin tamamını okumak için aşağıdaki resme tıklayın

    Java eski, hala yiyebilir misin?

    1995'teki ilk sürümün piyasaya sürülmesinden günümüze kadar, Java dili 22 yıldır inişler ve çıkışlar yaşadı ve en son Java sürümü Java 9'a yinelendi. O zamanlar Java dilinin çapraz platform avantajı, ev yapımı bir yemekten başka bir şey değil gibi görünüyor.Go ve Rust gibi dillerin, programlama dillerinin sınırlarını daha da genişlettiği ortaya çıktı. Java dilini icat eden şirket olan Sun, uzun süredir Oracle tarafından satın alındı ve Oracle şu anda bir bulut bilişim dalgasının ortasında.Java'nın babası James Gosling bile dünyanın en büyük bulut bilişim şirketi AWS'ye katıldı.

    Java dilinin gelişiminin 20 yılı, aynı zamanda küresel İnternetin hızlı gelişiminin 20 yılıdır.Java dili, e-ticaret, mobil İnternet, büyük veri ve bulut bilişim dalgasına da tanık olmuştur, bu nedenle bugün büyük İnternet şirketleri tarafından kullanılabilir. Java figürüne bakın.

    TIOBEnin dil sıralaması, 2016'nın başından beri Java dilinin belirgin bir düşüş eğilimi gösterdiğini gösteriyor. Geliştirici topluluğu, Java dili hakkında bazı kötü yorumlar da gördü. Ayrıca editörlerin kafasında bazı şüpheler var: Java eski ve hala "pirinç" olabilir Hayır? Bu arka plana dayanarak InfoQ, kıdemli Java uzmanı Zhang Jianfeng'i Java dilinin mevcut durumunu ve geleceğini yorumlamaya davet etti.

    Metnin tamamını okumak için aşağıdaki resme tıklayın

    Python her zaman yavaşlığıyla bilinirdi. Instagram neden sadece onu seviyor?

    Python'un kurucusu Guido van Rossum'dur. 1989 Noel döneminde Guido Van Rossum, Amsterdam'da vakit geçirmek için yeni bir senaryo tercümanı geliştirmeye karar verdi ve Python doğdu.

    Python bazen kabaca bir "komut dosyası dili" olarak sınıflandırılsa da, en bol ve güçlü sınıf kitaplığına ve iyi ölçeklenebilirliğe sahiptir, bu nedenle endüstride ve bilimsel araştırmalarda yaygın olarak kullanılmaktadır.

    PyCon, Python programlama dili üzerine dünyanın en büyük teknik konferansıdır.Konferans, Python topluluğu tarafından organize edilir ve yılda bir kez düzenlenir. Python 2017'de Instagram mühendisleri, Instagram'da Python hakkında bir açılış konuşması yaptı ve ayrıca Instagram'ın tüm proje işletim ortamını Python 3'e nasıl yükselttiğinin hikayesini paylaştı.

    Instagram'ın toplam kayıtlı kullanıcıları 3 milyara ulaştı ve aylık aktif kullanıcılar 700 milyonu aştı (karşılaştırma için WeChat'in yeni açıklanan aylık aktif kullanıcıları 938 milyondu). Şaşırtıcı olan, bu kadar yüksek ziyaret sayısının arkasında, yavaş hızıyla bilinen Python + Django tarafından tamamen destekleniyor olmasıdır. Python çok yavaş çalışsa da bu Instagram için bir sorun değil, çünkü onlara inanıyorlar: "Instagram'ın en büyük darboğazı, kod yürütme verimliliği değil, geliştirme verimliliği." Yukarıdakiler, yüksek yoğunluklu hesaplamaya dayanmayan Instagram gibi bir işletme örneğidir. Yüksek hesaplama yoğunluğuna sahip işletmeler için performans vurgulanırsa Cython (https://en.wikipedia.org/wiki/Cython) kullanılabilir. Veya Numpy \ numba \ NUFFT gibi özel olarak optimize edilmiş bir hesaplama kitaplığı.

    Metnin tamamını okumak için aşağıdaki resme tıklayın

    TiKV'yi uygulamak için neden niş bir dil olan Rust'u seçmeliyiz?

    Rust, Mozilla araştırma odası tarafından yönetilen modern bir sistem programlama dilidir. 1.0'ın Mayıs 2015'te piyasaya sürülmesinden bu yana, her 6 haftada bir küçük bir sürümle istikrarlı bir şekilde ilerlemektedir. Dil tasarımı, C ++ gibi sıfır ek yük soyutlamayı ve RAII'yi vurgular. C / C ++ ile aynı seviyede çalışmasını sağlayan çok küçük bir çalışma süresine ve verimli C bağlamaya sahiptir ve yüksek performans gerektiren sistem programlama alanları için çok uygundur.

    Son teknoloji ürünü bir dil olan Rust'un kendine özgü avantajları vardır. Çoğu yerli geliştiriciye göreceli olarak yabancı olsa da, Rust'un dünya çapında gelecek vaat eden bir C / C ++ olarak tanınmasını engellemez. Challenger. Şu anda küresel olarak uygulanan daha iyi bilinen projelerden bazıları arasında Dropbox'ın arka uç dağıtılmış depolama sistemi (kapalı kaynak), Firefox'un yeni çekirdek Servo, işletim sistemi Redox ve PingCAP'in dağıtılmış veritabanı TiDB depolama katmanı TiKV bulunmaktadır. Bunlardan biri olarak TiKV, çevrimiçi olduğundan beri çok dikkat çekicidir.GitHub Rust dilinin küresel sıralama projesinde, temelde ilk birkaç statüde gezinmektedir.

    Metnin tamamını okumak için aşağıdaki resme tıklayın

    Sonunda, JavaScript birinci sınıf bir dil haline geldi

    JavaScript, İnternet nedeniyle doğdu, ardından tarayıcıların ortaya çıkışı. Dünyadaki çoğu web sitesi tarafından kullanılmaktadır ve aynı zamanda dünyanın ana tarayıcıları (Chrome, IE, FireFox, Safari, Opera) tarafından da desteklenmektedir.

    Stil efektlerine ek olarak JavaScript, arka uç görevleri, web sunucuları ve veri işleme gibi yazılım geliştirmede giderek daha fazla kullanılmaktadır. JavaScript çok hızlı şekillendi, ilk başta sadece küçük bir hedefe odaklandı ve daha sonra piyasa güçleri dili değiştirdi.

    JavaScript üzerinde olumlu etkisi olan istatistikler:

  • Github'da en fazla sayıda JavaScript açık kaynak projesi var (Java'dan% 50 daha fazla).

  • NodeJS, StackOverflow'un 2017 geliştirici anketinde en popüler çerçeve olarak derecelendirildi.

  • JavaScript, Stack Overflow'daki en popüler programlama dilidir.

  • JavaScript, birinci sınıf bir programlama dili olmak için aşağıdaki standartlara ulaştı:

  • Yeni başlayanlar ve büyük özel şirketler tarafından arka uç hizmet çerçevesi (NodeJS) olarak kullanılır.

  • Gelişen bir açık kaynak topluluğu var (Github'da en aktif olanı).

  • Profesyonel bir beceri olarak, JavaScript bilgisi gerektiren çok sayıda işe alım ihtiyacı vardır (Indee.com).

  • Metnin tamamını okumak için aşağıdaki resme tıklayın

    Clojure çok esnektir, bunu nasıl yönetebiliriz?

    Clojure, çok amaçlı işlevsel bir dil olan modern Lisp dilinin dinamik bir dil sürümüdür. Mevcut gelişme süreci, "ömür boyu yardımsever bir diktatör" olarak yazar Rich Hickey'in gözetimi altında topluluk tarafından yürütülmektedir. Clojure, lisp'in güzelliğini miras alan ve Java'nın etkinliğini koruyan JVM'nin üstünde bir dildir. Bu makale bir QCon konuşmasından derlenmiştir.Öğretmen, Clojure'u 5 yıldan uzun süredir profesyonel olarak kullanan, esas olarak veri akışı işlemede Clojure kullanan Morgan Stanley VP He Jingyu'dur (Loretta).

    Dürtmek Orijinali okuyun , Ücretsiz programlama dili konusu mini kitabını indirin!

    Bugünün Tavsiyesi

    Okumak için aşağıdaki resme tıklayın

    Mimar olmak ne kadar zor?

    Eski makineden PS4 Pro'ya veri nasıl aktarılır?
    önceki
    51 yaşındaki Weng Hong, 12 yıldır kocası tarafından lekelenen genç bir kız. Kızının güzel sivri çenesi çok güzel
    Sonraki
    SHARE fabrikası güncellendikten sonra, GIF görüntüleri oluşturmak için doğrudan PS4'ü kullanabilirsiniz.
    Yurt masanıza retro bir dokunuş eklemek ister misiniz? Bu üç Bluetooth hoparlör denemeye değer
    Zhao Liying ve Feng Shaofeng aynı çerçevede, ancak Feng Shaofeng'in eylemleri Zhao Liying'e karşı sorumsuz olmakla suçlanıyor
    "YÜZDE DOKUZ" "Haber" 190324 Lehua takımı hızla Şangay'a uçtu Fan Chengcheng, hayranlarını desteklemek için bir kez daha hayranlarını flop
    Bahar çiçekleri açar, kendinize biraz daha tatlı bakım verin | Yaşam tarzı
    Hu Jing, eğlence endüstrisindeki Vanity Fair'den hoşlanmadığını açıkça söyledi.
    Bugün size Ocak 2019'da yayınlanacak bir dizi Amerikan dizisini tanıtmama izin verin.
    "EXO" "Paylaş" 190324 Aslında bir kişiyi ismiyle tanımlamak yeterlidir, o Park Chanyeol
    Çekiçten somuna, bu benim "makine hikayem"
    DevOps platformu geliştirme deneyimi, kazancımdan bazıları
    Wu Xuanyi'nin Hainan zengin karısının setinin çöküşü mü? Giydiği lüks eşyaların çoğu hayranlar tarafından mı veriliyor?
    "GFRIEND" "Paylaşım" 190324 Girlfriend sohbet odası aynı fikirde değil ve tekrar kavga etmeye başlıyor! Menghe yemek fotoğraflarını çekene kadar
    To Top